JPWO2014203466A1 - 乱数発生装置 - Google Patents

乱数発生装置 Download PDF

Info

Publication number
JPWO2014203466A1
JPWO2014203466A1 JP2014560175A JP2014560175A JPWO2014203466A1 JP WO2014203466 A1 JPWO2014203466 A1 JP WO2014203466A1 JP 2014560175 A JP2014560175 A JP 2014560175A JP 2014560175 A JP2014560175 A JP 2014560175A JP WO2014203466 A1 JPWO2014203466 A1 JP WO2014203466A1
Authority
JP
Japan
Prior art keywords
random number
value
voltage
output
arithmetic
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.)
Granted
Application number
JP2014560175A
Other languages
English (en)
Other versions
JP5786144B2 (ja
Inventor
上田 路人
路人 上田
雄 西谷
雄 西谷
幸広 金子
幸広 金子
辻村 歩
歩 辻村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2014560175A priority Critical patent/JP5786144B2/ja
Application granted granted Critical
Publication of JP5786144B2 publication Critical patent/JP5786144B2/ja
Publication of JPWO2014203466A1 publication Critical patent/JPWO2014203466A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/586Pseudo-random number generators using an integer algorithm, e.g. using linear congruential method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

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)
  • Hall/Mr Elements (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

本発明の乱数発生装置は、算術乱数列を生成する算術乱数発生部(3)と、算術乱数列から1つ以上の算術乱数を順次読み出し、読み出した算術乱数の値を、同じ極性で予め定められた2階調以上の値を取り得る電圧または電流に変換する算術乱数変換部(5)と、順次入力される電圧または電流に対して、そのときに入力された電圧または電流の値と、以前に入力された電圧または電流の値とに依存した値を出力するヒステリシス部(7)と、ヒステリシス部の出力を二値化する閾値処理部(9)とを備え、算術乱数変換部(5)は、算術乱数に基づいて変換された電圧または電流を用いて、正の値と負の値とを交互に出力し、正の値および負の値の少なくとも何れか一方として、算術乱数の値に応じて変換された2階調以上の値を取り得る電圧または電流の値を出力するように構成される。

Description

本発明は、例えば乱数鍵、個人認証等の一般的な乱数用途に使用される乱数発生装置に関するものである。
従来、乱数発生装置として、物理的な熱雑音を利用する方法および算術乱数を利用する方法が知られている。
例えば物理的な熱雑音を利用する方法として、下記特許文献1に記載されているような乱数発生装置が提案されている。図26は従来の熱雑音を利用した乱数発生装置の概略構成を示す図であり、図27は図26に示す乱数発生装置の駆動方法を説明するための図である。図26に示す従来の乱数発生装置は、磁気抵抗素子102に、セット電流設定手段104からのセットパルス電流と、リセット手段103からのセットパルス電流とは逆極性のリセットパルス電流とを交互に流すことで、磁気抵抗素子102の抵抗を変化させることにより乱数を発生させる。図26に示す乱数発生装置においては、リセットパルス電流を流すことにより、磁気抵抗素子102における磁化自由層の磁化の方向を初期化している。図28は図26に示す乱数発生装置の制御方法を説明するための図である。特許文献1には、図26に示す乱数発生装置において、磁気抵抗素子102にリセットパルス電流を流すことにより磁化の方向をほぼ完全に一方向に揃えた後、反転確率の累積が0.5になる電流値のパルス電流(セットパルス電流)を加えることにより、磁気抵抗素子102は低抵抗状態(“0”に対応する事象)の発生確率と高抵抗状態(“1”に対応する事象)の発生確率とがともに0.5となる乱数発生装置を実現できるとしている。本乱数発生装置においては、図28に示す特性を予め測定しておくことにより、反転確率の累積が0.5になる電流値が決定される。このとき、磁気抵抗素子102において実際に得られる磁化反転は、熱雑音によりばらつくため、磁気抵抗素子102の抵抗状態の変化を検出することにより乱数を得ることができるとしている。
一方、算術乱数を利用する方法としては、下記特許文献2に記載されているような乱数発生装置が提案されている。図29は従来の算術乱数を利用した乱数発生装置の概略構成を示す図である。図29に示す乱数発生装置は、算術乱数を発生させるためによく利用される線形帰還シフトレジスタ(LFSR)と呼ばれるものである。図29に示すように、線形帰還シフトレジスタは、簡便な回路構成で乱数を発生できる。また、算術乱数の発生頻度には偏りがない(0および1の発生確率がほぼ等しい)ことが明らかとなっている。
特許第4625936号公報 特許第4828068号公報
上記のような従来の乱数発生装置においては、それぞれ以下のような問題があった。例えば特許文献1のような物理的な熱雑音を利用する乱数発生装置においては、磁化抵抗素子102が温度依存性を有していることや、特性の経時的変化を生じることから、発生頻度に偏りが生じてしまう問題がある。実際、特許文献1においては、磁気抵抗素子102の磁化反転によって発生した乱数をコンパレータ105を介して積分器106に入力し、積分器106の出力を誤差アンプ107に入力することで、反転確率を調整するようにし
ている。しかし、このような構成とするためには、別途調整回路が必要なため回路が複雑化する問題がある。さらに、反転確率の調整を乱数発生後に行うため、短期的には偏りが依然として残ってしまうという問題もある。
また、特許文献2のような算術乱数を利用する乱数発生装置においては、発生頻度に偏りは生じないが、発生した算術乱数列が周期性を有するという問題がある。この周期性のため、算術乱数列を暗号化などにそのまま用いた場合、容易に解読されてしまう可能性がある。
本発明は、以上のような課題を解決すべくなされたものであり、発生頻度に偏りを生じさせることなく周期性を有しないような乱数を発生させることができる乱数発生装置を提供することを目的とする。
前記従来の課題を解決するために、本発明の一の態様に係る乱数発生装置は、算術乱数列を生成する算術乱数発生部と、前記算術乱数列から1つ以上(1ビット以上)の算術乱数を順次読み出し、読み出した算術乱数の値を、同じ極性で予め定められた2階調以上の値を取り得る電圧または電流に変換する算術乱数変換部と、順次入力される電圧または電流に対して、そのときに入力された電圧または電流の値と、以前に入力された電圧または電流の値とに依存した値を出力するヒステリシス部と、前記ヒステリシス部の出力を二値化する閾値処理部とを備え、前記算術乱数変換部は、前記算術乱数に基づいて変換された電圧または電流を用いて、正の値と負の値とを交互に出力し、前記正の値および前記負の値の少なくとも何れか一方として、前記算術乱数の値に応じて変換された前記2階調以上の値を取り得る電圧または電流の値を出力するように構成されるものである。
本発明は以上に説明したように構成され、発生頻度に偏りを生じさせることなく周期性を有しないような乱数を発生させることができるという効果を奏する。
図1は本発明の第1の実施の形態における乱数発生装置の概略構成を示すブロック図である。 図2は図1に示す乱数発生装置の算術乱数変換部における出力の経時的変化を示すグラフである。 図3は図1に示す乱数発生装置のヒステリシス部の入出力特性を示すグラフである。 図4は図1に示す乱数発生装置における算術乱数発生部の構成例を示す図である。 図5は図4に示す線形帰還シフトレジスタにより発生した算術乱数列を示す図である。 図6は図5に示す算術乱数列のスペクトル検定結果を示すグラフである。 図7は図1に示す乱数発生装置における算術乱数変換部の構成例を主に示すブロック図である。 図8は図7に示す電圧発生回路から順次出力される電圧Vを例示するグラフである。 図9は図7に示す算術乱数変換部における出力の経時的変化を示すグラフである。 図10は図1に示す乱数発生装置におけるヒステリシス部の構成例を主に示すブロック図である。 図11Aは図10に示す強誘電体ゲートトランジスタにおいてゲート電極に正の電圧パルスVが印加された場合の動作を模式的に示す図である。 図11Bは図10に示す強誘電体トランジスタにおいてゲート電極に負の電圧パルスVが印加された場合の動作を模式的に示す図である。 図12は図10に示す強誘電体ゲートトランジスのヒステリシス特性を示すグラフである。 図13は図10に示すヒステリシス部におけるコンダクタンス測定回路の構成例を示す回路図である。 図14は図12に示すヒステリシス特性に基づいて入力信号を調整するための概念図である。 図15は図13に示すコンダクタンス測定回路から順次出力されるチャネル・コンダクタンスを例示するグラフである。 図16は図1に示す乱数発生装置により発生された乱数列を例示する図である。 図17は図16に示す算術乱数列のスペクトル検定結果を示すグラフである。 図18は図17に示すグラフを複数の区画に分割する態様を説明するための図である。 図19は本発明の第2の実施の形態における乱数発生装置の概略構成を示す図である。 図20は図19におけるヒステリシス部に用いられる磁性体のヒステリシス特性を示すグラフである。 図21は本発明の第3の実施の形態における乱数発生装置の概略構成を示す図である。 図22は図21におけるヒステリシス部に用いられる抵抗変化素子のヒステリシス特性を示すグラフである。 図23は比較例における乱数発生装置の電圧発生回路から順次出力される電圧Vを例示するグラフである。 図24は図23に示す電圧Vに基づいて順次出力されるチャネル・コンダクタンスを例示するグラフである。 図25は比較例における乱数発生装置により発生された乱数列を例示する図である。 図26は従来の熱雑音を利用した乱数発生装置の概略構成を示す図である。 図27は図26に示す乱数発生装置の駆動法を説明するための図である。 図28は図26に示す乱数発生装置の制御方法を説明するための図である。 図29は従来の算術乱数を利用した乱数発生装置の概略構成を示す図である。
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下では全ての図を通じて同一または相当する要素には同一の参照符号を付して、その重複する説明を省略する。
(本発明の概要)
本発明の発明者らは、算術乱数においては発生頻度に偏りが生じない点を考慮した上で、算術乱数に生じる周期性を破壊するための構成について鋭意研究を行った。その結果、算術乱数列を、ヒステリシス特性を有する構成に適用することにより、発生頻度の偏りが生じない算術乱数列の特性を維持したまま、周期性を破壊することができるという知見を有するに至った。さらに、ヒステリシス特性を有する構成に正の値と負の値とが交互に入力された場合に、出力がより大きく変化し、算術乱数列の周期性を破壊し、出力値を十分ばらつかせることができることが分かった。本発明は、以上の知見に基づいてなされたものである。
具体的には、本発明の一態様に係る乱数発生装置(1,1B,1C)は、算術乱数列を生成する算術乱数発生部(3)と、前記算術乱数列から1つ以上(1ビット以上)の算術乱数を順次読み出し、読み出した算術乱数の値を、同じ極性で予め定められた2階調以上の値を取り得る電圧または電流に変換する算術乱数変換部(5,5B)と、順次入力される電圧または電流に対して、そのときに入力された電圧または電流の値と、以前に入力された電圧または電流の値とに依存した値を出力するヒステリシス部(7,7B,7C)と、前記ヒステリシス部の出力を二値化する閾値処理部(9)とを備え、前記算術乱数変換部は、前記算術乱数に基づいて変換された電圧または電流を用いて、正の値と負の値とを交互に出力し、前記正の値および前記負の値の少なくとも何れか一方として、前記算術乱数の値に応じて変換された前記2階調以上の値を取り得る電圧または電流の値を出力するように構成されるものである。
上記構成によれば、算術乱数に基づいて予め定められた2階調以上の値を取り得る電圧または電流値がヒステリシス部に入力される。ここで、ヒステリシス部においては、入力された値が同じ値でも以前に入力された値が異なれば異なる出力が得られる。この性質により、算術乱数の周期性をなくすことが期待できる。また、上記構成によれば、ヒステリシス部に正の値と負の値とを交互に入力させるため、順次入力される値に対して、ヒステリシス部の出力変化は大きくなる。この大きい変化を有するヒステリシス部の出力を二値化することにより、再度乱数化する。以上の効果により、発生頻度に偏りを生じさせることなく周期性を有しないような乱数を発生させることができる。
前記算術乱数変換部は、前記算術乱数列から所定ビット数の算術乱数を順次読み出し、前記ビット数ごとの算術乱数をN進数(N≧2)に変換するN進数変換回路(51)と、前記N進数に変換された算術乱数の値に基づいて、予め定められた2階調以上の電圧レベルまたは電流レベルの何れかに振り分けることによって、前記算術乱数の値を電圧または電流に変換する階調発生回路(52)とを備えてもよい。これによれば、N進数変換回路において算術乱数列から所定ビット数を読み出し、読み出した算術乱数をN進数に変換した上で電圧または電流値に変換することにより、当該電圧または電流値への変換のための演算および当該電圧または電流値の出力制御を容易にすることができ、算術乱数列をヒステリシス部のマイナーループ内で入出力動作させるために必要な電圧または電流値に容易に調整することができる。
前記ヒステリシス部が有する飽和ループ特性曲線において、入力値が0であるときの出力の最大値をYmaxとし、入力値が0であるときの出力の最小値をYminとし、Ymax−YminをΔYとしたときに、出力値がY=Ymin+ΔY/10またはY=Ymax−ΔY/10となる入力値を小さい値から順にXW1,XW2,XW3,XW4とした場合、前記算術乱数変換部は、交互に出力する前記正の値および前記負の値のうちの一方の値NがXW1≦N≦XW2の範囲内、かつ、前記正の値および前記負の値のうちの他方の値NがXW3≦N≦XW4の範囲内に含まれる、または、前記NがXW1≦N≦XW2の範囲内、かつ、前記NがXW3≦N≦XW4の範囲内に含まれるような値を出力することとしてもよい。これによれば、ヒステリシス部が有する飽和ループ特性曲線の内側、すなわち、マイナーループが形成されるような電流または電圧値がヒステリシス部に入力されるように、算術乱数が電流または電圧値に変換される。したがって、より不規則な出力変化がヒステリシス部から得られるため、よりランダムな乱数を得ることができる。
前記算術乱数変換部は、交互に出力する前記正の値および前記負の値のうちの一方の値Nとして、前記算術乱数の値に応じて変換された2階調以上の値を取り得る電圧または電流の値を出力し、前記正の値および前記負の値のうちの他方の値Nの値として、所定の固定値を出力することとしてもよい。これによれば、ヒステリシス部に交互に入力される正の値および負の値のうちの一方の値Nとして、算術乱数に基づく電流または電圧値が入力される一方で、他方の値Nとして、所定の固定値が入力される。これにより、ヒステリシス部の出力変化を大きくしつつ、乱数を発生させるために必要な算術乱数の数(ビット数)がN,Nともに算術乱数を使用する場合に比べて半分で済む。したがって、算術乱数発生部において算術乱数を発生させるための演算量および算術乱数変換部における電圧または電流値への変換のための演算量を半分にすることができる。
前記算術乱数変換部は、電圧を出力するよう構成され、前記ヒステリシス部は、前記算術乱数変換部から出力された電圧がゲートに入力され、当該ゲートに入力された電圧の変化に応じてソース−ドレイン間のコンダクタンスが変化する強誘電体ゲートトランジスタ(71)を備えてもよい。強誘電体ゲートトランジスタは、ゲートに印加される電圧に基づいて強誘電体に分極が生じ、それに応じたチャネル・コンダクタンスが多階調となるものであり、強誘電体に印加される電圧とそれによって生じる分極との関係がヒステリシスを有している。このような強誘電体ゲートトランジスタをヒステリシス部として用いることにより、算術乱数変換部から出力された電圧に基づいてヒステリシスを有する多階調の出力を得ることができる。したがって、簡単な構成で入力に対して出力変化の大きいヒステリシス部を容易に構成することができる。
前記算術乱数変換部は、電流を出力するよう構成され、前記ヒステリシス部は、磁性体(21)を備え、前記磁性体に、前記算術乱数変換部から出力された電流に基づいて磁場を発生させることにより、前記磁性体の磁化状態が変化するように構成されてもよい。磁性体は、電流に基づいて発生した磁場に応じて磁化されるものであり、電流と磁化との関係がヒステリシスを有している。このような磁性体をヒステリシス部として用いることにより、算術乱数変換部から出力された電流に基づいてヒステリシスを有する多階調の出力を得ることができる。したがって、簡単な構成で入力に対して出力変化の大きいヒステリシス部を容易に構成することができる。
前記算術乱数変換部は、電圧を出力するよう構成され、前記ヒステリシス部は、前記算術乱数変換部から出力された電圧を印加することにより抵抗値が変化する抵抗変化素子(41)を備えてもよい。抵抗変化素子は、印加される電圧に基づいて抵抗値が変化するため、当該抵抗変化素子のコンダクタンスが変化するものであり、印加電圧と抵抗値との関係がヒステリシスを有している。このような抵抗変化素子をヒステリシス部として用いることにより、算術乱数変換部から出力された電圧に基づいてヒステリシスを有する多階調の出力を得ることができる。したがって、簡単な構成で入力に対して出力変化の大きいヒステリシス部を容易に構成することができる。
前記算術乱数発生部は、線形帰還シフトレジスタ(31)を備えてもよい。これにより、算術乱数を簡単な構成により容易に発生させることができる。
前記閾値処理部は、前記ヒステリシス部から順次出力される値に対して、それ以前に出力された値の平均値を、二値化のための閾値として用いてもよい。これにより、ヒステリシス部の出力変化に基づいて確実かつ容易に乱数を発生させることができる。
(第1の実施の形態)
以下、本発明の第1の実施の形態について説明する。図1は本発明の第1の実施の形態における乱数発生装置の概略構成を示すブロック図である。図1に示すように、本実施形
態における乱数発生装置1は、算術乱数発生部3と、算術乱数変換部5と、ヒステリシス部7と、閾値処理部9とを備えている。
算術乱数発生部3は、算術乱数列を生成して出力する。算術乱数発生部3から順次出力された複数の算術乱数が算術乱数列となる。算術乱数変換部5は、生成された算術乱数列に基づいて後述する電圧または電流値に変換する。
ヒステリシス部7は、算術乱数変換部5の出力が順次入力され、当該入力された値の履歴に応じて出力が変化するヒステリシス素子を有している。閾値処理部9は、ヒステリシス部7の出力を所定の閾値を用いて二値化する。
図2は図1に示す乱数発生装置の算術乱数変換部5における出力の経時的変化を示すグラフである。図2に示すように、本実施形態において、算術乱数変換部5は、算術乱数列に基づいて変換された電圧または電流を用いて、正の値と負の値とを交互に出力するように構成されている。図2においては、正の値の数値列をNとし、負の値の数値列をNとして示している。算術乱数変換部5は、算術乱数列から予め定められた1つ以上(1ビット以上)の算術乱数を順次読み出し、読み出した算術乱数の値を、予め定められた2階調以上の値を取り得る電圧または電流に変換し、当該変換された値に基づいて、数値列N,Nを生成する。
なお、図2においては、数値列N,Nはともに予め定められた2階調以上の値を取り得る電圧または電流値に変換されている。しかし、本発明はこれに限られず、後述するように、正の値および負の値のいずれか一方を固定値としてもよい。
図3は図1に示す乱数発生装置のヒステリシス部7の入出力特性を示すグラフである。ヒステリシス部7は、入力値を増加させる方向と入力値を減少させる方向とにおいて、出力値が変化する経路が異なるヒステリシス特性を有している。すなわち、ヒステリシス部7は、順次入力される電圧または電流に対して、そのときに入力された電圧または電流の値と、以前に入力された電圧または電流の値とに依存した値を出力する。図3においては、入出力変化の態様が反時計回りの場合が示されているが、時計回りとなる場合もある。入力値の絶対値が十分に大きい場合、入出力変化の態様はある一定の曲線上をたどる。これを飽和ループと言う。一方、入力値の絶対値が飽和ループより小さいとき、入力値に対する出力値の変化は飽和ループの内側をたどる。これをマイナーループと言う。マイナーループはほぼ無限に存在する。
このような特性を利用し、ヒステリシス部7に入力する値の範囲をマイナーループで動作する範囲とし、さらに図2に示すように逆極性の数値列N,Nを交互に入力することにより、ヒステリシス部7の出力の値を以前に入力された値(入力履歴)に応じて複雑に変化させることができる。
本発明者らは、このようなヒステリシス部7の出力値を所定の閾値を用いて二値化することにより、周期性を有さず、しかも発生頻度に偏りが生じないような乱数を発生させることができるという知見を得て、本発明を完成させた。ヒステリシス部7の出力値に基づいて生成した乱数の発生頻度に偏りが生じないのは、ヒステリシス部7に順次入力される値が、大局的には算術乱数列に基づく数値列N,Nに依存するためであることが考えられる。すなわち、仮にヒステリシス部7が温度依存性を有していたり、ヒステリシス特性が経時的に変化しても、ヒステリシス部7に順次入力される値の影響が優勢であるため、生成される乱数は発生頻度に偏りがなく、しかも、周期性を有しないものとすることができる。
さらに、逆極性の数値列N,Nを交互に入力する効果について説明する。ヒステリシス特性は、同じ極性の値が連続して入力されても、出力の値がほとんど変化しない。この特性は、例え、同じ極性の値と0の値とが交互に入力されても、同様である。このため、交互に入力される数値列N,Nが同じ極性であれば、ヒステリシス部7の出力値を所定の閾値で二値化しても値が変化しなくなる。したがって、このような同じ数値の連続は乱数特性を劣化させてしまう(後述する比較例参照)。このような観点から、数値列N,Nを逆極性かつ交互に入力することで、ヒステリシス特性における特有の影響を排除でき、高品質の乱数を発生することができる。
以上のように、本実施形態における乱数発生装置1により、分布に偏りがなく、かつ周期性を持たない、極めて良質な乱数を得ることができる。
(乱数発生装置の具体的構成)
以下、本実施形態における乱数発生装置1のより具体的な構成について説明する。
図4は図1に示す乱数発生装置における算術乱数発生部3の構成例を示す図である。図4に示すように、算術乱数発生部3は、例えば、線形帰還シフトレジスタ(LFSR)31を備えている。図4に示すLFSR31は、10ビット長の構成を例示しているが、これに限られない。
LFSR31には、すべてのビットが0である以外の所定の初期値が与えられる。LFSR31は、ビット長に応じた帰還多項式に対応したビット列のビット位置(タップ位置)の値が排他的論理和部32に入力されるように構成されている。排他的論理和部32の出力は、ビット列の1ビット目に入力される。10ビット長のビット列を用いた場合、初期値である10ビットのうち、7ビット目および10ビット目の排他的論理和が次の1ビット目に入力され、2ビット目以降は1つ前のビット位置の値がシフト(図5においては右シフト)されて入力される。以降、これを繰り返すことにより2値の算術乱数を順次生成する。このようなLFSR31を用いることにより、算術乱数を小規模な回路で容易に得ることができる。
図5は図4に示す線形帰還シフトレジスタ31により発生した算術乱数列を例示する図である。また、図6は図5に示す算術乱数列のスペクトル検定結果を示すグラフである。図6に示すスペクトル検定(spectral test)は、得られた算術乱数列を10ビット単位
で読み出し、10進数に変換した上で、1番目の数値を第1点の横軸座標とし、2番目の数値を第1点の縦軸座標および第2点の横軸座標とし、3番目の数値を第2点の縦軸座標および第3点の縦軸座標とするといったように、第1点、第2点、…を順にプロットすることにより、グラフ上で周期性の有無が判別できるかどうかを調べるものである。図6に示すように、LFSR31で生成された算術乱数では、プロットした点群が一様には分布しておらず、ある特定の線上に分布している。これにより、LFSR31で生成された算術乱数には、明らかな周期性が存在することが理解できる。
図7は図1に示す乱数発生装置における算術乱数変換部5の構成例を主に示すブロック図である。図7に示す算術乱数変換部5は、交互に出力する正の値および負の値のうちの一方の値Nとして、算術乱数の値に応じて変換された2階調以上の値を取り得る電圧の値を出力し、正の値および負の値のうちの他方の値Nの値として、所定の固定値を出力するように構成される。
このために、本実施形態における算術乱数変換部5は、数値列Nを出力するための構成として、N進数変換回路51と、電圧発生回路52とを備えている。N進数変換回路51は、算術乱数発生部3で発生した算術乱数列から所定のビット数(Mビット)を順次読み出し、読み出したビット数ごとの算術乱数列の値を所定のN進数の値に変換する。例えば、N進数変換回路51は、算術乱数列をM=10ビットずつ読み出し、当該読み出した10ビットの算術乱数列をN=10進数に変換する。この場合、N進数変換回路51の出力Pは、0≦P≦1023の範囲の整数値となる。
また、電圧発生回路52は、N進数変換回路51においてN進数に変換した値Pに比例した電圧Vを発生させる。したがって、10ビット10進数の場合、電圧発生回路52が出力する電圧Vは、1024階調の電圧値を取り得る。例えば、電圧発生回路52は、入力された値Pが0のとき電圧Vが0.5Vとなり、値Pが1023のとき電圧Vが1.5Vとなるように、線形的に電圧を発生させるように構成される。このように、電圧発生回路52は、N進数変換回路51の出力を予め定められた2階調以上の電圧レベルに振り分けることによって、算術乱数の値を電圧に変換する階調発生回路として機能する。
なお、N進数変換回路51において算術乱数を読み出すビット数Mは1ビット以上であれば特に限定されない。N進数変換回路51で変換される進数Nについても2以上(変換しない)であれば特に限定されない。ただし、算術乱数変換部5が出力する電圧が1000階調前後であれば、最小出力値と最大出力値との差を1Vとした上で、その間を約1mV刻みで出力することができる。このため、N進数変換回路51が読み出すビット数Mを10ビットとし、N=10進数に変換することにより1024階調の電圧とすることが考えられる。このように設定することにより、算術乱数変換部5の電圧制御性が高まり、簡単な制御で電圧変換を行うことができる。電流を出力する場合についても同様である。
電圧発生回路52が出力する電圧Vは、順次入力される値Pに応じて所定間隔を空けて不連続に出力される電圧パルスであってもよいし、多階調の電圧レベルが連続的に変化するステップ状の電圧出力であってもよい。このようなN進数変換回路51および電圧発生回路52は公知の回路構成(例えば公知のデジタル−アナログ変換回路など)が適用可能である。
なお、算術乱数変換部5が算術乱数に基づいて2階調以上の電圧Vを生成可能であれば、N進数変換回路51はなくてもよい。例えば、算術乱数変換部5は、算術乱数を1ビットずつ読み出して、読み出したビットの値(0または1)に応じて所定の電圧(例えば算術乱数の値が0であればV=0.5V、算術乱数の値が1であればV=1.5V)を出力する構成としてもよい。
また、算術乱数変換部5は、数値列Nを出力するための構成として、リセット電圧発生回路53を備えている。リセット電圧発生回路53は、所定の固定値の電圧をリセット電圧Vとして発生させる。リセット電圧Vは、電圧発生回路52から出力される電圧Vと極性の異なる定電圧値を有する。リセット電圧発生回路53は、公知の回路構成または定電圧源を用いることにより実現される。
なお、電圧Vおよびリセット電圧Vの大きさのより詳細な決定方法については後述する。
また、算術乱数変換部5は、極性の異なる数値列NおよびNを交互に出力するための構成として切替スイッチ54を備えている。切替スイッチ54は、電圧発生回路52から出力される電圧Vと、リセット電圧発生回路53から出力されるリセット電圧Vとを交互に切り替えて出力する。すなわち、切替スイッチ54は、数値列Nを出力する際に、端子A側に接続された状態(電圧V出力状態)に切り替えられ、数値列Nを出力する際に、端子B側に接続された状態(リセット電圧V出力状態)に切り替えられる。
なお、数値列Nにおいても算術乱数の値に応じて変換された電圧の値を出力する場合には、リセット電圧発生回路53および切替スイッチ54は不要である。その代わりに、算術乱数変換部5が電圧発生回路52から順次出力される電圧Vを電圧変化のタイミングごとに極性を変化させて出力する公知の極性反転回路(図示せず)を備えることにより実現できる。また、算術乱数変換部5は、電圧V,Vの代わりに電流を出力することとしてもよい。例えば、切替スイッチ54の出力電圧V,Vを電流に変換する公知の電圧電流変換回路(図示せず)を備えてもよいし、電圧発生回路52およびリセット電圧発生回路53の代わりに、階調発生回路として、電流を発生させる公知の電流発生回路を備えることとしてもよい。
図8は図7に示す電圧発生回路52から順次出力される電圧Vを例示するグラフであり、図9は図7に示す算術乱数変換部5における出力の経時的変化を示すグラフである。図8に示されるように、電圧発生回路52から順次出力される電圧Vは算術乱数を電圧に変換したものであるため、算術乱数において生じていた周期性は排除されていない。また、図9に示されるように、図7に示す算術乱数変換部5は、上述したように、算術乱数に基づいて変化する正の電圧Vと、負の固定値であるリセット電圧Vとを交互に出力する。なお、図9の例においては、各電圧V,Vのパルス幅をいずれも1マイクロ秒としている。
図10は図1に示す乱数発生装置におけるヒステリシス部7の構成例を主に示すブロック図である。図10に示すように、本実施形態におけるヒステリシス部7は、ヒステリシス素子として、算術乱数変換部5から出力された電圧がゲートに入力され、当該ゲートに入力された電圧の変化に応じてソース−ドレイン間のコンダクタンス(チャネル・コンダクタンス:channel conductance)が変化する強誘電体ゲートトランジスタ(FeFET
)71を備えている。さらに、ヒステリシス部7は、強誘電体ゲートトランジスタ71のソース−ドレイン間のコンダクタンスを測定するコンダクタンス測定回路72を備えている。
強誘電体ゲートトランジスタ71は、基板73と、基板73上に形成されたゲート電極74と、ゲート電極74が当接するように設けられる強誘電体層75と、強誘電体層75上に形成された半導体層76と、半導体層76上に設けられた2つの電極(ソース/ドレイン電極)77,78とを備えている。2つの電極77,78のうちの一方の電極77には、電圧源79が接続され、他方の電極78は、コンダクタンス測定回路72に接続されている。なお、強誘電体ゲートトランジスタ71の構造は、図8に示す構造に限られない。例えば、基板層73上に半導体層76を形成し、半導体層76上の一部に強誘電体層75を積層し、強誘電体層75上にゲート電極74を形成するとともに、半導体層76の強誘電体層75が積層されていない箇所に2つの電極77,78を設けることとしてもよい。また、強誘電体ゲートトランジスタ71は、上記構成に上記構成以外の構成(例えば電極など)が追加された構成を有していてもよい。
ここで、図10に示す強誘電体ゲートトランジスタ71の作製方法について例示する。まず、シリコン単結晶基板を1100℃の酸素雰囲気で熱処理し、当該基板の表面に酸化シリコンを100nm形成することにより、基板73が形成される。基板73は、例えばCMOS回路を形成したシリコン基板上に化学気相成長法で厚さ2μmの酸化シリコンを形成したものであってもよい。次に、厚さ30nmの白金からなる導電膜を基板73上にパルスレーザデポジション(以下、PLD)法によって堆積することにより、ゲート電極74が形成される。導電膜を堆積する際の基板の温度は700℃である。さらに、基板73の温度が700℃である状態で、PLD法を用いてゲート電極74上に厚さ450nmのジルコニウム酸チタン酸鉛(Pb(Zr、Ti)O、以下、PZT)からなる強誘電体を堆積することにより、強誘電体層75が形成される。その後、基板73の温度を400℃まで下げ、厚さ30nmの酸化亜鉛(ZnO)からなる半導体を堆積させることにより半導体層76が形成される。さらに、半導体層76上に、パターニングされたレジストを形成した後、厚さ5nmのチタン膜および厚さ30nmの白金膜から構成される積層体を、室温下で電子ビーム蒸着法によって堆積し、リフトオフ法によって余分な積層体を除去することにより、電極77,78が形成される。
電極77に接続される電圧源79は、本実施形態においては−0.1Vの電圧を電極77へ印加するように構成されている。
以下、強誘電体ゲートトランジスタ71の動作について説明する。図11Aは図10に示す強誘電体ゲートトランジスタ71においてゲート電極74に正の電圧パルスVが印加された場合の動作を模式的に示す図であり、図11Bは図10に示す強誘電体トランジスタ71においてゲート電極74に負の電圧パルスVが印加された場合の動作を模式的に示す図である。なお、図11Aおよび図11Bには、強誘電体75において発生する誘電分極80が、原子の偏りを模式的に示すものとして矢印を用いて示されている。誘電分極80は、原子が偏っている方向(正に帯電している方向)が矢印の先端を向くように示されている。
図11Aでは、特に乱数電圧変換部5が十分に大きい正の電圧パルスを出力した後の状態を示している。この状態において、ゲート電極74が電極77,78に対して正の電位になるため、誘電分極80が図11Aに示すように上向きに発生する。このため、半導体層76中の電子81は、強誘電体層75の界面付近まで引き寄せられる。この状態において、電極77に電圧源79に基づく電圧を印加すると、強誘電体層75と半導体層76との界面付近に引き寄せられた電子81を介して、電極77と電極78との間(ソース−ドレイン間)に電子が流れる。本明細書において、電極77と電極78との間の電子の流れやすさをチャネル・コンダクタンスGと称する。コンダクタンスは抵抗値の逆数で表されるため、電極77と電極78との間の抵抗値(ソース−ドレイン間抵抗値)をRDSとすると、G=1/RDSという関係が成り立つ。
一方、図11Bでは、乱数電圧変換部5が十分に大きい負の電圧パルスを出力した後の状態を示している。この状態において、ゲート電極74が電極77,78に対して負の電位になるため、誘電分極80が図11Bに示すように下向きに発生する。このため、半導体層76は空乏化する。この状態において、電極77に電圧源79に基づく電圧を印加しても、半導体層76内部で形成された空乏化領域の存在により電極77と電極78との間に電子は流れ難くなる。
このように、強誘電体ゲートトランジスタ71のゲート電極74に正の電圧パルスが入力されると、チャネル・コンダクタンスGは、大きくなり、負の電圧パルスが入力されると、チャネル・コンダクタンスGは、小さくなる。したがって、算術乱数変換部5の出力電圧に応じて、強誘電体ゲートトランジスタ71の出力(チャネル・コンダクタンス)を変調することができる。強誘電体層75における誘電分極80の大きさは、ゲート電極74と電極77,78との間の電圧の大きさに依存するため、多階調のチャネル・コンダクタンスを得ることができる。
さらに、強誘電体層75に印加される電圧とそれによって生じる誘電分極80との関係がヒステリシスを有している。図12は図10に示す強誘電体ゲートトランジス71のヒステリシス特性を示すグラフである。図12においては、強誘電体ゲートトランジスタ71のゲート電極74に印加されるパルス電圧Vの値を徐々に変化させたときのチャネル・コンダクタンスGの変化が示されている。図12の例において、強誘電体ゲートトランジスタ71のゲート電極74に印加される電圧Vに対するチャネル・コンダクタンスGの変化は、反時計回りのヒステリシス特性を示している。
このような強誘電体ゲートトランジスタ71をヒステリシス部7として用いることにより、算術乱数変換部5から出力された電圧に基づいてヒステリシス特性を有する多階調の出力を得ることができる。したがって、簡単な構成で入力に対して出力変化の大きいヒステリシス部7を容易に構成することができる。
図13は図10に示すヒステリシス部7におけるコンダクタンス測定回路72の構成例を示す回路図である。図13に示すように、本実施形態におけるコンダクタンス測定回路72は、演算増幅器(オペアンプ)を用いた増幅回路により構成される。具体的には、コンダクタンス測定回路72は、入力端子対の一方(反転入力端子)が電極78に接続され、入力端子対の他方(批判店入力端子)が所定の電圧源(接地電圧源)に接続される演算増幅器(オペアンプ)82と、演算増幅器82の反転入力端子と出力端子との間に接続される抵抗素子83とを備えている。
演算増幅器82の反転入力端子には、電圧源79の電圧Vinに基づいて強誘電体ゲートトランジスタ71のソース−ドレイン間に流れる電流が入力される。抵抗素子83の抵抗値をRとすると、前述したソース−ドレイン間抵抗値RDSを用いてコンダクタンス測定回路72の出力電圧Voutは次の式で得られる。
Figure 2014203466
なお、図12に示すチャネル・コンダクタンスGは、Vin=−0.1Vとしてコンダクタンス測定回路72の出力電圧Voutを測定した結果から、上記式(1)を用いて算出される。
このようにして得られたチャネル・コンダクタンスGは、閾値処理部9により二値化される。本実施形態において、閾値処理部9は、ヒステリシス部7から順次出力される値(チャネル・コンダクタンスG)に対して、それ以前に出力された値の平均値を、二値化のための閾値として用いるように構成される。例えば、二値化するべきチャネル・コンダクタンスGが出力される以前の100回分のチャネル・コンダクタンスGの平均値を当該二値化するべきチャンネル・コンダクタンスGの閾値として用いる。閾値処理部9は、二値化するべきチャネル・コンダクタンスGの値が閾値以上であれば1を出力し、閾値より小さければ0を出力する。このようにして閾値処理部9から順次出力された値が本実施形態における乱数発生装置1により発生する乱数列となる。なお、閾値は、上記に限られず、予め所定の値(固定値)に定めておいてもよいし、所定の回数ごとに閾値を平均値などを用いて更新することとしてもよい。
次に、本実施形態における電圧Vおよびリセット電圧Vの大きさのより詳細な決定方法について説明する。
上述したように、本発明は、ヒステリシス部7が有するヒステリシス特性のマイナーループ内でヒステリシス部7の入出力動作が実現されるように、ヒステリシス部7に入力される信号を調整することにより、履歴に応じて複雑に変化する出力を得ている。本発明の発明者らは、マイナーループ内での動作を安定的に得るための方法として以下のように入力電圧V,Vの値を設定することを見出した。
図14は図12に示すヒステリシス特性に基づいて入力信号を調整するための概念図である。入力値であるパルス電圧VをX軸(横軸)に取り、出力値であるチャネル・コンダクタンスGをY軸(縦軸)に取る。飽和ループにおけるY軸上の(V=0における)最小値をYmin、最大値をYmaxとし、その差をΔY(=Ymax−Ymin)とする。このとき、ヒステリシス部7から出力される値Yが、最大値Ymaxおよび最小値Yminより上記差ΔYの1/10だけ飽和ループより内側の範囲内に収まるように、入力値Xを調整する。すなわち、出力最小値Y=Ymin+ΔY/10と出力最大値Y=Ymax−ΔY/10との範囲に収まるようにヒステリシス部7への入力値が設定される。
具体的には、上記出力範囲Y≦Y≦Yとなる入力値Xの範囲は、正の範囲と負の範囲との2つに分けられる。飽和ループにおいてY,Yとなるときの入力Xの値を小さい方から順にXW1,XW2,XW3,XW4とすると、入力Xが取り得る負の範囲は、XW1≦X≦XW2となり、入力Xが取り得る正の範囲は、XW3≦X≦XW4となる。
したがって、このように求められた入力Xにおける正の範囲および負の範囲をそれぞれ算術乱数変換部5の出力である数値列N,Nに当てはめることにより、ヒステリシス部7の出力値Yを複雑に変化させることができる。すなわち、数値列N,Nの範囲は、以下のようになる。
W1≦N≦XW2 かつ XW3≦N≦XW4 ・・・(2)
または、
W3≦N≦XW4 かつ XW1≦N≦XW2 ・・・(3)
本実施形態においては、N=V>0かつN=V<0であるため、電圧V,Vの範囲は以下のように求められる。
W3≦V≦XW4 かつ XW1≦V≦XW2 ・・・(4)
以上のように、本発明の構成によれば、正の値と負の値とが交互に入力され、かつ当該入力される値がヒステリシス特性のマイナーループ内に収まるように算術乱数変換部5の出力値が調整されるため、ヒステリシス部7の出力値のばらつきを大きくすることができる。これに対し、図26に示されるような従来の熱雑音を利用した乱数発生装置では、磁気抵抗素子の磁化自由層に与える磁化の方向を一方向に揃える(初期化する)ための方法として、リセットパルスを磁化自由層に与えるものである。本発明の構成は、出力のばらつきをあえて大きくするために正の値と負の値とを交互に入力させるものであり、従来の熱雑音を利用した乱数発生装置の構成とは大きく異なる技術思想に基づくものである。
なお、式(2)または式(3)を適用する代わりに、ヒステリシス部7に用いられるヒステリシス素子のヒステリシス特性に、より適合するようなマイナーループの範囲を別途規定することとしてもよい。
(本実施形態において発生する乱数の評価)
上記のように構成された本実施形態の乱数発生装置1により発生する乱数に対して複数の評価を行った。以下、その評価結果を説明する。
図15は図13に示すコンダクタンス測定回路72から順次出力されるチャネル・コンダクタンスを例示するグラフである。図15は、V=−1V、0.5V≦V≦1.5Vが強誘電体ゲートトランジスタ71のゲート電極74に入力された場合に、コンダクタ
ンス測定回路72から出力される出力電圧Voutを、式(1)を用いてチャネル・コンダクタンスに変換した結果をグラフにしたものである。なお、出力電圧Voutの値は、電圧V,Vが0Vになってから1マイクロ秒後の値を計測したものである。図15に示されるチャネル・コンダクタンスの波形を図8に示される電圧発生変換回路52の電圧波形と比較すると、双方の波形は大局的には類似しているように見える。
図16は図1に示す乱数発生装置1により発生された乱数列を例示する図である。図16においては、一見して0と1とがランダムに発生しているように見えるが、図5に示す算術乱数列とそれほど違いがないようにも見える。そこで、以下に、乱数発生装置1により発生された乱数列に対して、いくつかの評価を行った結果を示す。
図17は図16に示す算術乱数列のスペクトル検定結果を示すグラフである。図17は、図6に示すスペクトル検定と同様に、乱数発生装置1により発生された乱数列に基づいて複数の点をプロットしたものである。図17に示すグラフでは、図6に示す算術乱数の場合で確認された、プロットした点群の特定の線上への分布が確認さらず、おおよそ一様に分布していることが確認できる。
さらに、プロットした点群のばらつきを表す指数として知られている森下の指数(Morishita Index)Iδにより評価を行う。森下の指数Iδは、図17に示すプロット点群の分布を所定の区画に分割し、各区画に含まれるプロット点の数で評価する方式である。森下の指数Iδは、次式で定義される。
Figure 2014203466
ここで、qは区画数を示し、xはj番目の区画内のプロット点数を示す。
図18は図17に示すグラフを複数の区画に分割する態様を説明するための図である。図18に示すように、図17に示す分布に対して森下の指数Iδを適用するにあたって、図17のグラフを、横軸方向および縦軸方向にそれぞれ5分割し、合計25個(q=25)の区画において評価を行った。各区画には、図18に示すように区画番号(上記式(5)におけるjに対応する)1〜25を振っている。
平面上に複数の点が無作為に一様に分布されたポアソン分布において森下の指数はIδ=1となる。なお、図18に示す分割態様においては、区画番号5,10,15および20〜25の面積がやや小さいので、森下の指数Iδを計算する際に、面積の補正を行った。本発明者らは、計算によって得られる森下の指数Iδが、0.98≦Iδ≦1.02の範囲内であれば、十分に一様であり、乱数の周期性は排除できるものと判断した。例えば図6に示すような算術乱数の分布に基づいて森下の指数Iδを計算すると、Iδ=1.05となり、一様性が不足していると判断される。
一方、図17に示す乱数の分布に対し、森下の指数Iδを計算すると、Iδ=0.9998という値が得られた。したがって、本実施形態における乱数発生装置1により発生した乱数の分布は、判断基準である0.98≦Iδ≦1.02の範囲に収まっただけでなく、ポアソン分布であるIδ=1に極めて近いと言え、良好な均一性が得られていることが明らかとなった。
さらに、暗号に関するセキュリティ要件の仕様を規定する米国連邦標準規格(FIPS
:Federal Information Processing Standardization)140に基づいた検証も行った。その結果を以下の表1に示す。本検証においては、20000ビット分の乱数列に対して、「テスト」の内容が「合格範囲」で示される回数範囲内であれば合格と判定される。表1によればいずれの測定結果も合格範囲に収まっていることが分かる。
Figure 2014203466
このような複数の検証結果が示すように、本実施形態における乱数発生装置1によれば、周期性を持たない極めて良質な乱数を発生させることができる。
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。図19は本発明の第2の実施の形態における乱数発生装置1Bの概略構成を示す図である。本実施形態において第1の実施の形態と同様の構成には同じ符号を付し、説明を省略する。図19に示すように、本実施形態の乱数発生装置1Bが第1の実施の形態と異なるのは、算術乱数変換部5Bが、電流を出力するよう構成され、ヒステリシス部7Bが、ヒステリシス素子として磁性体21を備え、当該磁性体21に、算術乱数変換部5Bから出力された電流に基づいて磁場を発生させることにより、磁性体21の磁化状態が変化するように構成されることである。本実施形態の閾値処理部9Bは、磁性体21の磁化状態の変化を二値化することにより、乱数を発生させる。
磁性体21は、ガラス基板上に形成されたコバルト(Co)およびニッケル(Ni)を含有する鉄(Fe)を主体とするスピネル型薄膜から構成される。磁性体71は、例えば反応性スパッタリングを用いて形成される。磁性体71は、例えば、酸素雰囲気中で鉄ターゲットをスパッタリングして、200℃に保持したガラス基板上に6nmの厚みのFe層を形成し、その後、酸素雰囲気中でコバルトおよびニッケルターゲットをスパッタリングして、0.5nmの厚みのコバルトおよびニッケルを含む酸化物層を形成することを交互に70回繰り返した多層膜として構成される。ヒステリシス部7Bは、磁性体71に磁場を発生させる磁場発生器22と、磁性体71の磁化状態を測定する磁化状態測定部23とを備えている。磁場発生器22は、例えばコイルである。磁化状態測定部23は、例えばホール素子である。算術乱数変換部5Bは、第1の実施の形態における算術乱数発生部5と同様に、算術乱数に基づいて2階調以上の異なる長さの電流パルスに変換し、磁場発生器22に加えられる。磁場発生器22は、加えられた電流パルスの長さに応じて磁性体71の周囲に磁場を発生させる。
図20は図19におけるヒステリシス部7Bに用いられる磁性体21のヒステリシス特性を示すグラフである。図20は、磁性体21の垂直方向に磁場をかけた場合の磁化曲線を示している。図20に示すように、磁性体21は、磁場に対する磁化の値においてヒステリシス特性を有する。このため、算術乱数変換部5Bからの電流パルスを調整して、マイナーループをたどるように磁性体21の周囲に磁場を与えることにより、第1の実施の形態と同様に発生頻度に偏りを生じさせることなく周期性を有しない乱数を発生することができる。
(第3の実施の形態)
次に、本発明の第3の実施の形態について説明する。図21は本発明の第3の実施の形態における乱数発生装置1Cの概略構成を示す図である。本実施形態において第1の実施の形態と同様の構成には同じ符号を付し、説明を省略する。図21に示すように、本実施形態の乱数発生装置1Cが第1の実施の形態と異なるのは、ヒステリシス部7Cが、ヒステリシス素子として、算術乱数変換部5から出力された電圧を印加することにより抵抗値が変化する抵抗変化素子41を備えていることである。
抵抗変化素子41は、抵抗変化層43と、当該抵抗変化層43を挟むように設けられる電極44,45とを備えている。抵抗変化層43は、例えば酸化アルミニウムからなり、電極44,45は、例えば白金からなる。電極44,45の厚みは、何れも30nm程度である。抵抗変化層43は、例えば、3nmの厚みのアルミニウム薄膜を成長させる工程と、酸素雰囲気中を500℃で熱処理する工程とを7回繰り返すことで形成される。
また、ヒステリシス部7Cは、抵抗変化素子41の一方の電極44を算術乱数変換部5およびコンダクタンス測定回路72の何れかに接続するための切替スイッチ42を備えている。なお、抵抗変化素子41の他方の電極45は所定の電圧(例えばグランド電圧)に保持されている。
図22は図21におけるヒステリシス部7Cに用いられる抵抗変化素子41のヒステリシス特性を示すグラフである。図22に示すように、抵抗変化素子41は、印加される電圧に対する抵抗値ひいてはコンダクタンスの値がヒステリシス特性を有する。抵抗変化素子41のコンダクタンスを変化させる際、切替スイッチ42を端子Aの側に切り替えて、算術乱数変換部5と抵抗変化素子41とを接続することにより、算術乱数変換部5の出力電圧を抵抗変化素子41に印加する。抵抗変化素子41のコンダクタンスを測定する場合、切替スイッチ42を端子Bの側に切り替えて、抵抗変化素子41とコンダクタンス測定回路72とを接続することにより、コンダクタンス測定回路72で抵抗変化素子41のコンダクタンスを測定する。閾値処理部9は、コンダクタンス測定回路72で測定されたコンダクタンスを所定の閾値で二値化して乱数を発生させる。
図22に示すように、抵抗変化素子41はヒステリシス特性を有する。このため、算術乱数変換部5からの電圧パルスを調整して、マイナーループをたどるように抵抗変化素子41に電圧を印加することにより、第1の実施の形態と同様に発生頻度に偏りを生じさせることなく周期性を有しない乱数を発生することができる。
(比較例)
ここで、本発明が、ヒステリシス部7,7B,7Cに正の値と負の値とを交互に入力することの効果を明らかにするために、以下に、比較例を示す。比較例では、第1の実施の乱数発生装置1において、図9に示すような算術乱数変換部5の出力電圧波形(数値列N
,N)の代わりに、連続して同じ極性の電圧が入力され得る態様とした場合に生成される乱数の評価結果を示す。具体的には、図7に示す算術乱数変換部5の構成のうちリセット電圧発生回路53および切替スイッチ54を排し、電圧発生回路52からの電圧のみをヒステリシス部7の強誘電体ゲートトランジスタ71へ印加するようにした。この際、電圧発生回路52から出力される電圧Vの範囲は−0.5V≦V≦1.0Vとした。これ以外の構成については、第1の実施の形態における乱数発生装置1と同様の構成とした。
図23は比較例における乱数発生装置の電圧発生回路から順次出力される電圧Vを例示するグラフであり、図24は図23に示す電圧Vに基づいて順次出力されるチャネル・コンダクタンスを例示するグラフである。図24に示すチャネル・コンダクタンスは、図18に示す第1の実施の形態におけるチャネル・コンダクタンス変化に比べて、変化の頻度が疎になっていることが分かる。強誘電体は、同じ極性で大きさが小さい電圧が印加されると、コンダクタンスがほとんど変化しないという性質を有する。このため、チャネル・コンダクタンスにおいて変化の頻度が疎になるものと考えられる。このような現象は、強誘電体に限られず、多少の差はあるが、ヒステリシス特性を有する素子はおおよそ同様の性質を有している。この性質の影響で、大きな出力変化は極性が変化しないと生じ難いものと言える。また、本比較例においては、電圧発生回路52から出力される電圧Vが正および負の値の何れをも取り得る範囲としているが、それでもチャネル・コンダクタンス変化は大きくならない。このことから、極性が反転した電圧がヒステリシス部に交互に入力されることが重要であると言える。
図25は比較例における乱数発生装置により発生された乱数列を例示する図である。図16に示す第1の実施の形態における乱数列と比較して、図25に示す乱数列は、一見して0または1が頻繁に連続し、連続している数も多くなっている。これは、上述したように、印加電圧の極性が変わらないと、コンダクタンスの大きな変化が生じないことが主たる原因であると思われる。このような数値の連続は乱数としての特性を悪化させる。
さらに、以下の表2に、図25の乱数列を、FIPS140により検証した結果を示す。
Figure 2014203466
表2により明らかなように、ほとんどの項目が不合格となっていることが分かる。
以上のように、ヒステリシス部のマイナーループ内で動作するように入力信号を制御しても、逆極性の数値列N,Nを交互に入力しなければ、高品質な乱数を発生させることができないことが理解できる。
以上、本発明の実施の形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内で種々の改良、変更、修正が可能である。
本発明にかかる乱数発生装置は、算術乱数の周期性を排除した乱数を、簡便な構造で得ることができる。このような乱数をファイルの暗号鍵として使用すれば、解読される可能性が極めて低くなる。また、本発明で得られる乱数をシミュレーションの乱数として用いれば、周期性を有しないことから、より信頼性の高い解析結果を得ることができる。
1,1B,1C 乱数発生装置
3 算術乱数発生部
5,5B 算術乱数変換部
7,7B,7C ヒステリシス部
9,9B 閾値処理部
21 磁性体
22 磁場発生器
23 磁化状態測定部
31 線形帰還シフトレジスタ
32 排他的論理和部
41 抵抗変化素子
42,54 切替スイッチ
43 抵抗変化層
44,45,77,78 電極
51 N進数変換回路
52 電圧発生回路(階調発生回路)
53 リセット電圧発生回路
71 強誘電体ゲートトランジスタ
72 コンダクタンス測定回路
73 基板
74 ゲート電極
75 強誘電体層
76 半導体層
77,78 電極
79 電圧源
82 演算増幅器(オペアンプ)
83 抵抗素子

Claims (9)

  1. 算術乱数列を生成する算術乱数発生部と、
    前記算術乱数列から1つ以上の算術乱数を順次読み出し、読み出した算術乱数の値を、同じ極性で予め定められた2階調以上の値を取り得る電圧または電流に変換する算術乱数変換部と、
    順次入力される電圧または電流に対して、そのときに入力された電圧または電流の値と、以前に入力された電圧または電流の値とに依存した値を出力するヒステリシス部と、
    前記ヒステリシス部の出力を二値化する閾値処理部とを備え、
    前記算術乱数変換部は、前記算術乱数に基づいて変換された電圧または電流を用いて、正の値と負の値とを交互に出力し、前記正の値および前記負の値の少なくとも何れか一方として、前記算術乱数の値に応じて変換された前記2階調以上の値を取り得る電圧または電流の値を出力するように構成される、乱数発生装置。
  2. 前記算術乱数変換部は、
    前記算術乱数列から所定ビット数の算術乱数を順次読み出し、前記ビット数ごとの算術乱数をN進数(N≧2)に変換するN進数変換回路と、
    前記N進数に変換された算術乱数の値に基づいて、予め定められた2階調以上の電圧レベルまたは電流レベルの何れかに振り分けることによって、前記算術乱数の値を電圧または電流に変換する階調発生回路とを備えた、請求項1に記載の乱数発生装置。
  3. 前記ヒステリシス部が有する飽和ループ特性曲線において、入力値が0であるときの出力の最大値をYmaxとし、入力値が0であるときの出力の最小値をYminとし、Ymax−YminをΔYとしたときに、出力値がY=Ymin+ΔY/10またはY=Ymax−ΔY/10となる入力値を小さい値から順にXW1,XW2,XW3,XW4とした場合、
    前記算術乱数変換部は、交互に出力する前記正の値および前記負の値のうちの一方の値NがXW1≦N≦XW2の範囲内、かつ、前記正の値および前記負の値のうちの他方の値NがXW3≦N≦XW4の範囲内に含まれる、または、前記NがXW1≦N≦XW2の範囲内、かつ、前記NがXW3≦N≦XW4の範囲内に含まれるような値を出力する、請求項1に記載の乱数発生装置。
  4. 前記算術乱数変換部は、交互に出力する前記正の値および前記負の値のうちの一方の値Nとして、前記算術乱数の値に応じて変換された2階調以上の値を取り得る電圧または電流の値を出力し、前記正の値および前記負の値のうちの他方の値Nの値として、所定の固定値を出力する、請求項1に記載の乱数発生装置。
  5. 前記算術乱数変換部は、電圧を出力するよう構成され、
    前記ヒステリシス部は、前記算術乱数変換部から出力された電圧がゲートに入力され、当該ゲートに入力された電圧の変化に応じてソース−ドレイン間のコンダクタンスが変化する強誘電体ゲートトランジスタを備えた、請求項1に記載の乱数発生装置。
  6. 前記算術乱数変換部は、電流を出力するよう構成され、
    前記ヒステリシス部は、磁性体を備え、前記磁性体に、前記算術乱数変換部から出力された電流に基づいて磁場を発生させることにより、前記磁性体の磁化状態が変化するように構成される、請求項1に記載の乱数発生装置。
  7. 前記算術乱数変換部は、電圧を出力するよう構成され、
    前記ヒステリシス部は、前記算術乱数変換部から出力された電圧を印加することにより
    抵抗値が変化する抵抗変化素子を備えた、請求項1に記載の乱数発生装置。
  8. 前記算術乱数発生部は、線形帰還シフトレジスタを備えた、請求項1に記載の乱数発生装置。
  9. 前記閾値処理部は、前記ヒステリシス部から順次出力される値に対して、それ以前に出力された値の平均値を、二値化のための閾値として用いる、請求項1に記載の乱数発生装置。
JP2014560175A 2013-06-18 2014-05-28 乱数発生装置 Expired - Fee Related JP5786144B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014560175A JP5786144B2 (ja) 2013-06-18 2014-05-28 乱数発生装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2013127759 2013-06-18
JP2013127759 2013-06-18
JP2014560175A JP5786144B2 (ja) 2013-06-18 2014-05-28 乱数発生装置
PCT/JP2014/002826 WO2014203466A1 (ja) 2013-06-18 2014-05-28 乱数発生装置

Publications (2)

Publication Number Publication Date
JP5786144B2 JP5786144B2 (ja) 2015-09-30
JPWO2014203466A1 true JPWO2014203466A1 (ja) 2017-02-23

Family

ID=52104218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014560175A Expired - Fee Related JP5786144B2 (ja) 2013-06-18 2014-05-28 乱数発生装置

Country Status (3)

Country Link
US (1) US9563403B2 (ja)
JP (1) JP5786144B2 (ja)
WO (1) WO2014203466A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10095476B2 (en) 2015-12-02 2018-10-09 International Business Machines Corporation Random telegraph noise native device for true random number generator and noise injection
JP6499065B2 (ja) * 2015-12-04 2019-04-10 東芝メモリ株式会社 乱数発生回路および半導体記憶装置
CN106980490B (zh) * 2017-05-10 2022-11-04 李昀芊 一种基于液体分子布朗运动的真随机数发生器
RU2743326C1 (ru) * 2020-02-05 2021-02-17 Олег Николаевич Журавлев Способ генерации случайных чисел
RU2762209C1 (ru) * 2021-03-23 2021-12-16 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации УСТРОЙСТВО ПАРАЛЛЕЛЬНОГО ФОРМИРОВАНИЯ q-ЗНАЧНЫХ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ НА АРИФМЕТИЧЕСКИХ ПОЛИНОМАХ

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003150374A (ja) * 2001-11-19 2003-05-23 Iwaki Electronics Corp 乱数発生器
JP2004280486A (ja) * 2003-03-17 2004-10-07 Renesas Technology Corp 乱数生成装置および情報処理装置
JP2009070009A (ja) * 2007-09-12 2009-04-02 Sony Corp 乱数生成装置および乱数生成方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763363B1 (en) 1999-12-02 2004-07-13 Honeywell International Inc. Computer efficient linear feedback shift register
US7472148B2 (en) * 2004-07-23 2008-12-30 Qualcomm Incorporated Method and apparatus for random-number generator
JP4625936B2 (ja) 2007-06-12 2011-02-02 独立行政法人産業技術総合研究所 乱数発生器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003150374A (ja) * 2001-11-19 2003-05-23 Iwaki Electronics Corp 乱数発生器
JP2004280486A (ja) * 2003-03-17 2004-10-07 Renesas Technology Corp 乱数生成装置および情報処理装置
JP2009070009A (ja) * 2007-09-12 2009-04-02 Sony Corp 乱数生成装置および乱数生成方法

Also Published As

Publication number Publication date
US20150100614A1 (en) 2015-04-09
US9563403B2 (en) 2017-02-07
JP5786144B2 (ja) 2015-09-30
WO2014203466A1 (ja) 2014-12-24

Similar Documents

Publication Publication Date Title
JP5786144B2 (ja) 乱数発生装置
Mazady et al. Memristor PUF—A security primitive: Theory and experiment
Carboni et al. Stochastic memory devices for security and computing
US9948471B2 (en) Tamper-resistant non-volatile memory device and integrated circuit card
Zhang et al. High-speed true random number generation based on paired memristors for security electronics
JP5988069B2 (ja) 連続時間カオスを使用した乱数の発生
US20170242660A1 (en) Random number processing device generating random numbers by using data read from non-volatile memory cells, and integrated circuit card
Akavia et al. Privacy-preserving decision trees training and prediction
Horoshko et al. Quantum anonymous voting with anonymity check
JP2009545769A5 (ja)
Ashtiyani et al. Speech signal encryption using chaotic symmetric cryptography
Bernardo-Gavito et al. Extracting random numbers from quantum tunnelling through a single diode
JP2011107528A (ja) 情報処理装置、鍵生成装置、署名検証装置、情報処理方法、署名生成方法、及びプログラム
Xu et al. The availability of logical operation induced by dichotomous noise for a nonlinear bistable system
Santini et al. Cryptanalysis of a one-time code-based digital signature scheme
Kish et al. Computation using noise-based logic: Efficient string verification over a slow communication channel
Liu et al. A dynamic AES cryptosystem based on memristive neural network
Pazos et al. Hardware implementation of a true random number generator integrating a hexagonal boron nitride memristor with a commercial microcontroller
Dang et al. 1-HEMT-1-memristor with hardware encryptor for privacy-preserving image processing
Ahonen et al. Entanglement-enhanced quantum key distribution
Oya Thermal-noise-exploiting operations of single-electron majority logic circuits with conventional clock signals
Kumar et al. Modified tent map based design for true random number generator
Mizrahi et al. Overcoming device unreliability with continuous learning in a population coding based computing system
Ragavan et al. Dynamic key generation for cryptographic process using genetic algorithm
Mladenov et al. Advanced memristor model with a modified Biolek window and a voltage-dependent variable exponent

Legal Events

Date Code Title Description
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: 20150203

R151 Written notification of patent or utility model registration

Ref document number: 5786144

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees