[發明專利]可擴展的隨機數生成有效
| 申請號: | 201210002797.X | 申請日: | 2012-01-06 |
| 公開(公告)號: | CN102609237A | 公開(公告)日: | 2012-07-25 |
| 發明(設計)人: | N.T.費爾古森;周大翊;V.G.巴拉瓦 | 申請(專利權)人: | 微軟公司 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58 |
| 代理公司: | 中國專利代理(香港)有限公司 72001 | 代理人: | 李舒;劉鵬 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 擴展 隨機數 生成 | ||
背景技術
隨機數生成是任何計算機系統中的基本過程。特別地,加密系統的安全取決于其具有良好的隨機數來源。然而,計算機在它們的操作中是高度確定性的,并且在輸入給定的情況下任何算法的輸出都是可預測的。因此隨機數并非是利用單純算法手段而生成的。隨機數的生成通常包括兩個不同階段:熵采集和隨機數生成。熵是對攻擊者來說不可預測的信息,且該熵用作通常使用加密技術的確定性偽隨機數生成器(PRNG)的種子。熵采集的傳統技術會嘗試在沒有可用時、在不需要時、或者在設備將會如若不然仍然處于省電、閑置狀態中時采集熵。對于小型電池供電設備,能量效率是首要的,低效處理器利用能夠增加功耗。在不可用或不需要時,熵采集消耗功率和影響設備的能量效率。
發明內容
提供本發明內容以介紹在下文具體實施方式中進一步描述的可擴展的隨機數生成的簡化概念。本發明內容并非意在識別所要求保護的主題的必要特征,也不意在用于確定所要求保護的主題的范圍。
描述可擴展的隨機數生成。在實施例中,系統包括一個或多個熵池,所述熵池將基于事件數據從熵源采集的熵數據進行組合。根偽隨機數生成器(PRNG)維持由熵池補種的取種(seeded)熵狀態,種子版本標識符更新以指示根PRNG的當前種子版本。在系統的內核中每邏輯處理器逐一實例化處理器PRNG,其中每個處理器PRNG維持從根PRNG補種的PRNG熵狀態,且處理器PRNG根據調用時的各PRNG熵狀態生成隨機數。
在其它實施例中,系統還包括每應用逐一實例化的應用基礎PRNG,且每個應用基礎PRNG維持從處理器PRNG按需求補種的基礎PRNG熵狀態。每邏輯處理器、每過程逐一實例化過程PRNG,且每個過程PRNG維持從應用基礎PRNG按需求補種的過程PRNG熵狀態。
在其它實施例中,在熵數據被采集時,按需求動態地生成一個或多個熵池。一個或多個熵池基于指定時間間隔對根PRNG的取種熵狀態補種(reseed)。當調用處理器PRNG以生成隨機數時,按需求從根PRNG對每個處理器PRNG補種。每個處理器PRNG還維持用來指示各處理器PRNG中PRNG熵狀態的補種版本的種子版本。根PRNG處的種子版本標識符在系統中是全局的且被配置成通過處理器PRNG、應用基礎PRNG以及過程PRNG訪問。PRNG的種子版本可以與根PRNG處的種子版本標識符相比較以確定是否對PRNG的PRNG熵狀態補種。
附圖說明
參照附圖描述可擴展的隨機數生成的實施例。整個圖使用相同標記來指代相似的特征和組件:
圖1示例了可以實施可擴展的隨機數生成實施例的實例系統。
圖2示例了可以實施可擴展的隨機數生成實施例的另一實例系統。
圖3示例了按照一個或多個實施例的可擴展的隨機數生成的實例方法。
圖4示例了可以實施可擴展的隨機數生成實施例的實例設備的各種組件。
具體實施方式
描述可擴展的隨機數生成。在實施例中,系統包括一個或多個熵池,所述熵池將從熵源導出的熵數據組合,其中一些可以基于諸如中斷定時的事件數據。根偽隨機數生成器(PRNG)維持被熵池補種的取種熵狀態以及用來指示根PRNG的當前種子版本的種子版本標識符,如計數器、數值、或者不同類型的標識符。例如,可以增加種子版本計數器以指示根PRNG的當前種子版本。在系統的內核中每邏輯處理器逐一實例化處理器PRNG,其中每個處理器PRNG維持從根PRNG補種的PRNG熵狀態。系統還包括每應用逐一實例化的應用基礎PRNG,且每個應用基礎PRNG維持從處理器PRNG按需求補種的基礎PRNG熵狀態。每邏輯處理器、每過程逐一實例化過程PRNG,且每個過程PRNG維持從應用基礎PRNG按需求補種的過程PRNG熵狀態。
系統中的每個PRNG根據它自身的內部PRNG熵狀態生成隨機數。熵生成由中斷事件驅動并且在系統閑置時不引起后臺活動,這保存了能量。另外,熵收集過程不影響PRNG調用的執行時間,并且因此可以在不影響PRNG性能的情況下與所需一樣緩慢。
雖然可以在任何數量的不同環境、系統、設備和/或各種配置中實施可擴展的隨機數生成的所描述系統和方法的特征和概念,但在以下實例設備、系統、以及配置的上下文中描述可擴展的隨機數生成的實施例。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟公司,未經微軟公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210002797.X/2.html,轉載請聲明來源鉆瓜專利網。





