在 C 中簡潔、便攜和徹底地播種 Mt19937 PRNG
儘管使用 std::random_device 和 time(NULL)有缺點對於播種,可以實現堅固且便攜的解決方案:
基於CSPRNG 的播種
為了避免std::random_device 的限制,我們可以利用CSPRNG,例如:
最少播種函數:
以下跨平台函數提供了各種特定於作業系統的CSPRNG 的最小包裝器:
高效播種:
使用可用的sysrandom,播種mt19937 PRNG變成:
附加說明:
以上是如何在不同平台上安全地在 C 中播種 Mt19937 PRNG?的詳細內容。更多資訊請關注PHP中文網其他相關文章!