[發明專利]一種生成滿足安全強度要求的隨機數的方法有效
| 申請號: | 201410553538.5 | 申請日: | 2014-10-17 |
| 公開(公告)號: | CN104298485B | 公開(公告)日: | 2017-11-24 |
| 發明(設計)人: | 陸舟;于華章 | 申請(專利權)人: | 飛天誠信科技股份有限公司 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 生成 滿足 安全 強度 要求 隨機數 方法 | ||
技術領域
本發明涉及信息安全領域,尤其涉及一種生成滿足安全強度要求的隨機數的方法。
背景技術
隨著計算機技術、通信技術和網絡技術的迅速發展,信息在存儲、傳送、接收和處理過程中的安全問題已受到人們的廣泛關注。隨機數在信息安全系統中扮演著重要的角色,在基于計算機、網絡通信和交易中有著廣泛的應用基礎。比如密鑰產生、初始化向量、時間戳、認證挑戰碼、密鑰協商等,都要用到隨機數。
Openssl是一個強大的安全套接字層密碼庫,沒有太多限制的開放源代碼的軟件包,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,并提供豐富的應用程序供測試或其他目的使用。
隨機數在計算機軟件、硬件、安全等領域有著廣泛的應用,因此,產生高效優質(即隨機性高)的隨機數變得非常重要。
發明內容
本發明為解決現有技術中存在的問題,提供了一種生成滿足安全強度要求的隨機數的方法。
本發明采用的技術方案是:一種生成滿足安全強度要求的隨機數的方法,包括:
步驟S1:隨機數生成器初始化熵值和內部隨機數狀態值;
步驟S2:所述隨機數生成器接收系統事件,根據所述系統事件更新所述熵值和所述內部隨機數狀態值;
步驟S3:所述隨機數生成器根據更新后的所述熵值,判斷是否達到隨機數安全強度要求,如果是,則執行步驟S8,否則執行步驟S4;
步驟S4:所述隨機數生成器根據第一隨機數更新所述內部隨機數狀態值和所述熵值;
步驟S5:所述隨機數生成器根據更新后的所述熵值,判斷是否達到隨機數安全強度要求,如果是,則執行步驟S8,否則執行步驟S6;
步驟S6:所述隨機數生成器根據第二隨機數更新所述內部隨機數狀態值和所述熵值;
步驟S7:所述隨機數生成器根據更新后的所述熵值,判斷是否達到隨機數安全強度要求,如果是,則執行步驟S8,否則調用系統函數,更新所述內部隨機數狀態值和所述熵值,返回步驟S7;
步驟S8:所述隨機數生成器根據待生成隨機數的長度和所述內部隨機數狀態值,生成隨機數。
所述步驟S2中,所述根據所述系統事件更新熵值和內部隨機數狀態值,具體為:所述隨機數生成器根據所述系統事件,調用第一增加隨機數熵值的函數,更新熵值和內部隨機數狀態值。
所述步驟S4具體為:
步驟S4-1:所述隨機數生成器根據所述第一隨機數和所述存放增加隨機數的緩存區,調用預設標準庫函數,將所述第一隨機數復制到所述存放增加隨機數的緩存區中;
步驟S4-2:所述隨機數生成器根據所述存放增加隨機數的緩存區中的數據和所述數據的長度,調用第二增加隨機數熵值的函數,更新所述內部隨機數狀態值。
所述步驟S6具體為:
步驟S6-1:所述隨機數生成器根據所述第二隨機數和所述存放增加隨機數的緩存區,調用預設標準庫函數,將所述第二隨機數復制到所述存放增加隨機數的緩存區中;
步驟S6-2:所述隨機數生成器根據所述存放增加隨機數的緩存區中的數據和所述存放增加隨機數的緩存區中的數據的長度,調用第三增加隨機數熵值的函數,更新所述熵值和所述內部隨機數狀態值。
所述步驟S7中判斷為否時,具體為:所述隨機數生成器調用第四增加隨機數熵值的系統函數,更新熵值和內部隨機數狀態值。
所述根據更新后的所述熵值,判斷是否達到隨機數安全強度要求,具體為:判斷更新后的所述熵值是否達到預設值,如果是,則達到隨機數安全強度要求,否則未達到隨機數安全強度要求。
所述步驟S7判斷為是時,還包括:
步驟a1:所述隨機數生成器根據存放種子文件名稱的緩存區的首地址和待生成的種子文件的長度,生成種子文件路徑,將所述種子文件路徑保存至所述種子文件名稱的緩存區中;
步驟a2:所述隨機數生成器根據所述存放種子文件名稱的緩存區的首地址,生成預設長度的種子文件,根據所述種子文件更新所述內部隨機數狀態值,執行步驟S8。
所述步驟a1具體為:所述隨機數生成器根據所述存放種子文件名稱的緩存區的首地址和所述待生成的種子文件的長度,調用產生默認種子文件路徑的函數,生成種子文件路徑,將所述種子文件路徑保存至所述存放種子文件名稱的緩存區中。
所述步驟a1與所述步驟a2之間還包括:判斷所述存放種子文件名稱的緩存區中的數據是否為空,如果是,則結束,否則執行步驟a2。
所述步驟a2,具體為:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于飛天誠信科技股份有限公司,未經飛天誠信科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410553538.5/2.html,轉載請聲明來源鉆瓜專利網。





