Random-Number-Generator

安全隨機性的家庭來源?

  • December 21, 2021

在我的家裡,我有一枚硬幣。我可以用那個硬幣來生成隨機位。這些位大多是安全的,除非有人看著我翻轉它。他們也只是隨機的……也許我是一個“壞腳蹼”?

我也有電腦。我可以用它來生成有點隨機的位,但不是真的。如果您信任算法和機器,這些都是安全的。/聳聳肩

我想用我手頭的材料生成隨機數,並確保它們的安全。在安全性或隨機性方面,我能比拋硬幣做得更好嗎?

我建議除非你特別偏執並且不信任現代密碼算法,如塊和流密碼或雜湊,否則你應該使用你的 PC。這是迄今為止最簡單的方法。

它要麼具有\dev\urandom*nix 機器,要麼具有來自新 Windows(Windows Server 2008 和 Windows Vista 及更高版本)的隨機數生成器Cryptography API: Next Generation (CNG)。許多程式語言將這兩個源包裝成更易於使用的函式/庫。

兩者都是偽隨機數生成器,提供完全可接受的安全級別。而且它們的輸出幾乎是無窮無盡的,因此對於所有非一次性墊應用程序來說應該足夠了。計算不可區分性意味著將它們的輸出與真正的隨機分佈區分開來是不可行的。

如果你是錫紙帽型(我是),我建議你複習一下隨機數生成器隨機性一次性填充標籤。該案例涉及太多,無法作為單個通用答案發布。

引用自:https://crypto.stackexchange.com/questions/97746