(57)【要約】【課題】クライアント側の負担を少なくし、質の高い乱数を適切に得る。【解決手段】ネットワーク１を介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段２２を備えるサーバ２と、ネットワーク１を介して前記サーバ２に対して送信要求信号を送出し、返送される返信信号の到達時刻を検出し、当該到達時刻情報に基づき乱数を生成する乱数生成手段４を備えるクライアント３とを具備する。【選択図】  図１
2008250783.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、
ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第２のコンピュータと
を具備することを特徴とする乱数生成システム。
【請求項２】
乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項１に記載の乱数生成システム。
【請求項３】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２に記載の乱数生成システム。
【請求項４】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３に記載の乱数生成システム。
【請求項５】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３に記載の乱数生成システム。
【請求項６】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２に記載の乱数生成システム。
【請求項７】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項６に記載の乱数生成システム。
【請求項８】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項６に記載の乱数生成システム。
【請求項９】
乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項１に記載の乱数生成システム。
【請求項１０】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項９に記載の乱数生成システム。
【請求項１１】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１０に記載の乱数生成システム。
【請求項１２】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１０に記載の乱数生成システム。
【請求項１３】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項９に記載の乱数生成システム。
【請求項１４】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１３に記載の乱数生成システム。
【請求項１５】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１３に記載の乱数生成システム。
【請求項１６】
ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第２のコンピュータとを使用し、
前記第２のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする乱数生成方法。
【請求項１７】
乱数生成の際には、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項１６に記載の乱数生成方法。
【請求項１８】
乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１７に記載の乱数生成方法。
【請求項１９】
乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１８に記載の乱数生成方法。
【請求項２０】
乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１８に記載の乱数生成方法。
【請求項２１】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項１７に記載の乱数生成方法。
【請求項２２】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２１に記載の乱数生成方法。
【請求項２３】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２１に記載の乱数生成方法。
【請求項２４】
乱数生成の際には、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項１６に記載の乱数生成方法。
【請求項２５】
乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２４に記載の乱数生成方法。
【請求項２６】
乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２５に記載の乱数生成方法。
【請求項２７】
乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２５に記載の乱数生成方法。
【請求項２８】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２４に記載の乱数生成方法。
【請求項２９】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２８に記載の乱数生成方法。
【請求項３０】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２８に記載の乱数生成方法。
【請求項３１】
ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第２のコンピュータを構成するコンピュータであって、
このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とするコンピュータ。
【請求項３２】
乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項３１に記載のコンピュータ。
【請求項３３】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３２に記載のコンピュータ。
【請求項３４】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３３に記載のコンピュータ。
【請求項３５】
乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３３に記載のコンピュータ。
【請求項３６】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３２に記載のコンピュータ。
【請求項３７】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３６に記載のコンピュータ。
【請求項３８】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３６に記載のコンピュータ。
【請求項３９】
乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項３１に記載のコンピュータ。
【請求項４０】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３９に記載のコンピュータ。
【請求項４１】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項４０に記載のコンピュータ。
【請求項４２】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項４０に記載のコンピュータ。
【請求項４３】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項３９に記載のコンピュータ。
【請求項４４】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項４３に記載のコンピュータ。
【請求項４５】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項４３に記載のコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークにおけるパケット応答時間のランダム性を利用して、真性乱数と同等の再現性を持たない乱数を生成する乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものであり、特に、クライアント側に半導体熱素子を備え或いは真性乱数生成回路等の特殊ハードウエアを備える必要をなくした乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものである。
【背景技術】
【０００２】
従来、各種の情報を管理或いは情報通信などを行う分野においては、暗号化セキュリティを図るようになってきており、この暗号化セキュリティにおける「安全な鍵生成」のために、再現性がなく且つ質の高い乱数の生成が必須となっている。旧来にあっては、コンピュータにおいてソフトウエアプログラムにおいて乱数（擬似乱数）の生成を行っているが、係る手法により生成された乱数は再現性がないとは言えず、乱数生成シード（ＳＥＥＤ）が知れると簡単に鍵を再生することが可能となり、十分なものではなかった。
【０００３】
一方、再現性のない乱数（真性乱数）を得る手法としては、半導体熱素子や真性乱数生成回路等のハードウエアを用いるものがあるが、汎用のパーソナルコンピュータにおいては上記ハードウエアを別途用意する必要があり、より簡易な構成による乱数生成手法の提供が求められている。
【０００４】
上記ハードウエアを用いる手法に対して、近年においては、ネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用し、真性乱数と同等の乱数を生成する手法が提供されている。この手法の１つとしては、非特許文献１に記載されたものがあり、その手法は、クライアントからサーバへのＦＴＰもしくはＨＴＴＰ転送要求に対し、サーバはクライアントへ向けてＦＴＰもしくはＨＴＴＰパケットを返信し、クライアントは各パケットの到着時刻の計測を幾度か繰り返し、前後する重複のない２つの到着時刻のビット列について、差があるビットのみを抽出して乱数を得るものである。
【０００５】
しかしながら、上記非特許文献１で示される手法にあっては、クライント・サーバ間の物理的距離が近い場合には応答時間がランダムになり難いことが容易に予測される上に、同非特許文献１に係る手法により得られた乱数は、必ずしも良質な乱数性能を有するとは限らない旨が、非特許文献２において指摘されている。すなわち、現実的に利用できるような良質な乱数を得るには、何らかの工夫を加える必要があると思料される。
【０００６】
また、非特許文献２と特許文献１には、非特許文献１に記載の手法を改良するものが記載されており、その手法は、クライアントからサーバへパケットを送信し、これに対しサーバから返信されるパケットの到着時刻を計測して、クライアント−サーバ間の応答時間を用いるもので、予測アルゴリズムを用いて過去の応答時間から未来の応答時間を予測し、実測値との差を乱数として利用するものである。しかしながら、この手法にあっては、乱数性能の改善はなされるが、乱数抽出毎にクライアント−サーバ間をパケットが往復する必要があるため、パケット転送負荷が大きく、また一方で、予測アルゴリズム中に高次元の連立方程式を解く過程が含まれるなど、応答時間計測後のクライアント側での処理が重たいという問題がある。
【非特許文献１】「ＩＰパケットの到着時刻を用いた乱数生成」ＳＣＩＳ’９９予稿集、pp.491-496，電子情報通信学会、1999年１月
【非特許文献２】「パケット往復時間の予測誤差を使った乱数生成法」情報処理学会論文誌、Vol.44,pp2170-2177,Aug.2003
【特許文献１】特開２００４−２０６０２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
発明が解決しようとする課題は、真性乱数を得るためにはクライアント側に特別のハードウエアを設ける必要があるという点にあり、また、これを避けるための手法であるネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用するものにあっては、クライアント・サーバ間の物理的距離にランダム性が左右され易い点であり、また、これを回避するためにはクライアント側での処理が重たくなるという点である。本発明は係る課題を解決して、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得ることが可能な乱数生成システム、乱数生成方法及びコンピュータを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る乱数生成システムは、ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第２のコンピュータとを具備することを特徴とする。
【０００９】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【００１０】
本発明に係る乱数生成システムでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１１】
本発明に係る乱数生成システムでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１２】
本発明に係る乱数生成システムでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１３】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１４】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１５】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１６】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【００１７】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１８】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００１９】
乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２０】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２１】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２２】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２３】
本発明に係る乱数生成方法は、ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第２のコンピュータとを使用し、前記第２のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする。
【００２４】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【００２５】
本発明に係る乱数生成方法では、乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２６】
本発明に係る乱数生成方法では、乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２７】
本発明に係る乱数生成方法では、乱数生成の際には、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２８】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００２９】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３０】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３１】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【００３２】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項２４に記載の乱数生成方法。
【００３３】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３４】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３５】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３６】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３７】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００３８】
本発明に係るコンピュータは、ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第１のコンピュータと、ネットワークを介して前記第１のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第２のコンピュータを構成するコンピュータであって、このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とする。
【００３９】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【００４０】
本発明に係るコンピュータでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４１】
本発明に係るコンピュータでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４２】
本発明に係るコンピュータでは、乱数生成手段は、１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４３】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４４】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４５】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４６】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を複数回実行し、それぞれの送信要求信号に対して返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【００４７】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４８】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００４９】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た１つの到達時刻情報または１つの時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００５０】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００５１】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第１段階の乱数値を生成し、生成された第１段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【００５２】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第１段階の乱数値を生成し、生成された第１段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【発明の効果】
【００５３】
本発明によれば、ネットワークを介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するコンピュータを採用しているために、送信要求を行う側には特別な構成を備えることなく、返信信号の到達時刻或いは返信信号の到達時と送信要求信号の送出時との時間間隔がランダムな値となり、これを用いて生成された乱数は真性乱数と同等の再現性を持たない乱数となる効果を奏する。特にコンピュータ間が近接しているような場合においても、再現性のない良質な乱数を得ることができるという効果がある。更に、送信要求を行う側の構成が増加することがないため、ＩＣカードや小型端末器への応用が容易であるという効果がある。
【発明を実施するための最良の形態】
【００５４】
本発明では、送信要求信号の到達を受けて返信号を送出する側のコンピュータに、送信要求信号の到達毎にランダムな遅延時間の経過後に返信信号を送出する構成を採用することで、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得るという目的を達成したものである。以下添付図面を参照して、本発明に係る乱数生成システム、乱数生成方法及びコンピュータの実施例を説明する。各図において同一の構成要素には同一の符号を付し、重複する説明を省略する。
【００５５】
図１に第１の実施例に係る乱数生成システムの構成図を示す。ネットワーク１に対し、サーバ（第１のコンピュータ）２とクライアント（第２のコンピュータ）３とが接続されている。サーバ２には、ネットワーク１を介して送られてくる信号を受信する受信手段２１が備えられ、更に、ランダム返信手段２２が備えられている。
【００５６】
ランダム返信手段２２は、ネットワーク１を介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するものである。ランダムな遅延時間を経過させるため、ランダム値機構２３が備えられており、ランダム値機構２３は受信手段２１がネットワーク１を介して送信要求信号を受信したことに応じて、受信手段２１から更新信号が与えられ、ランダム値を更新する。ランダム返信手段２２は、受信手段２１から返信指示を受けると、ランダム値機構２３を参照し或いはランダム値機構２３の出力を受けてランダム値を得る。
【００５７】
ランダム値機構２３は、当該サーバ２以外に開示されないシードから擬似乱数を生成するアルゴリズムを実現するソフトウエアプログラム、或いは当該サーバ２に接続された乱数生成用のハードウエアなどの公知の構成により実現される。また、擬似乱数生成アルゴリズムに提供する乱数シード、乱数生成用ハードウエアに対する入力値としては、受信手段２１が送信要求信号を受け取った時刻情報における下位ビット（所定ビット数）を用いること、または送信要求信号の到達を受けてカウントアップするカウンタの出力を用いることなどが可能である。
【００５８】
一方、クライアント３には、統括制御手段３１による制御によりサーバ２に対して送信要求を送出する送信手段３２、返信信号を受け取る受信手段３３が備えられている。更にクライアント３には、検出手段３４、乱数値出力手段３５、乱数列記憶手段３６が備えられている。上記の検出手段３４、乱数値出力手段３５及び乱数列記憶手段３６は、乱数生成手段４を構成する。
【００５９】
検出手段３４は、統括制御手段３１により制御されて稼働状態となり、サーバ２から返送される返信信号の到達時刻情報または返信信号間の時間間隔情報を検出するものである。乱数値出力手段３５は、統括制御手段３１により制御されて稼働状態となり、検出手段３４により検出される到達時刻情報または時間間隔情報に基づき乱数値を生成して出力するものである。乱数列記憶手段３６は、所要ビット長の乱数列が記憶されるものであり、この乱数列記憶手段３６に対し、乱数値出力手段３５が生成し出力した所定ビットが所定に順にセットされて所要ビットの長さを持つ乱数列が作成されるものである。
【００６０】
以上の通りに構成された乱数生成システムにおいて、サーバ２は図２または図３に示されるフローチャートに対応するプログラムにより動作するので、これらのフローチャートに基づき動作説明を行う。
【００６１】
サーバ２では受信手段２１が図２に示すように送信要求信号の到達を監視しており（Ｓ１）、送信要求信号が到達すると受信手段２１は返信指示をランダム返信手段２２へ与えると共に、ランダム値機構２３へ通知を行いランダム値の更新を行い、ランダム返信手段２２がランダム値機構２３を参照し或いはランダム値機構２３の出力を受けてランダム値を得る（Ｓ２）。
【００６２】
ステップＳ３においてランダム返信手段２２は、取得したランダム値対応の時間経過を監視し（Ｓ３）、ランダム値対応の時間経過があるとクライアント３を宛先とする返信信号をネットワーク１を介して送出する（Ｓ４）。このような返信信号の送信手法は、ピンポン型の返信と称することができ、図４に示すように、要求信号と返信信号が対になって処理が進行する。
【００６３】
これに対して、図３のフローチャートに示すように、ステップＳ４において返信信号を送信した後に、予め設定された所定回数の返信信号を送信したかについて検出を行い（Ｓ５）、所定回数に満たなければステップＳ２へ戻って処理を繰り返すことにより、所定数の返信信号の送信を行う。このような返信信号の送信手法は、連射型の返信と称することができ、図５に示すように、一度の要求信号に対し複数の返信信号が連射されるが如くに送信されて処理が進行する。
【００６４】
以上のサーバ２による処理に対して、クライアント３の処理は、図６のフローチャートに示すように行われる。クライアント３における統括制御手段３１は図６に示すように乱数生成のトリガ発生を検出し（Ｓ１１）、例えば乱数生成の指示入力がキーボード操作などによりなされた場合に乱数生成のトリガ発生ありと判定してＹＥＳへ分岐し、各手段を稼働状態とすると共に送信手段３２へ送信の指示を与える。これにより、送信手段３２はサーバ２を宛先として送信要求信号を送出する（Ｓ１２）。
【００６５】
上記に対してクライアント３では、受信手段３３が返信信号の到達を監視しており（Ｓ１３）、返信信号の到達があると受信手段３３は受け取りを検出手段３４へ通知し、時刻タイマ（時計）による到達時刻情報の検出または時間間隔タイマによる時間間隔情報の検出を実行させる（Ｓ１５）。時間間隔タイマの起動は、ピンポン型においては返信要求信号の送信時、連射型においては、初期時には返信要求信号の送信時、その後においては、返信信号の到達時である。このステップＳ１５の後には、ピンポン型の返信の場合には、ステップＳ１２からステップＳ１５が所定回数繰り返され、また、連射型の返信の場合には、ステップＳ１３からステップＳ１５が所定回数繰り返される（Ｓ１６）。
【００６６】
＜実施例Ａ＞
以上のような検出手段の処理に対し、乱数値出力手段３５では、図７に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報を用いて乱数生成を行う（Ｓ１７）。
【００６７】
＜実施例Ａ−１＞
この実施例Ａ−１は、実施例Ａをより具体化し詳細にしたものであり、図８に示されるように、１つの到達時刻情報または１つの時間間隔情報を単位として乱数のビット列の一部を生成し（Ｓ１９）、これを乱数のビット列に配置し（Ｓ２０）、所定長となったかを検出し（Ｓ２１）、所定長となるまでステップＳ１９、Ｓ２０を繰り返して乱数を得るというものである。
【００６８】
この実施例Ａ−１の具体例としては、（抽出例１）情報（到達時刻情報、時間間隔情報）の最下位１ビットを抽出し、乱数列の最上位ビットからセットする。（抽出例２）情報の最下位から２ビット目と最下位から４ビット目を抽出し、２ビットを乱数列の最上位ビットからセットする。（抽出例３）情報の最下位から上位方向へ３ビットを抽出し、この３ビットを乱数列の最上位ビットからセットする。（抽出例４）情報の全ビットを抽出し、この全ビットを乱数列の最上位ビットからセットする、などを挙げることができる。また、情報に対し所定関数により処理を行って乱数ビット列の一部としても良い。
【００６９】
＜実施例Ａ−１−１＞
この実施例Ａ−１−１は、実施例Ａ−１の下位概念に属する実施例である。図９に示されるように、１つの到達時刻情報または１つの時間間隔情報を単位として抽出により第１段階の乱数のビット列を得て（Ｓ２２）、これを処理して得られた値を、乱数のビット列に配置し（Ｓ２３）、所定長となったかを検出し（Ｓ２４）、所定長となるまでステップＳ２２、Ｓ２３を繰り返して乱数を得るというものである。
【００７０】
ステップＳ２２における抽出は、実施例Ａ−１において説明した通りの抽出例１〜４の手法によることができる。また、ステップＳ２３における処理としては、（処理例１）抽出される値に対応した適当な数値を記憶させた変換テーブルを用いるもの、（処理例２）抽出された値を引数として適当な関数（一次関数、二次関数など算術演算、或いは論理演算など任意の関数）により処理を行って結果を得るもの、（処理例３）シードとして公知の擬似乱数生成法を用いて擬似乱数を生成させるもの、（処理例４）抽出された値を入力とする真性乱数生成器の出力を用いるものなどを挙げることができる。
【００７１】
＜実施例Ａ−１−２＞
この実施例Ａ−１−２も、実施例Ａ−１の下位概念に属する実施例である。図１０に示されるように、１つの到達時刻情報または１つの時間間隔情報を用いた処理により乱数のビット列を生成し（Ｓ２５）、生成された乱数から抽出により得られた値を、乱数のビット列に配置し（Ｓ２６）、所定長となったかを検出し（Ｓ２７）、所定長となるまでステップＳ２５、Ｓ２６を繰り返して乱数を得るというものである。
【００７２】
具体的には、実施例Ａ−１−１における処理例１〜４などをステップＳ２５において行い、実施例Ａ−１における抽出例１〜４などをステップＳ２６において行う。
【００７３】
＜実施例Ａ−２＞
この実施例Ａ−２は、実施例Ａをより具体化し詳細にしたものであり、図１１に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し（Ｓ３１）、これを乱数のビット列に配置し（Ｓ３２）、所定長となったかを検出し（Ｓ３３）、所定長となるまでステップＳ３１、Ｓ３２を繰り返して乱数を得るというものである。
【００７４】
この実施例Ａ−２における「複数」の具体例としては、到達時刻情報（または、時間間隔情報）の第１番目と第３番目、第２番目と第４番目、・・・というように一つおきの情報を利用するもの、第１番目、第３番目及び第５番目の３情報を一組とし、第２番目、第４番目及び第６番目の３情報を一組とし、・・・というように３情報を一組として用いるものを挙げることができる。
【００７５】
また、実施例Ａ−２における「生成」の具体例を説明する。例えば、情報の第１番目と第３番目、第２番目と第４番目、・・・を用いる場合には、各情報の下位１ビットを抽出し、各ビットをそのままの順で或いは順を逆さにして乱数列の最上位ビットからセットする。先に説明した抽出例２〜４を用いて、抽出した値をそのままの順で或いは順を変更して乱数列の最上位ビットからセットするようにしても良い。
【００７６】
＜実施例Ａ−２−１＞
この実施例Ａ−２−１は、実施例Ａ−２の下位概念に属する実施例である。図１２に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として抽出により第１段階の乱数のビット列を得て（Ｓ３４）、これを処理して得られた値を、乱数のビット列に配置し（Ｓ３５）、所定長となったかを検出し（Ｓ３６）、所定長となるまでステップＳ２２、Ｓ２３を繰り返して乱数を得るというものである。
【００７７】
上記ステップＳ３４における「抽出」にあっては、実施例Ａ−２において説明した抽出手法を用いることができる。また、上記ステップＳ３５における「処理」としては、既述のテーブル変換、関数処理（算術演算、論理演算）、擬似乱数生成、真性乱数生成等を挙げることができる。一つの例として、「抽出」により得られた情報の第１番目と第３番目をｘ１、ｘ３とすると、ｘ１とｘ３との排他的論理和演算を行って乱数列の一部を得ると共に、第２番目と第４番目、・・・についても同様に処理を行う。
【００７８】
また、「抽出」により情報の第１番目は最下位ビットを抽出してｘ１とし、第３番目では全ビットを抽出してｘ３とし、第３番目の全ビットｘ３を演算処理し結果ｙ３を得て、ｘ１とｙ３を結合（並べる）して乱数列の一部を得ると共に、第２番目と第４番目、・・・についても同様に処理を行う。また別の例では、「抽出」により情報の第１番目と第３番目はそれぞれ最下位ビットを抽出してｘ１、ｘ３とし、第５番目では全ビットを抽出してｘ５とする。ｘ３についてはテーブル変換で結果ｙ３を得る一方、ｘ５については擬似乱数生成法により結果ｙ５を得て、これらｘ１、ｙ３、ｙ５を結合した値を入力とする真性乱数生成器の出力を乱数列の一部とすると共に、第２番目と第４番目と第６番目、・・・についても同様に処理を行う。
【００７９】
＜実施例Ａ−２−２＞
この実施例Ａ−２−２も、実施例Ａ−２の下位概念に属する実施例である。図１３に示されるように、複数の到達時刻情報または複数の時間間隔情報を用いた処理により乱数のビット列を生成し（Ｓ３７）、生成された乱数から抽出により得られた値を、乱数のビット列に配置し（Ｓ３８）、所定長となったかを検出し（Ｓ３９）、所定長となるまでステップＳ３７、Ｓ３８を繰り返して乱数を得るというものである。
【００８０】
ステップＳ３７の処理では、複数の到達時刻情報または複数の時間間隔情報を結合し、既述のテーブル変換、関数処理（算術演算、論理演算）、擬似乱数生成、真性乱数生成等により処理することを挙げることができる。第１の例として、情報の第１番目と第３番目をｘ１、ｘ３とすると、ｘ１とｘ３との算術演算を行ってこの結果をｙ１３とし、第２番目と第４番目、・・・についても同様に演算を行う。また、情報の第１番目と第３番目をｘ１、ｘ３とすると、ｘ１とｘ３との排他的論理和演算を行ってこの結果をｚ１３とし、第２番目と第４番目、・・・についても同様に演算を行うものであっても良い。
【００８１】
ステップ３８の「抽出」においては、上記算術演算によりｙ１３を得た例では、このｙ１３の最下位から２ビット目と４ビット目を抽出することを例として挙げることができる。また、排他的論理和の結果ｚ１３を得た例では、このｚ１３をそのまま乱数列の一部として用いることを例として挙げることができる。
【００８２】
＜実施例Ｂ＞
以上のような実施例Ａ系統では、到達時刻情報または時間間隔情報の検出により得られた情報を全て用いるものであった。これに対し、実施例Ｂでは、全ての到達時刻情報または全ての時間間隔情報の中から或るルールにより選択した到達時刻情報または時間間隔情報を用いる。即ち、図１４に示すようにクライアント３Ｂには、選択ルール情報３０が備えられ、乱数値出力手段３５Ｂがこの選択ルール情報３０を用いて選択を行う。
【００８３】
先に図４〜図７に示すような検出手段の処理に対し、乱数値出力手段３５Ｂでは、図１５に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報から選択ルール情報３０に基づき選択した到達時刻情報または時間間隔情報を用いて乱数生成を行う（Ｓ４０）。
【００８４】
選択ルール情報３０としては、予め固定的に決定して備えることができる。例えば、（ルール１）偶数番目を排除する、（ルール２）５の倍数番目を排除する、（ルール３）３ｎ＋１（ｎ≧１）を選択する等を挙げることができる。
【００８５】
選択ルール情報３０としては、選択に際してその都度ユーザが決定して備えることができる。（決定手法１）無作為にキーボード入力を行ったりマウス操作を行ったりして得られた値を選択（或いは排除）する情報の序数とする。（決定手法２）決定手法１により得られた値をシードとする擬似乱数生成法により得られた値を選択（或いは排除）する情報の序数とする。（決定手法３）決定手法１により得られた値をシードとする真性乱数生成器により得られた値を選択（或いは排除）する情報の序数とする。（決定手法４）決定手法１により得られた値に基づき、コンピュータにより乱数生成を行わせて得られた値を選択（或いは排除）する情報の序数とする。上記決定手法１〜４を複合的に用いるなどが考えられる。複合的にとは、最初は決定手法１、次には決定手法２、・・・というようなものや、決定手法４により得られた値を決定手法２の入力として用いるようなものが考えられる。
【００８６】
その他、システムのみが知り得る情報や過去に生成された乱数を入力として決定手法２〜４などを用いて決定する手法などが用いられる。システムのみが知り得る情報とは、決定手法に入力したことが他に知られていないことを意味するもので、例えば時刻などのように他が知り得ても、何時の時刻が採用されたかを知られていなければ良いものである。図１６には、選択ルール情報３０により選択を行って、各回の抽出データについて「選択」と「廃棄」を決定した結果の一例が示されている。一見して、選択がランダムになされた如くの結果を呈している。
【００８７】
＜実施例Ｂ−１＞
この実施例Ｂ−１は、実施例Ｂをより具体化し詳細にしたものであり、実施例Ａ−１のフローチャートである図８に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【００８８】
＜実施例Ｂ−１−１＞
この実施例Ｂ−１−１は、実施例Ｂ−１の下位概念に属する実施例である。この実施例Ｂ−１−１では、実施例Ａ−１−１のフローチャートである図９に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【００８９】
＜実施例Ｂ−１−２＞
この実施例Ｂ−１−２も、実施例Ｂ−１の下位概念に属する実施例である。この実施例Ｂ−１−２では、実施例Ａ−１−２のフローチャートである図１０に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【００９０】
＜実施例Ｂ−２＞
この実施例Ｂ−２は、実施例Ｂをより具体化し詳細にしたものであり、この実施例Ｂ−２では、実施例Ａ−２のフローチャートである図１１に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【００９１】
＜実施例Ｂ−２−１＞
この実施例Ｂ−２−１は、実施例Ｂ−２の下位概念に属する実施例である。この実施例Ｂ−２−１では、実施例Ａ−２−１のフローチャートである図１２に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【００９２】
＜実施例Ｂ−２−２＞
この実施例Ｂ−２−２も、実施例Ｂ−２の下位概念に属する実施例である。この実施例Ｂ−２−２では、実施例Ａ−２−２のフローチャートである図１３に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【図面の簡単な説明】
【００９３】
【図１】本発明に係る乱数生成システムにおける実施例Ａを示す構成図。
【図２】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図３】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図４】図３の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図５】図４の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図６】本発明に係る乱数生成システムにおけるクライアントの動作を説明するためのフローチャート。
【図７】本発明に係る乱数生成システムの実施例Ａにおけるクライアントの動作を説明するためのフローチャート。
【図８】本発明に係る乱数生成システムの実施例Ａ−１におけるクライアントの動作を説明するためのフローチャート。
【図９】本発明に係る乱数生成システムの実施例Ａ−１−１におけるクライアントの動作を説明するためのフローチャート。
【図１０】本発明に係る乱数生成システムの実施例Ａ−１−２におけるクライアントの動作を説明するためのフローチャート。
【図１１】本発明に係る乱数生成システムの実施例Ａ−２におけるクライアントの動作を説明するためのフローチャート。
【図１２】本発明に係る乱数生成システムの実施例Ａ−２−１におけるクライアントの動作を説明するためのフローチャート。
【図１３】本発明に係る乱数生成システムの実施例Ａ−２−２におけるクライアントの動作を説明するためのフローチャート。
【図１４】本発明に係る乱数生成システムにおける実施例Ｂを示す構成図。
【図１５】本発明に係る乱数生成システムの実施例Ｂにおけるクライアントの動作を説明するためのフローチャート。
【図１６】本発明に係る乱数生成システムの実施例Ｂにおけるクライアントにより行われる情報選択動作を説明するための図。
【符号の説明】
【００９４】
１  ネットワーク
２  サーバ
３、３Ｂ  クライアント
４  乱数生成手段
２１  受信手段
２２  ランダム返信手段
２３ランダム値機構
３０  選択ルール情報
３１  統括制御手段
３２  送信手段
３３  受信手段
３４  検出手段
３５、３５Ｂ  乱数値出力手段
３６  乱数列記憶手段
【図１】
2008250783.tif 000003
【図２】
2008250783.tif 000004
【図３】
2008250783.tif 000005
【図４】
2008250783.tif 000006
【図５】
2008250783.tif 000007
【図６】
2008250783.tif 000008
【図７】
2008250783.tif 000009
【図８】
2008250783.tif 000010
【図９】
2008250783.tif 000011
【図１０】
2008250783.tif 000012
【図１１】
2008250783.tif 000013
【図１２】
2008250783.tif 000014
【図１３】
2008250783.tif 000015
【図１４】
2008250783.tif 000016
【図１５】
2008250783.tif 000017
【図１６】
2008250783.tif 000018