JP4955415B2 - 複数の乱数列を用いた情報通信装置及び情報通信方法 - Google Patents

複数の乱数列を用いた情報通信装置及び情報通信方法 Download PDF

Info

Publication number
JP4955415B2
JP4955415B2 JP2007039521A JP2007039521A JP4955415B2 JP 4955415 B2 JP4955415 B2 JP 4955415B2 JP 2007039521 A JP2007039521 A JP 2007039521A JP 2007039521 A JP2007039521 A JP 2007039521A JP 4955415 B2 JP4955415 B2 JP 4955415B2
Authority
JP
Japan
Prior art keywords
random number
number sequence
information
plaintext
distribution function
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.)
Expired - Fee Related
Application number
JP2007039521A
Other languages
English (en)
Other versions
JP2008205815A (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.)
L E Tech CO Ltd
Original Assignee
L E Tech 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 L E Tech CO Ltd filed Critical L E Tech CO Ltd
Priority to JP2007039521A priority Critical patent/JP4955415B2/ja
Publication of JP2008205815A publication Critical patent/JP2008205815A/ja
Application granted granted Critical
Publication of JP4955415B2 publication Critical patent/JP4955415B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、乱数分布の異なる乱数列を組合わせて生成した暗号文を通信する方法及び装置に関し、特に、乱数列が従う乱数分布特性の相違を部分乱数列毎に検出することにより暗号文のデータを生成及び識別する技術に係るものである。
近年、情報化社会の進展によりディジタルデータの信頼性向上が非常に重要になっており、これに伴いディジタルデータの伝送に対するセキュリティ性の要求がますます増大してきている。このため、データの機密性を確保したり、あるいは、データに対する不正アクセスやコピーの防止などを目的にデータを暗号化することが一般に行なわれている。暗号技術の研究はめざましい進展を続けており、例えば共通鍵による暗号化手段としては、ブロック暗号方式のDES(Data Encryption Standard)やNTTのFEAL等、或いはストリーム暗号方式のバーナム(Vernam)暗号等がある。これらの暗号化手段を利用してディジタルデータを暗号化することにより、データ機密性を確保したり、不正アクセスやコピーの防止を図ることができる。
しかしながら、これまでは暗号文の生成及び解読にあたり、送受信者の双方で鍵情報を取得しておかなければならなかった。例えば共通鍵を用いた暗号化方式では、暗号文の生成に使用した暗号化鍵を復号化鍵として情報の受け手に秘匿して渡す必要がある。上記バーナム暗号方式の場合は、平文(メッセージ)と、鍵情報として使用する乱数列との排他的論理和をとるアルゴリズムで暗号文を作成する。バーナム暗号方式はこのような単純なアルゴリズムであり、使用する乱数列の乱数性が良ければ暗号文のみの情報からは解読不可能な暗号とされているが、受信者に乱数列を秘密状態で渡すことができなければこのアルゴリズムのロバスト性は何の意味もないことになってしまう。したがって、共通鍵による暗号化方式の場合は鍵情報の盗難が問題で、ネットワーク等の通信経路上で如何に鍵情報を安全に配布できるかにかかっている。
なお、公開鍵を用いた暗号化方式では、送信者は受信者によって公開された鍵を入手して暗号文を生成する。したがって、共通鍵のような暗号化鍵と同一の鍵を受信者に安全に配布する必要はない。その代わりに、暗号化に使用する鍵が公開され誰もが鍵情報を入手可能になってしまうので、鍵の改ざんがなされていないか、また鍵が正当な所有者(受信者)のものであるかを証明するためにディジタル証明書を利用しなければならないという別の処理が発生してしまう。
そこで、本発明は、暗号化又は復号化のための鍵情報を用いることなく、ディジタル通信情報を暗号化し且つ解読することができることを目的とする。
本発明による所定の分布関数に従って発生させた乱数を用いて情報を暗号化する情報処理装置又はその方法は、(1)平文の構成要素に応じて複数の分布関数を設定し、当該分布関数に従う任意の乱数列を発生させ、及び(2)前記平文の情報に基づき乱数列を生成する手段又は処理を含み、前記平文情報に基づき乱数列を生成する際には、(i)前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう前記乱数発生手段に指示し、(ii)前記指示を受けて前記乱数発生手段が発生した乱数列を順次連結させて平文全体の乱数列を生成する。
本発明による複数の乱数列が連結した乱数列を平文情報に復号化する情報処理装置又はその方法は、(1)任意の乱数列の頻度期待値と、所定の分布関数に従って発生させた乱数列に関する理論統計的に導出した頻度期待値とを任意の許容幅を考慮しながら比較し、両者の頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定し、及び(2)乱数列を平文情報に戻すために復号化する手段又は処理を含み、前記復号化する際には、(i)前記複数の乱数列が連結した乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成し、(ii)前記乱数列と所定の分布関数とを判定する手段又は処理により、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別し、(iii)前記所定の分布関数と、前記平文情報の構成要素との対応関係が定義された関係情報を基に、前記識別した分布関数に従う部分乱数列を平文情報に変換する。
本発明による乱数を用いて情報を暗号化し、且つ乱数が従う分布関数の識別に基づき暗号文を復号化する情報処理装置又はその方法は、(1)情報通信回線を介して外部と接続する受信し且つ送信する手段又は処理と、及び(2)相手に送りたい平文を乱数列に変換する暗号化する手段又は処理を含み、当該暗号化の際には、(I)前記平文の構成要素に応じて複数の分布関数を設定し、当該分布関数に従う任意の乱数列を発生させ、(II)(i)前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう指示し、(ii)前記指示を受けて発生させた乱数列を順次連結させて平文全体の乱数列を生成するようにし、更に、(3)任意の乱数列における乱数値の出現頻度期待値と、所定の分布関数に従って発生させた乱数列に関して理論統計的に導出した乱数値出現頻度期待値とを任意の許容幅を考慮しながら比較し、両者の頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定する乱数列検定のための手段又は処理と、(4)受信した複数の乱数列が連結した乱数列を平文情報に変換する復号化のための手段又は処理、とを含み、当該復号化の際には、(III)(i)前記複数の乱数列が連結した乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成し、(ii)前記乱数列検定手段により、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別し、(iii)平文の構成要素と前記分布関数の対応関係に基づき、前記識別した分布関数に対応する平文に変換し、及び(5)暗号化された乱数列、又は復号化された平文情報を情報通信回線を介して外部に送信する。
本発明の情報処理装置又は情報処理方法によれば、暗号化処理は、平文の構成要素に対応して発生させた複数の乱数列を組合わせて生成した乱数列を通信経路上に送信し、復号化処理は、この乱数列を受信すると所定の分割ルールに従って部分乱数列に分解し、そして各部分乱数列が従う分布関数を特定することにより平文の構成要素を復号化するので、従来のような暗号鍵を用いて情報を暗号化する必要はなく、且つ復号化においても部分乱数列というブロック化した情報から得られる有意な内容を抽出することにより平文への解読を行うので、第三者によって暗号文が解読されることを防止できる。また、通信経路上で漏洩した暗号文に意図しない改ざんがなされたときでも、期待した分布特性と異なる部分乱数列の箇所を検出することで改ざん位置を容易に特定することが可能であり、通信経路上におかれた暗号文に対するセキュリティ性を格段と向上させることができる。
以下に図面を参照しながら、本発明の情報通信装置の一実施形態について説明する。
<暗号文の生成について>
本発明の情報通信装置によって行われるディジタル情報の暗号/復号処理は、送信者側からのディジタル情報(以下、「平文」という。)の内容を乱数列に変換した上で受信者へ送信する。したがって、仮に第三者が乱数列に変換された平文を取得できたとしても直ちにその内容が知見されることはなく、乱数列への変換処理がいわゆる暗号化の機能を担っているといえる。しかも従来のように鍵情報を使用して乱数列に変換しているのとは異なり、複数の乱数分布から得られる各特性の相違を乱数値に反映させることで、平文データを複数の乱数分布に従う任意の乱数列に変換している点が特徴である。
本実施形態では、以下の説明を簡略化するため、伝送の対象となる平文が2進数の数列の「0101」であるとして話を進めていく。
本発明の情報通信装置は、平文を乱数列にするために平文の各データ単位の乱数列、即ち、部分乱数列を作ってそれらを集合させる。例えば、「0101」でいえば、最初のビットの「0」に対応する部分乱数列X1、次のビットの「1」に対応する部分乱数列X2、次のビットの「0」に対応する部分乱数列X3、更に次のビットの「1」に対応する部分乱数列X4を順次作成して繋ぎ合せてできる、X1+X2+X3+X4を平文全体の乱数列Xとする。ところで、自然乱数は指数分布や正規分布などの理論期待値を計算することができる統計分布に従うことが知られおり、例えば、擬似乱数はこれらの分布に基づいてコンピュータによってソフトウェア的に発生させたものである。したがって、所定の統計分布に従う部分乱数列を生成させたり、或いは各部分乱数列Xi(i=1〜4)を検定して各部分乱数列が従う分布の特性を把握することが可能である。
本実施形態の場合、平文データ例「0101」の各ビットが「0」及び「1」の何れかの値であるため、2つの異なる分布(分布A,分布B)を用意し、それぞれの分布を基に乱数列Xiを構築する。つまり、乱数列X=X1+X2+X3+X4は、分布A+分布B+分布A+分布Bと考えて、分布Aに従う部分乱数列と分布Bに従う部分乱数列とを交互につなげる。ただし、X1とX3は共に同一の分布Aに従うように発生させる部分乱数列であるが、部分乱数列の具体的な乱数値が同一であるとは限らない。分布Aに従う乱数列は無数に生成できるのであって、むしろ部分乱数列X1とX3の乱数値が異なっている方が、暗号の解読されにくさを表す暗号強度が大きくなるので好ましい。即ち、部分乱数列X1,X3が具体的にどのような乱数値で構成されているかというミクロ的な視点でみるのでなく、それぞれの部分乱数列の全体がどのような分布に従っているのかというマクロ的な見方が重要となる。本発明の情報通信装置は、ブロック単位で検定すれば分布Aに従うとみなせる部分乱数列X1,X3が生成されるよう乱数発生回路を調整/設定する。分布Bに従うX2とX4についても同様である。
ここで、部分乱数列X1,X3が得られたとき、分布Aに従っているのか否かを検定する方法について説明しておきたい。この検定方法は、実際には後述する暗号文の解読(復号化)の際に乱数列から平文データを識別するときに実行される処理であるが、裏を返せば復号化処理で乱数列を逆処理すれば平文に戻るよう、暗号化処理において本願固有の技術思想で平文を乱数列に変換しているのであり、本発明の技術的内容の理解を容易にするために復号化処理の説明に先立って述べておくこととする。
各事象が他の事象と独立に生起してランダムに変動する場合、事象が単位時間あたりに生起する頻度は期待値nのポアソン(Poisson)分布に従う。そして、その事象が生起する時間間隔tの確率密度関数は、事象が生起する平均の時間間隔をtとすれば、λe-λt(λ:単位時間当たりの平均乱数発生回数)の指数分布で表わされる。そこで、乱数列生成の基となる分布(分布Aや分布B)として指数分布を挙げることにする。
いま、1つの時間間隔(t)が計測されると、時間tに応じて0〜255のうちの何れか1つの値を割当てるとする。つまり、クロック信号を発生するクロック信号発生手段と、前記クロック信号のクロック回数をカウントする(本実施形態では255を最大カウント値とするがこれに限定するものではない。)カウント手段とを含む計時手段によって、各時間間隔tに対応するクロック回数を決定する。当然ながら、時間間隔tが長くなるほどクロック回数が増加することになるが、クロック回数が255を超えた段階でカウントを零にリセットすれば、任意の時間間隔tに対して0〜255の何れか1つの値を対応させることができる。そして、256個の桁の発生回数カウンタによって、何れかの値が割当てられる度に対応の発生回数カウンタをインクリメントして各値の発生頻度を記録する。このため、時間間隔tが指数分布に従っていると判断できれば、tはランダムに変動する事象が生起した時間間隔となるので乱数値としてみなすことができる。
また、時間間隔tが所定の指数分布Aに従っているか否かの判断を以下のように行う。 指数分布f(t)=λe-λt(λは単位時間当たりの平均乱数発生回数)について、時間間隔(t)の理論期待値E(t)は1/λであることが知られている。したがって、時間間隔tが指数分布Aに従うとすれば、0〜255値の各発生頻度の期待値を単位時間当たりの平均乱数発生回数λより理論的に且つ容易に計算することができる。また、λは乱数の生成レートを意味し、且つ制御可能なパラメータであるので、λを調整することで所望の指数分布Aを設定することが可能である。
時間間隔tに含まれる測定誤差などのばらつきの影響で、時間間隔tの期待値が理論期待値と近似するものの厳密に一致しないことがある。このような場合も時間間隔tが指数分布に従っていないとみなし、乱数性を否定してしまうのは現実的ではない。そこで、発生回数カウンタで計測したカウント値が、0〜255の各発生頻度の理論期待値に所定の上下幅をもたせた範囲内に入っているならば、時間間隔tが指数分布に従っており、その結果、0〜255のデータ列は期待値1/λの指数分布に従う真正な乱数列であると処理する。これに対して、上記範囲内から逸脱してしまう発生頻度(カウント値)がある場合は、設定した期待値1/λの指数分布に従う真正な乱数列でないと処理する。
このような乱数性の検定方法によれば、入手した乱数列が所望のλで定義した指数分布に従っているのか否かを容易に判断することができる。
上記乱数列検定法の基本概念をより具体的に理解するには、図2に示すグラフが参考になる。図2中の黒丸は、計測した時間間隔tに対応する0〜255(横軸)に対する発生回数、即ち頻度の一例を表している。縦軸が対数目盛りであることから分かるように、指数関数の発生回数を対数軸でプロットすると、傾き−λの直線となる。即ち、この直線が各0〜255の理論期待値E(t)を示している。また、この理論期待値に対する合理的な上下幅の範囲を示したのが、図中の2つの破線である。理論期待値の上方に位置するのが上限閾値線であり、下方に位置するのが下限閾値線である。したがって、本実施形態の乱数検定法は、各0〜255の発生頻度のばらつきが上限閾値線及び下限閾値線の範囲内であるか否かを検定することになる。実際の時間間隔(t)のばらつきは期待値を中心として正規分布に従って分散すると考えられるので、これを統計学的表現で表せば、E(t)±υσ(σ:ばらつきの程度)となる。例えば、±σ,±2σ,±3σ…となるにつれ、理論期待値E(t)からのずれ幅が大きくなり、乱数列の検証の信頼度は小さくなっていく。逆にいえば、E(t)±6σやE(t)±7σといった、真正な乱数列であればかなりの高確率でその範囲内に存在するであろう合理的な検定幅を設定したにもかかわらず、計測した発生回数の中にこの幅を逸脱してしまうものが存在したときは、乱数値0〜255の集合が、所望のλで定義した指数分布に従う真正な乱数列を構成していないと推定してもかまわない。
このように、上記乱数列検定法は上限閾値線及び下限閾値線の範囲から逸脱してしまう発生回数を発見すれば、乱数列0〜255が設定したλに基づく指数分布に従っていないと判断する。そこで、暗号化処理においては、上記範囲内に各0〜255の発生頻度が必ず存在するように乱数値を発生させ、乱数性を維持し且つ期待値1/λの指数分布に従う部分乱数列を生成する。乱数値の発生には、物理現象に基づいて生じる物理量で乱数値を定義することが可能な任意の発生源(例えば、抵抗、ダイオード等の半導体、あるいは導体を熱雑音発生源)を使用し、これら熱雑音源から独立な事象として発生するパルスのパルス間隔を上述した時間間隔tである乱数値とすることができる。或いは、コンピュータのソフトウェア処理で擬似的に乱数値を発生させるようにしてもよい。
図1(a)は、本実施形態の乱数検定方法によって、傾きλaをもつ指数分布Aに従うと判断される乱数値を発生した例である。また、指数分布Bに従う部分乱数列を発生させるために、傾きλaとは異なる傾きλbを設定したときの指数分布Bの対数グラフが図1(b)である。本実施形態では、平文データ例「0101」の一つのビット「0」又は「1」について4.8K個の乱数値の集合を対応させている。即ち、部分乱数列Xiに含まれる乱数値の数を4.8K個に設定している。
なお、乱数列検定方法の信頼性にも影響するので各部分乱数列に含まれる乱数値の数は一定数以上を必要とし、具体的な数は平文データの大きさとの関係から適宜決定すればよく、固定的にする必要はない。また、部分乱数列間で必ずしも同一の数に統一させる必要もない。
本実施形態の平文データ例「0101」に相当する乱数列Xは、X1+X2+X3+X4であり、X1及びX3が指数分布A、そしてX2及びX4が指数分布Bに従うことから、乱数発生手段が平文を頭から解釈していったときに、「0」の場合は指数分布Aに従って4.8K個の乱数値を発生させ、「1」の場合は指数分布Bに従って4.8K個の乱数値を発生させていくことを繰り返し、それぞれ発生させた部分乱数列を単純に結合させることで暗号文を完成する。ここで留意すべき点は、先頭(左)から1ビット目の「0」と、3ビット目の「0」に対応する部分乱数列X1及びX3は、同一の乱数列ではないという点である。2ビット目の「1」と、4ビット目の「1」に対応する部分乱数列X2及びX4についても同様である。同一の指数分布からは無数の乱数列を生成することができるので、例えば、指数分布Aに従う乱数列を2進数表現したとき、「01001101011…101」,「1100101011…011」,…が存在するとすれば、X1のために前者の「01001101011…101」を、そしてX3のために後者の「1100101011…011」を採用するのが望ましい。同一の乱数列を使用すれば、その規則性から平文データの内容を推測される可能性が高くなるのでこれを防止するためである。
以上の処理が本発明の暗号化処理で行われる基本内容である。そして、情報通信装置は、このように複数の部分乱数を結合させて完成した乱数列Xを受信者に送信する。
いま、受信者に向けて送信した乱数列が第三者に漏れてしまったとしよう。この第三者は、従来のような暗号文を解く鍵情報を持っていないので(そもそも、本発明では鍵情報自体が無いので第三者に鍵情報が渡るという概念が生じ得ない。)、乱数列の各値の並び方から平文データに解読することを試みるだろう。しかしながら、本発明による暗号文の乱数列は、例えば、01001101011…101…………1100101011…011…………であり、乱数値の一つ一つの値に暗号文を解読する上での直接的な意味があるわけではない。ある所定の長さの乱数値のかたまり(部分乱数列)として捉えたときにはじめて暗号文としての意味が出てくる。したがって、指数分布A及び指数分布Bそれぞれのλ値、部分乱数列を構成する乱数の数(上記例では4.8K個)、及び乱数検定方法での上下限閾値幅に関する情報を把握した上で、部分乱数列ごとに指数分布A又は指数分布Bに従っているかを判断しない限り、暗号文のみから平文への解読は不可能である。本発明の情報通信装置は、乱数列の各値自体には解読の手がかりとなる意味を何ら持たせないことで、仮に通信経路上で乱数列が不正に漏洩されたとしても解読できないようにしているのである。
特に、実際に暗号化する場合に、1ビット目の「0」は約4K個分の乱数値、そして3ビット目の「0」は約2K個分の乱数値を対応させるというように、可変長ブロックの部分乱数列を用いるようにすれば暗号強度が格段に高くなるであろう。
<暗号文の解読について>
次に、平文を乱数列に変換して暗号化処理を施したデータが受信者に送信された後の復号化処理について説明する。暗号化処理のところで、本実施形態における具体的な乱数列検証方法については既に説明してあるので、ここでは重複する説明は省略する。
図1の下半分は、復号化処理の概念を表している。暗号化処理において、複数の分布に従う部分乱数列を結合して平文が作られているので、まず、受信者は受信した暗号文を部分乱数列に分割する。例えば4.8Kの固定長と決めておけば、先頭から4.8K個分ずつの乱数値を切り出していけばよい。
次に、受信者は、分割した部分乱数列ごとに、当該部分乱数列がどの分布に従って発生させた乱数列であるのかを、暗号処理部での乱数発生レートのλ値や上下限閾値幅の情報を使った上述の乱数検証方法に基づいて識別する。図1下部に示すように、各部分乱数列は、対数グラフで表せば所定の傾きで表現される複数の直線に変換されることがわかるので、暗号化される前の平文データがどのような「0」及び「1」の組合わせになっているのかを知ることができる。このとき、分布Aが平文の「0」に対応し、分布Bが平文の「1」に対応するという対応関係は、例えば関係テーブルとして定義して記憶し、暗号及び復号化処理の際に参照できるようにしておけばよい。
このように、本発明の情報通信装置を使えば、送信者は鍵情報を用いずに平文データを暗号化処理することができ、且つ受信者も鍵情報を必要とせずに暗号文を解読することができる。しかも、暗号文の乱数列の1つずつの値が平文データの内容を直接的に反映していないことから、暗号文が漏れて第三者が乱数値を取得しても、平文データへの復元をすることができない。よって、本発明を用いたデータ伝送はデータセキュリティを従来よりも格段に向上させることができるという技術的効果がある。また、本乱数列検定法によって、指数分布Aの傾きでもなければ指数分布Bの傾きでもない、暗号化処理で設定した分布以外の乱数列が存在すると判断できれば、暗号文が何らかの理由で正常に送信されていないことや、通信経路上で改ざんされた事実及び改ざん位置の発見にも利用できることから、本発明の技術的意義は極めて大きい。
(応用例について)
時間間隔tを計時するために有限カウンタを使用する場合に生じ得る問題として、数値出現頻度が指数分布になることがあげられる。すなわち、小さな数が出現する割合が、大きな数の其れより大きいと言うことである。乱数というからには一様性(無規則性)ができるだけ担保されるべきという考えの下、この問題を解消するために、生成された乱数列の値に対して排他的論理和の演算処理、即ち隣り合わせの個々の乱数値に対して、XORによるBIT撹拌を行い、出現頻度がほぼ等しく平坦になった結果値を最終的な乱数値とする処理が行われることもありうる。排他的論理和演算が実行された乱数列は、暗号の解読され難さを表す「乱数強度」が高くなるからである。そこで、本実施形態の情報通信装置の暗号化処理においても、部分乱数列を結合して生成した乱数列に排他的論理和による演算処理を1又はそれ以上施して乱数列が一様性になるようにしてもよい。
また、上記排他的論理和演算(XOR)が実行された乱数列を受信者に送信する場合は、どのような組合わせの部分乱数列に対してXORを施し、しかも何段階の繰り返しを行ったか等のXORルールを事前に送信者及び受信者の間で事前に決めておけばよい。暗号文としての乱数列を受信した受信者は、まず、上記XORルールを逆に辿って受信乱数列に排他的論理和演算を施すことで、平坦化された乱数列をXOR処理される前の乱数列に解くことができる。その後の復号化処理は、上述したとおりで実施すればよい。
なお、平文データが「0」及び「1」以外の他のコードを含む場合は、部分乱数列が従う乱数分布の種類を増やすことで分布2,分布3,…を対応させればよい。本実施形態では、上述したように分布Aや分布Bを指数分布として定義したが、これに限定するものではなく、正規分布やその他の分布関数を含むものである。
また、平文データは数字、文字、画像などのあらゆる種類の情報を含むものであり、したがって本発明の情報通信装置は、情報化社会で処理されるディジタル情報の暗号/復号化のための利用として期待できるものである。
(実施例)
上述した本実施形態の情報通信装置の構成例を図3に示す。図3に示すように、情報通信装置1は、乱数発生回路[A]10、乱数発生回路[B]11、暗号回路12、復号回路13、入出力回路14、暗号化データ格納部18、入出力回路14、送受信回路19、CPU15、ROM16、RAM17を含んだ構成である。
乱数発生回路[A]10は、所定の分布(例えば、指数分布)Aの乱数を発生するための回路であり、乱数発生回路[B]11は、分布Aとは異なる分布特性を有する分布Bの乱数を発生するための回路である。
入出力回路14は外部のPC等と接続し、平文データの入力及び出力を行い、送受信回路19は暗号化処理された暗号データ(乱数列)を外部に送信したり、外部から送信された暗号データを受信する。
暗号回路12は、入出力回路14を介して入力された平文データの各要素を、乱数発生回路[A]10又は乱数発生回路[B]11によって発生された任意の個数の乱数列と対応付ける。上記例で言えば、平文データが”0”であれば、乱数発生回路[A]10によって発生される、約4K個の乱数値からなる部分乱数列を対応させ、また平文データが”1”であれば、乱数発生回路[B]11によって発生される、約4K個の乱数値からなる部分乱数列を対応させる。そして、平文データの要素の並びにあわせて、発生された複数の部分乱数列を合体させ、暗号文としての乱数列を作成する。
暗号化データ格納部18は、必要に応じて、暗号回路12において平文データを暗号化し乱数列として形成した送信データを格納したり、送受信回路19で受信したデータの暗号化データを格納する。
復号回路13は、暗号化データ格納部18に格納された暗号化データ(乱数列)を分割して複数の部分乱数列をつくる。そして、部分乱数列ごとに、上述した乱数列検定方法によって乱数が従う分布関数を特定する。上記例では、暗号化データを、約4K個の乱数値で1つの部分乱数値をつくり、分布A又は分布Bの理論期待値と適合するかを調べる。さらに、分布Aならば”0”、分布Bならば”1”という対応関係が定義された関係テーブルを参照し、暗号化データを平文データに復号する。
ROM16は、本情報処理装置1全体の制御を行う制御プログラムを記憶する。また、上記関係テーブルを記憶する。
CPU15は、ROM16に記憶された制御プログラムを読み出して、当該プログラムを実行して本情報処理装置1の各回路の動作を司る。
RAM17は、CPU15が制御プログラムを読み出したときの展開先としての領域、及び各種制御を実行するときの作業領域である。
本発明の暗号/復号化処理を表す概念図である。 本発明の乱数生成検定方法の基本概念を示す図である。 本発明の情報処理装置を実現する一実施例のブロック構成図である。
符号の説明
1 情報通信装置
10 乱数発生回路[A]
11 乱数発生回路[B]
12 暗号回路
13 復号回路
14 入出力回路
15 CPU
16 ROM
17 RAM
18 暗号化データ格納部
19 送受信回路

Claims (6)

  1. 所定の分布関数に従って発生させた乱数を用いて情報を暗号化する情報処理装置であって、
    平文の構成要素に応じて複数の分布関数を設定し、当該分布関数に従う任意の乱数列を発生させる乱数発生手段と、
    前記平文の情報に基づき乱数列を生成する暗号化処理手段とを備え、
    前記暗号化処理手段は、
    (i)前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう前記乱数発生手段に指示し、
    (ii)前記指示を受けて前記乱数発生手段が発生した乱数列を順次連結させて平文全体の乱数列を生成する、ことを特徴とした情報処理装置。
  2. 複数の乱数列が連結した乱数列を平文情報に復号化する情報処理装置であって、
    任意の乱数列の頻度期待値と、所定の分布関数に従って発生させた乱数列に関する理論統計的に導出した頻度期待値とを任意の許容幅を考慮しながら比較し、両者の頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定する乱数列検定手段と、
    乱数列を平文情報に戻すための復号化処理手段とを備え、
    前記復号化処理手段は、
    (i)前記複数の乱数列が連結した乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成し、
    (ii)前記乱数列検定手段により、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別し、
    (iii)前記所定の分布関数と、前記平文情報の構成要素との対応関係が定義された関係情報を基に、前記識別した分布関数に従う部分乱数列を平文情報に変換する、ことを特徴とした情報処理装置。
  3. 乱数を用いて情報を暗号化し、且つ乱数が従う分布関数の識別に基づき暗号文を復号化する情報処理装置であって、
    (1)情報通信回線を介して外部と接続する受信手段および送信手段と、
    (2)相手に送りたい平文を乱数列に変換する暗号化処理手段であって、
    (I)前記平文の構成要素に応じて複数の分布関数を設定し、当該分布関数に従う任意の乱数列を発生させる乱数発生部と、
    (II)(i)前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう前記乱数発生手段に指示し、 (ii)前記指示を受けて前記乱数発生手段が発生した乱数列を順次連結させて平文全体の乱数列を生成する乱数列生成部と、を含む前記暗号化処理手段と、
    (3)任意の乱数列における乱数値の出現頻度期待値と、所定の分布関数に従って発生させた乱数列に関して理論統計的に導出した乱数値出現頻度期待値とを任意の許容幅を考慮しながら比較し、両者の頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定する乱数列検定手段と、
    (4)前記受信手段により受信された複数の乱数列が連結した乱数列を平文情報に変換する復号化処理手段であって、
    (III)(i)前記複数の乱数列が連結した乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成する乱数分割部と、
    (ii)前記乱数列検定手段により、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別する分布関数識別部と、
    (iii)平文の構成要素と前記分布関数の対応関係に基づき、前記識別した分布関数に対応する平文に変換する平文変換部と、を含む前記復号化処理手段と、
    (5)前記暗号化手段によって変換した乱数列、又は前記復号化手段によって変換した平文情報を前記情報通信回線を介して外部に送信する情報処理装置。
  4. 所定の分布関数に従って発生させた乱数を用いて情報を暗号化する情報処理方法であって、
    平文の構成要素に応じて複数の分布関数を設定し、任意の乱数発生手段に指示して当該分布関数に従う任意の乱数列を発生させる処理と、
    前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう前記乱数発生手段に指示する処理と、
    前記指示を受けて前記乱数発生手段が発生した乱数列を順次連結させて平文全体の乱数列を生成する処理と、を含む情報処理方法。
  5. 複数の乱数列が連結した乱数列を平文情報に復号化するために情報通信装置内の復号回路で実行される情報処理方法であって、
    前記復号回路が、
    任意の乱数列における乱数値の出現の頻度期待値と、任意の乱数発生手段に対して所定の分布関数に従って発生させた乱数列に関する理論乱数値出現頻度期待値とを任意の許容幅を考慮しながら比較し、両者の理論乱数値出現頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定する乱数列検定処理と、
    前記複数の乱数列が連結した乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成する処理と、
    前記乱数列検定処理を用いて、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別する処理と、
    メモリに記憶された、前記所定の分布関数と、前記平文情報の構成要素との対応関係が定義された関係情報を参照することにより、前記識別した分布関数に従う部分乱数列を平文情報に変換する処理と、を実行する情報処理方法。
  6. 乱数を用いて情報を暗号化し、且つ乱数が従う分布関数の識別に基づき暗号文を復号化する情報処理方法であって、
    (1)情報通信回線を介して外部からの情報を取得する情報受信処理と、
    (2)相手に送りたい平文を乱数列に変換する暗号化処理であって、
    (I)前記平文の構成要素に応じて複数の分布関数を設定し、当該分布関数に従う任意の乱数列を任意の乱数発生手段を用いて発生させる処理と、
    (II)(i)前記平文の構成要素ごとに、前記複数の分布関数の中から対応の分布関数を決定し、当該対応の分布関数に従う乱数列を発生するよう前記乱数発生手段に指示する処理と、
    (ii)前記指示を受けて前記乱数発生手段が発生した乱数列を順次連結させて平文全体の乱数列を生成する処理と、を含む前記暗号化処理と、
    (3)任意の乱数列における乱数値の出現頻度期待値と、所定の分布関数に従って任意の乱数発生手段を用いて発生させた乱数列の乱数値の出現理論頻度期待値とを任意の許容幅を考慮しながら比較し、両者の頻度期待値が一致したときは前記任意の乱数列は前記所定の分布関数と関連性があると判定する乱数列検定処理と、
    (4)前記情報受信処理で受信した乱数列を平文情報に変換する復号化処理であって、
    (III)(i)前記受信した乱数列は複数の乱数列が連結した乱数列であって、当該乱数列を所定の分割ルールに従って分割して複数の部分乱数列を生成する処理と、
    (ii)前記乱数列検定処理を用いて、前記部分乱数列ごとに、あらかじめ定義した前記分布関数の何れと関連性があるかを識別する処理と、
    (iii)メモリに記憶された、前記所定の分布関数と、前記平文情報の構成要素との対応関係が定義された関係情報を参照することにより、前記識別した分布関数に従う部分乱数列を平文に変換する処理と、
    (5)前記暗号化処理によって変換した乱数列、又は前記復号化処理によって変換した平文情報を前記情報通信回線を介して外部に送信する処理と、を含む情報処理方法。
JP2007039521A 2007-02-20 2007-02-20 複数の乱数列を用いた情報通信装置及び情報通信方法 Expired - Fee Related JP4955415B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007039521A JP4955415B2 (ja) 2007-02-20 2007-02-20 複数の乱数列を用いた情報通信装置及び情報通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007039521A JP4955415B2 (ja) 2007-02-20 2007-02-20 複数の乱数列を用いた情報通信装置及び情報通信方法

Publications (2)

Publication Number Publication Date
JP2008205815A JP2008205815A (ja) 2008-09-04
JP4955415B2 true JP4955415B2 (ja) 2012-06-20

Family

ID=39782833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007039521A Expired - Fee Related JP4955415B2 (ja) 2007-02-20 2007-02-20 複数の乱数列を用いた情報通信装置及び情報通信方法

Country Status (1)

Country Link
JP (1) JP4955415B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115412245B (zh) * 2022-10-31 2023-01-03 上海伯镭智能科技有限公司 一种基于非对称算法的无人驾驶矿车数据存储方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3412729B2 (ja) * 1996-02-05 2003-06-03 日本電信電話株式会社 ソフトウエア配布方法、この方法により配布されたソフトウエアのソフトウエア配布先特定方法、およびこれらの方法を実施する装置
JP4054190B2 (ja) * 2001-12-27 2008-02-27 松下電器産業株式会社 データ転送システム
JP4288057B2 (ja) * 2002-11-15 2009-07-01 三洋電機株式会社 乱数生成装置

