我正在嘗試將Python代碼從linux移植到windows。在不同的地方,通過從/ dev/random讀取生成隨機數。有沒有辦法在Windows上模擬/ dev/random?在Windows上模擬/ dev/random
我在尋找能保持代碼的可使用Linux上的解決方案...
我正在嘗試將Python代碼從linux移植到windows。在不同的地方,通過從/ dev/random讀取生成隨機數。有沒有辦法在Windows上模擬/ dev/random?在Windows上模擬/ dev/random
我在尋找能保持代碼的可使用Linux上的解決方案...
如果你使用Python,你爲什麼關心具體的實現?只需使用the random
module並讓它處理。
除此之外,(如果你不能依靠軟件狀態)os.urandom
提供基於操作系統的隨機值:
在UNIX類系統,這將查詢的/ dev/urandom的,而在Windows上它 將使用CryptGenRandom。
(請注意,random.SystemRandom
爲此提供了一個很好的界面)。
如果你是確實認真對待它是加密隨機的,你可能想看看PyCrypto。
您可以改爲撥打random.SystemRandom。這將在Windows上使用CryptGenRandom,在Linux上使用/ dev/urandom。
否則,總會有Cygwin的/ dev/random?
這可能有所幫助:http://stackoverflow.com/questions/191335/windows-equivalent-of-dev-random – pcalcao
感謝您的快速響應!我發現已經有一個,但我想找到一個解決方案,以保持代碼在Linux上可用。 – scherlock