JP2014099875A - 通信システム、通信方法 - Google Patents
通信システム、通信方法 Download PDFInfo
- Publication number
- JP2014099875A JP2014099875A JP2013265981A JP2013265981A JP2014099875A JP 2014099875 A JP2014099875 A JP 2014099875A JP 2013265981 A JP2013265981 A JP 2013265981A JP 2013265981 A JP2013265981 A JP 2013265981A JP 2014099875 A JP2014099875 A JP 2014099875A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transmission target
- encrypted
- algorithm
- communication device
- 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.)
- Pending
Links
Images
Abstract
【解決手段】通信システムは、第1通信装置11と第2通信装置12を含み、一方の通信装置で送信対象データを暗号化して生成した暗号化データを他方の通信装置に送信し、その他方の通信装置で、受取った暗号化データの復号化を行う。各通信装置は、暗号化又は復号化を行うごとに暗号化に用いるアルゴリズムを生成する。この場合、各通信装置は、過去の解を代入することによって新しいアルゴリズムを生成することのできる解生成用アルゴリズムに、過去の解を代入してアルゴリズムを生成する。過去の解は使用されなくなった時点で消去される。
【選択図】図1
Description
かかる暗号化を行う場合には、一般に、所定のアルゴリズムと鍵が用いられる。このアルゴリズムは、暗号の解読を防ぐべく非常に複雑なものにされているし、鍵も多くの場合所定のタイミングで変更されるようになっている。しかしながら、幾らアルゴリズムを複雑なものにしたとしても、また、鍵を変更したとしても、アルゴリズムと鍵を一旦知られてしまえば、そのアルゴリズムと鍵を用いて暗号化されたデータの解読は比較的容易である。
この技術は、暗号化と復号化を行うためのアルゴリズムと鍵の少なくとも一方を連続的に生成させるものであり、一旦アルゴリズムないし鍵を知られた場合であっても、その後アルゴリズム又は鍵、或いはその双方が変化していくので、従来の暗号化技術に較べればその強度は遥かに高いものとなっている。
しかしながら、この技術でも、過去の幾つかのアルゴリズム又は鍵を知られた場合には、そのアルゴリズム又は鍵、或いはその双方がこれからどのように変化していくかということを予測されてしまう場合があり、第三者に解読されてしまう可能性が0であるとは言い切れない。
第1発明は、平文である送信対象データを暗号化し暗号化データとしてから相手側の通信装置に送るとともに、受付けた暗号化データを復号化して送信対象データにすることができる2つの通信装置である第1通信装置及び第2通信装置を含む通信システムである。
そして、この通信システムにおける前記第1通信装置及び前記第2通信装置は共に、前記送信対象データを所定のビット数毎に切断して複数の送信対象切断データにするとともに、前記暗号化データをその暗号化データが暗号化されたときに切断されたのと同じビット数毎に切断して複数の暗号化切断データにする切断手段、前記第1通信装置と前記第2通信装置で共通とされたアルゴリズムを順次生成するアルゴリズム生成手段、前記送信対象切断データを、前記アルゴリズムによって暗号化して暗号化データとするとともに、前記暗号化切断データをその暗号化切断データを暗号化するときに用いられたアルゴリズムによって復号化して送信対象切断データにする暗号化・復号化手段、復号化された前記送信対象切断データを接続して前記送信対象データにする接続手段、前記暗号化データを送受信する送受信手段を備えている。
この通信システムにおける前記アルゴリズム生成手段は、前記送信対象データの暗号化、又は前記暗号化データの復号化が行われるたびに前記アルゴリズムを生成させるようになっているとともに、前記アルゴリズムを生成させる場合に、過去の解の少なくとも一つを解生成用アルゴリズムに代入することによって得られる所定の解を用いるようにされ、且つ新たに代入する必要がなくなった時点で過去の解を消去するようになっている。
この通信システムでは、暗号化及び復号化で用いるアルゴリズムを、アルゴリズム生成手段で連続的に生成するようになっているが、アルゴリズム生成手段は、アルゴリズムを生成する場合に「解」を用いるようになっている。この解は、上述したように、過去の解を用いて生成されるようになっている。しかも、この解は、新たな解を生成するために必要がなくなった後に消去されるようになっている。
したがって、この通信システムでは、過去の解が次々に消去されているので、現時点における解を例え知りえたとしても、それがどのような経緯を辿って生成されたのか第三者は知ることができない。
以上の理由により、この通信システムによる暗号化通信は、第三者に解読されるおそれが小さいものとなる。
上述の解は、結果として擬似乱数となるものであってもよい。
後者の場合であれば、各送信対象切断データ毎に異なるアルゴリズムで暗号化が行われるため、暗号が解読されるおそれがより小さくなる。
この方法は、平文である送信対象データを暗号化し暗号化データとしてから相手側の通信装置に送るとともに、受付けた暗号化データを復号化して送信対象データにすることができる2つの通信装置である第1通信装置及び第2通信装置を含んでいる通信システムで実行される方法である。
そして、この方法は、前記第1通信装置及び前記第2通信装置の一方が、前記送信対象データを所定のビット数毎に切断して複数の送信対象切断データにする過程、アルゴリズムを順次生成する過程、前記送信対象切断データを、前記アルゴリズムによって暗号化して暗号化データとする過程、前記暗号化データを前記第1通信装置及び前記第2通信装置の他方に送信する過程、前記第1通信装置及び前記第2通信装置の他方が、受付けた前記暗号化データを、その暗号化データが暗号化されたときに切断されたのと同じビット数毎に切断して複数の暗号化切断データにする過程、前記第1通信装置及び前記第2通信装置の前記一方で生成されたのと同じアルゴリズムを順次生成する過程、前記暗号化切断データをその暗号化切断データを暗号化するときに用いられたアルゴリズムによって復号化して送信対象切断データにする過程、復号化された前記送信対象切断データを接続して前記送信対象データにする過程、を含んでいる。
また、この方法では、前記第1通信装置及び前記第2通信装置の前記一方及び前記他方は、前記送信対象データの暗号化、又は前記暗号化データの復号化が行われるたびに前記アルゴリズムを生成させるようになっているとともに、前記アルゴリズムを生成させる場合に、過去の解の少なくとも一つを解生成用アルゴリズムに代入することによって得られる所定の解を用い、且つ新たに代入する必要がなくなった時点で過去の解を消去する。
第2発明は、平文である送信対象データを暗号化し暗号化データとしてから相手側の通信装置に送るとともに、受付けた暗号化データを復号化して送信対象データにすることができる2つの通信装置である第1通信装置及び第2通信装置を含み、前記第1通信装置及び前記第2通信装置が共に、前記送信対象データを所定のビット数毎に切断して複数の送信対象切断データにするとともに、前記暗号化データをその暗号化データが暗号化されたときに切断されたのと同じビット数毎に切断して複数の暗号化切断データにする切断手段、前記第1通信装置と前記第2通信装置で共通とされた鍵を順次生成する鍵生成手段、前記送信対象切断データを、前記鍵と所定のアルゴリズムによって暗号化して暗号化データとするとともに、前記暗号化切断データをその暗号化切断データを暗号化するときに用いられた鍵と前記アルゴリズムと同一のアルゴリズムによって復号化して送信対象切断データにする暗号化・復号化手段、復号化された前記送信対象切断データを接続して前記送信対象データにする接続手段、前記暗号化データを送受信する送受信手段、を備えている通信システムである。
そして、この通信システムにおける前記鍵生成手段は、前記送信対象データの暗号化、又は前記暗号化データの復号化が行われるたびに前記鍵を生成させるようになっているとともに、前記鍵を生成させる場合に、過去の解の少なくとも一つを解生成用アルゴリズムに代入することによって得られる所定の解を用いるようにされ、且つ新たに代入する必要がなくなった時点で過去の解を消去するようになっている。
第2発明によるこの通信システムは、第1発明と基本思想を共通するものとしている。第2発明による通信システムは、第1発明ではアルゴリズムを連続的に生成することにしていたのに代えて、鍵を連続的に生成するものとなっている。第2発明における鍵は、鍵生成手段により生成されるのであるが、鍵を生成する場合には第1発明におけるアルゴリズムの生成の場合と同様に過去の解が利用され、且つその解が使用されなくなった時点で過去の解が消去されるようになっている。したがって、第2発明による通信システムも、第三者による通信の解読の可能性は小さい。
この場合の解も、結果として擬似乱数となるものであってもよい。
第2発明は、以下のような方法によっても実現できる。
第2発明は、平文である送信対象データを暗号化し暗号化データとしてから相手側の通信装置に送るとともに、受付けた暗号化データを復号化して送信対象データにすることができる2つの通信装置である第1通信装置及び第2通信装置を含んでいる通信システムで実行される方法である。
第2発明は、前記第1通信装置及び前記第2通信装置の一方が、前記送信対象データを所定のビット数毎に切断して複数の送信対象切断データにする過程、鍵を順次生成する過程、前記送信対象切断データを、前記鍵と所定のアルゴリズムによって暗号化して暗号化データとする過程、前記暗号化データを前記第1通信装置及び前記第2通信装置の他方に送信する過程、前記第1通信装置及び前記第2通信装置の他方が、受付けた前記暗号化データを、その暗号化データが暗号化されたときに切断されたのと同じビット数毎に切断して複数の暗号化切断データにする過程、前記第1通信装置及び前記第2通信装置の前記一方で生成されたのと同じ鍵を順次生成する過程、前記暗号化切断データをその暗号化切断データを暗号化するときに用いられた鍵及び前記アルゴリズムと同一のアルゴリズムによって復号化して送信対象切断データにする過程、復号化された前記送信対象切断データを接続して前記送信対象データにする過程、を含んでいる。また、前記第1通信装置及び前記第2通信装置の前記一方及び前記他方は、前記送信対象データの暗号化、又は前記暗号化データの復号化が行われるたびに前記鍵を生成させるようになっているとともに、前記鍵を生成させる場合に、過去の解の少なくとも一つを解生成用アルゴリズムに代入することによって得られる所定の解を用い、且つ新たに代入する必要がなくなった時点で過去の解を消去する。
なお、第1通信装置11と第2通信装置12を接続するネットワーク13は、例えばインターネットである。もっともこれに代えて、他の手段、例えばイントラネットや専用線でネットワーク13を構成してもかまわない。
第1通信装置11は、この実施形態では、CPU(central processing unit)21、ROM(read only memory)22、HDD(hard disk drive)23、RAM(random access memory)24、入力装置25、表示装置26、通信装置27、バス28を含む構成とされている。CPU21、ROM22、HDD23、RAM24、入力装置25、表示装置26、通信装置27は、バス28を介してデータの交換が可能とされている。
ROM22、あるいはHDD23には、所定のプログラム、及び所定のデータ(これには、送信対象データとなるものが含まれる場合があり、本実施形態ではそのようにされている。また、所定のデータには、上記プログラムを実行するために必要なデータが含まれる)が記録されている。CPU21は、第1通信装置11全体の制御を行うものであり、ROM22、あるいはHDD23に記憶されたプログラムやデータに基づいて、後述する処理を実行するものである。RAM24は、CPU21で処理を行う際の作業用記憶領域として用いられる。
入力装置25は、キーボード、マウスなどから構成されており、コマンドやデータの入力に用いられる。表示装置26は、LCD(liquid crystal display)、CRT(cathode ray tube)などから構成されており、コマンドや入力されたデータや、後述する処理の状況などを表示するために用いられる。
通信装置27は、ネットワーク13を介しての第2通信装置12との通信を実行するものである。なお、第2通信装置12の通信装置27は、ネットワーク13を介しての第1通信装置11との通信を実行する。
通信装置27は、インタフェイス部31、前処理部32、暗号化・復号化部33、共通データ生成部34、アルゴリズム生成部35、鍵生成部36、通信部37、及び接続部38から構成される。
前処理部32は、インタフェイス部31を介してバス28から受取った送信対象データ又は暗号化データを、所定のビット数毎に切断して、送信対象切断データ又は暗号化切断データを生成し、これを暗号化・復号化部33に送る機能を有している。送信対象データ又は暗号化データをどのように切断するかについては後述する。なお、前処理部32は、この実施形態では、送信対象データに後述するような方法で、送信対象データとは関係のないデータであるダミーデータを含める機能を有している。
暗号化・復号化部33は、送信対象切断データ又は暗号化切断データを前処理部32から受取り、送信対象切断データを受付けた場合にはそれを暗号化し、暗号化切断データを受付けた場合にはそれを復号化する機能を有している。なお、この実施形態における暗号化・復号化部33は、暗号化及び復号化の処理を行う場合の処理単位である基準ビット数が固定されている。この実施形態における基準ビット数は、これには限られないが8ビットとなっている。暗号化及び復号化の処理の詳細については後で述べる。
共通データ生成部34は、第1通信装置11と第2通信装置12で共通するデータである共通データを順次生成するものである。この実施形態における、第1通信装置11と第2通信装置12における共通データ生成部34は、同じ順番の共通データが同じものになるようにして、順次共通データを発生させるようになっている。また、この実施形態における共通データは、必ずしもそうである必要はないが擬似乱数である。生成された共通データは、前処理部32と、アルゴリズム生成部35と、鍵生成部36とに送られる。
アルゴリズム生成部35は、共通データ生成部34から受付けた共通データに基づいてアルゴリズムを生成するものである。このアルゴリズムは、暗号化・復号化部33で、暗号化処理及び復号化処理を行うときに使用されるものである。
鍵生成部36は、共通データ生成部34から受付けた共通データに基づいて鍵を生成するものである。鍵は、暗号化・復号化部33で、暗号化処理及び復号化処理を行うときに使用されるものである。
通信部37は、ネットワーク13との間でデータのやり取りを行うものである。暗号化・復号化部33で送信対象切断データを暗号化することによって生成された暗号化切断データは、接続部38で接続され、通信部37を介して相手側の通信装置に送られることになる。また、通信部37は、相手側通信装置から暗号化データを受付ける。この暗号化データは、通信部37から前処理部32に送られることになる。
接続部38は、暗号化・復号化部33で暗号化切断データを復号化することによって生成された送信対象切断データを元の順序で接続して一まとめの送信対象データとする機能を有している。この送信対象データは、インタフェイス部31に送られ、バス28を介して、必要に応じて、HDD23、或いはCPU21などに送られるようになっている。接続部38は、また、暗号化・復号化部33で送信対象切断データを暗号化することによって生成された暗号化切断データを接続して一まとめの暗号化データとする機能を有している。この暗号化データは、通信部37に送られ、通信部37から相手側の通信装置に送られるようになっている。なお、接続部38は、暗号化・復号化部33で送信対象切断データを暗号化することによって生成された暗号化切断データを接続する機能を有しなくてもよい。この場合には、暗号化切断データは暗号化された順に順次相手側の通信装置に送られることになる。接続部38がそのようなものである場合、暗号化切断データは接続部38を通らずに通信部37に直接送られるようにすることができる。
図4を用いて概略で説明すると、この通信システムで行われる処理の流れは以下のとおりである。
まず、第1通信装置11が送信対象データを暗号化して暗号化データを生成する(S110)。次いで、第1通信装置11がその暗号化データを第2通信装置12に送る(S120)。次いで、暗号化データを受取った第2通信装置12がその暗号化データを復号化して送信対象データに戻す(S130)。
このように、以下の説明では、第1通信装置11から第2通信装置12に暗号化データを送ることとするが、第2通信装置12から第1通信装置11に暗号化データを送る上述の場合と逆の処理が行われる場合であっても処理の内容に変わりがないことは、自明であろう。
送信対象データから送信対象切断データを生成する方法は一通りであってもよいが、この実施形態では、以下の3通りの方法のいずれかで、送信対象データから送信対象切断データを生成するようになっている。
A)送信対象データを基準ビット数よりも短い一定のビット数に切断して送信対象切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている送信対象切断データのそれぞれの一定の位置にダミーデータを含める場合
B)送信対象データを基準ビット数よりも短いビット数の一定のビット数に切断して送信対象切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている送信対象切断データのそれぞれの異なる位置にダミーデータを含める場合
C)送信対象データを基準ビット数と同じかそれよりも短いビット数に切断して送信対象切断データにするとともに、基準ビット数よりもビット数の短い送信対象切断データのそれぞれにダミーデータを含める場合
共通データ生成部34は、インタフェイス部31がバス28から送信対象データを受付けた場合、その情報をインタフェイス部31から受付ける。
これを契機に共通データ生成部34は、共通データの生成を開始する。この実施形態では、共通データ生成部34は、送信対象データがインタフェイス部31で受付けられるたびに、共通データを生成するようになっている。なお、これには限られないが、この実施形態における共通データは8行8列の行列(X)である。
非線形遷移するように共通データを連続して発生させるには、例えば、(1)共通データの生成の過程に、過去の共通データのべき乗の演算を含む、(2)共通データを発生の過程に、過去の2つ以上の共通データの掛け合わせを含む、或いは、(1)と(2)を組み合わせるなどの手法が考えられる。
共通データ生成部34は、この初期行列を解生成用アルゴリズムに代入して、第1解(X1)を以下のように生成する。
第1解(X1)=X02X01+α(α=8行8列の行列)
これが最初に生成される共通データである。
次にインタフェイス部31がバス28から送信対象データを受付けた場合、共通データ生成部34は、第2解(X2)を以下のように生成する。
第2解(X2)=X1X02+α
同様に、インタフェイス部31がバス28から送信対象データを受付けるたびに、共通データ生成部34は、第3解、第4解、……第N解を、以下のように生成する。
第3解(X3)=X2X1+α
第4解(X4)=X3X2+α
:
第N解(XN)=XN−1XN−2+α
このようにして生成された解(即ち、共通データ)は、前処理部32及びアルゴリズム生成部35に送られるとともに、共通データ生成部34で保持されることになる。この実施形態では、第N解(XN)を生成するために、第N−1解(XN−1)と第N−2解(XN−2)を、要するに、その直前に生成された2つの解を用いる。したがって、共通データ生成部34は、新しい解を生成するにあたって、過去に生成された直近2つの解を保持していなければならない(又は、他の何者かがこれら2つの解を保持していなければならない)。逆に過去に生成された直近2つの解よりも古い解は、新しい解を生成するために今後使用されることのないものである。そこで、この実施形態では、常に過去2つの解を共通データ生成部34で保持することとするが、新しい解が生成されることで直近3つ目の解となったそれまで直近2つ目の解であった解を、その解が記録されていた所定のメモリなどから消去することとしている。
なお、このように生成される解は、非線形遷移するカオス的なものとなり、擬似乱数となる。
第N解(XN)=XN−1XN−2+α
という式を用いる他に、以下のような式を用いることが考えられる。
例えば、
(a)第N解(XN)=(XN−1)P
(b)第N解(XN)=(XN−1)P(XN−2)Q(XN−3)R(XN−4)S
(c) 第N解(XN)=(XN−1)P+(XN−2)Q
などである。
なお、P、Q、R、Sはそれぞれ所定の定数である。また、数式(a)又は(c)を用いる場合には、2つ、数式(b)を用いる場合には4つの初期行列を、共通データ生成部34は有している。
また、上述したαは定数であったが、これを、特定の変化する環境情報とすることもできる。この環境情報は、時間の経過にしたがって次々と自然発生する情報であって離れた場所でも共通して取得できる情報であり例えば、特定地方の天気に基づいて定められる情報、特定の時間に放送されるあるテレビ局のテレビジョン放送の内容に基づいて定められる情報、特定のスポーツの結果によって定められる情報などである。
このような環境情報から、上述のαを次々に作成し共通情報を生成することにすれば、通信の秘匿性をより高められる。
上述した、数式(a)〜(c)の右辺に、α(これは環境情報から生成されたものでもよい。)を加えることももちろん可能である。
A)の方法で送信対象切断データを生成する場合には、前処理部32は、インタフェイス部31から受付けた送信対象データを先頭から順に、基準ビット数よりも短い一定のビット数(この実施形態では、7ビット)で切断することで、送信対象切断データを生成していく。また、前処理部32は、送信対象切断データの一定の位置に、ダミーデータを埋め込んでいく。なお、ダミーデータを埋め込む送信対象切断データにおける位置は、変化してもよいし、固定されていてもよい。後者の場合、ダミーデータが埋め込まれる位置は、例えば、送信対象切断データの先頭や末尾、或いは2ビット目や3ビット目などの所定の中間の位置とすることができる。このダミーデータは、送信対象データとは無関係のデータであればどのようなものでも構わない。例えば、常に0というデータを埋め込んでいく、又は1というデータを埋め込んでいく、或いは1と0というデータを交互に埋め込んでいくなどの処理が考えられる。更に他の例として、上述の共通データに基づいて、どのようなダミーデータを埋め込んでいくかを決定することもできる。例えば、共通データである8行8列の行列を構成する数字を足し合わせた和を9で割り、その余りが0のときは0、0、0、0…と0を連続し、その余りが1のときは、0、1、0、1…と1つおきに1を挟み込み、その余りが2のときは、0、0、1、0、0、1…と2つおきに1を挟み込み、同様に、余りが3のときは3つおきに、余りが4のときは4つおきに、……余りが9のときは9つおきに1を挟み込むようなものとすることができる。
B)の方法で送信対象切断データを生成する場合には、前処理部32は、送信対象データを基準ビット数よりも短いビット数の一定のビット数(例えば、7ビット)に切断して送信対象切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている送信対象切断データのそれぞれの異なる位置にダミーデータを含める。この場合、ダミーデータの埋め込まれる位置は、固定でもよいし、送信対象切断データのそれぞれについて、1ビット目、2ビット目、3ビット目…8ビット目、1ビット目、2ビット目…8ビット目、と順に移動していくような、規則的に変化するものでも、或いは、ランダムに変化するようなものであってもよい。ダミーデータの埋め込まれる位置がランダムに変化する場合には、例えば、ダミーデータの埋め込まれる位置が、共通データに基づいて決定されるようになっていてもよい。
共通データによって、ダミーデータの埋め込まれる基準ビット数を決定する方法としては、例えば、共通データである8行8列の行列を構成する数字を足し合わせた和を8で割り、その余りが0のときは、送信対象切断データ1つおきに、先頭と末尾に交互にダミーデータを埋め込む、余りが1のときは先頭にダミーデータが埋め込まれた送信対象切断データと、末尾にダミーデータが埋め込まれた送信対象切断データが2つおきになるようにする、余りが2のときは先頭にダミーデータが埋め込まれた送信対象切断データと、末尾にダミーデータが埋め込まれた送信対象切断データが3つおきになるようにする、……余りが7のときは先頭にダミーデータが埋め込まれた送信対象切断データと、末尾にダミーデータが埋め込まれた送信対象切断データが8つおきになるようにする、という処理を行うようにすることができる。先頭と末尾のように、ダミーデータを埋め込む位置を固定せずに、その位置を更に動かすようにすることもできる。
C)の方法により送信対象切断データを生成する場合には、送信対象データを基準ビット数と同じかそれよりも短いビット数に切断する。この切断は、送信対象データを、8ビットよりも短いランダムな長さに切断することにより行うことができ、例えば、共通データである8行8列の行列を構成する数字を足し合わせた和を8で割り、その余りが0のときは送信対象データのその時点における先頭部分を8ビットで切断し、その余りが1のときは送信対象データのその時点における先頭部分を1ビットで切断し、その余りが2のときは送信対象データのその時点における先頭部分を2ビットで切断し、…その余りが7のときは送信対象データのその時点における先頭部分を7ビットで切断するようにすることができる。また、前処理部32は、これにより生成された送信対象切断データのうち、基準ビット数よりもビット数の短い送信対象切断データのそれぞれに、ダミーデータを埋め込む。この場合のダミーデータの埋め込み位置は先頭、末尾などの特定の位置であってもよいし、例えば共通データによって特定される変化する所定の位置であってもよい。
いずれにせよ、このようにして生成された送信対象切断データは、生成された順番で、暗号化・復号化部33にストリーム的に送られる。
アルゴリズム生成部35は、アルゴリズムを、共通データに基づいて生成する。
この実施形態においては、アルゴリズム生成部35は、アルゴリズムを以下のようなものとして生成する。
この実施形態におけるアルゴリズムは、『8ビットのデータである送信対象切断データを1行8列の行列Yとした場合に、共通データである8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列に、Yを掛け合わせて求められるもの』と定義される。
ここで、aは所定の定数とされる場合もあるが、この実施形態では、共通データに基づいて変化する数字である。つまり、この実施形態におけるアルゴリズムは、共通データに基づいて変化する。例えばaは、8行8列の行列である共通データに含まれている行列の要素である数すべてを足し合わせて得られる数を5で割った場合の余り(ただし、余りが0の場合はa=1とする)のように定めることができる。
また、上述のnは、鍵によって定められる所定の数である。鍵が一定の数であればnは固定であるが、以下に説明するように、鍵は共通データに基づいて変化する。つまり、この実施形態では、このnも共通データに基づいて変化するようになっている。
もっとも、アルゴリズムを他のものとして決定することもできる。
この実施形態では、アルゴリズム生成部35は、共通データ生成部34から共通データを受取るたびにアルゴリズムを生成し、それを暗号化・復号化部33に送る。
鍵生成部36は、鍵を共通データに基づいて生成する。
この実施形態においては、鍵生成部36は、鍵を以下のようなものとして生成する。
この実施形態における鍵は、8行8列の行列である共通データに含まれている行列の要素である数すべてを足し合わせて得られる数とされる。したがって、鍵は、この実施形態では、共通データに基づいて変化する。
なお、鍵を他のものとして決定することもできる。
この実施形態では、鍵生成部36は、共通データ生成部34から共通データを受取るたびに鍵を生成し、それを暗号化・復号化部33に送る。
アルゴリズムは、上述したように、『8ビットのデータである送信対象切断データを1行8列の行列Yとした場合に、共通データである8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列に、Yを掛け合わせて求められるもの』という決まりであり、鍵であるnは、上述したような数である。
例えば、aが3、nが6である場合には、Xを3乗して得られる8行8列の行列を、6×90°=540°だけ時計回りに回転させることによって得られた8行8列の行列に、送信対象切断データを掛け合わせて暗号化が行われる。
これにより生成されたデータが暗号化切断データである。
以下、この復号化の過程について詳述する。
通信部37は、この暗号化データを前処理部32に送る。
暗号化データを切断して暗号化切断データを生成する場合、前処理部32は、第1通信装置11の接続部38で行われたのと逆の処理を行う。つまり、暗号化データは、先頭から8ビット毎に切断され、複数の暗号化切断データに分けられる。
復号化は、第1通信装置11における暗号化・復号化部33で行われたのと逆の処理として実行される。そのために、第2通信装置12では、第1通信装置11で暗号化を行う際に必要としたアルゴリズムと鍵を必要とする。
第2通信装置12の通信部37が暗号化データを受付けたという情報は、通信部37から共通データ生成部34へ送られる。共通データ生成部34は、この情報を受付けたのを契機として、この情報を受付けるたびに共通データを生成する。
第2通信装置12の共通データ生成部34で行われる共通データの生成は、第1通信装置11の共通データ生成部34で行われたのと同じ過程を経て行われる。なお、第2通信装置12の共通データ生成部34は、第1通信装置11の共通データ生成部34が持っていたのと同様の初期行列と、解生成用アルゴリズムを持っている。したがって、第2通信装置12で生成される共通データは、生成された順番が同じもの同士を比較すれば、第1通信装置11で生成される共通データと同じになっている。
生成された共通データは、共通データ生成部34から、前処理部32と、アルゴリズム生成部35と、鍵生成部36とに送られる。
アルゴリズム生成部35は、受付けた共通データに基づいて、共通データを受付けるたびにアルゴリズムを生成する。第2通信装置12のアルゴリズム生成部35がアルゴリズムを生成する過程は、第1通信装置11のアルゴリズム生成部35がアルゴリズムを生成する過程と同じである。生成されたアルゴリズムは、アルゴリズム生成部35から暗号化・復号化部33へ送られる。
鍵生成部36は、共通データを受付けるたびに、受付けた共通データに基づいて鍵を生成する。第2通信装置12の鍵生成部36が鍵を生成する過程は、第1通信装置11の鍵生成部36が鍵を生成する過程と同じである。生成された鍵は、鍵生成部36から暗号化・復号化部33へ送られる。
ところで、この通信システムでは、第1通信装置11で暗号化が行われるたびに第1通信装置11で新たな共通データが生成され、第2通信装置12で復号化が行われるたびに第2通信装置12で新たな共通データが生成される。また、上述したように、第2通信装置12で生成される共通データは、生成された順番が同じもの同士を比較すれば、第1通信装置11で生成される共通データと同じになっている。したがって、第1通信装置11である送信対象データを暗号化するときに生成された共通データと、その共通データに基づいて生成されたアルゴリズム及び鍵はすべて、その共通データと、その共通データを用いて生成されたアルゴリズム及び鍵とを用いて生成された暗号化データを復号化するときに、第2通信装置12で生成される共通データと、その共通データに基づいて生成されたアルゴリズム及び鍵に、常に一致する。なお、この事情は、第2通信装置12で暗号化が行われ、第1通信装置11で復号化が行われる場合も同様である。
前処理部32は、暗号化・復号化部33で復号化された送信対象切断データのどこにダミーデータが埋め込まれているかということについての情報を、暗号化・復号化部33に送る。
これを用いて、暗号化・復号化部33は、ダミーデータを送信対象切断データの中から除く。
このようにして、第2通信装置12が暗号化データを復号化して送信対象データに戻すS130の過程が終了する。
以上説明した通信システムでは、共通データ生成部34は、送信対象データをインタフェイス部31が受付けるたびに、また、暗号化データを通信部37が受付けるたびに、共通データを生成するようになっていた。この場合には、一つの送信対象データから生成される送信対象切断データのすべてに同じアルゴリズムによる暗号化が行われることになる。
これに代えて、共通データ生成部34は、暗号化・復号化部33に送信対象切断データが受付けられるたびに、また、暗号化・復号化部33に暗号化切断データが受付けられるたびに、共通データを生成するようになっていてもよい。この場合には、一つの送信対象データから生成される送信対象切断データ毎に、異なるアルゴリズムと鍵によって暗号化が行われることになる。
まずは、暗号化が行われる場合について説明する。
インタフェイス部31が送信対象データを受付けると、その旨の情報がインタフェイス部31から共通データ生成部34に送られる。これを受付けた共通データ生成部34は、上述の実施形態の場合と同様にして共通データを生成する。この共通データは、前処理部32とアルゴリズム生成部35と鍵生成部36に送られる。共通データを受付けた前処理部32は、送信対象データを切断して上述の実施形態の場合と同様に送信対象切断データの生成を開始する。他方、アルゴリズム生成部35は、受付けた共通データに基づいてアルゴリズムの生成を行い、生成したアルゴリズムを暗号化・復号化部33に送る。また、鍵生成部36は、受付けた共通データに基づいて鍵の生成を行い、生成した鍵を暗号化・復号化部33に送る。
暗号化・復号化部33は、受付けた送信対象切断データを、受付けたアルゴリズムと鍵で暗号化し、1つ目の暗号化切断データを生成する。
次いで、共通データ生成部34は、前処理部32から2つ目の送信対象切断データが暗号化・復号化部33に送られる前に共通データを生成し、それをアルゴリズム生成部35と鍵生成部36に送る。アルゴリズム生成部35は、これを受付けて1つ目の暗号化切断データを生成するのに用いたのとは異なるアルゴリズムを生成し、これを暗号化・復号化部33に送る。鍵生成部36も同様に、1つ目の鍵とは異なる鍵を生成し、これを暗号化・復号化部33に送る。暗号化・復号化部33は、このアルゴリズムと鍵を用いて2つ目の送信対象切断データを用いて、2つ目の暗号化切断データを生成する。
これを繰り返して、それぞれの送信対象切断データに異なる暗号化を行う。
なお、この変形例では、2つ目以降の共通データをアルゴリズム生成部35と鍵生成部36のみに送ることとしたが、2つ目以降の共通データを前処理部32にも送るようにすることもできる。この場合には、送信対象切断データの生成方法を、送信対象切断データ毎に変えることが可能になる。
次に、復号化が行われる場合について説明する。
通信部37が暗号化データを受付けると、その旨の情報が通信部37から共通データ生成部34に送られる。これを受付けた共通データ生成部34は、上述の実施形態の場合と同様にして共通データを生成する。この共通データは、前処理部32とアルゴリズム生成部35と鍵生成部36に送られる。共通データを受付けた前処理部32は、送信対象切断データがどのようにして生成されたかについての情報を上述の実施形態の場合と同様に生成して、これを暗号化・復号化部33へと送る。他方、アルゴリズム生成部35は、受付けた共通データに基づいてアルゴリズムの生成を行い、生成したアルゴリズムを暗号化・復号化部33に送る。鍵生成部36は、受付けた共通データに基づいて鍵の生成を行い、生成した鍵を暗号化・復号化部33に送る。このアルゴリズムと鍵は、その送信対象切断データを暗号化するときに用いられたアルゴリズムと鍵にそれぞれ等しい。また、前処理部32は、上述の実施形態の場合と同様に、暗号化データを切断して生成した暗号化切断データを、暗号化・復号化部33に送る。
暗号化・復号化部33は、受付けた暗号化切断データを、受付けたアルゴリズムを用いて生成した復号化用のアルゴリズムで復号化し、1つ目の送信対象切断データを生成する。また、暗号化・復号化部33は、受付けた送信対象切断データがどのようにして生成されたかについての上述の情報により、生成した送信対象切断データからダミーデータを除く。
次いで、共通データ生成部34は、前処理部32から2つ目の送信対象切断データが暗号化・復号化部33に送られる前に次の共通データを生成し、それをアルゴリズム生成部35に送る。アルゴリズム生成部35は、これを受付けて1つ目の送信対象切断データを生成するのに用いたのとは異なるアルゴリズムを生成し、これを暗号化・復号化部33に送る。このアルゴリズムは、その送信対象切断データを暗号化するときに用いたアルゴリズムと同じである。鍵生成部36は、共通データを受付けて1つ目の送信対象切断データを生成するのに用いたのとは異なる鍵を生成し、これを暗号化・復号化部33に送る。この鍵は、その送信対象切断データを暗号化するときに用いた鍵と同じである。
暗号化・復号化部33は、このアルゴリズムと鍵を用いて2つ目の暗号化切断データを復号化し、2つ目の送信対象切断データを生成する。また、上述の場合と同様にしてダミーデータを除く。
これを繰り返して、それぞれの暗号化切断データを、異なるアルゴリズムと鍵で復号化して次々に送信対象切断データを生成する。
なお、暗号化を行う場合に、2つ目以降の共通データを前処理部32にも送ることで送信対象切断データの生成方法を送信対象切断データ毎に変えている場合には、復号化を行う場合にも2つ目以降の共通データを前処理部32にも送る。これにより、前処理部32は、送信対象切断データがどのようにして生成されたかについての情報を、暗号化切断データのそれぞれについて生成することになる。このようにして生成された送信対象切断データがどのようにして生成されたかについての上述の情報は、暗号化・復号化部33で暗号化切断データの復号化が行われるたびに暗号化・復号化部33へと送られる。この情報を用いて、暗号化・復号化部33は、異なる方法で送信対象切断データのそれぞれに埋め込まれたダミーデータを確実に除去する。
12 第2通信装置
13 ネットワーク
31 インタフェイス部
32 前処理部
33 暗号化・復号化部
34 共通データ生成部
35 アルゴリズム生成部
36 鍵生成部
37 通信部
38 接続部
Claims (1)
- 平文である送信対象データを暗号化し暗号化データとしてから相手側の通信装置に送るとともに、受付けた暗号化データを復号化して送信対象データにすることができる2つの通信装置である第1通信装置及び第2通信装置を含み、
前記第1通信装置及び前記第2通信装置が共に、
前記送信対象データを所定のビット数毎に切断して複数の送信対象切断データにするとともに、前記暗号化データをその暗号化データが暗号化されたときに切断されたのと同じビット数毎に切断して複数の暗号化切断データにする切断手段、
前記第1通信装置と前記第2通信装置で共通とされたアルゴリズムを順次生成するアルゴリズム生成手段、
前記送信対象切断データを、前記アルゴリズムと所定の鍵によって暗号化して暗号化データとするとともに、前記暗号化切断データをその暗号化切断データを暗号化するときに用いられたアルゴリズムと前記鍵と同一の鍵によって復号化して送信対象切断データにする暗号化・復号化手段、
復号化された前記送信対象切断データを接続して前記送信対象データにする接続手段、
前記暗号化データを送受信する送受信手段、
を備えているとともに、
前記アルゴリズム生成手段は、前記送信対象データの暗号化、又は前記暗号化データの復号化が行われるたびに前記アルゴリズムを生成させるようになっているとともに、前記アルゴリズムを生成させる場合に、過去の解の少なくとも一つを解生成用アルゴリズムに代入することによって得られる所定の解を用いるようにされ、且つ新たに代入する必要がなくなった時点で過去の解を消去するようになっている、
通信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013265981A JP2014099875A (ja) | 2013-12-24 | 2013-12-24 | 通信システム、通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013265981A JP2014099875A (ja) | 2013-12-24 | 2013-12-24 | 通信システム、通信方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011139293A Division JP2011259439A (ja) | 2011-06-23 | 2011-06-23 | 通信システム、通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014099875A true JP2014099875A (ja) | 2014-05-29 |
Family
ID=50941493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013265981A Pending JP2014099875A (ja) | 2013-12-24 | 2013-12-24 | 通信システム、通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014099875A (ja) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0575596A (ja) * | 1991-09-10 | 1993-03-26 | Matsushita Electric Ind Co Ltd | 信号撹拌装置および暗号装置 |
JPH06216897A (ja) * | 1993-01-20 | 1994-08-05 | Nippon Signal Co Ltd:The | データ送受信装置 |
JPH0918469A (ja) * | 1995-06-30 | 1997-01-17 | Canon Inc | 暗号通信装置、システム及び暗号装置 |
JPH09116532A (ja) * | 1995-10-20 | 1997-05-02 | Nippon Telegr & Teleph Corp <Ntt> | 暗号鍵内容を隠蔽した情報流通方法 |
JPH10242956A (ja) * | 1997-02-28 | 1998-09-11 | Nec Commun Syst Ltd | 秘話装置 |
JP2000261427A (ja) * | 1999-03-05 | 2000-09-22 | Toshiba Corp | 暗号通信端末、暗号通信センター装置、暗号通信システム及び記憶媒体 |
-
2013
- 2013-12-24 JP JP2013265981A patent/JP2014099875A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0575596A (ja) * | 1991-09-10 | 1993-03-26 | Matsushita Electric Ind Co Ltd | 信号撹拌装置および暗号装置 |
JPH06216897A (ja) * | 1993-01-20 | 1994-08-05 | Nippon Signal Co Ltd:The | データ送受信装置 |
JPH0918469A (ja) * | 1995-06-30 | 1997-01-17 | Canon Inc | 暗号通信装置、システム及び暗号装置 |
JPH09116532A (ja) * | 1995-10-20 | 1997-05-02 | Nippon Telegr & Teleph Corp <Ntt> | 暗号鍵内容を隠蔽した情報流通方法 |
JPH10242956A (ja) * | 1997-02-28 | 1998-09-11 | Nec Commun Syst Ltd | 秘話装置 |
JP2000261427A (ja) * | 1999-03-05 | 2000-09-22 | Toshiba Corp | 暗号通信端末、暗号通信センター装置、暗号通信システム及び記憶媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8577022B2 (en) | Data processing apparatus | |
US20100061550A1 (en) | Data processing apparatus | |
KR20180110550A (ko) | 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치 | |
JP2006191509A (ja) | 通信システム、通信方法 | |
JP5992651B2 (ja) | 暗号化方法、プログラム、および、システム | |
WO2021006313A1 (ja) | データ処理装置、データ処理方法、及びコンピュータプログラム | |
JP2006191508A (ja) | 通信システム、通信方法 | |
JP2011259439A (ja) | 通信システム、通信方法 | |
JP5837625B2 (ja) | 通信システム、通信方法 | |
JP2014099875A (ja) | 通信システム、通信方法 | |
US8351610B2 (en) | Communication system and communication method | |
JP2020120297A (ja) | 送受信システム、送信装置、受信装置、方法、並びにコンピュータプログラム | |
JP2011259446A (ja) | 通信システム、通信方法 | |
JP2011229174A (ja) | データ処理装置、データ処理システム、及びデータ処理方法 | |
JP5837626B2 (ja) | データ処理装置、データ処理システム、及びデータ処理方法 | |
JP2017118560A (ja) | データ処理装置、データ処理システム、及びデータ処理方法 | |
JP2014079002A (ja) | データ処理装置、データ処理システム、及びデータ処理方法 | |
JP2011234398A (ja) | データ処理装置、データ処理システム、及びデータ処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140909 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141110 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150324 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150624 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20150701 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20150904 |