(57)【要約】【課題】雑音発生源からの信号により乱数を生成する場合、雑音発生源個体の性質により装置全体の影響を受け、熱・電磁波などの外乱により雑音発生源の動作が左右され、生成する乱数が外部より意図的に操作される可能性があった。【解決手段】雑音発生源Ａ２０１のグループの出力の総和と、雑音発生源Ｂ２０２のグループの出力の総和を比較して乱数列を生成する。雑音発生源Ａ２０１と雑音発生源Ｂ２０２を偏りなく配置することにより、局所的な外乱の影響を受ける雑音発生源Ａ２０１と雑音発生源Ｂ２０２の個数を同程度にし、総和に与える影響が雑音発生源Ａ２０１のグループと雑音発生源Ｂ２０２のグループで偏りがないようにする。【効果】本発明によれば、外部からの熱や電磁気による影響が少ない乱数生成装置を提供する。【選択図】  図４
2004280486.tif 000002
【特許請求の範囲】
【請求項１】
差動増幅回路に信号を出力する２つの雑音発生源と、２つの雑音発生源から信号の強度の値の差に比例する信号を出力する差動増幅回路と、からなることを特徴とする本発明の乱数生成装置。
【請求項２】
加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を出力する加算回路と、からなることを特徴とする乱数生成装置。
【請求項３】
差動増幅回路に信号を出力する２つの雑音発生源と、２つの雑音発生源から信号の強度の値の差に比例する信号を比較器に出力する差動増幅回路と、差動増幅回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構と、からなることを特徴とする乱数生成装置。
【請求項４】
加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を比較器に出力する加算回路と、加算回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構と、からなることを特徴とする乱数生成装置。
【請求項５】
加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を差動増幅回路に出力する２つの加算回路と、２つの加算回路から信号の強度の値の差に比例する信号を比較器に出力する差動増幅回路と、差動増幅回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構と、からなることを特徴とする乱数生成装置。
【請求項６】
熱雑音を出力する熱雑音素子からなることを特徴とする乱数生成装置。
【請求項７】
差動増幅回路と遅延素子に信号を出力する雑音発生源と、雑音発生源の出力する信号を一定時間遅らせて差動増幅回路に出力する遅延素子と、雑音発生源が出力した信号と遅延素子が出力した信号の強度の差に比例する信号を出力する差動増幅回路と、からなることを特徴とする乱数生成装置。
【請求項８】
差動増幅回路と入力バッファに信号を出力する雑音発生源と、雑音発生源の出力する信号をクロックに同期して一定期間保持して差動増幅回路に出力する入力バッファと、雑音発生源が出力した信号と入力バッファが出力した信号の強度の差に比例する信号を出力バッファに出力する差動増幅回路と、差動増幅回路が出力した信号をクロックに同期して一定期間保持して出力する出力バッファと、からなることを特徴とする乱数生成装置。
【請求項９】
雑音発生源が請求項１、２、３、４、５、６、７、８の乱数生成装置であることを特徴とする請求項１、２、３、４、５、７、８の乱数生成装置。
【請求項１０】
外乱の影響を少なくするために複数の雑音発生源を空間的に偏りなく配置することを特徴とする請求項１、２、３、４、５、７、８、９の乱数生成装置。
【請求項１１】
Ａ／Ｄコンバータに信号を出力する雑音発生源と、雑音発生源からの信号をディジタル信号に変換して出力するＡ／Ｄコンバータと、を備えることを特徴とする請求項１、２、３、４、５、６、７、８、９、１０の乱数生成装置。
【請求項１２】
乱数列を生成し暗号処理機構に乱数列を出力する乱数生成装置と、内部バスと、内部バスと乱数生成装置に接続し、内部バスを介してデータを入力し乱数生成装置が出力した乱数を利用して暗号処理を行い、内部バスを介してデータを出力する暗号処理機構と、内部バスに接続したＣＰＵと、内部バスに接続したハードディスクと、内部バスに接続したメモリーと、内部バスに接続し入出力デバイスとのインターフェースおよび汎用インターフェースで構成される外部インターフェースと、からなることを特徴とする情報処理装置。
【請求項１３】
雑音発生源が出力する信号を、概信号が含む主要な周波数成分より長い周期でサンプリングし、乱数列として出力することを特徴とする乱数生成方法。
【請求項１４】
雑音発生源が出力する信号を、２値化して出力することを特徴とする請求項１３の乱数生成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、外乱に強い乱数生成装置に関し、特に半導体デバイス内部で外乱に強い乱数生成装置に関する。
【０００２】
【従来の技術】
乱数はその生成方法で擬似乱数と真性乱数に分けることができる。擬似乱数は数学的なアルゴリズムにより生成される数列であり、相互に無関係であるかのような値からなる数列である。ただし、擬似乱数は計算により求められるため初期値が同じであれば同じ数列となる。このため、擬似乱数は再現性を必要とする計算機シミュレーションなどでは有効であるが、暗号鍵を生成する場合のように履歴から予測が困難な数を必要とする場合には初期値を知られると暗号鍵を知られる危険性があり好ましくない。一方、真性乱数は熱雑音などの物理現象を利用して生成できる数列であり、履歴から次の値が予測が困難な数列である。暗号鍵などの生成に利用する場合は擬似乱数より真性乱数のほうが望ましい。
【０００３】
実際に乱数を利用する場合、その乱数の分布の性質がわかっていたほうが利用しやすい。取り得るすべての値が等確率で現れるような性質を持つ乱数を一様乱数と呼ぶ。物理現象から一様乱数を生成する従来技術として特許文献１がある。
【０００４】
【特許文献１】
特開２０００−０８３０１９号公報
【０００５】
【発明が解決しようとする課題】
従来技術では雑音発生源からの信号により乱数を生成する場合、雑音発生源個体の性質により装置全体の影響を受け、熱・電磁波などの外乱により雑音発生源の動作が左右され、生成する乱数を外部より意図的に操作される可能性があった。
【０００６】
そこで、本発明は、外乱による影響が少ない乱数生成装置を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記の課題を解決するために、本発明の乱数生成装置は、差動増幅回路に信号を出力する２つの雑音発生源と、２つの雑音発生源から信号の強度の値の差に比例する信号を出力する差動増幅回路と、からなることを特徴とする。
【０００８】
さらに、本発明の乱数生成装置は、加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を出力する加算回路と、からなることを特徴とする。
【０００９】
さらに、本発明の乱数生成装置は、差動増幅回路に信号を出力する２つの雑音発生源と、２つの雑音発生源から信号の強度の値の差に比例する信号を比較器に出力する差動増幅回路と、差動増幅回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構からなることを特徴とする。
【００１０】
さらに、本発明の乱数生成装置は、加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を比較器に出力する加算回路と、加算回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構からなることを特徴とする。
【００１１】
さらに、本発明の乱数生成装置は、加算回路に信号を出力する複数の雑音発生源と、複数の雑音発生源からの信号の強度の値の和に比例する信号を差動増幅回路に出力する２つの加算回路と、２つの加算回路から信号の強度の値の差に比例する信号を比較器に出力する差動増幅回路と、差動増幅回路が出力した信号を二値信号に変換しサンプリング機構に出力する比較器と、比較器が出力した二値信号を一定間隔で取り込み二値の乱数列として出力するサンプリング機構からなることを特徴とする。
【００１２】
さらに、本発明の乱数生成装置は、外乱の影響を少なくするために複数の雑音発生源を空間的に偏りなく配置することを特徴とする。
【００１３】
さらに、本発明の情報処理装置は、乱数列を生成し暗号処理機構に乱数列を出力する乱数生成装置と、内部バスと、内部バスと乱数生成装置に接続し、内部バスを介してデータを入力し乱数生成装置が出力した乱数を利用して暗号処理を行い、内部バスを介してデータを出力する暗号処理機構と、内部バスに接続したＣＰＵと、内部バスに接続したハードディスクと、内部バスに接続したメモリーと、内部バスに接続し入出力デバイスとのインターフェースおよび汎用インターフェースで構成される外部インターフェースと、からなることを特徴とする。
【００１４】
【発明の実施の形態】
図１、２、３、５、６、７、８は、本発明の乱数生成装置の構成例を説明するための図である。図４は、本発明の乱数生成装置における雑音発生源の物理的配置を説明するための図である。図９は、本発明の情報処理装置の構成例を説明するための図である。
【００１５】
以下、本発明の第１の実施の形態を図１、５を用いて説明する。図１に示す乱数生成装置１００は、２つの雑音発生源２００と、差動増幅回路１１０で構成される。２つの雑音発生源２００はそれぞれ信号１０１、１０２を差動増幅回路１１０に出力する。差動増幅回路１１０は信号１０１、１０２の強度にそれぞれ異なるあるいは同じ係数を乗じた値の差に比例する信号１１１を出力する。乱数生成装置１００は差動増幅回路１１０の出力１１１を出力する。
【００１６】
図５に示す乱数生成装置１００は、雑音発生源２００と比較器５１０とサンプリング機構５２０で構成される。雑音発生源２００は信号５０１を比較器５１０に出力する。比較器５１０は信号５０１が正の場合“１”を、負の場合“０”を信号５０２としてサンプリング機構５２０に出力する。サンプリング機構５２０が出力する“０”、“１”からなる二値信号は電位などで表現する。サンプリング機構５２０は一定間隔で信号５０２の値を取り込み、取り込んだ値を信号５０３として出力する。信号５０２は二値信号であり、信号５０３は二値からなる乱数列である。
【００１７】
図１の構成における乱数生成装置１００は、乱数生成装置１００を構成する２つの雑音発生源２００が同じ出力特性持つ場合、差動増幅回路１１０は２つの雑音発生源２００からの入力に等しい係数を乗ずることにより、強度の平均が０である特性を持つ信号１１１を出力する。さらに乱数生成装置１００を図５の雑音発生源２００として使用することで、信号１１１から０と１の割合が平均的に等しい二値信号を生成し、さらに雑音発生源２００が出力する信号が含む主要な周波数成分より長い周期でサンプリングすることにより、二値からなる乱数列を生成する。
【００１８】
次に、本発明の第２の実施の形態を図５、７を用いて説明する。図７に示す乱数生成装置１００は、雑音発生源２００と差動増幅回路１１０と遅延素子７２０で構成される。雑音発生源２００は信号７０１を差動増幅回路１１０と遅延素子７２０に出力する。遅延素子７２０は信号７０１を一定時間遅らせて信号７０２として差動増幅回路１１０に出力する。差動増幅回路１１０は信号７０１、７０２の強度にそれぞれ異なるあるいは同じ係数を乗じた値の差に比例する信号７０３を出力する。乱数生成装置１００は差動増幅回路１１０の出力７０３を出力する。
【００１９】
図７の構成における乱数生成装置１００は、雑音発生源２００の出力信号７０１と、その出力信号を一定時間遅らせた信号７０２を差動増幅回路１１０に入力する。したがって、雑音発生源２００の出力特性が時間的変化しないのであれば、図１の乱数生成装置１００を同じ出力特性を持つ２つの雑音発生源２００で構成する場合と同様に、差動増幅回路１１０の２つの入力に等しい係数を乗ずることにより、図７の構成の乱数生成装置１００は強度の平均が０である特性を持つ信号７０３を出力する。さらに乱数生成装置１００を図５の雑音発生源２００として使用することで、信号７０３から０と１の割合が平均的に等しい二値信号を生成し、さらに雑音発生源２００が出力する信号が含む主要な周波数成分より長い周期でサンプリングすることにより、二値からなる乱数列を生成する。
【００２０】
次に、本発明の第３の実施の形態を図５、８を用いて説明する。図８に示す乱数生成装置１００は、雑音発生源２００と差動増幅回路１１０と入力バッファ８１０と出力バッファ８２０で構成される。雑音発生源２００は信号８０１を差動増幅回路１１０と入力バッファ８１０に出力する。入力バッファ８１０はクロック信号８０５に同期して信号８０１の強度を保持し、保持した強度に比例する強度を持つ信号８０２を差動増幅回路１１０に出力する。差動増幅回路１１０は信号８０１、８０２の強度にそれぞれ異なるあるいは同じ係数を乗じた値の差に比例する信号８０３を出力バッファ８２０に出力する。出力バッファ８２０はクロック信号８０５に同期して信号８０３の強度を保持し、保持した強度に比例する強度を持つ信号８０４を出力する。具体的にクロック信号８０５に同期するとは、クロック信号８０５の立ち上がりにおける入力信号の強度を保持し、次のクロック信号８０５の立ち上がりまで出力し続けることである。
【００２１】
図８の構成における乱数生成装置１００は、雑音発生源２００の出力信号８０１と、その出力信号を１クロック分遅らせた信号８０２を差動増幅回路１１０に入力する。したがって、雑音発生源２００の出力特性が時間的変化しないのであれば、図１の乱数生成装置１００を同じ出力特性を持つ２つの雑音発生源２００で構成する場合と同様に、差動増幅回路１１０の２つの入力に等しい係数を乗じ、差動増幅回路１１０の出力を出力バッファ８２０に格納した信号８０４を出力する。信号８０４は強度の平均が０である特性を持つ信号である。さらに乱数生成装置１００を図５の雑音発生源２００として使用することで、信号８０４から０と１の割合が平均的に等しい二値信号を生成し、さらに雑音発生源２００が出力する信号が含む主要な周波数成分より長い周期でサンプリングすることにより、二値からなる乱数列を生成する。
【００２２】
次に、本発明の第４の実施の形態を図１、３、４、５を用いて説明する。図３に示す乱数生成装置１００は、２つの雑音発生源２００と加算回路３１０で構成される。２つの雑音発生源２００はそれぞれ信号３０１、３０２を加算回路３１０に出力する。加算回路３１０は信号３０１、３０２の強度にそれぞれ異なるあるいは同じ係数を乗じた値の和に比例する信号３１１を出力する。乱数生成装置１００は加算回路３１１の出力３１１を出力する。ただし、図３に示す乱数生成装置１００を構成する雑音発生源２００は２つ以上であってもよく、加算回路３１０は２つ以上の雑音発生源２００が出力する信号の強度にそれぞれ異なるあるいは同じ係数を乗じた値の和に比例する信号を出力してもよい。
【００２３】
図３の構成における乱数生成装置１００は、構成する雑音発生源２００、それぞれの出力特性、加算回路が雑音発生源２００の出力に乗ずる係数の組み合わせが等しければ、すべて同様の出力特性を持つ。さらに乱数生成装置１００は、雑音発生源２００にはぞれぞれ個体差があるが、同じ種類の雑音発生源の出力を複数加算することにより、乱数生成装置１００の出力への雑音発生源２００の個体差の影響を少なくすることができる。したがって、図３の構成による乱数生成装置１００を図１の構成における雑音発生源２００として適用することにより、雑音発生源の個体差による影響が少ない乱数生成装置１００を構成する。
【００２４】
本発明の乱数生成装置を半導体デバイスや情報装置として実現する場合、雑音発生源をデバイス上に偏って配置すると、デバイスの特定の部分に対して加えた熱や電磁気などの外乱がデバイスの動作に影響を与える可能性がある。これを避けるために、本発明の乱数生成装置１００は図４に示すように雑音発生源２００を配置する。図４の雑音発生源Ａ２０１と雑音発生源Ｂ２０２は、図３の乱数生成装置１００を構成する雑音発生源２００であり、雑音発生源Ａ２０１のグループにより図３の乱数生成装置１００を１つ構成し、雑音発生源Ｂ２０２のグループにより図３の乱数生成装置１００を１つ構成する。さらに、これらの２つの乱数生成装置１００を図１の２つの雑音発生源２００として適用することにより、図１の乱数生成装置１００を構成する。これにより、雑音発生源Ａ２０１のグループの出力の総和と、雑音発生源Ｂ２０２のグループの出力の総和を比較して乱数列を生成する。雑音発生源Ａ２０１と雑音発生源Ｂ２０２を偏りなく配置することにより、局所的な外乱の影響を受ける雑音発生源Ａ２０１と雑音発生源Ｂ２０２の個数を同程度にし、総和に与える影響が雑音発生源Ａ２０１のグループと雑音発生源Ｂ２０２のグループで偏りがないようにする。３つ以上の雑音発生源のグループで乱数生成装置１００が構成される場合も同様に、各グループの雑音発生源を空間的に偏りなく分散配置することにより、乱数生成装置１００が出力する乱数列に対して外乱の影響を少なくする。
【００２５】
次に、本発明の第５の実施の形態を図２を用いて説明する。図２に示す乱数生成装置１００は熱雑音による微弱な電位変化を出力する熱雑音素子２１０で構成される。熱雑音素子２１０は熱雑音による微弱な電位変化の信号２１１を出力する。乱数生成装置１００は熱雑音素子２１０が出力する信号２１１を出力する。熱雑音素子２１０は定電圧ダイオードなどを用いて構成する。これにより、乱数生成装置１００は熱雑音により不規則で微弱な電位変化を出力する。
【００２６】
次に、本発明の第６の実施の形態を図６を用いて説明する。図６に示す乱数生成装置１００は雑音発生源２００とＡ／Ｄコンバータ６１０で構成される。雑音発生源２００は信号６０１をＡ／Ｄコンバータ６１０に出力する。Ａ／Ｄコンバータ６１０は信号６０１をディジタル信号６１１に変換し出力する。乱数生成装置１００は信号６０１とディジタル信号６１１を出力する。これにより、乱数生成装置１００はアナログ信号とディジタル信号を出力する。
【００２７】
第１、２、３、４、６の実施の形態における雑音発生源２００は、第１、２、３、４、５、６の実施の形態の乱数生成装置１００で構成することができる。つまり、第１、２、３、４、６の実施の形態の雑音発生源２００は、入れ子構造を持つ異なる種類の複数の雑音発生源２００の組み合わせで構成することができる。
【００２８】
次に、本発明の第７の実施の形態を図９を用いて説明する。図９に示す情報処理装置９００は、乱数生成装置１００と、暗号処理機構９１０と、ＣＰＵ９２０と、ハードディスク９３０と、メモリー９４０と、外部インターフェース９５０と、内部バス９６０で構成される。暗号処理機構９１０とＣＰＵ９２０とハードディスク９３０とメモリー９４０と外部インターフェース９５０は、それぞれ内部バス９６０に接続したブロックである。
【００２９】
乱数生成装置１００は、暗号処理機構９１０と接続しデータの入出力を行う。乱数生成装置１００は内部バス９６０に直接接続していないため、内部バス９６０に接続したブロックは乱数生成装置１００から直接データを読み出すことはできない。乱数生成装置１００は暗号処理機構に乱数値を出力する。暗号処理機構９１０は、乱数生成装置１００から乱数値を入力し、乱数値を利用して暗号処理を行う。暗号処理機構９１０は、内部バス９６０に接続し、内部バス９６０に接続したブロックからデータを入力し、入力したデータに暗号処理を行い、内部バス９６０に接続したブロックへ暗号処理した結果を出力する。ＣＰＵ９２０は、内部バス９６０に接続し、内部バス９６０に接続したブロックとデータの入出力をし、情報処理装置９００の制御をする。ハードディスク９３０は、内部バス９６０に接続し、内部バス９６０に接続したブロックとデータの入出力をし、入力したデータを記憶し、情報処理装置９００の電源が切れている状態でも記憶を保持する。メモリー９４０は、内部バス９６０に接続し、内部バス９６０に接続したブロックとデータの入出力をし、入力したデータを記憶することができる。外部インターフェース９５０は、内部バス９６０に接続し、内部バス９６０に接続したブロックとデータの入出力をし、外部へ情報処理装置９００の内部情報を出力し、外部から情報を入力する。外部インターフェース９５０は、キーボード、マウスなどの入力デバイスとのインターフェース、およびディスプレイ、スピーカーなどの出力デバイスとのインターフェース、およびＵＳＢ、ＩＥＥＥ１３９４などの汎用インターフェースで構成される。
【００３０】
暗号処理機構９１０が暗号処理で使用する鍵情報を乱数生成装置１００で生成し入力することにより、鍵情報が暗号処理機構９１０の外部に漏れることがなくなり、安全に暗号処理を行うことができる。
【００３１】
【発明の効果】
以上に説明したように、本発明によれば、外部からの熱や電磁気による影響がすくない乱数生成装置を提供する。さらに、本発明によれば、安全に暗号処理を行う情報処理装置を提供する。
【図面の簡単な説明】
【図１】本発明の乱数生成装置の構成例を説明するための図である。
【図２】本発明の乱数生成装置の構成例を説明するための図である。
【図３】本発明の乱数生成装置の構成例を説明するための図である。
【図４】本発明の乱数生成装置における雑音発生源の物理的配置を説明するための図である。
【図５】本発明の乱数生成装置の構成例を説明するための図である。
【図６】本発明の乱数生成装置の構成例を説明するための図である。
【図７】本発明の乱数生成装置の構成例を説明するための図である。
【図８】本発明の乱数生成装置の構成例を説明するための図である。
【図９】本発明の情報処理装置の構成例を説明するための図である。
【符号の説明】
１００…乱数生成装置、１０１…雑音発生源の出力信号、１０２…雑音発生源の出力信号、１１０…差動増幅回路、１１１…差動増幅回路の出力信号、２００…雑音発生源、２０１…雑音発生源Ａ、２０２…雑音発生源Ｂ、２１０…熱雑音素子、２１１…熱雑音素子の出力信号、３０１…雑音発生源の出力信号、３０２…雑音発生源の出力信号、３１０…加算回路、３１１…加算回路の出力信号、５０１…雑音発生源の出力信号、５０２…比較器の出力信号、５０３…サンプリング機構の出力信号、５１０…比較器、５２０…サンプリング機構、６０１…雑音発生源の出力信号、６１０…Ａ／Ｄコンバータ、６１１…Ａ／Ｄコンバータの出力、７０１…雑音発生源の出力信号、７０２…遅延素子の出力、７０３…差動増幅回路の出力、７２０…遅延素子、８０１…雑音発生源の出力信号、８０２…入力バッファの出力信号、８０３…差動増幅回路の出力、８０４…出力バッファの出力、８０５…クロック信号、８１０…入力バッファ、８２０…出力バッファ、９００…情報処理装置、９１０…暗号処理機構、９２０…ＣＰＵ、９３０…ハードディスク、９４０…メモリー、９５０…外部インターフェース、９６０…内部バス。
【図１】
2004280486.tif 000003
【図２】
2004280486.tif 000004
【図３】
2004280486.tif 000005
【図４】
2004280486.tif 000006
【図５】
2004280486.tif 000007
【図６】
2004280486.tif 000008
【図７】
2004280486.tif 000009
【図８】
2004280486.tif 000010
【図９】
2004280486.tif 000011