掃二維碼與項目經理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯網交流
實現

隨機數在生成加密算法、加密碼、日期序列號、句子組合和密鑰等密碼學,游戲、統(tǒng)計學、數學、模擬等領域有廣泛的應用。linux有自帶的隨機數生成函數:/dev/random及/dev/urandom,其中/dev/random獲取的則是安全的隨機數,而/dev/urandom獲取的則是非安全的隨機數??梢岳脙烧邅慝@取高效的隨機數在Linux中。
/dev/random主要通過分析系統(tǒng)的噪聲信號生成隨機數,最初的背景噪聲默認是溫度數據,例如,可以創(chuàng)建一個隨機數文件:
$ cat /dev/random > /tmp/random-data
隨機數文件生成后,可以開始分析和產生有著充足隨機性的可信數據,該數據可用來生成安全密鑰,執(zhí)行證書簽名等任務:
$ jot -r -p 8 1 256 | shasum > /tmp/random-data
/dev/urandom主要是利用特殊的偽隨機數生成器來生成的隨機數,它的生成只需要很少的系統(tǒng)資源,而無需耗費太多計算能力,也會節(jié)省系統(tǒng)開銷,同時可以得到足夠的隨機數,例如隨機選擇生成一個8位長密碼:
$ cat /dev/urandom | tr -dc 'a-zA-Za-z' | head -c 8
此外,/dev/urandom還可以通過生成較長的內容用來創(chuàng)建隨機種子:
$ dd if=/dev/urandom of=/tmp/random-seed count=1
總之,Linux自帶的/dev/random和/dev/urandom函數可以迅速有效地生成隨機數。它們可以用來生成安全的加密碼、日期序列號、句子組合和密鑰、隨機種子等,有著廣泛的應用。
成都創(chuàng)新互聯建站主營:成都網站建設、網站維護、網站改版的網站建設公司,提供成都網站制作、成都網站建設、成都網站推廣、成都網站優(yōu)化seo、響應式移動網站開發(fā)制作等網站服務。

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯網交流