JP6372295B2 - 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 - Google Patents
物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 Download PDFInfo
- Publication number
- JP6372295B2 JP6372295B2 JP2014210969A JP2014210969A JP6372295B2 JP 6372295 B2 JP6372295 B2 JP 6372295B2 JP 2014210969 A JP2014210969 A JP 2014210969A JP 2014210969 A JP2014210969 A JP 2014210969A JP 6372295 B2 JP6372295 B2 JP 6372295B2
- Authority
- JP
- Japan
- Prior art keywords
- random number
- score
- circuit
- physical random
- scores
- 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
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
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Tests Of Electronic Circuits (AREA)
Description
解析マシン20は、コンピュータ装置で実現される。解析マシン20は、シャッフリングテストを行うシャッフリングテスト部21と、統計テストを行う統計テスト部22と、判定部23と、を有する。解析マシン20は、テスト対象の物理乱数生成器10から乱数を100万ビット以上取得し、この乱数をシャッフリングテストおよび統計テストにかけ、両方ともに合格の場合IIDテスト合格とする。
ステップS10で、物理乱数生成器10の生成する100万ビット以上(ここでは100万ビットとする)の乱数列を取得する。
ステップS12で、10等分した各乱数列(10万ビット乱数列)に対して、それぞれステップS23までの以下の処理を実行するための設定を行う。
ステップS14で、ステップS18までの以下の処理を1000回繰り返すための設定を行う。
ステップS16で、シャッフルして生成した変異乱数列の11種のスコアを計算する。
ステップS18で、繰り返し回数が1000回になったかを判定し、1000回になるまでS14からS15を繰り返す。
ステップS20で、ステップS13で計算したシャッフル前の10万ビット乱数列の各スコア(ここでは原スコア)と、昇順ソートした各種のリストを比較する。
ステップS22で、51位〜949位中に入らなかった原スコアにマークする。言い換えれば、1000個のスコアのリストにおいて、原スコアが、51位〜949位の範囲であればマークを付さず、50位以下または950位以上であればマークを付す。
以上のようにして、各種の10個の原スコアについて、マークを付すか否かの処理が完了する。
ステップS26で、テスト対象の物理乱数生成器10を不合格と判定し、ステップS27に進み、終了する。
物理乱数生成器は、サブセット乱数格納部31と、シャッフル回路32と、シャッフル乱数格納部33と、スコア計算回路34と、スコア格納部35と、ソート回路36と、スコアリスト格納部37と、合否判定回路38と、を有する。これらは、オンチップのコンピュータシステムで実現される。
図5に示すように、4,687,480ビットの容量が必要であり、大きなメモリコストとなる。
ステップS15のシャッフル計算の合計が、10回×乱数1,000個=10,000回である。
ステップS13およびS16のスコア計算の合計が、10回×乱数1,001個×スコア11種=110,110回である。
第1実施形態の物理乱数生成器40は、物理乱数生成回路41と、レジスタ42と、Repetition Count Test回路43と、Adaptive Proportion Test回路44と、制御回路45と、解析テスト部46と、を有する。物理乱数生成回路41、レジスタ42、Repetition Count Test回路43、Adaptive Proportion Test回路44および制御回路45は、図1で説明した対応する要素と同じであり、説明は省略する。
物理乱数生成器40に対して、図3に手順を示したシャッフリングテストを含む[SP800-90B]のIIDテストを実行する。IIDテストの結果が不合格であれば、物理乱数生成器40は破棄され、出荷されない。IIDテストの結果が合格であれば、図3のステップS19で得られたソート済みの変異乱数列のスコアリストの上から51番目および949番目をスコア種別ごとに取得し、物理乱数生成器40のスコアリスト格納部54に書き込む。スコアリストは、10×10万ビット乱数列に対して生成されるので、10組のスコア群が生成される。以下、上から51番目のスコア群を上位境界スコア、949番目のスコア群を下位境界スコアと呼ぶ。
スコア群60−1は、スコアセット01を記憶し、スコアセット01の11種のスコア群Score_01〜Score_11の上位境界スコア61−1および62−1と、下位境界スコア63−1および63−1とを記憶する。言い換えれば、11種の上位境界スコアと11種の下位境界スコアを記憶する。他のスコア群60−2〜60−10も同様である。
ステップS31で、ステップS35までの処理を10回繰り返すための初期設定を行う。
ステップS32で、物理乱数生成回路41が10万ビットの乱数列を生成し、レジスタ42に格納する。
ステップS34で、スコア計算回路52が、計算したスコアをスコア格納部53に格納する。
以上の処理により、スコア格納部53に、11種のスコアが10セット格納される。
ステップS37で、スコア比較回路55が、スコアリスト格納部54から上位境界スコア(11種)・下位境界スコア(11種)を1セット取り出し、スコア格納部53に格納された1セットの11種のスコアを取出し、比較する。
ステップS39で、スコア比較回路55は、上位境界スコアと下位境界スコアの間でなかったスコアにマークを付す。
ステップS40で、繰り返し回数が10回になったかを判定し、10回になるまでS36からS40を繰り返す。
ステップS42で、合否判定回路56は、合格と判定し、ステップS44に進んで終了する。
ステップS43で、合否判定回路56は、不合格と判定し、ステップS44に進んで終了する。
図10は、第2実施形態の物理乱数生成器40が、出荷後、利用者によって物理乱数生成を求められたときに実行する手順を示すフローチャートである。
ステップS52で、スコア別の合格数レジスタをすべてゼロにリセットする。
ステップS52で、ステップS60までの処理を10回繰り返すための初期設定を行う。
ステップS53で、物理乱数生成回路41が10万ビットの乱数列を生成し、レジスタ42に格納する。
ステップS55で、スコア比較回路55が、スコアリスト格納部54から上位境界スコア(11種)・下位境界スコア(11種)を1セット取り出し、計算した11種のスコアを、上位境界スコア・下位境界スコアと比較する。
ステップS57で、スコア比較回路55は、スコアごとに、上位境界スコアと下位境界スコアの間でなかった場合、合格数レジスタを1増加する。
ステップS59で、合否判定回路56は、合格と判定し、ステップS62に進んで終了する。
ステップS61で、合否判定回路56は、不合格と判定し、ステップS62に進んで終了する。
以上説明したように、第2実施形態では、すべてのスコアについて3回以上合格が出た場合には正常であることが判明するので、シャッフリングテストを打ち切ることにより、テスト速度を向上させることができる。
図11は、物理乱数生成器を使用した暗号演算機能を持つ電子装置の構成例を示す図である。
物理乱数生成器を必要とする電子装置は、主に暗号機能を含む製品であり、そのような電子装置では、コンピュータが暗号演算装置72の生成する暗号を使用した処理、例えば認証処理の認証結果に応じた処理を行う。暗号機能を含む製品の具体例としてが、携帯電話、スマートカード、コンピュータ、プリンタ等が挙げられる、さらに、ゲーム機なども生成した物理乱数を利用しており、ゲーム機などの電子装置でも、第1および第2実施形態の物理乱数生成器の使用が有効である。
41 物理乱数生成回路
42 レジスタ
43 Repetition Count Test回路
44 Adaptive Proportion Test 回路
45 制御回路
46 解析テスト部
47 シャッフリングテスト部
48 統計テスト部
49 判定部
51 サブセット乱数格納部
52 スコア計算回路
53 スコア格納部
54 スコアリスト格納部
55 スコア比較回路
56 合否判定回路
Claims (9)
- 物理乱数生成回路の品質テスト方法であって、
初期乱数列をシャッフリングすることにより生成された複数の変異乱数列それぞれの複数種類のスコアについて、種類毎にスコアの分布範囲を規定する上限値と下限値を記憶し、
複数の検証乱数列を生成し、
前記複数の検証乱数列のそれぞれについて前記複数種類のスコアを計算し、
前記検証乱数列の前記複数スコアを、前対応する種類の前記上限値及び前記下限値と比較し、
前記種類毎に、前記検証乱数列の前記複数スコアが、前記分布範囲内に分布する頻度を判定し、
前記分布する頻度に基づいて、品質が不良であるか否かを判定し、
前記初期乱数列のシャッフリングにより生成した複数の変異乱数列の複数のスコアについての前記上限値及び下限値の生成および記憶は、前記物理乱数生成回路の製造時に行い、
前記検証乱数列の生成および品質の判定は、前記物理乱数生成回路の出荷後の通常使用時に行うことを特徴とする物理乱数生成回路の品質テスト方法。 - 前記検証乱数列の前記複数スコアの値の計算を行うごとに、各スコアについての前記分布範囲に対して分布するか否かを判定し、
複数回の判定結果から品質が不良であるか否かの判定が完了した時点で、前記検証乱数列の生成を停止する請求項1に記載の物理乱数生成回路の品質テスト方法。 - 前記初期乱数列は、100万ビット以上の乱数列であり、
前記初期乱数列を10等分した乱数列の複数種類のスコアの分布範囲を規定する10セットの値を記憶する請求項1または2に記載の物理乱数生成回路の品質テスト方法。 - 前記変異乱数列は、1000個生成され、
スコアは、11種類であり、
各種類について1000個のスコア値の分布が計算され、前記分布の上位5%および下位5%の境界値がそれぞれ前記上限値及び下限値として記憶され、
前記検証乱数列は10回生成され、
スコア種類について、8個の値が、前記上位5%の境界値より大きいかまたは前記下位5%の境界値より小さい場合に、不良であると判定する請求項1から3のいずれか1項に記載の物理乱数生成回路の品質テスト方法。 - 物理乱数生成回路と、
前記物理乱数生成回路が生成した初期乱数列をシャッフリングすることにより生成された複数の変異乱数列それぞれの複数種類のスコアについて、前記種類ごとにスコアの分布範囲を規定する上限値及び下限値を記憶するスコアリスト格納部と、
前記物理乱数生成回路が生成した検証乱数列を記憶するサブセット乱数格納部と、
前記サブセット乱数格納部に記憶された前記検証乱数列の前記複数種類のそれぞれについてスコアを計算するスコア計算回路と、
前記スコア計算回路により計算された複数の前記検証乱数列の前記複数スコアの値を、前記スコアリスト格納部に記憶された前記上限値及び下限値と比較し、前記種類毎に、前記検証乱数列の前記複数スコアが、前記分布範囲に対して分布する頻度を判定する比較回路と、
前記比較回路の比較結果に基づいて、前記物理乱数生成回路の品質が不良であるか否かを判定する合否判定回路と、を有し、
前記スコアリスト格納部への値の記憶は、当該物理乱数生成回路の製造時に行うことを特徴とする乱数生成器。 - 前記比較回路は、前記検証乱数列の前記複数スコアの値の演算を行うごとに、各スコアについての前記分布範囲に対して分布するか否かを判定し、
前記合否判定回路は、複数回の判定結果から品質が不良であるか否かの判定が完了した時点で、前記検証乱数列の生成を停止する請求項5に記載の乱数生成器。 - 前記初期乱数列は、100万ビット以上の乱数列であり、前記初期乱数列を10等分した前記複数の変異乱数列の複数種類のスコアについて、前記種類毎の前記分布範囲を規定する10セットの値を記憶する請求項5または6に記載の乱数生成器。
- 前記変異乱数列は、1000個生成され、
スコアは、11種類であり、
前記スコアリスト格納部は、各種類について1000個のスコア値の分布が演算され、前記分布の上位5%および下位5%の境界の値を、前記分布範囲を規定する値として記憶し、
前記検証乱数列は10回生成され、
前記合否判定回路は、各種類について、8個の値が、前記上位5%の境界値より大きいかまたは前記下位5%の境界値より小さい場合に、不良であると判定する請求項5から7のいずれか1項に記載の乱数生成器。 - 乱数生成器と、
前記乱数生成器の生成した乱数を利用した処理を行う処理部と、を有し、
前記乱数生成器は、
物理乱数生成回路と、
前記物理乱数生成回路が生成した初期乱数列をシャッフリングすることにより生成された複数の変異乱数列それぞれの複数種類のスコアについて、前記種類ごとにスコアの分布範囲を規定する上限値及び下限値を記憶するスコアリスト格納部と、
前記物理乱数生成回路が生成した検証乱数列を記憶するサブセット乱数格納部と、
前記サブセット乱数格納部に記憶された前記検証乱数列の前記複数種類のそれぞれについてスコアを計算するスコア計算回路と、
前記スコア計算回路により計算された複数の前記検証乱数列の前記複数スコアの値を、前記スコアリスト格納部に記憶された前記上限値及び下限値と比較し、前記種類毎に、前記検証乱数列の前記複数スコアが、前記分布範囲に対して分布する頻度を判定する比較回路と、
前記比較回路の比較結果に基づいて、前記物理乱数生成回路の品質が不良であるか否かを判定する合否判定回路と、を有し、
前記スコアリスト格納部への値の記憶は、当該物理乱数生成回路の製造時に行うことを特徴とする電子装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014210969A JP6372295B2 (ja) | 2014-10-15 | 2014-10-15 | 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 |
US14/847,078 US20160110165A1 (en) | 2014-10-15 | 2015-09-08 | Quality detecting method, random number generator, and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014210969A JP6372295B2 (ja) | 2014-10-15 | 2014-10-15 | 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016081247A JP2016081247A (ja) | 2016-05-16 |
JP6372295B2 true JP6372295B2 (ja) | 2018-08-15 |
Family
ID=55749132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014210969A Active JP6372295B2 (ja) | 2014-10-15 | 2014-10-15 | 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20160110165A1 (ja) |
JP (1) | JP6372295B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6918582B2 (ja) * | 2017-06-02 | 2021-08-11 | パナソニック株式会社 | 乱数性検証システム及び乱数性検証方法 |
US11055065B2 (en) * | 2018-04-18 | 2021-07-06 | Ememory Technology Inc. | PUF-based true random number generation system |
JP7122722B2 (ja) * | 2019-07-25 | 2022-08-22 | ▲しゃーん▼碼科技股▲ふん▼有限公司 | 高速暗号化鍵生成エンジン |
CN113094677B (zh) * | 2021-06-10 | 2021-10-01 | 天聚地合(苏州)数据股份有限公司 | 身份验证方法、装置、存储介质及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868630B1 (en) * | 2011-03-18 | 2014-10-21 | Board Of Regents Of The University Of Texas System | Verification of pseudorandom number streams |
JP2014075082A (ja) * | 2012-10-05 | 2014-04-24 | Renesas Electronics Corp | 乱数生成器および乱数生成方法 |
US9075674B2 (en) * | 2012-12-12 | 2015-07-07 | Freescale Semiconductor, Inc. | Systems with adjustable sampling parameters and methods of their operation |
US20150199175A1 (en) * | 2013-02-14 | 2015-07-16 | Yongge Wang | Systems and Methods for Performing Randomness and Pseudorandomness Generation, Testing, and Related Cryptographic Techniques |
-
2014
- 2014-10-15 JP JP2014210969A patent/JP6372295B2/ja active Active
-
2015
- 2015-09-08 US US14/847,078 patent/US20160110165A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20160110165A1 (en) | 2016-04-21 |
JP2016081247A (ja) | 2016-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Majzoobi et al. | Slender PUF protocol: A lightweight, robust, and secure authentication by substring matching | |
US9628272B2 (en) | PUF authentication and key-exchange by substring matching | |
EP3454318B1 (en) | Security system with entropy bits generated by a puf | |
Rostami et al. | Robust and reverse-engineering resilient PUF authentication and key-exchange by substring matching | |
US10256983B1 (en) | Circuit that includes a physically unclonable function | |
US7681103B2 (en) | Reliable generation of a device-specific value | |
US11005668B2 (en) | System and method for generating secret information using a high reliability physically unclonable function | |
Turan et al. | Recommendation for password-based key derivation | |
TWI416921B (zh) | 用於信號產生器式裝置安全性之方法、積體電路及電腦程式產品 | |
TWI503688B (zh) | 用以藉由測試裝置對安全晶片認證存取之方法 | |
US11243744B2 (en) | Method for performing a trustworthiness test on a random number generator | |
US20150318999A1 (en) | Derivation of a Device-Specific Value | |
US20180183589A1 (en) | Secret key generation using a high reliability physically unclonable function | |
EP3577642B1 (en) | Methods and devices for protecting data | |
JPWO2008056613A1 (ja) | 認証装置 | |
US20090110188A1 (en) | Configurable random number generator | |
GB2507988A (en) | Authentication method using physical unclonable functions | |
US20060004829A1 (en) | Rolling keys | |
JP6372295B2 (ja) | 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置 | |
WO2013088939A1 (ja) | 識別情報生成装置及び識別情報生成方法 | |
US11368319B2 (en) | Integrated circuit performing authentication using challenge-response protocol and method of using the integrated circuit | |
US11171793B2 (en) | Method and system for detecting an attack on a physically unclonable function (PUF) | |
Delavar et al. | A ring oscillator-based PUF with enhanced challenge-response pairs | |
US20130179966A1 (en) | Password authentication circuit and method | |
Turan et al. | Sp 800-132. recommendation for password-based key derivation: Part 1: Storage applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170704 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180227 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180402 |
|
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: 20180619 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180702 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6372295 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |