[發明專利]一種基于閃存產生滿熵隨機數的方法和裝置有效
| 申請號: | 201510026059.2 | 申請日: | 2015-01-19 |
| 公開(公告)號: | CN104615407B | 公開(公告)日: | 2017-10-10 |
| 發明(設計)人: | 夏魯寧;賈世杰;馬原;王雷;張瓊露 | 申請(專利權)人: | 中國科學院信息工程研究所 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58 |
| 代理公司: | 北京君尚知識產權代理事務所(普通合伙)11200 | 代理人: | 余長江 |
| 地址: | 100093 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 閃存 產生 隨機數 方法 裝置 | ||
1.一種基于閃存產生滿熵隨機數的方法,其特征在于,采用閃存芯片自身的物理特性作為隨機源,改變對特定存儲單元編程或擦除操作時的時間與位置參數,從而對存儲單元產生隨機性的擾動,然后從閃存芯片中提取滿熵隨機數;
所述閃存芯片為Nand Flash芯片時,利用部分編程法、部分擦除法或者重復編程法從Nand Flash中提取滿熵隨機數;
所述部分編程法包括:首先確定每次部分編程的時間T,然后對Nand Flash的1塊進行擦除操作,使該塊內所有頁存儲的信息均變為邏輯“1”,A頁是此塊內的一頁,對A頁進行多次部分編程,每次持續時間T,每次部分編程結束后,讀A頁所有存儲單元的內容,判斷存儲單元是否發生位翻轉,若某存儲單元發生位翻轉,則記錄此時對A頁進行的部分編程數;當A頁的99%的存儲單元發生位翻轉時,將A頁的各個存儲單元發生位翻轉現象時,對應的對A頁的部分編程數依次組合起來組成一串數據,并將數據輸出;由于對Nand Flash相同頁提取的不同組隨機數具有很大的相關性,為保證隨機數的熵值,對提取的數據進行處理,對數據進行異或運算或求模運算,將處理后的數據作為隨機數輸出;對相同頁進行多組部分編程操作提取隨機數,計算多組隨機數的信息熵,信息熵的穩定值與每組隨機數的大小相同,說明每組隨機數都是滿熵的;
所述部分擦除法包括:首先確定每次部分擦除的時間T,然后對Nand Flash的1塊進行擦除操作,使該塊內所有頁存儲的信息均變為邏輯“1”,A頁是此塊內的一頁,對A頁進行編程操作,將A頁內的所有存儲單元變為“0”,接下來對此塊進行多次部分擦除操作,每次持續時間T,每次部分擦除結束后,讀A頁所有存儲單元的內容,判斷存儲單元是否發生位翻轉,若某存儲單元發生位翻轉,則記錄此時對此塊進行的部分擦除數;當A頁的99%的存儲單元發生位翻轉時,將A頁的各個存儲單元發生位翻轉現象時,對應的對此塊的部分擦除數依次組合起來組成一串數據,并將數據輸出;由于對Nand Flash相同塊和頁提取的不同組隨機數具有很大的相關性,為保證隨機數的熵值,對提取的數據進行處理,對數據進行異或運算或求模運算,將處理后的數據作為隨機數輸出;對相同塊和頁進行多組部分擦除操作提取隨機數,計算多組隨機數的信息熵,信息熵的穩定值與每組隨機數的大小相同,說明每組隨機數都是滿熵的;
所述重復編程法包括:首先對Nand Flash的1塊進行擦除操作,使該塊內所有頁存儲的信息均變為邏輯“1”,A頁和B頁是此塊內的物理上相鄰的兩頁;然后對該塊內的A頁進行重復編程操作,每次對A頁編程操作之后,對B頁進行讀操作,觀察B頁上的各存儲單元的是否發生了位翻轉現象,若B頁上的某存儲單元發生了位翻轉現象,記錄此時對A頁的編程次數;若對A頁若干次編程操作后,B頁上的某存儲單元未發生位翻轉,則記編程次數為0;當B頁的99%的存儲單元發生位翻轉時,將B頁的各個存儲單元發生位翻轉現象時,對應的A頁的重復編程數依次組合起來組成一串數據,并將數據輸出;由于對Nand Flash相同兩頁提取的不同組隨機數具有很大的相關性,為保證隨機數的熵值,對提取的數據進行處理,可采取對數據進行異或運算或求模運算,將處理后的數據作為隨機數輸出;對相同兩頁進行多組重復編程操作提取隨機數,計算多組隨機數的信息熵,信息熵的穩定值與每組隨機數的大小相同,說明每組隨機數都是滿熵的;
所述閃存芯片為Nor Flash芯片時,采用部分擦除法從Nor Flash芯片中提取滿熵隨機數,其方法為:首先確定每次部分擦除的時間T,然后對Nor Flash的1塊進行擦除操作,使該塊內所有存儲單元的信息均變為邏輯“1”,再對此塊進行編程操作,使該塊內所有存儲單元的信息均變為邏輯“0”,接下來對此塊進行多次部分擦除操作,每次持續時間T,每次部分擦除結束后,讀該塊內所有存儲單元的內容,判斷存儲單元是否發生位翻轉,若某存儲單元發生位翻轉,則記錄此時對此塊進行的部分擦除數;當此塊的99%的存儲單元發生位翻轉時,將各個存儲單元發生位翻轉現象時,對應的對此塊的部分擦除數依次組合起來組成一串數據,并將數據輸出;由于對Nor Flash相同塊提取的不同組隨機數具有很大的相關性,為保證隨機數的熵值,對提取的數據進行處理,對數據進行異或運算或求模運算,將處理后的數據作為隨機數輸出;對相同塊進行多組部分擦除操作提取隨機數,計算多組隨機數的信息熵,信息熵的穩定值與每組隨機數的大小相同,說明每組隨機數都是滿熵的。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院信息工程研究所,未經中國科學院信息工程研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510026059.2/1.html,轉載請聲明來源鉆瓜專利網。





