[發明專利]一種安全的生成隨機數的方法在審
| 申請號: | 202010020588.2 | 申請日: | 2020-01-09 |
| 公開(公告)號: | CN111240638A | 公開(公告)日: | 2020-06-05 |
| 發明(設計)人: | 楊勝天 | 申請(專利權)人: | 浙江工商大學 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 310012 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 安全 生成 隨機數 方法 | ||
1.一種安全的生成隨機數的方法,其特征在于,所述方法包括:
設信源為離散平穩無記憶信源,信源字符集為信源符號以相等的時間間隔逐一生成,信源生成的n長樣本序列記作xn=x1x2…xn;預設的算法參數包括保護帶分組長度k、輸出比特長度m、保護強度b(b為正整數)、算力指數c(c為正整數)、安全散列函數hash:{0,1}*→{0,1}h、有種提取器gm,m′:{0,1}m′×{0,1}d→{0,1}m和作為隨機數生成種子的二進制串sd=s1s2…sd;
步驟一、計算保護帶長度n′=2kn″,式中
步驟二、若n>n′,則轉至步驟三;否則,結束算法;
步驟三、將輸入序列xn分割為非保護帶序列和保護帶序列
步驟四、采用生成效率逼近信源熵率的隨機數生成方法對序列提取隨機性,得到二進制串
步驟五、令
式中,若l1≥2n″l0,則轉至步驟六;否則,結束算法;
步驟六、對序列按分組長度k進行分組,依次對每一分組進行處理輸出l0比特,并將所有的l0比特二進制串連接起來,得到二進制串其中所述對每一分組進行處理輸出l0比特的步驟具體為:
a.設第i分組為zk=z1z2…zk(1≤i≤2n″),計算多項式系數
及其二進制展開式中
計算序列zk所對應的整數
式中,
初始化變量r值為nA,初始化變量t值為B;
b.若r=0或t<γr2r,則轉至步驟c;否則,更新變量t值為t-γr2r,更新變量r值為r-1,重復步驟b;
c.輸出式中,[t]r為整數t的r比特二進制表示;
步驟七、計算彈性函數值
得到二進制串
步驟八、令二進制串以預設的基于安全散列函數hash的工作量證明函數計算二進制串
步驟九、計算并輸出二進制串
2.根據權利要求1所述的一種安全的生成隨機數的方法,其特征在于,所述以預設的基于安全散列函數hash的工作量證明函數計算二進制串的步驟具體為:
a.初始化變量r值為0,初始化變量t值為0,初始化變量t′值為2h;
b.計算二進制串式中[r]c為整數r的c比特二進制表示;令若w<t′,則更新變量t值為r,更新變量t′值為w;
c.更新變量r值為r+1;
d.若r<2c,則轉至步驟b,否則轉至步驟e;
e.輸出整數t的c比特二進制表示[t]c。
3.根據權利要求1所述的一種安全的生成隨機數的方法,其特征在于,所述采用生成效率逼近信源熵率的隨機數生成方法對序列提取隨機性的步驟具體為:
設非保護帶分組長度為k′≥k,對序列按分組長度k′進行分組,丟棄最后不足k′長度的符號;依次對每一分組提取隨機性,并將所有獲得的二進制串連接起來,得到二進制串其中所述對每一分組提取隨機性的步驟具體為:
a.假設第i分組為計算多項式系數
及其二進制展開式中
計算序列zk′所對應的整數
式中,
初始化變量r值為nC,初始化變量t值為D;
b.若r=0或t<γ′r2r,則轉至步驟c;否則,更新變量t值為t-γ′r2r,更新變量r值為r-1,重復步驟b;
c.輸出整數t的r比特二進制表示[t]r。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江工商大學,未經浙江工商大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010020588.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種智能自動氣推注射埋針機構
- 下一篇:編碼調度控制方法及調度控制器





