JP6916871B2 - 真の乱数を提供するための命令を実現するコンピュータ・プログラム製品、コンピュータ・システム、およびコンピュータ実装方法 - Google Patents
真の乱数を提供するための命令を実現するコンピュータ・プログラム製品、コンピュータ・システム、およびコンピュータ実装方法 Download PDFInfo
- Publication number
- JP6916871B2 JP6916871B2 JP2019514244A JP2019514244A JP6916871B2 JP 6916871 B2 JP6916871 B2 JP 6916871B2 JP 2019514244 A JP2019514244 A JP 2019514244A JP 2019514244 A JP2019514244 A JP 2019514244A JP 6916871 B2 JP6916871 B2 JP 6916871B2
- Authority
- JP
- Japan
- Prior art keywords
- raw
- adjusted
- value
- instruction
- entropy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 33
- 238000004590 computer program Methods 0.000 title claims description 20
- 230000006870 function Effects 0.000 claims description 180
- 238000012545 processing Methods 0.000 claims description 33
- 238000004422 calculation algorithm Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000009471 action Effects 0.000 description 12
- 239000000463 material Substances 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 239000003607 modifier Substances 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000010899 nucleation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
1つの例では、0の機能コードが問い合わせ機能を示す。問い合わせ機能を示すことに基づいて、状態ワード(例えば、128ビット)が、命令に関連付けられたパラメータ・ブロックに格納される。このフィールドのビット0〜127は、乱数動作実行命令の機能コード0〜127にそれぞれ対応する。ビットが1である場合、対応する機能がインストールされ、そうでない場合、その機能はインストールされない。例えば、SHA−512−DRNG機能がインストールされる場合、ビット3(機能コード3に対応する)が1に設定される。同様に、TRNG−生と調整済みの間の比率問い合わせ機能がインストールされる場合、ビット112(機能コード112に対応する)が1に設定され、TRNG動作がインストールされる場合、ビット114(機能コード114に対応する)が1に設定される。
問い合わせ機能の実行が完了したときに、条件コード0が設定され、条件コード3(例えば、機能の部分的完了を指定する)は、問い合わせ機能には適用できない。
1つの実装では、3の機能コードが、実行される決定論的乱数発生器(DRNG:deterministic random number generator)機能を指定する。変更子制御322(例えば、汎用レジスタ0のビット56)に応じて、DRNG機能は、決定論的疑似乱数生成動作または決定論的疑似乱数シード動作のいずれかを実行し、これらの各動作は、例えば512ビットのセキュア・ハッシュ・アルゴリズム(SHA−512)を使用する。
決定論的疑似乱数生成(決定論的ランダム・ビット生成とも呼ばれる)は、例えば、Recommendation for Random Number Generation Using Deterministic Random Bit Generators, National Institute of Standards and Technology (NIST), NIST Special Publication 800-90A, January 2012において定義されている。さらに、セキュア・ハッシュ・アルゴリズムの説明が、例えば、Secure Hash Standard (SHS), Federal Information Processing Standards Publication, FIPS PUB 180-4, National Institute of Standards and Technology, Gaithersburg, MD, March 2012に見られる。
予備:パラメータ・ブロックのバイト0〜3、16、および128は予備である。
再シード・カウンタ:パラメータ・ブロックのバイト4〜7は、パラメータ・ブロックが最後にインスタンス化または再シードされてからの、命令が条件コード0を伴って完了した回数を示す32ビット符号なし2進整数を含む。
* シード動作の実行が、再シード・カウンタを1の値に設定することを含む、初期値を使用したパラメータ・ブロックのインスタンス化を引き起こす。
* 生成動作の実行が、指定例外が認識されることを引き起こす。
* シード動作の実行が、再シード・カウンタを1の値にリセットすることを含む、パラメータ・ブロックの再シードを引き起こす。
* 条件コード0をもたらす生成動作の実行が、再シード・カウンタが1だけインクリメントされることを引き起こし、再シード・カウンタ・フィールドのビット位置0の繰り上げが無視される。
* インスタンス化動作の場合、ストレージ内の第2のオペランドが、エントロピー入力、ノンス、オプションのパーソナライゼーション文字列のうちの1つまたは複数を含み、これらはそれぞれ、下で説明される。この情報は、シードの材料を形成するために使用される。
* 再シード動作の場合(再シードは、DRBGメカニズムの内部状態に影響を与える追加ビットを取得する)、ストレージ内の第2のオペランドは、シードの材料を形成するために使用される、エントロピー入力およびオプションの追加の入力を含む。オプションの追加の入力は、ランダム性をさらに追加する、例えば時間値またはその他の任意の値などの、任意の望ましい情報であってよい。
1.パラメータ・ブロックからの値(V)が、処理されているブロック番号に加算され、加算によって発生した桁あふれは無視される。
2.この加算の合計111バイトが、埋め込みの17バイトと連結されて、例えばSHA−512アルゴリズムへの入力として使用され、64バイトのハッシュ値が得られる。SHA−512アルゴリズムに提供される17バイトの埋め込みは、16進数の80の値の後に888(ビット単位のVの長さ)の16バイトの2進整数値が続いて構成される。
3.汎用レジスタR1+1内の第1のオペランドの長さが64の倍数である場合、得られた64バイトのハッシュ値が、第1のオペランドの位置の各ブロックに格納され、汎用レジスタR1+1内の長さが64だけデクリメントされる。
第1のオペランドの長さが64の倍数でない場合、得られた64バイトのハッシュ値の左端のmバイトが、第1のオペランドの右端の部分的なブロックに格納され、mは第1のオペランドの長さを64で割った余りを表す。この場合、汎用レジスタR1+1内の長さがmだけデクリメントされる。
4.完全なブロックまたは部分的なブロックのいずれが格納されるかに関わらず、パラメータ・ブロックの例えばバイト8〜15内のストリーム・バイト・フィールドが、第1のオペランドの位置に格納されたバイトの数だけインクリメントされる。
1.16進数の03の1バイト値、パラメータ・ブロックからの111バイト値(V)、および埋め込みの144バイトが、例えばSHA−512アルゴリズムへの入力として使用され、64バイトのハッシュ値が得られる。埋め込みは、16進数の80が、127バイトの0と連結され、埋め込みを含んでいないSHA−512アルゴリズムへの入力のビット単位の長さ(すなわち、16進数の03の1バイト値およびVフィールドの長さ)を指定する16バイトの2進整数と連結された値で構成される。パラメータ・ブロック内の4バイトの再シード・カウンタ・フィールドならびに111バイト値(V)および定数(C)フィールドの値と、(上の計算からの)64バイトのハッシュ値とが加算される。この加算の目的で、各値が、符号なし2進整数として扱われ、必要に応じて0を使用して左に拡張される。加算によって発生した桁あふれは無視され、得られた合計111バイトが、パラメータ・ブロック内の値フィールド(Vnew)を置き換える。
2.パラメータ・ブロック内の4バイトの再シード・カウンタ・フィールドが、1だけインクリメントされる。
3.条件コード0が設定される。
乱数動作実行命令の別の使用可能な機能は、TRNG生と調整済みの間の比率問い合わせ機能である。1つの実装では、乱数動作実行命令の機能コード324が112である場合、TRNG生と調整済みの間の比率問い合わせ機能が使用されて、TRNG機能によって両方の種類のエントロピーが要求されたときに生成される生のエントロピーと調整済みエントロピーの間の比率を決定してよい。
さらに、乱数動作実行命令の機能コードが114である場合、TRNG機能が実行される。例えば、一連のハードウェアによって生成された乱数が、第1のオペランドの位置および第2のオペランドの位置のいずれかまたは両方に格納される。一実施形態では、この機能の場合、パラメータ・ブロックは使用されず、汎用レジスタ1が無視される。
R1フィールドが、偶数と奇数の汎用レジスタ対を指定する。偶数番号が付けられたレジスタは、第1のオペランドの左端のバイトのアドレスを含み、奇数番号が付けられたレジスタは、第1のオペランドの長さを含む。第1のオペランドは、例えばハードウェア・ソース(例えば、騒音源)によって直接生成される、生のエントロピーの形態での乱数を含む。
R2フィールドが、偶数と奇数の汎用レジスタ対を指定する。偶数番号が付けられたレジスタは、第2のオペランドの左端のバイトのアドレスを含み、奇数番号が付けられたレジスタは、第2のオペランドの長さを含む。第2のオペランドは、生のエントロピー源から抽出された乱数を含み、その後、承認されたアルゴリズムによって調整される(例えば、SHA−256アルゴリズムに基づいてPRNGによって処理される)。
Claims (20)
- コンピュータ・プログラムであって、コンピュータに、
実行される命令を取得することであって、前記命令が、生のエントロピーまたは調整済みエントロピーあるいはその両方を生成する真の乱数発生器の機能を含む複数の機能を実行するように構成された単一の設計されたマシン命令である、前記取得することと、
前記命令を実行することとを含んでおり、前記実行することが、
選択された値を含んでいる前記命令に関連付けられた機能コードに基づいて、前記命令の1つまたは複数の入力をチェックして、前記複数の機能のうちのどの1つまたは複数の機能が実行されるかを決定することと、
第1の値を含んでいる前記1つまたは複数の入力のうちの第1の入力に基づいて、生のエントロピーを提供する機能を実行することであって、前記生のエントロピーを提供することが、ある数の生の乱数を格納することを含んでいる、前記機能を実行することと、
第2の値を含んでいる前記1つまたは複数の入力のうちの第2の入力に基づいて、調整済みエントロピーを提供する別の機能を実行することであって、前記調整済みエントロピ
ーを提供することが、ある数の調整済み乱数を格納することを含んでいる、前記別の機能を実行することと
を行わせるための、コンピュータ・プログラム。 - 前記数の生の乱数が、プログラムによって指定された数の生の乱数を含んでいる、請求項1に記載のコンピュータ・プログラム。
- 前記数の調整済み乱数が、プログラムによって指定された数の調整済み乱数を含んでいる、請求項1に記載のコンピュータ・プログラム。
- 前記機能コードが、前記命令に関連付けられたレジスタ内で提供され、前記1つまたは複数の入力が、前記命令によって示された1つまたは複数のレジスタ内で提供される、請求項1に記載のコンピュータ・プログラム。
- 前記1つまたは複数の入力が、少なくとも1つの長さの値を含んでいる、請求項1に記載のコンピュータ・プログラム。
- 前記1つまたは複数の入力が第1の長さの値および第2の長さの値を含んでおり、前記チェックすることが、前記第1の長さの値および前記第2の長さの値をチェックすることを含んでおり、前記第1の値を含んでいる前記第1の長さの値に基づいて、前記数の生の乱数を格納し、前記第2の値を含んでいる前記第2の長さの値に基づいて、前記数の調整済み乱数を格納する、請求項1に記載のコンピュータ・プログラム。
- 前記第1の値が0より大きい値であり、前記第2の値が0より大きい値である、請求項6に記載のコンピュータ・プログラム。
- 別の選択された値を含んでいる前記機能コードに基づいて、生と調整済みの間の比率を提供する、請求項1に記載のコンピュータ・プログラム。
- 前記生と調整済みの間の比率が、あるバイト数の生のエントロピーが、対応するバイト数の調整済みエントロピーを生成するために使用されることを示す、請求項8に記載のコンピュータ・プログラム。
- 前記生と調整済みの間の比率を前記提供することが、前記バイト数の生のエントロピーのカウントをパラメータ・ブロックの1つの位置に格納すること、および前記バイト数の調整済みエントロピーのカウントを前記パラメータ・ブロックの別の位置に格納することを含む、請求項9に記載のコンピュータ・プログラム。
- コンピューティング環境内の処理を容易にするためのコンピュータ・システムであって、
メモリと、
前記メモリと通信するプロセッサとを備えており、前記コンピュータ・システムが方法を実行するように構成されており、前記方法が、
実行される命令を取得することであって、前記命令が、生のエントロピーまたは調整済みエントロピーあるいはその両方を生成する真の乱数発生器の機能を含む複数の機能を実行するように構成された単一の設計されたマシン命令である、前記取得することと、
前記命令を実行することとを含んでおり、前記実行することが、
選択された値を含んでいる前記命令に関連付けられた機能コードに基づいて、前記命令の1つまたは複数の入力をチェックして、前記複数の機能のうちのどの1つまたは複数の機能が実行されるかを決定することと、
第1の値を含んでいる前記1つまたは複数の入力のうちの第1の入力に基づいて、生のエントロピーを提供する機能を実行することであって、前記生のエントロピーを提供することが、ある数の生の乱数を格納することを含んでいる、前記機能を実行することと、
第2の値を含んでいる前記1つまたは複数の入力のうちの第2の入力に基づいて、調整済みエントロピーを提供する別の機能を実行することであって、前記調整済みエントロピーを提供することが、ある数の調整済み乱数を格納することを含んでいる、前記別の機能を実行することと
を含んでいる、コンピュータ・システム。 - 前記数の生の乱数が、プログラムによって指定された数の生の乱数を含んでおり、前記数の調整済み乱数が、プログラムによって指定された数の調整済み乱数を含んでいる、請求項11に記載のコンピュータ・システム。
- 前記機能コードが、前記命令に関連付けられたレジスタ内で提供され、前記1つまたは複数の入力が、前記命令によって示された1つまたは複数のレジスタ内で提供される、請求項11に記載のコンピュータ・システム。
- 前記1つまたは複数の入力が第1の長さの値および第2の長さの値を含んでおり、前記チェックすることが、前記第1の長さの値および前記第2の長さの値をチェックすることを含んでおり、前記第1の値を含んでいる前記第1の長さの値に基づいて、前記数の生の乱数を格納し、前記第2の値を含んでいる前記第2の長さの値に基づいて、前記数の調整済み乱数を格納する、請求項11に記載のコンピュータ・システム。
- 別の選択された値を含んでいる前記機能コードに基づいて、生と調整済みの間の比率を提供し、前記生と調整済みの間の比率が、あるバイト数の生のエントロピーが、対応するバイト数の調整済みエントロピーを生成するために使用されることを示す、請求項11に記載のコンピュータ・システム。
- コンピュータで行う方法であって、
実行される命令を取得することであって、前記命令が、生のエントロピーまたは調整済みエントロピーあるいはその両方を生成する真の乱数発生器の機能を含む複数の機能を実行するように構成された単一の設計されたマシン命令である、前記取得することと、
前記命令を実行することとを含んでおり、前記実行することが、
選択された値を含んでいる前記命令に関連付けられた機能コードに基づいて、前記命令の1つまたは複数の入力をチェックして、前記複数の機能のうちのどの1つまたは複数の機能が実行されるかを決定することと、
第1の値を含んでいる前記1つまたは複数の入力のうちの第1の入力に基づいて、生のエントロピーを提供する機能を実行することであって、前記生のエントロピーを提供することが、ある数の生の乱数を格納することを含んでいる、前記機能を実行することと、
第2の値を含んでいる前記1つまたは複数の入力のうちの第2の入力に基づいて、調整済みエントロピーを提供する別の機能を実行することであって、前記調整済みエントロピーを提供することが、ある数の調整済み乱数を格納することを含んでいる、前記別の機能を実行することと
を含んでいる、コンピュータで行う方法。 - 前記数の生の乱数が、プログラムによって指定された数の生の乱数を含んでおり、前記数の調整済み乱数が、プログラムによって指定された数の調整済み乱数を含んでいる、請求項16に記載のコンピュータで行う方法。
- 前記機能コードが、前記命令に関連付けられたレジスタ内で提供され、前記1つまたは
複数の入力が、前記命令によって示された1つまたは複数のレジスタ内で提供される、請求項16に記載のコンピュータで行う方法。 - 前記1つまたは複数の入力が第1の長さの値および第2の長さの値を含んでおり、前記チェックすることが、前記第1の長さの値および前記第2の長さの値をチェックすることを含んでおり、前記第1の値を含んでいる前記第1の長さの値に基づいて、前記数の生の乱数を格納し、前記第2の値を含んでいる前記第2の長さの値に基づいて、前記数の調整済み乱数を格納する、請求項16に記載のコンピュータで行う方法。
- 別の選択された値を含んでいる前記機能コードに基づいて、生と調整済みの間の比率を提供し、前記生と調整済みの間の比率が、あるバイト数の生のエントロピーが、対応するバイト数の調整済みエントロピーを生成するために使用されることを示す、請求項16に記載のコンピュータで行う方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/281,159 US10235138B2 (en) | 2016-09-30 | 2016-09-30 | Instruction to provide true random numbers |
US15/281,159 | 2016-09-30 | ||
PCT/EP2017/074329 WO2018060180A1 (en) | 2016-09-30 | 2017-09-26 | Instruction to provide true random numbers |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019537091A JP2019537091A (ja) | 2019-12-19 |
JP6916871B2 true JP6916871B2 (ja) | 2021-08-11 |
Family
ID=60022065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019514244A Active JP6916871B2 (ja) | 2016-09-30 | 2017-09-26 | 真の乱数を提供するための命令を実現するコンピュータ・プログラム製品、コンピュータ・システム、およびコンピュータ実装方法 |
Country Status (12)
Country | Link |
---|---|
US (1) | US10235138B2 (ja) |
EP (1) | EP3519941B1 (ja) |
JP (1) | JP6916871B2 (ja) |
CN (1) | CN109804347B (ja) |
AU (1) | AU2017336193B2 (ja) |
BR (1) | BR112019006625B1 (ja) |
CA (1) | CA3036108A1 (ja) |
HU (1) | HUE053728T2 (ja) |
IL (1) | IL265551B (ja) |
PL (1) | PL3519941T3 (ja) |
TW (1) | TWI650708B (ja) |
WO (1) | WO2018060180A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10235138B2 (en) * | 2016-09-30 | 2019-03-19 | International Business Machines Corporation | Instruction to provide true random numbers |
US10333708B1 (en) * | 2017-02-03 | 2019-06-25 | Amazon Technologies, Inc. | Hybrid random-number generator |
US10970417B1 (en) * | 2017-09-01 | 2021-04-06 | Workday, Inc. | Differential privacy security for benchmarking |
CN110083386B (zh) * | 2019-04-04 | 2024-03-19 | 平安普惠企业管理有限公司 | 随机数产生控制方法、装置、计算机设备及存储介质 |
TWI752491B (zh) * | 2020-05-08 | 2022-01-11 | 黃杏怡 | 量子隨機數產生裝置 |
US11792233B1 (en) | 2022-08-07 | 2023-10-17 | Uab 360 It | Securing network devices against network vulnerabilities |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954770B1 (en) | 2001-08-23 | 2005-10-11 | Cavium Networks | Random number generator |
JP4248950B2 (ja) | 2003-06-24 | 2009-04-02 | 株式会社ルネサステクノロジ | 乱数発生装置 |
US7890561B2 (en) | 2005-08-16 | 2011-02-15 | International Business Machines Corporation | Random number generator |
US8595277B2 (en) | 2008-02-13 | 2013-11-26 | Infineon Technologies Ag | Hybrid random number generator |
US8131789B2 (en) | 2008-03-28 | 2012-03-06 | Atmel Corporation | True random number generator |
US8539009B2 (en) * | 2008-12-16 | 2013-09-17 | Lsi Corporation | Parallel true random number generator architecture |
US8489660B2 (en) * | 2009-06-26 | 2013-07-16 | Intel Corporation | Digital random number generator using partially entropic data |
US10521231B2 (en) * | 2010-06-24 | 2019-12-31 | International Business Machines Corporation | Function virtualization facility for blocking instruction function of a multi-function instruction of a virtual processor |
CN102176199B (zh) * | 2011-01-28 | 2013-06-19 | 中国科学院西安光学精密机械研究所 | 一种真随机数产生方法及装置 |
ES2530944T3 (es) * | 2011-04-05 | 2015-03-09 | Intrinsic Id Bv | Sistema de generación de números aleatorios basándose en el ruido de arranque de una memoria |
EP2798771A4 (en) | 2011-12-29 | 2015-10-07 | Intel Corp | METHOD AND APPARATUS FOR NON-DETERMINISTIC RAND BIT GENERATOR (NRBG) |
US8879733B2 (en) | 2012-07-10 | 2014-11-04 | Infineon Technologies Ag | Random bit stream generator with guaranteed minimum period |
TWI506540B (zh) | 2012-07-19 | 2015-11-01 | Nuvoton Technology Corp | 亂數產生電路與方法 |
US9304740B2 (en) | 2012-10-09 | 2016-04-05 | King Abdullah University Of Science And Technology | Chaos-based pseudo-random number generation |
US20140108478A1 (en) | 2012-10-15 | 2014-04-17 | Qualcomm Incorporated | Magnetic tunnel junction based random number generator |
US9311051B2 (en) * | 2013-01-10 | 2016-04-12 | Advanced Micro Devices, Inc. | Hardware random number generator |
US9152380B2 (en) * | 2013-03-12 | 2015-10-06 | Qualcomm Incorporated | Interrupt driven hardware random number generator |
US8873750B2 (en) * | 2013-03-14 | 2014-10-28 | International Business Machines Corporation | Instruction for performing a pseudorandom number generate operation |
US9201629B2 (en) * | 2013-03-14 | 2015-12-01 | International Business Machines Corporation | Instruction for performing a pseudorandom number seed operation |
US9449197B2 (en) | 2013-06-13 | 2016-09-20 | Global Foundries Inc. | Pooling entropy to facilitate mobile device-based true random number generation |
US9444580B2 (en) * | 2013-08-06 | 2016-09-13 | OptCTS, Inc. | Optimized data transfer utilizing optimized code table signaling |
CN104572014B (zh) | 2013-10-15 | 2019-02-22 | 恩智浦美国有限公司 | 具有重复激活的振荡器的真随机数生成器 |
CN104216678B (zh) * | 2014-09-18 | 2017-11-07 | 中国科学技术大学 | 一种无偏真随机数发生器及随机数生成方法 |
CN104317551A (zh) * | 2014-10-17 | 2015-01-28 | 北京德加才科技有限公司 | 一种超高安全的真随机数生成方法及真随机数生成系统 |
US10235138B2 (en) * | 2016-09-30 | 2019-03-19 | International Business Machines Corporation | Instruction to provide true random numbers |
-
2016
- 2016-09-30 US US15/281,159 patent/US10235138B2/en active Active
-
2017
- 2017-09-26 CA CA3036108A patent/CA3036108A1/en active Pending
- 2017-09-26 BR BR112019006625-0A patent/BR112019006625B1/pt active IP Right Grant
- 2017-09-26 PL PL17780343T patent/PL3519941T3/pl unknown
- 2017-09-26 CN CN201780058438.7A patent/CN109804347B/zh active Active
- 2017-09-26 HU HUE17780343A patent/HUE053728T2/hu unknown
- 2017-09-26 JP JP2019514244A patent/JP6916871B2/ja active Active
- 2017-09-26 EP EP17780343.4A patent/EP3519941B1/en active Active
- 2017-09-26 AU AU2017336193A patent/AU2017336193B2/en active Active
- 2017-09-26 WO PCT/EP2017/074329 patent/WO2018060180A1/en unknown
- 2017-09-29 TW TW106133568A patent/TWI650708B/zh active
-
2019
- 2019-03-22 IL IL265551A patent/IL265551B/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
CA3036108A1 (en) | 2018-04-05 |
AU2017336193B2 (en) | 2019-09-26 |
CN109804347A (zh) | 2019-05-24 |
PL3519941T3 (pl) | 2021-07-05 |
IL265551A (en) | 2019-05-30 |
WO2018060180A1 (en) | 2018-04-05 |
AU2017336193A1 (en) | 2019-04-04 |
HUE053728T2 (hu) | 2021-07-28 |
IL265551B (en) | 2021-01-31 |
EP3519941A1 (en) | 2019-08-07 |
BR112019006625A2 (pt) | 2019-07-02 |
TWI650708B (zh) | 2019-02-11 |
JP2019537091A (ja) | 2019-12-19 |
CN109804347B (zh) | 2023-03-24 |
US20180095729A1 (en) | 2018-04-05 |
EP3519941B1 (en) | 2021-03-03 |
BR112019006625B1 (pt) | 2022-05-03 |
US10235138B2 (en) | 2019-03-19 |
TW201816602A (zh) | 2018-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6916871B2 (ja) | 真の乱数を提供するための命令を実現するコンピュータ・プログラム製品、コンピュータ・システム、およびコンピュータ実装方法 | |
US10133575B2 (en) | Instruction for performing a pseudorandom number generate operation | |
JP6395737B2 (ja) | 擬似乱数シード操作を実施するための命令 | |
TWI642294B (zh) | 具有鑑認指令之密碼訊息之電腦程式產品、系統及方法 | |
JP6986556B2 (ja) | コンピューティング環境内の処理を容易にするためのコンピュータ・プログラム製品、コンピュータ・システム、およびコンピュータ実装方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190521 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200130 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210407 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210713 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210716 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6916871 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |