乱数生成システム、乱数生成方法及びコンピュータ
【課題】クライアント側の負担を少なくし、質の高い乱数を適切に得る。
【解決手段】ネットワーク1を介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段22を備えるサーバ2と、ネットワーク1を介して前記サーバ2に対して送信要求信号を送出し、返送される返信信号の到達時刻を検出し、当該到達時刻情報に基づき乱数を生成する乱数生成手段4を備えるクライアント3とを具備する。
【解決手段】ネットワーク1を介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段22を備えるサーバ2と、ネットワーク1を介して前記サーバ2に対して送信要求信号を送出し、返送される返信信号の到達時刻を検出し、当該到達時刻情報に基づき乱数を生成する乱数生成手段4を備えるクライアント3とを具備する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ネットワークにおけるパケット応答時間のランダム性を利用して、真性乱数と同等の再現性を持たない乱数を生成する乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものであり、特に、クライアント側に半導体熱素子を備え或いは真性乱数生成回路等の特殊ハードウエアを備える必要をなくした乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものである。
【背景技術】
【0002】
従来、各種の情報を管理或いは情報通信などを行う分野においては、暗号化セキュリティを図るようになってきており、この暗号化セキュリティにおける「安全な鍵生成」のために、再現性がなく且つ質の高い乱数の生成が必須となっている。旧来にあっては、コンピュータにおいてソフトウエアプログラムにおいて乱数(擬似乱数)の生成を行っているが、係る手法により生成された乱数は再現性がないとは言えず、乱数生成シード(SEED)が知れると簡単に鍵を再生することが可能となり、十分なものではなかった。
【0003】
一方、再現性のない乱数(真性乱数)を得る手法としては、半導体熱素子や真性乱数生成回路等のハードウエアを用いるものがあるが、汎用のパーソナルコンピュータにおいては上記ハードウエアを別途用意する必要があり、より簡易な構成による乱数生成手法の提供が求められている。
【0004】
上記ハードウエアを用いる手法に対して、近年においては、ネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用し、真性乱数と同等の乱数を生成する手法が提供されている。この手法の1つとしては、非特許文献1に記載されたものがあり、その手法は、クライアントからサーバへのFTPもしくはHTTP転送要求に対し、サーバはクライアントへ向けてFTPもしくはHTTPパケットを返信し、クライアントは各パケットの到着時刻の計測を幾度か繰り返し、前後する重複のない2つの到着時刻のビット列について、差があるビットのみを抽出して乱数を得るものである。
【0005】
しかしながら、上記非特許文献1で示される手法にあっては、クライント・サーバ間の物理的距離が近い場合には応答時間がランダムになり難いことが容易に予測される上に、同非特許文献1に係る手法により得られた乱数は、必ずしも良質な乱数性能を有するとは限らない旨が、非特許文献2において指摘されている。すなわち、現実的に利用できるような良質な乱数を得るには、何らかの工夫を加える必要があると思料される。
【0006】
また、非特許文献2と特許文献1には、非特許文献1に記載の手法を改良するものが記載されており、その手法は、クライアントからサーバへパケットを送信し、これに対しサーバから返信されるパケットの到着時刻を計測して、クライアント−サーバ間の応答時間を用いるもので、予測アルゴリズムを用いて過去の応答時間から未来の応答時間を予測し、実測値との差を乱数として利用するものである。しかしながら、この手法にあっては、乱数性能の改善はなされるが、乱数抽出毎にクライアント−サーバ間をパケットが往復する必要があるため、パケット転送負荷が大きく、また一方で、予測アルゴリズム中に高次元の連立方程式を解く過程が含まれるなど、応答時間計測後のクライアント側での処理が重たいという問題がある。
【非特許文献1】「IPパケットの到着時刻を用いた乱数生成」SCIS’99予稿集、pp.491-496,電子情報通信学会、1999年1月
【非特許文献2】「パケット往復時間の予測誤差を使った乱数生成法」情報処理学会論文誌、Vol.44,pp2170-2177,Aug.2003
【特許文献1】特開2004−206025号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
発明が解決しようとする課題は、真性乱数を得るためにはクライアント側に特別のハードウエアを設ける必要があるという点にあり、また、これを避けるための手法であるネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用するものにあっては、クライアント・サーバ間の物理的距離にランダム性が左右され易い点であり、また、これを回避するためにはクライアント側での処理が重たくなるという点である。本発明は係る課題を解決して、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得ることが可能な乱数生成システム、乱数生成方法及びコンピュータを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る乱数生成システムは、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第2のコンピュータとを具備することを特徴とする。
【0009】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0010】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0011】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0012】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0013】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0014】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0015】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0016】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0017】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0018】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0019】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0020】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0021】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0022】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0023】
本発明に係る乱数生成方法は、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第2のコンピュータとを使用し、前記第2のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする。
【0024】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0025】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0026】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0027】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0028】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0029】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0030】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0031】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0032】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【0033】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0034】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0035】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0036】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0037】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0038】
本発明に係るコンピュータは、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第2のコンピュータを構成するコンピュータであって、このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とする。
【0039】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0040】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0041】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0042】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0043】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0044】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0045】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0046】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0047】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0048】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0049】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0050】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0051】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0052】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【発明の効果】
【0053】
本発明によれば、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するコンピュータを採用しているために、送信要求を行う側には特別な構成を備えることなく、返信信号の到達時刻或いは返信信号の到達時と送信要求信号の送出時との時間間隔がランダムな値となり、これを用いて生成された乱数は真性乱数と同等の再現性を持たない乱数となる効果を奏する。特にコンピュータ間が近接しているような場合においても、再現性のない良質な乱数を得ることができるという効果がある。更に、送信要求を行う側の構成が増加することがないため、ICカードや小型端末器への応用が容易であるという効果がある。
【発明を実施するための最良の形態】
【0054】
本発明では、送信要求信号の到達を受けて返信号を送出する側のコンピュータに、送信要求信号に応じてランダムな遅延時間の経過後に返信信号を送出する構成を採用することで、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得るという目的を達成したものである。以下添付図面を参照して、本発明に係る乱数生成システム、乱数生成方法及びコンピュータの実施例を説明する。各図において同一の構成要素には同一の符号を付し、重複する説明を省略する。
【0055】
図1に第1の実施例に係る乱数生成システムの構成図を示す。ネットワーク1に対し、サーバ(第1のコンピュータ)2とクライアント(第2のコンピュータ)3とが接続されている。サーバ2には、ネットワーク1を介して送られてくる信号を受信する受信手段21が備えられ、更に、ランダム返信手段22が備えられている。
【0056】
ランダム返信手段22は、ネットワーク1を介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するものである。ランダムな遅延時間を経過させるため、ランダム値機構23が備えられており、ランダム値機構23は受信手段21がネットワーク1を介して送信要求信号を受信したことに応じて、受信手段21から更新信号が与えられ、ランダム値を更新する。ランダム返信手段22は、受信手段21から返信指示を受けると、ランダム値機構23を参照し或いはランダム値機構23の出力を受けてランダム値を得る。
【0057】
ランダム値機構23は、当該サーバ2以外に開示されないシードから擬似乱数を生成するアルゴリズムを実現するソフトウエアプログラム、或いは当該サーバ2に接続された乱数生成用のハードウエアなどの公知の構成により実現される。また、擬似乱数生成アルゴリズムに提供する乱数シード、乱数生成用ハードウエアに対する入力値としては、受信手段21が送信要求信号を受け取った時刻情報における下位ビット(所定ビット数)を用いること、または送信要求信号の到達を受けてカウントアップするカウンタの出力を用いることなどが可能である。
【0058】
一方、クライアント3には、統括制御手段31による制御によりサーバ2に対して送信要求を送出する送信手段32、返信信号を受け取る受信手段33が備えられている。更にクライアント3には、検出手段34、乱数値出力手段35、乱数列記憶手段36が備えられている。上記の検出手段34、乱数値出力手段35及び乱数列記憶手段36は、乱数生成手段4を構成する。
【0059】
検出手段34は、統括制御手段31により制御されて稼働状態となり、サーバ2から返送される返信信号の到達時刻情報または返信信号間の時間間隔情報を検出するものである。乱数値出力手段35は、統括制御手段31により制御されて稼働状態となり、検出手段34により検出される到達時刻情報または時間間隔情報に基づき乱数値を生成して出力するものである。乱数列記憶手段36は、所要ビット長の乱数列が記憶されるものであり、この乱数列記憶手段36に対し、乱数値出力手段35が生成し出力した所定ビットが所定に順にセットされて所要ビットの長さを持つ乱数列が作成されるものである。
【0060】
以上の通りに構成された乱数生成システムにおいて、サーバ2は図2または図3に示されるフローチャートに対応するプログラムにより動作するので、これらのフローチャートに基づき動作説明を行う。
【0061】
サーバ2では受信手段21が図2に示すように送信要求信号の到達を監視しており(S1)、送信要求信号が到達すると受信手段21は返信指示をランダム返信手段22へ与えると共に、ランダム値機構23へ通知を行いランダム値の更新を行い、ランダム返信手段22がランダム値機構23を参照し或いはランダム値機構23の出力を受けてランダム値を得る(S2)。
【0062】
ステップS3においてランダム返信手段22は、取得したランダム値対応の時間経過を監視し(S3)、ランダム値対応の時間経過があるとクライアント3を宛先とする返信信号をネットワーク1を介して送出する(S4)。このような返信信号の送信手法は、ピンポン型の返信と称することができ、図4に示すように、要求信号と返信信号が対になって処理が進行する。
【0063】
これに対して、図3のフローチャートに示すように、ステップS4において返信信号を送信した後に、予め設定された所定回数の返信信号を送信したかについて検出を行い(S5)、所定回数に満たなければステップS2へ戻って処理を繰り返すことにより、所定数の返信信号の送信を行う。このような返信信号の送信手法は、連射型の返信と称することができ、図5に示すように、一度の要求信号に対し複数の返信信号が連射されるが如くに送信されて処理が進行する。以下の実施例では、この連射型と称される返信信号の送信手法を採用したものとする。
【0064】
以上のサーバ2による処理に対して、クライアント3の処理は、図6のフローチャートに示すように行われる。クライアント3における統括制御手段31は図6に示すように乱数生成のトリガ発生を検出し(S11)、例えば乱数生成の指示入力がキーボード操作などによりなされた場合に乱数生成のトリガ発生ありと判定してYESへ分岐し、各手段を稼働状態とすると共に送信手段32へ送信の指示を与える。これにより、送信手段32はサーバ2を宛先として送信要求信号を送出する(S12)。
【0065】
上記に対してクライアント3では、受信手段33が返信信号の到達を監視しており(S13)、返信信号の到達があると受信手段33は受け取りを検出手段34へ通知し、時刻タイマ(時計)による到達時刻情報の検出または時間間隔タイマによる時間間隔情報の検出を実行させる(S15)。時間間隔タイマの起動は、連射型であるため、初期時には返信要求信号の送信時、その後においては、返信信号の到達時である。このステップS15の後には、連射型の返信であるため、ステップS13からステップS15が所定回数繰り返される(S16)。
【0066】
<実施例A>
以上のような検出手段の処理に対し、乱数値出力手段35では、図7に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報を用いて乱数生成を行う(S17)。
【0067】
<実施例A−1>
この実施例A−1は、実施例Aをより具体化し詳細にしたものであり、図8に示されるように、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し(S19)、これを乱数のビット列に配置し(S20)、所定長となったかを検出し(S21)、所定長となるまでステップS19、S20を繰り返して乱数を得るというものである。
【0068】
この実施例A−1の具体例としては、(抽出例1)情報(到達時刻情報、時間間隔情報)の最下位1ビットを抽出し、乱数列の最上位ビットからセットする。(抽出例2)情報の最下位から2ビット目と最下位から4ビット目を抽出し、2ビットを乱数列の最上位ビットからセットする。(抽出例3)情報の最下位から上位方向へ3ビットを抽出し、この3ビットを乱数列の最上位ビットからセットする。(抽出例4)情報の全ビットを抽出し、この全ビットを乱数列の最上位ビットからセットする、などを挙げることができる。また、情報に対し所定関数により処理を行って乱数ビット列の一部としても良い。
【0069】
<実施例A−1−1>
この実施例A−1−1は、実施例A−1の下位概念に属する実施例である。図9に示されるように、1つの到達時刻情報または1つの時間間隔情報を単位として抽出により第1段階の乱数のビット列を得て(S22)、これを処理して得られた値を、乱数のビット列に配置し(S23)、所定長となったかを検出し(S24)、所定長となるまでステップS22、S23を繰り返して乱数を得るというものである。
【0070】
ステップS22における抽出は、実施例A−1において説明した通りの抽出例1〜4の手法によることができる。また、ステップS23における処理としては、(処理例1)抽出される値に対応した適当な数値を記憶させた変換テーブルを用いるもの、(処理例2)抽出された値を引数として適当な関数(一次関数、二次関数など算術演算、或いは論理演算など任意の関数)により処理を行って結果を得るもの、(処理例3)シードとして公知の擬似乱数生成法を用いて擬似乱数を生成させるもの、(処理例4)抽出された値を入力とする真性乱数生成器の出力を用いるものなどを挙げることができる。
【0071】
<実施例A−1−2>
この実施例A−1−2も、実施例A−1の下位概念に属する実施例である。図10に示されるように、1つの到達時刻情報または1つの時間間隔情報を用いた処理により乱数のビット列を生成し(S25)、生成された乱数から抽出により得られた値を、乱数のビット列に配置し(S26)、所定長となったかを検出し(S27)、所定長となるまでステップS25、S26を繰り返して乱数を得るというものである。
【0072】
具体的には、実施例A−1−1における処理例1〜4などをステップS25において行い、実施例A−1における抽出例1〜4などをステップS26において行う。
【0073】
<実施例A−2>
この実施例A−2は、実施例Aをより具体化し詳細にしたものであり、図11に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し(S31)、これを乱数のビット列に配置し(S32)、所定長となったかを検出し(S33)、所定長となるまでステップS31、S32を繰り返して乱数を得るというものである。
【0074】
この実施例A−2における「複数」の具体例としては、到達時刻情報(または、時間間隔情報)の第1番目と第3番目、第2番目と第4番目、・・・というように一つおきの情報を利用するもの、第1番目、第3番目及び第5番目の3情報を一組とし、第2番目、第4番目及び第6番目の3情報を一組とし、・・・というように3情報を一組として用いるものを挙げることができる。
【0075】
また、実施例A−2における「生成」の具体例を説明する。例えば、情報の第1番目と第3番目、第2番目と第4番目、・・・を用いる場合には、各情報の下位1ビットを抽出し、各ビットをそのままの順で或いは順を逆さにして乱数列の最上位ビットからセットする。先に説明した抽出例2〜4を用いて、抽出した値をそのままの順で或いは順を変更して乱数列の最上位ビットからセットするようにしても良い。
【0076】
<実施例A−2−1>
この実施例A−2−1は、実施例A−2の下位概念に属する実施例である。図12に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として抽出により第1段階の乱数のビット列を得て(S34)、これを処理して得られた値を、乱数のビット列に配置し(S35)、所定長となったかを検出し(S36)、所定長となるまでステップS22、S23を繰り返して乱数を得るというものである。
【0077】
上記ステップS34における「抽出」にあっては、実施例A−2において説明した抽出手法を用いることができる。また、上記ステップS35における「処理」としては、既述のテーブル変換、関数処理(算術演算、論理演算)、擬似乱数生成、真性乱数生成等を挙げることができる。一つの例として、「抽出」により得られた情報の第1番目と第3番目をx1、x3とすると、x1とx3との排他的論理和演算を行って乱数列の一部を得ると共に、第2番目と第4番目、・・・についても同様に処理を行う。
【0078】
また、「抽出」により情報の第1番目は最下位ビットを抽出してx1とし、第3番目では全ビットを抽出してx3とし、第3番目の全ビットx3を演算処理し結果y3を得て、x1とy3を結合(並べる)して乱数列の一部を得ると共に、第2番目と第4番目、・・・についても同様に処理を行う。また別の例では、「抽出」により情報の第1番目と第3番目はそれぞれ最下位ビットを抽出してx1、x3とし、第5番目では全ビットを抽出してx5とする。x3についてはテーブル変換で結果y3を得る一方、x5については擬似乱数生成法により結果y5を得て、これらx1、y3、y5を結合した値を入力とする真性乱数生成器の出力を乱数列の一部とすると共に、第2番目と第4番目と第6番目、・・・についても同様に処理を行う。
【0079】
<実施例A−2−2>
この実施例A−2−2も、実施例A−2の下位概念に属する実施例である。図13に示されるように、複数の到達時刻情報または複数の時間間隔情報を用いた処理により乱数のビット列を生成し(S37)、生成された乱数から抽出により得られた値を、乱数のビット列に配置し(S38)、所定長となったかを検出し(S39)、所定長となるまでステップS37、S38を繰り返して乱数を得るというものである。
【0080】
ステップS37の処理では、複数の到達時刻情報または複数の時間間隔情報を結合し、既述のテーブル変換、関数処理(算術演算、論理演算)、擬似乱数生成、真性乱数生成等により処理することを挙げることができる。第1の例として、情報の第1番目と第3番目をx1、x3とすると、x1とx3との算術演算を行ってこの結果をy13とし、第2番目と第4番目、・・・についても同様に演算を行う。また、情報の第1番目と第3番目をx1、x3とすると、x1とx3との排他的論理和演算を行ってこの結果をz13とし、第2番目と第4番目、・・・についても同様に演算を行うものであっても良い。
【0081】
ステップ38の「抽出」においては、上記算術演算によりy13を得た例では、このy13の最下位から2ビット目と4ビット目を抽出することを例として挙げることができる。また、排他的論理和の結果z13を得た例では、このz13をそのまま乱数列の一部として用いることを例として挙げることができる。
【0082】
<実施例B>
以上のような実施例A系統では、到達時刻情報または時間間隔情報の検出により得られた情報を全て用いるものであった。これに対し、実施例Bでは、全ての到達時刻情報または全ての時間間隔情報の中から或るルールにより選択した到達時刻情報または時間間隔情報を用いる。即ち、図14に示すようにクライアント3Bには、選択ルール情報30が備えられ、乱数値出力手段35Bがこの選択ルール情報30を用いて選択を行う。
【0083】
先に図4〜図7に示すような検出手段の処理に対し、乱数値出力手段35Bでは、図15に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報から選択ルール情報30に基づき選択した到達時刻情報または時間間隔情報を用いて乱数生成を行う(S40)。
【0084】
選択ルール情報30としては、予め固定的に決定して備えることができる。例えば、(ルール1)偶数番目を排除する、(ルール2)5の倍数番目を排除する、(ルール3)3n+1(n≧1)を選択する等を挙げることができる。
【0085】
選択ルール情報30としては、選択に際してその都度ユーザが決定して備えることができる。(決定手法1)無作為にキーボード入力を行ったりマウス操作を行ったりして得られた値を選択(或いは排除)する情報の序数とする。(決定手法2)決定手法1により得られた値をシードとする擬似乱数生成法により得られた値を選択(或いは排除)する情報の序数とする。(決定手法3)決定手法1により得られた値をシードとする真性乱数生成器により得られた値を選択(或いは排除)する情報の序数とする。(決定手法4)決定手法1により得られた値に基づき、コンピュータにより乱数生成を行わせて得られた値を選択(或いは排除)する情報の序数とする。上記決定手法1〜4を複合的に用いるなどが考えられる。複合的にとは、最初は決定手法1、次には決定手法2、・・・というようなものや、決定手法4により得られた値を決定手法2の入力として用いるようなものが考えられる。
【0086】
その他、システムのみが知り得る情報や過去に生成された乱数を入力として決定手法2〜4などを用いて決定する手法などが用いられる。システムのみが知り得る情報とは、決定手法に入力したことが他に知られていないことを意味するもので、例えば時刻などのように他が知り得ても、何時の時刻が採用されたかを知られていなければ良いものである。図16には、選択ルール情報30により選択を行って、各回の抽出データについて「選択」と「廃棄」を決定した結果の一例が示されている。一見して、選択がランダムになされた如くの結果を呈している。
【0087】
<実施例B−1>
この実施例B−1は、実施例Bをより具体化し詳細にしたものであり、実施例A−1のフローチャートである図8に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0088】
<実施例B−1−1>
この実施例B−1−1は、実施例B−1の下位概念に属する実施例である。この実施例B−1−1では、実施例A−1−1のフローチャートである図9に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0089】
<実施例B−1−2>
この実施例B−1−2も、実施例B−1の下位概念に属する実施例である。この実施例B−1−2では、実施例A−1−2のフローチャートである図10に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0090】
<実施例B−2>
この実施例B−2は、実施例Bをより具体化し詳細にしたものであり、この実施例B−2では、実施例A−2のフローチャートである図11に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0091】
<実施例B−2−1>
この実施例B−2−1は、実施例B−2の下位概念に属する実施例である。この実施例B−2−1では、実施例A−2−1のフローチャートである図12に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0092】
<実施例B−2−2>
この実施例B−2−2も、実施例B−2の下位概念に属する実施例である。この実施例B−2−2では、実施例A−2−2のフローチャートである図13に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【図面の簡単な説明】
【0093】
【図1】本発明に係る乱数生成システムにおける実施例Aを示す構成図。
【図2】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図3】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図4】図3の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図5】図4の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図6】本発明に係る乱数生成システムにおけるクライアントの動作を説明するためのフローチャート。
【図7】本発明に係る乱数生成システムの実施例Aにおけるクライアントの動作を説明するためのフローチャート。
【図8】本発明に係る乱数生成システムの実施例A−1におけるクライアントの動作を説明するためのフローチャート。
【図9】本発明に係る乱数生成システムの実施例A−1−1におけるクライアントの動作を説明するためのフローチャート。
【図10】本発明に係る乱数生成システムの実施例A−1−2におけるクライアントの動作を説明するためのフローチャート。
【図11】本発明に係る乱数生成システムの実施例A−2におけるクライアントの動作を説明するためのフローチャート。
【図12】本発明に係る乱数生成システムの実施例A−2−1におけるクライアントの動作を説明するためのフローチャート。
【図13】本発明に係る乱数生成システムの実施例A−2−2におけるクライアントの動作を説明するためのフローチャート。
【図14】本発明に係る乱数生成システムにおける実施例Bを示す構成図。
【図15】本発明に係る乱数生成システムの実施例Bにおけるクライアントの動作を説明するためのフローチャート。
【図16】本発明に係る乱数生成システムの実施例Bにおけるクライアントにより行われる情報選択動作を説明するための図。
【符号の説明】
【0094】
1 ネットワーク
2 サーバ
3、3B クライアント
4 乱数生成手段
21 受信手段
22 ランダム返信手段
23ランダム値機構
30 選択ルール情報
31 統括制御手段
32 送信手段
33 受信手段
34 検出手段
35、35B 乱数値出力手段
36 乱数列記憶手段
【技術分野】
【0001】
この発明は、ネットワークにおけるパケット応答時間のランダム性を利用して、真性乱数と同等の再現性を持たない乱数を生成する乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものであり、特に、クライアント側に半導体熱素子を備え或いは真性乱数生成回路等の特殊ハードウエアを備える必要をなくした乱数生成システム、乱数生成方法及びその方法を実現するコンピュータに関するものである。
【背景技術】
【0002】
従来、各種の情報を管理或いは情報通信などを行う分野においては、暗号化セキュリティを図るようになってきており、この暗号化セキュリティにおける「安全な鍵生成」のために、再現性がなく且つ質の高い乱数の生成が必須となっている。旧来にあっては、コンピュータにおいてソフトウエアプログラムにおいて乱数(擬似乱数)の生成を行っているが、係る手法により生成された乱数は再現性がないとは言えず、乱数生成シード(SEED)が知れると簡単に鍵を再生することが可能となり、十分なものではなかった。
【0003】
一方、再現性のない乱数(真性乱数)を得る手法としては、半導体熱素子や真性乱数生成回路等のハードウエアを用いるものがあるが、汎用のパーソナルコンピュータにおいては上記ハードウエアを別途用意する必要があり、より簡易な構成による乱数生成手法の提供が求められている。
【0004】
上記ハードウエアを用いる手法に対して、近年においては、ネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用し、真性乱数と同等の乱数を生成する手法が提供されている。この手法の1つとしては、非特許文献1に記載されたものがあり、その手法は、クライアントからサーバへのFTPもしくはHTTP転送要求に対し、サーバはクライアントへ向けてFTPもしくはHTTPパケットを返信し、クライアントは各パケットの到着時刻の計測を幾度か繰り返し、前後する重複のない2つの到着時刻のビット列について、差があるビットのみを抽出して乱数を得るものである。
【0005】
しかしながら、上記非特許文献1で示される手法にあっては、クライント・サーバ間の物理的距離が近い場合には応答時間がランダムになり難いことが容易に予測される上に、同非特許文献1に係る手法により得られた乱数は、必ずしも良質な乱数性能を有するとは限らない旨が、非特許文献2において指摘されている。すなわち、現実的に利用できるような良質な乱数を得るには、何らかの工夫を加える必要があると思料される。
【0006】
また、非特許文献2と特許文献1には、非特許文献1に記載の手法を改良するものが記載されており、その手法は、クライアントからサーバへパケットを送信し、これに対しサーバから返信されるパケットの到着時刻を計測して、クライアント−サーバ間の応答時間を用いるもので、予測アルゴリズムを用いて過去の応答時間から未来の応答時間を予測し、実測値との差を乱数として利用するものである。しかしながら、この手法にあっては、乱数性能の改善はなされるが、乱数抽出毎にクライアント−サーバ間をパケットが往復する必要があるため、パケット転送負荷が大きく、また一方で、予測アルゴリズム中に高次元の連立方程式を解く過程が含まれるなど、応答時間計測後のクライアント側での処理が重たいという問題がある。
【非特許文献1】「IPパケットの到着時刻を用いた乱数生成」SCIS’99予稿集、pp.491-496,電子情報通信学会、1999年1月
【非特許文献2】「パケット往復時間の予測誤差を使った乱数生成法」情報処理学会論文誌、Vol.44,pp2170-2177,Aug.2003
【特許文献1】特開2004−206025号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
発明が解決しようとする課題は、真性乱数を得るためにはクライアント側に特別のハードウエアを設ける必要があるという点にあり、また、これを避けるための手法であるネットワークにおけるクライアント・サーバ間のパケット応答時間のランダム性を乱数抽出源として利用するものにあっては、クライアント・サーバ間の物理的距離にランダム性が左右され易い点であり、また、これを回避するためにはクライアント側での処理が重たくなるという点である。本発明は係る課題を解決して、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得ることが可能な乱数生成システム、乱数生成方法及びコンピュータを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係る乱数生成システムは、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第2のコンピュータとを具備することを特徴とする。
【0009】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0010】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0011】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0012】
本発明に係る乱数生成システムでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0013】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0014】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0015】
本発明に係る乱数生成システムでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0016】
本発明に係る乱数生成システムでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0017】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0018】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0019】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0020】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0021】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0022】
本発明に係る乱数生成システムでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0023】
本発明に係る乱数生成方法は、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第2のコンピュータとを使用し、前記第2のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする。
【0024】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0025】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0026】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0027】
本発明に係る乱数生成方法では、乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0028】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0029】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0030】
本発明に係る乱数生成方法では、乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0031】
本発明に係る乱数生成方法では、乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0032】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【0033】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0034】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0035】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0036】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0037】
本発明に係る乱数生成方法では、乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0038】
本発明に係るコンピュータは、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第2のコンピュータを構成するコンピュータであって、このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とする。
【0039】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする。
【0040】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0041】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0042】
本発明に係るコンピュータでは、乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0043】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0044】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0045】
本発明に係るコンピュータでは、乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0046】
本発明に係るコンピュータでは、乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする。
【0047】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0048】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0049】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0050】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0051】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【0052】
本発明に係るコンピュータでは、乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする。
【発明の効果】
【0053】
本発明によれば、ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するコンピュータを採用しているために、送信要求を行う側には特別な構成を備えることなく、返信信号の到達時刻或いは返信信号の到達時と送信要求信号の送出時との時間間隔がランダムな値となり、これを用いて生成された乱数は真性乱数と同等の再現性を持たない乱数となる効果を奏する。特にコンピュータ間が近接しているような場合においても、再現性のない良質な乱数を得ることができるという効果がある。更に、送信要求を行う側の構成が増加することがないため、ICカードや小型端末器への応用が容易であるという効果がある。
【発明を実施するための最良の形態】
【0054】
本発明では、送信要求信号の到達を受けて返信号を送出する側のコンピュータに、送信要求信号に応じてランダムな遅延時間の経過後に返信信号を送出する構成を採用することで、クライアント側のハードウエア的な増加或いはソフトウエア的な処理の増加を防ぎ、質の高い乱数を適切に得るという目的を達成したものである。以下添付図面を参照して、本発明に係る乱数生成システム、乱数生成方法及びコンピュータの実施例を説明する。各図において同一の構成要素には同一の符号を付し、重複する説明を省略する。
【0055】
図1に第1の実施例に係る乱数生成システムの構成図を示す。ネットワーク1に対し、サーバ(第1のコンピュータ)2とクライアント(第2のコンピュータ)3とが接続されている。サーバ2には、ネットワーク1を介して送られてくる信号を受信する受信手段21が備えられ、更に、ランダム返信手段22が備えられている。
【0056】
ランダム返信手段22は、ネットワーク1を介して到達する送信要求信号の到達毎に、ランダムな遅延時間の経過後に返信信号を送出するものである。ランダムな遅延時間を経過させるため、ランダム値機構23が備えられており、ランダム値機構23は受信手段21がネットワーク1を介して送信要求信号を受信したことに応じて、受信手段21から更新信号が与えられ、ランダム値を更新する。ランダム返信手段22は、受信手段21から返信指示を受けると、ランダム値機構23を参照し或いはランダム値機構23の出力を受けてランダム値を得る。
【0057】
ランダム値機構23は、当該サーバ2以外に開示されないシードから擬似乱数を生成するアルゴリズムを実現するソフトウエアプログラム、或いは当該サーバ2に接続された乱数生成用のハードウエアなどの公知の構成により実現される。また、擬似乱数生成アルゴリズムに提供する乱数シード、乱数生成用ハードウエアに対する入力値としては、受信手段21が送信要求信号を受け取った時刻情報における下位ビット(所定ビット数)を用いること、または送信要求信号の到達を受けてカウントアップするカウンタの出力を用いることなどが可能である。
【0058】
一方、クライアント3には、統括制御手段31による制御によりサーバ2に対して送信要求を送出する送信手段32、返信信号を受け取る受信手段33が備えられている。更にクライアント3には、検出手段34、乱数値出力手段35、乱数列記憶手段36が備えられている。上記の検出手段34、乱数値出力手段35及び乱数列記憶手段36は、乱数生成手段4を構成する。
【0059】
検出手段34は、統括制御手段31により制御されて稼働状態となり、サーバ2から返送される返信信号の到達時刻情報または返信信号間の時間間隔情報を検出するものである。乱数値出力手段35は、統括制御手段31により制御されて稼働状態となり、検出手段34により検出される到達時刻情報または時間間隔情報に基づき乱数値を生成して出力するものである。乱数列記憶手段36は、所要ビット長の乱数列が記憶されるものであり、この乱数列記憶手段36に対し、乱数値出力手段35が生成し出力した所定ビットが所定に順にセットされて所要ビットの長さを持つ乱数列が作成されるものである。
【0060】
以上の通りに構成された乱数生成システムにおいて、サーバ2は図2または図3に示されるフローチャートに対応するプログラムにより動作するので、これらのフローチャートに基づき動作説明を行う。
【0061】
サーバ2では受信手段21が図2に示すように送信要求信号の到達を監視しており(S1)、送信要求信号が到達すると受信手段21は返信指示をランダム返信手段22へ与えると共に、ランダム値機構23へ通知を行いランダム値の更新を行い、ランダム返信手段22がランダム値機構23を参照し或いはランダム値機構23の出力を受けてランダム値を得る(S2)。
【0062】
ステップS3においてランダム返信手段22は、取得したランダム値対応の時間経過を監視し(S3)、ランダム値対応の時間経過があるとクライアント3を宛先とする返信信号をネットワーク1を介して送出する(S4)。このような返信信号の送信手法は、ピンポン型の返信と称することができ、図4に示すように、要求信号と返信信号が対になって処理が進行する。
【0063】
これに対して、図3のフローチャートに示すように、ステップS4において返信信号を送信した後に、予め設定された所定回数の返信信号を送信したかについて検出を行い(S5)、所定回数に満たなければステップS2へ戻って処理を繰り返すことにより、所定数の返信信号の送信を行う。このような返信信号の送信手法は、連射型の返信と称することができ、図5に示すように、一度の要求信号に対し複数の返信信号が連射されるが如くに送信されて処理が進行する。以下の実施例では、この連射型と称される返信信号の送信手法を採用したものとする。
【0064】
以上のサーバ2による処理に対して、クライアント3の処理は、図6のフローチャートに示すように行われる。クライアント3における統括制御手段31は図6に示すように乱数生成のトリガ発生を検出し(S11)、例えば乱数生成の指示入力がキーボード操作などによりなされた場合に乱数生成のトリガ発生ありと判定してYESへ分岐し、各手段を稼働状態とすると共に送信手段32へ送信の指示を与える。これにより、送信手段32はサーバ2を宛先として送信要求信号を送出する(S12)。
【0065】
上記に対してクライアント3では、受信手段33が返信信号の到達を監視しており(S13)、返信信号の到達があると受信手段33は受け取りを検出手段34へ通知し、時刻タイマ(時計)による到達時刻情報の検出または時間間隔タイマによる時間間隔情報の検出を実行させる(S15)。時間間隔タイマの起動は、連射型であるため、初期時には返信要求信号の送信時、その後においては、返信信号の到達時である。このステップS15の後には、連射型の返信であるため、ステップS13からステップS15が所定回数繰り返される(S16)。
【0066】
<実施例A>
以上のような検出手段の処理に対し、乱数値出力手段35では、図7に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報を用いて乱数生成を行う(S17)。
【0067】
<実施例A−1>
この実施例A−1は、実施例Aをより具体化し詳細にしたものであり、図8に示されるように、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し(S19)、これを乱数のビット列に配置し(S20)、所定長となったかを検出し(S21)、所定長となるまでステップS19、S20を繰り返して乱数を得るというものである。
【0068】
この実施例A−1の具体例としては、(抽出例1)情報(到達時刻情報、時間間隔情報)の最下位1ビットを抽出し、乱数列の最上位ビットからセットする。(抽出例2)情報の最下位から2ビット目と最下位から4ビット目を抽出し、2ビットを乱数列の最上位ビットからセットする。(抽出例3)情報の最下位から上位方向へ3ビットを抽出し、この3ビットを乱数列の最上位ビットからセットする。(抽出例4)情報の全ビットを抽出し、この全ビットを乱数列の最上位ビットからセットする、などを挙げることができる。また、情報に対し所定関数により処理を行って乱数ビット列の一部としても良い。
【0069】
<実施例A−1−1>
この実施例A−1−1は、実施例A−1の下位概念に属する実施例である。図9に示されるように、1つの到達時刻情報または1つの時間間隔情報を単位として抽出により第1段階の乱数のビット列を得て(S22)、これを処理して得られた値を、乱数のビット列に配置し(S23)、所定長となったかを検出し(S24)、所定長となるまでステップS22、S23を繰り返して乱数を得るというものである。
【0070】
ステップS22における抽出は、実施例A−1において説明した通りの抽出例1〜4の手法によることができる。また、ステップS23における処理としては、(処理例1)抽出される値に対応した適当な数値を記憶させた変換テーブルを用いるもの、(処理例2)抽出された値を引数として適当な関数(一次関数、二次関数など算術演算、或いは論理演算など任意の関数)により処理を行って結果を得るもの、(処理例3)シードとして公知の擬似乱数生成法を用いて擬似乱数を生成させるもの、(処理例4)抽出された値を入力とする真性乱数生成器の出力を用いるものなどを挙げることができる。
【0071】
<実施例A−1−2>
この実施例A−1−2も、実施例A−1の下位概念に属する実施例である。図10に示されるように、1つの到達時刻情報または1つの時間間隔情報を用いた処理により乱数のビット列を生成し(S25)、生成された乱数から抽出により得られた値を、乱数のビット列に配置し(S26)、所定長となったかを検出し(S27)、所定長となるまでステップS25、S26を繰り返して乱数を得るというものである。
【0072】
具体的には、実施例A−1−1における処理例1〜4などをステップS25において行い、実施例A−1における抽出例1〜4などをステップS26において行う。
【0073】
<実施例A−2>
この実施例A−2は、実施例Aをより具体化し詳細にしたものであり、図11に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し(S31)、これを乱数のビット列に配置し(S32)、所定長となったかを検出し(S33)、所定長となるまでステップS31、S32を繰り返して乱数を得るというものである。
【0074】
この実施例A−2における「複数」の具体例としては、到達時刻情報(または、時間間隔情報)の第1番目と第3番目、第2番目と第4番目、・・・というように一つおきの情報を利用するもの、第1番目、第3番目及び第5番目の3情報を一組とし、第2番目、第4番目及び第6番目の3情報を一組とし、・・・というように3情報を一組として用いるものを挙げることができる。
【0075】
また、実施例A−2における「生成」の具体例を説明する。例えば、情報の第1番目と第3番目、第2番目と第4番目、・・・を用いる場合には、各情報の下位1ビットを抽出し、各ビットをそのままの順で或いは順を逆さにして乱数列の最上位ビットからセットする。先に説明した抽出例2〜4を用いて、抽出した値をそのままの順で或いは順を変更して乱数列の最上位ビットからセットするようにしても良い。
【0076】
<実施例A−2−1>
この実施例A−2−1は、実施例A−2の下位概念に属する実施例である。図12に示されるように、複数の到達時刻情報または複数の時間間隔情報を単位として抽出により第1段階の乱数のビット列を得て(S34)、これを処理して得られた値を、乱数のビット列に配置し(S35)、所定長となったかを検出し(S36)、所定長となるまでステップS22、S23を繰り返して乱数を得るというものである。
【0077】
上記ステップS34における「抽出」にあっては、実施例A−2において説明した抽出手法を用いることができる。また、上記ステップS35における「処理」としては、既述のテーブル変換、関数処理(算術演算、論理演算)、擬似乱数生成、真性乱数生成等を挙げることができる。一つの例として、「抽出」により得られた情報の第1番目と第3番目をx1、x3とすると、x1とx3との排他的論理和演算を行って乱数列の一部を得ると共に、第2番目と第4番目、・・・についても同様に処理を行う。
【0078】
また、「抽出」により情報の第1番目は最下位ビットを抽出してx1とし、第3番目では全ビットを抽出してx3とし、第3番目の全ビットx3を演算処理し結果y3を得て、x1とy3を結合(並べる)して乱数列の一部を得ると共に、第2番目と第4番目、・・・についても同様に処理を行う。また別の例では、「抽出」により情報の第1番目と第3番目はそれぞれ最下位ビットを抽出してx1、x3とし、第5番目では全ビットを抽出してx5とする。x3についてはテーブル変換で結果y3を得る一方、x5については擬似乱数生成法により結果y5を得て、これらx1、y3、y5を結合した値を入力とする真性乱数生成器の出力を乱数列の一部とすると共に、第2番目と第4番目と第6番目、・・・についても同様に処理を行う。
【0079】
<実施例A−2−2>
この実施例A−2−2も、実施例A−2の下位概念に属する実施例である。図13に示されるように、複数の到達時刻情報または複数の時間間隔情報を用いた処理により乱数のビット列を生成し(S37)、生成された乱数から抽出により得られた値を、乱数のビット列に配置し(S38)、所定長となったかを検出し(S39)、所定長となるまでステップS37、S38を繰り返して乱数を得るというものである。
【0080】
ステップS37の処理では、複数の到達時刻情報または複数の時間間隔情報を結合し、既述のテーブル変換、関数処理(算術演算、論理演算)、擬似乱数生成、真性乱数生成等により処理することを挙げることができる。第1の例として、情報の第1番目と第3番目をx1、x3とすると、x1とx3との算術演算を行ってこの結果をy13とし、第2番目と第4番目、・・・についても同様に演算を行う。また、情報の第1番目と第3番目をx1、x3とすると、x1とx3との排他的論理和演算を行ってこの結果をz13とし、第2番目と第4番目、・・・についても同様に演算を行うものであっても良い。
【0081】
ステップ38の「抽出」においては、上記算術演算によりy13を得た例では、このy13の最下位から2ビット目と4ビット目を抽出することを例として挙げることができる。また、排他的論理和の結果z13を得た例では、このz13をそのまま乱数列の一部として用いることを例として挙げることができる。
【0082】
<実施例B>
以上のような実施例A系統では、到達時刻情報または時間間隔情報の検出により得られた情報を全て用いるものであった。これに対し、実施例Bでは、全ての到達時刻情報または全ての時間間隔情報の中から或るルールにより選択した到達時刻情報または時間間隔情報を用いる。即ち、図14に示すようにクライアント3Bには、選択ルール情報30が備えられ、乱数値出力手段35Bがこの選択ルール情報30を用いて選択を行う。
【0083】
先に図4〜図7に示すような検出手段の処理に対し、乱数値出力手段35Bでは、図15に示されるように、検出された全ての到達時刻情報または全ての時間間隔情報から選択ルール情報30に基づき選択した到達時刻情報または時間間隔情報を用いて乱数生成を行う(S40)。
【0084】
選択ルール情報30としては、予め固定的に決定して備えることができる。例えば、(ルール1)偶数番目を排除する、(ルール2)5の倍数番目を排除する、(ルール3)3n+1(n≧1)を選択する等を挙げることができる。
【0085】
選択ルール情報30としては、選択に際してその都度ユーザが決定して備えることができる。(決定手法1)無作為にキーボード入力を行ったりマウス操作を行ったりして得られた値を選択(或いは排除)する情報の序数とする。(決定手法2)決定手法1により得られた値をシードとする擬似乱数生成法により得られた値を選択(或いは排除)する情報の序数とする。(決定手法3)決定手法1により得られた値をシードとする真性乱数生成器により得られた値を選択(或いは排除)する情報の序数とする。(決定手法4)決定手法1により得られた値に基づき、コンピュータにより乱数生成を行わせて得られた値を選択(或いは排除)する情報の序数とする。上記決定手法1〜4を複合的に用いるなどが考えられる。複合的にとは、最初は決定手法1、次には決定手法2、・・・というようなものや、決定手法4により得られた値を決定手法2の入力として用いるようなものが考えられる。
【0086】
その他、システムのみが知り得る情報や過去に生成された乱数を入力として決定手法2〜4などを用いて決定する手法などが用いられる。システムのみが知り得る情報とは、決定手法に入力したことが他に知られていないことを意味するもので、例えば時刻などのように他が知り得ても、何時の時刻が採用されたかを知られていなければ良いものである。図16には、選択ルール情報30により選択を行って、各回の抽出データについて「選択」と「廃棄」を決定した結果の一例が示されている。一見して、選択がランダムになされた如くの結果を呈している。
【0087】
<実施例B−1>
この実施例B−1は、実施例Bをより具体化し詳細にしたものであり、実施例A−1のフローチャートである図8に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0088】
<実施例B−1−1>
この実施例B−1−1は、実施例B−1の下位概念に属する実施例である。この実施例B−1−1では、実施例A−1−1のフローチャートである図9に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0089】
<実施例B−1−2>
この実施例B−1−2も、実施例B−1の下位概念に属する実施例である。この実施例B−1−2では、実施例A−1−2のフローチャートである図10に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0090】
<実施例B−2>
この実施例B−2は、実施例Bをより具体化し詳細にしたものであり、この実施例B−2では、実施例A−2のフローチャートである図11に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0091】
<実施例B−2−1>
この実施例B−2−1は、実施例B−2の下位概念に属する実施例である。この実施例B−2−1では、実施例A−2−1のフローチャートである図12に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【0092】
<実施例B−2−2>
この実施例B−2−2も、実施例B−2の下位概念に属する実施例である。この実施例B−2−2では、実施例A−2−2のフローチャートである図13に示される処理を行う。選択された到達時刻情報または時間間隔情報についての処理である点を除き全く同じ動作が行われるので、説明を省略する。
【図面の簡単な説明】
【0093】
【図1】本発明に係る乱数生成システムにおける実施例Aを示す構成図。
【図2】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図3】本発明に係る乱数生成システムの実施例におけるサーバの動作を説明するためのフローチャート。
【図4】図3の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図5】図4の処理によりサーバクライアント間において行われる信号送受信を示す図。
【図6】本発明に係る乱数生成システムにおけるクライアントの動作を説明するためのフローチャート。
【図7】本発明に係る乱数生成システムの実施例Aにおけるクライアントの動作を説明するためのフローチャート。
【図8】本発明に係る乱数生成システムの実施例A−1におけるクライアントの動作を説明するためのフローチャート。
【図9】本発明に係る乱数生成システムの実施例A−1−1におけるクライアントの動作を説明するためのフローチャート。
【図10】本発明に係る乱数生成システムの実施例A−1−2におけるクライアントの動作を説明するためのフローチャート。
【図11】本発明に係る乱数生成システムの実施例A−2におけるクライアントの動作を説明するためのフローチャート。
【図12】本発明に係る乱数生成システムの実施例A−2−1におけるクライアントの動作を説明するためのフローチャート。
【図13】本発明に係る乱数生成システムの実施例A−2−2におけるクライアントの動作を説明するためのフローチャート。
【図14】本発明に係る乱数生成システムにおける実施例Bを示す構成図。
【図15】本発明に係る乱数生成システムの実施例Bにおけるクライアントの動作を説明するためのフローチャート。
【図16】本発明に係る乱数生成システムの実施例Bにおけるクライアントにより行われる情報選択動作を説明するための図。
【符号の説明】
【0094】
1 ネットワーク
2 サーバ
3、3B クライアント
4 乱数生成手段
21 受信手段
22 ランダム返信手段
23ランダム値機構
30 選択ルール情報
31 統括制御手段
32 送信手段
33 受信手段
34 検出手段
35、35B 乱数値出力手段
36 乱数列記憶手段
【特許請求の範囲】
【請求項1】
ネットワークを介して到達する送信要求信号の到達に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、
ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第2のコンピュータと
を具備することを特徴とする乱数生成システム。
【請求項2】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項1に記載の乱数生成システム。
【請求項3】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項2に記載の乱数生成システム。
【請求項4】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項3に記載の乱数生成システム。
【請求項5】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項3に記載の乱数生成システム。
【請求項6】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項2に記載の乱数生成システム。
【請求項7】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項6に記載の乱数生成システム。
【請求項8】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項6に記載の乱数生成システム。
【請求項9】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項1に記載の乱数生成システム。
【請求項10】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項9に記載の乱数生成システム。
【請求項11】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項10に記載の乱数生成システム。
【請求項12】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項10に記載の乱数生成システム。
【請求項13】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項9に記載の乱数生成システム。
【請求項14】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項13に記載の乱数生成システム。
【請求項15】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項13に記載の乱数生成システム。
【請求項16】
ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第2のコンピュータとを使用し、
前記第2のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする乱数生成方法。
【請求項17】
乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項16に記載の乱数生成方法。
【請求項18】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項17に記載の乱数生成方法。
【請求項19】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項18に記載の乱数生成方法。
【請求項20】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項18に記載の乱数生成方法。
【請求項21】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項17に記載の乱数生成方法。
【請求項22】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項21に記載の乱数生成方法。
【請求項23】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項21に記載の乱数生成方法。
【請求項24】
乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項16に記載の乱数生成方法。
【請求項25】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【請求項26】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項25に記載の乱数生成方法。
【請求項27】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項25に記載の乱数生成方法。
【請求項28】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【請求項29】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項28に記載の乱数生成方法。
【請求項30】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項28に記載の乱数生成方法。
【請求項31】
ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第2のコンピュータを構成するコンピュータであって、
このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とするコンピュータ。
【請求項32】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項31に記載のコンピュータ。
【請求項33】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項32に記載のコンピュータ。
【請求項34】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項33に記載のコンピュータ。
【請求項35】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項33に記載のコンピュータ。
【請求項36】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項32に記載のコンピュータ。
【請求項37】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項36に記載のコンピュータ。
【請求項38】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項36に記載のコンピュータ。
【請求項39】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項31に記載のコンピュータ。
【請求項40】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項39に記載のコンピュータ。
【請求項41】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項40に記載のコンピュータ。
【請求項42】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項40に記載のコンピュータ。
【請求項43】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項39に記載のコンピュータ。
【請求項44】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項43に記載のコンピュータ。
【請求項45】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項43に記載のコンピュータ。
【請求項1】
ネットワークを介して到達する送信要求信号の到達に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、
ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備える第2のコンピュータと
を具備することを特徴とする乱数生成システム。
【請求項2】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項1に記載の乱数生成システム。
【請求項3】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項2に記載の乱数生成システム。
【請求項4】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項3に記載の乱数生成システム。
【請求項5】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項3に記載の乱数生成システム。
【請求項6】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項2に記載の乱数生成システム。
【請求項7】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項6に記載の乱数生成システム。
【請求項8】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項6に記載の乱数生成システム。
【請求項9】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項1に記載の乱数生成システム。
【請求項10】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項9に記載の乱数生成システム。
【請求項11】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項10に記載の乱数生成システム。
【請求項12】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項10に記載の乱数生成システム。
【請求項13】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項9に記載の乱数生成システム。
【請求項14】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項13に記載の乱数生成システム。
【請求項15】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項13に記載の乱数生成システム。
【請求項16】
ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、返送される返信信号の到達時刻または返信信号間の時間間隔を検出する第2のコンピュータとを使用し、
前記第2のコンピュータにおいて、当該到達時刻情報または時間間隔情報に基づき乱数を生成することを特徴とする乱数生成方法。
【請求項17】
乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項16に記載の乱数生成方法。
【請求項18】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項17に記載の乱数生成方法。
【請求項19】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項18に記載の乱数生成方法。
【請求項20】
乱数生成の際には、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項18に記載の乱数生成方法。
【請求項21】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項17に記載の乱数生成方法。
【請求項22】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項21に記載の乱数生成方法。
【請求項23】
乱数生成の際には、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項21に記載の乱数生成方法。
【請求項24】
乱数生成の際には、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項16に記載の乱数生成方法。
【請求項25】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【請求項26】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項25に記載の乱数生成方法。
【請求項27】
乱数生成の際には、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項25に記載の乱数生成方法。
【請求項28】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項24に記載の乱数生成方法。
【請求項29】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項28に記載の乱数生成方法。
【請求項30】
乱数生成の際には、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項28に記載の乱数生成方法。
【請求項31】
ネットワークを介して到達する送信要求信号に応じて、ランダムな遅延時間の経過後に返信信号を送出するランダム返信手段を備える第1のコンピュータと、ネットワークを介して前記第1のコンピュータに対して送信要求信号を送出し、応答に基づき乱数を生成する第2のコンピュータを構成するコンピュータであって、
このコンピュータは、返送される返信信号の到達時刻または返信信号間の時間間隔を検出し、当該到達時刻情報または時間間隔情報に基づき乱数を生成する乱数生成手段を備えることを特徴とするコンピュータ。
【請求項32】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻の全て、または、返信信号間の時間間隔の全てを用いることを特徴とする請求項31に記載のコンピュータ。
【請求項33】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項32に記載のコンピュータ。
【請求項34】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項33に記載のコンピュータ。
【請求項35】
乱数生成手段は、1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項33に記載のコンピュータ。
【請求項36】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項32に記載のコンピュータ。
【請求項37】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項36に記載のコンピュータ。
【請求項38】
乱数生成手段は、複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項36に記載のコンピュータ。
【請求項39】
乱数生成手段は、送信要求信号の送出を1回実行し、送信要求信号に対して複数回返送される返信信号の到達時刻情報の全てから所定ルールで選択または排除を行って得た所定数の到達時刻情報、または、返信信号間の時間間隔情報の全てから所定ルールで選択または排除を行って得た所定数の時間間隔情報を用いることを特徴とする請求項31に記載のコンピュータ。
【請求項40】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項39に記載のコンピュータ。
【請求項41】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項40に記載のコンピュータ。
【請求項42】
乱数生成手段は、所定ルールで選択または排除を行って得た1つの到達時刻情報または1つの時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項40に記載のコンピュータ。
【請求項43】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を単位として乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項39に記載のコンピュータ。
【請求項44】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報から抽出して第1段階の乱数値を生成し、生成された第1段階の乱数値に対して処理を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項43に記載のコンピュータ。
【請求項45】
乱数生成手段は、所定ルールで選択または排除を行って得た複数の到達時刻情報または複数の時間間隔情報を用いた処理により第1段階の乱数値を生成し、生成された第1段階の乱数値から抽出を行って乱数のビット列の一部を生成し、これを繰り返して所定長の乱数を生成することを特徴とする請求項43に記載のコンピュータ。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2009−48553(P2009−48553A)
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願番号】特願2007−216100(P2007−216100)
【出願日】平成19年8月22日(2007.8.22)
【出願人】(391016358)東芝情報システム株式会社 (149)
【出願人】(304021831)国立大学法人 千葉大学 (601)
【Fターム(参考)】
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願日】平成19年8月22日(2007.8.22)
【出願人】(391016358)東芝情報システム株式会社 (149)
【出願人】(304021831)国立大学法人 千葉大学 (601)
【Fターム(参考)】
[ Back to top ]