Also Published As

Publication number Publication date
JP2008205815A (ja) 2008-09-04

Similar Documents

Publication Publication Date Title
US6307940B1 (en) Communication network for encrypting/deciphering communication text while updating encryption key, a communication terminal thereof, and a communication method thereof
JP5338668B2 (ja) 秘密情報分散システム、方法及びプログラム並びに伝送システム
JP3339688B2 (ja) 非決定論的ミクスチャー発生器ストリーム暗号化システム
US9350544B2 (en) Apparatus for encrypting data
US5345507A (en) Secure message authentication for binary additive stream cipher systems
US8433066B2 (en) Method for generating an encryption/decryption key
US20040230799A1 (en) Circuit and method for providing secure communications between devices
US8744078B2 (en) System and method for securing multiple data segments having different lengths using pattern keys having multiple different strengths
US9762560B2 (en) Method for generating cryptographic “one-time pads” and keys for secure network communications
JPH08510365A (ja) データ暗号化のための方法および装置
CN110995720B (zh) 加密方法、装置、主机端及加密芯片
CN113014380B (zh) 文件数据的密码管理方法、装置、计算机设备及存储介质
CA2819211A1 (en) Data encryption
JPH04347949A (ja) 電子メール通信方法および送信側端末
KR20180113688A (ko) 장치 인증키를 이용한 데이터 암호화 방법 및 시스템
KR101602803B1 (ko) 편광을 이용한 암호화 및 복호화방법
JP4955415B2 (ja) 複数の乱数列を用いた情報通信装置及び情報通信方法
US7415110B1 (en) Method and apparatus for the generation of cryptographic keys
CN109361506A (zh) 信息处理方法
JP2005114870A (ja) 暗号通信システム
US7231048B2 (en) Key sharing system, public key cryptosystem, signature system, key sharing apparatus, encryption apparatus, decryption apparatus, signature apparatus, authentication apparatus, key sharing method, encryption method, decryption method, signature method, authentication method, and programs
CN107317667A (zh) 一种身份证件丢失的预警方法及预警装置
US7249254B2 (en) Method and apparatus for protecting NTRU against a timing attack
US20240137217A1 (en) Multi-party privacy computing method and device based on semi-trusted hardware
JP4570381B2 (ja) 電子データ伝送システム及び電子データ伝送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120201

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: 20120220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120315

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees