(57)【要約】【課題】同じ順番に生成されたものは同じものとなる解を送信装置と受信装置で用いる暗号技術を、安全性を落とさずに汎用性を増すよう改良する。【解決手段】通信を行う２つの通信装置のそれぞれが解を生成するために用いる初期解を、通信を行う装置の一方から他方に送る。両通信装置が、その解から相互に取決めた数だけ生成した解の最後のものを新たな初期解とし、その初期解に基づいて生成した解を用いて、送信装置は暗号化を、受信装置は復号化を行う。【選択図】図５
2014053954.tif 000002
【特許請求の範囲】
【請求項１】
送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムであって、
前記送信装置は、
所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、
前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、
前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、
を備えており、
前記受信装置は、
所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できるようにされている受信側解発生手段と、
前記受信側解発生手段が発生させた前記解を使用して、前記送信装置で暗号化された暗号化データを復号化する復号化手段と、
前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、
を備えており、
前記送信装置と、前記受信装置は、前記暗号化データの送受信が行われる場合、その一方から他方に前記初期解となるデータを送信するようになっているとともに、
前記送信装置と、前記受信装置の前記一方は、送信した前記データを初期解としてその送信側解発生手段、又は受信側解発生手段によって解を生成するように、前記送信装置と、前記受信装置の前記他方は、受信した前記データを初期解としてその送信側解発生手段、又は受信側解発生手段によって解を生成するようになっており、
前記送信側解発生手段、及び前記受信側解発生手段は、互いの間で取決められていた所定数の解を生成した後、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、
前記暗号化手段は、前記新たな初期解に基づいて前記送信側解発生手段が発生させた前記解を使用して前記送信対象データを暗号化し、前記復号化手段は、前記新たな初期解に基づいて前記受信側解発生手段が発生させた前記解を使用して前記暗号化データを復号化するようになっている、
送受信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のデータを暗号化して送受信するための技術に関する。
【背景技術】
【０００２】
例えば、インターネット、電子メール、ＩＰ電話などの分野で、インターネットなどの所定のネットワークを介してデータを送受信するという技術が広く用いられている。ネットワークを介して送受信されるデータには、プログラムや、動画その他のコンテンツのデータなども含まれうる。
データの送受信が行われる場合、データを送信する送信装置と、データを受信する受信装置の間で、第三者によるデータの盗聴が発生するおそれがある。そのようなことを防止するため、データの送受信を行う場合に、暗号化の技術が広く使われている。
【０００３】
暗号化のための技術には様々なものがあるが、その中にワンタイムパスワードを用いるものがある。
ワンタイムパスワードは、認証に用いられる場合が多いが、一般的には、トークンと呼ばれる暗証番号その他の情報を生成する器具を用いて実現される。トークンは、時間に依存して上述の情報を生成する場合もあるが、その情報が生成された順番に依存するようにして上述の情報を生成する場合がある。いずれにせよ、認証装置とトークンは、同じ情報を生成できるようにされる。ユーザは、自分の有するトークンで発生させたこの情報を認証装置に送り、認証装置は自己の発生させた情報とユーザから貰った情報の照合を行い、それによりユーザの正当性を判断する。
このようなワンタイムパスワードの技術は、２つの送信装置の双方で、共通する情報を発生させ、それを送信側では送信の対象となるデータの暗号化に、受信側では受信した暗号化されたデータの復号化に用いるというやり方で、暗号化通信に応用できる。上述の共通する情報は、例えば、データを暗号化し又は復号化する場合の鍵、アルゴリズムの一部、或いはこれらを新たに発生させたり、複数のものの中から指定したりする場合の情報として用いることができるのであるが、それが２つの通信装置の間でやり取りされることがないため、暗号の強度は比較的高い。
これに類する技術を本願発明者は既に提案している。
その技術は、以下のようなものである。
本願発明者の提案する暗号化技術は、所定のデータである初期解に基づいて、当該初期解によって一義的に決定される解を連続して発生する解発生手段を、送信装置と受信装置が有するという点に特徴がある。送信装置は、解発生手段から発生された解を、送信するデータを暗号化して暗号化データにする際に用いるようになっており、受信装置は、解発生手段から発生された解を、受信した暗号化データを復号化して元のデータに戻す際に用いるようになっている。上述した解は、暗号化と復号化に際して適当に用いられるが（例えば、解は、暗号化と復号化を行う場合の鍵として用いられたり、暗号化と復号化を行う場合の鍵又はアルゴリズムの少なくとも一方を発生するために用いられたり、或いは予め複数存在する鍵又はアルゴリズムの中から、適当な鍵又はアルゴリズムを選択するために用いられたりする。）、いずれにせよ、送信装置と受信装置で発生させられる解は、同じ順番で発生させられたもの同士を比較した場合には同じものとなる。これにより、受信装置は、送信装置で暗号化を行うときに用いられた鍵とアルゴリズムを、送信装置で暗号化を行うときに用いられたものと同じ解を用いて再現することが可能となるため、暗号化の際に送信装置で用いられた解、鍵、アルゴリズムに関する情報を送信装置から一切貰わなくとも、所定のデータを暗号化することにより送信装置で生成された暗号化データを復号化することができる。
【０００４】
本願発明者が提案する上述の技術は、送信装置と受信装置で、同じ順番に生成されたものは同じものとなる解を生成することによって達成される。そのためには、送信装置と受信装置で、同じ解を生成するための手段が必要となる。本願発明者はそれを、ある特定の解（最初の解なのでこれを本願では初期解と呼ぶ。）を送信装置と受信装置に予め与えておくことによって解決している。つまり、送信装置と受信装置は、予め与えられた共通の初期解（初期解が複数の場合もある。）を用いて２つ目の解を作り、２つ目以前の解を用いて３つ目の解を作り、３つ目以前の解を用いて４つ目の解を作り……、という処理を行うことによって、初期解に基づいて芋づる式に解を生成することとしている。
【０００５】
本願発明者が提案する上述の技術は、送信装置で行う暗号化のやり方を変化させられる（例えば、鍵、アルゴリズムを変化させられる。）ものであるにも関わらず、送信装置と受信装置との間で送信装置で用いられた解、鍵、アルゴリズムを特定するのに必要な情報をやり取りする必要がない、という優れた利点がある。つまり、かかる技術による暗号は破るのが難しい。
上述の技術は、暗号化を行う送信装置と、復号化を行う受信装置に共通の初期解を与えておくことが前提となるため、送信装置と受信装置の一対一の通信に向いている。もっとも、送信装置と受信装置が初めから特定又は制限されている場合には、送信装置と受信装置の一方又は双方が複数あったとしても、上述の技術を応用することは可能である。
【０００６】
しかしながら、送信装置と受信装置の少なくとも一方が複数であり、且つ送信装置と受信装置が不特定な状態である場合などには、上述の技術を応用することは困難である。送信装置、受信装置が増加した場合などにおいても、送信装置と受信装置が初期解を予め共有しておくことは難しい。送信装置と受信装置は、暗号化と復号化を行うにあたり、共通の初期解を持っていること（これは、相手方が持っている初期解を何らかの手法で知得することによって達成されてもよい。）が必要となるが、それを実現するための適当な技術が現状では存在しない。
【特許文献１】特開２００３−２４９９２９
【特許文献２】特開２００６−２５３７４５
【特許文献３】特開２００６−２５３７４６
【特許文献４】特開２００７−０１３５０６
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本願発明は、同じ順番に生成されたものは同じものとなる解を送信装置と受信装置で用いる暗号技術の汎用性を安全性を落とさずに増すことを目的とする。
【課題を解決するための手段】
【０００８】
かかる課題を解決するため、本願発明者は、以下に説明する第１発明及び第２発明を提案する。
【０００９】
本願の第１発明は以下のようなものである。
第１発明は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムである。
そして、前記送信装置は、前記送信装置は、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、を備えている。
また、前記受信装置は、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できるようにされている受信側解発生手段と、前記受信側解発生手段が発生させた前記解を使用して、前記送信装置で暗号化された暗号化データを復号化する復号化手段と、前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、を備えている。
前記送信装置と、前記受信装置は、前記暗号化データの送受信が行われる場合、その一方から他方に前記初期解となるデータを送信するようになっているとともに、前記送信装置と、前記受信装置の前記一方は、送信した前記データを初期解としてその送信側解発生手段、又は受信側解発生手段によって解を生成するように、前記送信装置と、前記受信装置の前記他方は、受信した前記データを初期解としてその送信側解発生手段、又は受信側解発生手段によって解を生成するようになっており、前記送信側解発生手段、及び前記受信側解発生手段は、互いの間で取決められていた所定数の解を生成した後、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記新たな初期解に基づいて前記送信側解発生手段が発生させた前記解を使用して前記送信対象データを暗号化し、前記復号化手段は、前記新たな初期解に基づいて前記受信側解発生手段が発生させた前記解を使用して前記暗号化データを復号化するようになっている。
【００１０】
この送受信システムでは、送信装置と受信装置の一方から他方に、初期解となるデータを送るようになっている。このシステムでは、送信装置と受信装置の一方から他方に、初期解となるデータを送ることにより、従来は実現することが難しかった不特定の送信装置と受信装置間での初期解の共有が実現できることになる。しかも送信装置と受信装置の一方から他方に送られる初期解のデータは、送信装置と受信装置が送受信する暗号化データを暗号化又は復号化する場合に用いられる解を発生させるための初期解のデータではなく、送信装置と受信装置が送受信する暗号化データを暗号化又は復号化する場合に用いられる解を発生させるための初期解を発生させるための初期解のデータである。送信装置と受信装置は、その互いの間で送受信された初期解に基づいて予め取決められた数の解を生成することにより、送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成するのに使用する初期解を入手することになる。つまり、この送受信システムでは、送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成するための初期解を互いの間で送受信するわけではなく、また、その解から幾つ目の解を送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成するのに使用する初期解として送信装置と受信装置が用いるのかということを第三者は知り得ないから、暗号の強度が高い。
【００１１】
第１発明の送受信システムに含まれる前記送信装置と前記受信装置のうち、前記初期解となる前記データを送信するものは、前記初期解となる前記データを、所定のルールに基づいて所定のタイミングで変更する手段を有していてもよい。送信装置と受信装置の一方から他方に送られる初期解となるデータを変更することにより、暗号の強度をより高くすることができる。
第１発明の送受信システムに含まれる前記送信装置と前記受信装置の前記送信側解発生手段、及び前記受信側解発生手段は、上述の通り、受信した初期解に基づいて、互いの間で取決められていた所定数の解を生成した後、所定数の解の最後の解を新たな初期解として、送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成するようになっている。この場合、幾つ目の解を初期解とするかということについての「所定数」は、必ずしも固定である必要はなく、送信装置と受信装置との間で同じであることを条件に変化させることも可能である。例えば、送信装置と受信装置との間でデータの送受信が行われるときの日時など、離れていても共通して取得できる情報に基づけば、送信装置と受信装置の間でデータのやり取りを行わなくとも、上述の「所定数」を変化させることができる。
【００１２】
上述したように、第１発明の送受信システムに含まれる前記送信装置と前記受信装置の前記送信側解発生手段、及び前記受信側解発生手段は、送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成するようになっている。このとき、送信対象データの暗号化に用いる解と暗号化データの復号化に用いる解は、それぞれ１つであっても良いし、複数であってもよい。後者の場合、本願発明の送受信システムは、以下のようなものとすることができる。即ち、前記暗号化手段は、前記送信対象データを所定のビット長に切断して送信対象切断データにしてから、送信対象切断データのそれぞれを前記送信側解発生手段が発生させた異なる解を用いて順に暗号化するようになっており、前記復号化手段は、前記暗号化データを所定のビット長に切断して暗号化切断データにしてから、暗号化切断データのそれぞれを前記受信側解発生手段が発生させた異なる解を用いて順に復号化するようになっていてもよい。この場合には、送信対象切断データを暗号化する毎に、また、暗号化切断データを復号化する毎に、新しい解が用いられることになる。
【００１３】
本願発明は、以上の送受信システムに含まれうる送信装置をも本願の第１発明の１つとして提案する。送信装置は、前記初期解となる前記データを受信装置に送信するようになっている場合、前記初期解となる前記データを受信装置から受信するようになっている場合がある。
前者の送信装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する受信側解発生手段と、前記受信側解発生手段が発生させた前記解を使用して、前記暗号化データを復号化して送信対象データにする復号化手段と、前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、前記暗号化データの送受信が行われる場合、前記送信装置から前記初期解となるデータを受信する手段と、を備えており、前記受信側解発生手段は、前記送信装置から前記初期解となるデータを受信した場合、前記送信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記受信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化するようになっている、前記受信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記受信側解発生手段で用いられるものと同じ初期解を用いれば、前記受信側解発生手段と同じ解を生成できる制御手段を備えている前記送信装置にて実行される方法である。
そして、この方法は、前記制御手段が、前記受信装置に、前記初期解となる前記データを送信する過程、前記受信装置に、前記暗号化データを送信する過程、前記受信装置に送信した前記初期解となる前記データを初期解として、前記受信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化する過程、を含んでいる。
前者の送信装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ、或いは携帯電話）によっても、前者の送信装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する受信側解発生手段と、前記受信側解発生手段が発生させた前記解を使用して、前記暗号化データを復号化して送信対象データにする復号化手段と、前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、前記暗号化データの送受信が行われる場合、前記送信装置から前記初期解となるデータを受信する手段と、を備えており、前記受信側解発生手段は、前記送信装置から前記初期解となるデータが受信された場合、前記送信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記受信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化するようになっている、前記受信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記受信側解発生手段で用いられるものと同じ初期解を用いれば、前記受信側解発生手段と同じ解を生成できる制御手段を備えている前記送信装置の前記制御手段に、前記受信装置に、前記初期解となる前記データを送信する過程、前記受信装置に、前記暗号化データを送信する過程、前記受信装置に送信した前記初期解となる前記データを初期解として、前記受信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化する過程、を実行させるためのコンピュータプログラムである。
後者の送信装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する受信側解発生手段と、前記受信側解発生手段が発生させた前記解を使用して、前記暗号化データを復号化して送信対象データにする復号化手段と、前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、前記暗号化データの送受信が行われる場合、前記送信装置に前記初期解となるデータを送信する手段と、を備えており、前記受信側解発生手段は、前記送信装置に前記初期解となるデータが送信された場合、前記送信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記受信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化するようになっている、前記受信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記受信側解発生手段で用いられるものと同じ初期解を用いれば、前記受信側解発生手段と同じ解を生成できる制御手段を備えている前記送信装置にて実行される方法である。
そして、この方法は、前記制御手段が、前記受信装置から、前記初期解となる前記データを受信する過程、前記送信装置に、前記暗号化データを送信する過程、前記受信装置から受信した前記初期解となる前記データを初期解にして、前記受信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化する過程、を含んでいる。
後者の送信装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ、或いは携帯電話）によっても、後者の送信装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する受信側解発生手段と、前記受信側解発生手段が発生させた前記解を使用して、前記暗号化データを復号化して送信対象データにする復号化手段と、前記送信装置と前記ネットワークを介して通信を行う受信側通信手段と、前記暗号化データの送受信が行われる場合、前記送信装置に前記初期解となるデータを送信する手段と、を備えており、前記受信側解発生手段は、前記送信装置に前記初期解となるデータが送信された場合、前記送信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記受信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化するようになっている、前記受信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記受信側解発生手段で用いられるものと同じ初期解を用いれば、前記受信側解発生手段と同じ解を生成できる制御手段を備えている前記送信装置の前記制御手段に、前記受信装置から、前記初期解となる前記データを受信する過程、前記送信装置に、前記暗号化データを送信する過程、前記受信装置から受信した前記初期解となる前記データを初期解として、前記受信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して記送信対象データを暗号化する過程、を実行させるためのコンピュータプログラムである。
【００１４】
本願発明者は、以上の送受信システムに含まれうる受信装置をも本願の第１発明の１つとして提案する。受信装置は、前記初期解となる前記データを送信装置から受信するようになっている場合、前記初期解となる前記データを送信装置に送信するようになっている場合がある。
前者の受信装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、前記暗号化データの送受信が行われる場合、前記受信装置に前記初期解となるデータを送信する手段と、を備えており、前記送信側解発生手段は、前記受信装置に前記初期解となるデータが送信された場合、前記受信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記送信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記送信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できる制御手段を備えている前記受信装置にて実行される方法である。
そして、この方法は、前記制御手段が、前記送信装置から、前記送信装置から、前記初期解となる前記データを受信する過程、前記送信装置から、前記暗号化データを受信する過程、前記送信装置から受信した前記初期解となる前記データを初期解として、前記送信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化する過程、を含んでいる。
前者の受信装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ、或いは携帯電話）によっても、前者の受信装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、前記暗号化データの送受信が行われる場合、前記受信装置に前記初期解となるデータを送信する手段と、を備えており、前記送信側解発生手段は、前記受信装置に前記初期解となるデータが送信された場合、前記受信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記送信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記送信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できる制御手段を備えている前記受信装置の前記制御手段に、前記送信装置から、前記初期解となる前記データを受信する過程、前記送信装置から、前記暗号化データを受信する過程、前記送信装置から受信した前記初期解となる前記データを初期解として、前記送信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化する過程、を実行させるためのコンピュータプログラムである。
後者の受信装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、前記暗号化データの送受信が行われる場合、前記受信装置から前記初期解となるデータを受信する手段と、を備えており、前記送信側解発生手段は、前記受信装置から前記初期解となるデータを受信した場合、前記受信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記送信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記送信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できる制御手段を備えている前記受信装置にて実行される方法である。
そして、この方法は、前記制御手段が、前記送信装置に、前記初期解となる前記データを送信する過程、前記送信装置から、前記暗号化データを受信する過程、前記送信装置に送信した前記初期解となる前記データを初期解として、前記送信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化する過程、を含んでいる。
後者の受信装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ、或いは携帯電話）によっても、後者の送信装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができる送信装置と、前記暗号化データを前記送信装置から前記ネットワークを介して受取ることができる受信装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する送信側解発生手段と、前記送信側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、前記受信装置と前記ネットワークを介して通信を行う送信側通信手段と、前記暗号化データの送受信が行われる場合、前記受信装置から前記初期解となるデータを受信する手段と、を備えており、前記送信側解発生手段は、前記受信装置から前記初期解となるデータを受信した場合、前記受信装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記送信側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記送信装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記送信側解発生手段で用いられるものと同じ初期解を用いれば、前記送信側解発生手段と同じ解を生成できる制御手段を備えている前記受信装置の前記制御手段に、前記送信装置に、前記初期解となる前記データを送信する過程、前記送信装置から、前記暗号化データを受信する過程、前記送信装置に送信した前記初期解となる前記データを初期解として、前記送信装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として解を発生させる過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して前記暗号化データを復号化する過程、を実行させるためのコンピュータプログラムである。
【００１５】
本願の第２発明は以下のようなものである。
本願の第２発明は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができるものであり、複数のユーザ装置の正当性を認証することのできる認証装置と、その正当性が前記認証装置で認証された場合に前記暗号化データを前記認証装置から前記ネットワークを介して受取ることができる複数のユーザ装置と、を含んでいる送受信システムである。
第２発明の送受信システムの前記認証装置は、前記認証装置は、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する認証側解発生手段と、前記認証側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段と、前記ユーザ装置と前記ネットワークを介して通信を行う認証側通信手段と、前記ユーザ装置の正当性を判定する認証手段と、を備えている。
第２発明の送受信システムの前記ユーザ装置のそれぞれは、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記認証側解発生手段で用いられるものと同じ初期解を用いれば、前記認証側解発生手段と同じ解を生成できるようにされているユーザ側解発生手段と、前記ユーザ側解発生手段が発生させた前記解を使用して、前記認証装置で暗号化された暗号化データを復号化する復号化手段と、そのユーザ装置のＩＤを記録しているユーザ側記録手段と、前記認証装置と前記ネットワークを介して通信を行うユーザ側通信手段と、を備えている。
そして、前記ユーザ装置は、前記暗号化データの送受信が行われる場合、前記ユーザ側記録手段に記録されていたＩＤと、前記初期解又は前記初期解に基づいて前記ユーザ側解発生手段が生成した解とを、前記認証装置に送信するようになっているとともに、前記認証装置の前記認証側解発生手段は、前記ユーザ装置から受付けたＩＤと同じＩＤに対応付けられた前記初期解又は当該初期解から発生させられた解を前記認証側記録手段から読出して、当該初期解又は解に基づいて解を生成するようになっているとともに、前記認証装置の前記認証手段は、前記認証側解発生手段が生成した解が前記ユーザ装置から受付けた解と等しいか否か判定しそれらが一致する場合には、当該ユーザ装置が正当なものであると判定するようになっており、前記認証手段が前記ユーザ装置を正当なものであると判定した場合、前記認証側解発生手段、及び前記ユーザ側解発生手段は、互いの間で取決められていた所定数の解を生成した後、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記新たな初期解に基づいて前記認証側解発生手段が発生させた前記解を使用して前記送信対象データを暗号化し、前記復号化手段は、前記新たな初期解に基づいて前記ユーザ側解発生手段が発生させた前記解を使用して前記暗号化データを復号化するようになっている。
【００１６】
大雑把にいえば、第２発明の認証装置は第１発明の送信装置に当たり、第２発明のユーザ装置は第１発明の受信装置に当たる。その上で、第２発明の認証装置は、認証手段により送信装置の正当性の認証をも行えるようになっている。
第１発明の送受信システムでは、送信装置と受信装置の一方から他方に、初期解となるデータを送るようにしていた。しかしながら、第２発明の送受信システムでは、初期解となるデータは、ユーザ装置と認証装置の一方から他方に送られれば良いわけではなく、ユーザ装置から認証装置に送られるようになっている。認証装置は、受付けたその初期解となるデータを、第１発明における送信装置と受信装置のうちの初期解となるデータを受取ったものと同様に所定数の解を生成するために用いるだけでなく、ユーザ装置の認証にも用いるからである。なお、第２発明では、ユーザ装置の認証にそれが用いられるという関係上、初期解となるデータは、ユーザ装置で連続的に発生させられる解となる。第１発明の初期解となるデータにはそのような制限はなく、初期解となるデータは適当なデータであれば足りる。
ユーザ装置が解を生成するのに用いる初期解は、各ユーザ装置に固有のものとなっている。したがって、各ユーザ装置が生成することのできる解（解のうちの幾つかが初期解として用いられることになる。）は、各ユーザ装置毎に固有のものとなる。また、各ユーザ装置は、各ユーザ装置に固有のＩＤを有しており、認証装置に初期解となるデータを送るときに、それと一緒にＩＤをも送信するようになっている。認証装置は、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段を備えている。したがって、ユーザ装置から送られて来たＩＤに対応付けられた初期解から生成され得る解を、認証装置はその認証側解発生手段によって再現して生成することができる。認証装置の認証手段は、ユーザ装置から送られて来た初期解が、その初期解とともに送られて来たＩＤと対応付けられて認証側記録手段に記録されていた初期解又はそれに基づいて生成された解から生成できるものであるか否かということに基づいて、ユーザ装置の認証を行うものとなっている。
ユーザ装置が正当なものであると認証装置で判定された後、ユーザ装置と認証装置との間で行われる暗号化通信の方法は第１発明の場合と同様である。したがって、第２発明の送受信システムで行われる暗号化通信も、その暗号の強度は第１発明の場合と同様に高い。
【００１７】
認証装置の認証側記録手段には、上述したように、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とが互いに対応付けられた状態で記録されている。認証側記録手段に記録された各ユーザ装置毎の初期解又は当該初期解から生成された解は、その双方が記録されている必要はない。各ユーザ装置に割振られた初期解さえ存在すれば、認証側解発生手段は、各ユーザ装置のユーザ側解発生手段で生成される解と同じ解を生成することができる。しかしながら、各ユーザ装置で、既に使用された解は原則としてもう使用されないので、ユーザ装置から認証目的でＩＤとともに送られて来た初期解のデータを、そのユーザ装置のＩＤと対応付けられたそのユーザ装置用の初期解及びそれから生成される解のすべてと照合するのは無駄が多い。例えば、認証装置で、送信対象データが暗号化データとされた場合に最後に用いられたものが、各ユーザ装置のＩＤと対応付けられた状態で認証側記録手段に記録されているのであれば、あるユーザ装置でその後生成される解はその解に基づいて生成される解の中に含まれるのであるから、ユーザ装置から認証目的でＩＤとともに送られて来た初期解のデータを照合する場合の無駄を省ける。
この場合、第２発明の送受信システムの認証装置は、前記送信対象データが暗号化され暗号化データとされた後、前記認証側記録手段には、前記送信対象データの暗号化に用いられた解のうち最後に使用されたものが記録されるようになっており、前記暗号化データが復号化され送信対象データにされた後、前記ユーザ側記録手段には、前記暗号化データの復号化に用いられた解のうち最後に使用されたものが記録されるようになっている、ものとすることができる。
【００１８】
第２発明の送受信システムに含まれる前記認証装置と前記ユーザ装置の前記認証側解発生手段、及び前記ユーザ側解発生手段は、送信対象データの暗号化又は暗号化データの復号化を行うときに用いる解を生成する。このとき、送信対象データの暗号化に用いる解と暗号化データの復号化に用いる解は、それぞれ１つであっても良いし、複数であってもよい。
後者の場合、前記暗号化手段は、前記送信対象データを所定のビット長に切断して送信対象切断データにしてから、送信対象切断データのそれぞれを前記認証側解発生手段が発生させた異なる解を用いて順に暗号化するようになっており、前記復号化手段は、前記暗号化データを所定のビット長に切断して暗号化切断データにしてから、暗号化切断データのそれぞれを前記ユーザ側解発生手段が発生させた異なる解を用いて順に復号化するようになっていてもよい。
【００１９】
本願発明者は、以上の送受信システムに含まれうる認証装置をも本願の第２発明の１つとして提案する。
この認証装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができるものであり、複数のユーザ装置の正当性を認証することのできる認証装置と、その正当性が前記認証装置で認証された場合に前記暗号化データを前記認証装置から前記ネットワークを介して受取ることができる複数のユーザ装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされたユーザ側解発生手段と、前記ユーザ側解発生手段が発生させた前記解を使用して、前記認証装置で暗号化された暗号化データを復号化する復号化手段と、そのユーザ装置のＩＤを記録しているユーザ側記録手段と、前記認証装置と前記ネットワークを介して通信を行うユーザ側通信手段と、前記暗号化データの送受信が行われる場合に、前記ＩＤと、前記初期解又は当該初期解に基づいて生成された解とを前記認証装置に送信する手段と、を有しているとともに、前記ユーザ側解発生手段は、前記認証装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記ユーザ側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記認証装置で当該ユーザ装置が正当であると判定された後に前記認証装置から受付けた暗号化データを復号化するようになっている、ユーザ装置、との組合わせにより構成するものであり、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段と、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記ユーザ側解発生手段で用いられるものと同じ初期解を用いれば、前記ユーザ側解発生手段と同じ解を生成できる制御手段を備えている前記認証装置にて実行される方法である。
そして、その方法は、前記ユーザ装置から、そのユーザ装置のＩＤと、前記初期解又は当該初期解に基づいて生成した解を受信する過程、前記ユーザ装置から受付けたＩＤと同じＩＤに対応付けられた前記初期解又は当該初期解から発生させられた解を前記認証側記録手段から読出して、当該初期解又は解に基づいて解を生成する過程、生成された解が前記ユーザ装置から受付けた解と等しいか否か判定しそれらが一致する場合には、当該ユーザ装置が正当なものであると判定する過程、当該ユーザ装置が正当なものであると判定された場合、前記ユーザ装置から受信した前記初期解又は当該初期解に基づいて生成した解を初期解として、前記ユーザ装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して、前記送信対象データを暗号化する過程、を含んでいる。
認証装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ）によっても、認証装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができるものであり、複数のユーザ装置の正当性を認証することのできる認証装置と、その正当性が前記認証装置で認証された場合に前記暗号化データを前記認証装置から前記ネットワークを介して受取ることができる複数のユーザ装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされたユーザ側解発生手段と、前記ユーザ側解発生手段が発生させた前記解を使用して、前記認証装置で暗号化された暗号化データを復号化する復号化手段と、そのユーザ装置のＩＤを記録しているユーザ側記録手段と、前記認証装置と前記ネットワークを介して通信を行うユーザ側通信手段と、前記暗号化データの送受信が行われる場合に、前記ＩＤと、前記初期解又は当該初期解に基づいて生成された解とを前記認証装置に送信する手段と、を有しているとともに、前記ユーザ側解発生手段は、前記認証装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記復号化手段は、前記ユーザ側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記認証装置で当該ユーザ装置が正当であると判定された後に前記認証装置から受付けた暗号化データを復号化するようになっている、ユーザ装置、との組合わせにより構成するものであり、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段と、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記ユーザ側解発生手段で用いられるものと同じ初期解を用いれば、前記ユーザ側解発生手段と同じ解を生成できる制御手段を備えている前記認証装置の前記制御装置に、前記ユーザ装置から、そのユーザ装置のＩＤと、前記初期解又は当該初期解に基づいて生成した解を受信する過程、前記ユーザ装置から受付けたＩＤと同じＩＤに対応付けられた前記初期解又は当該初期解から発生させられた解を前記認証側記録手段から読出して、当該初期解又は解に基づいて解を生成する過程、生成された解が前記ユーザ装置から受付けた解と等しいか否か判定しそれらが一致する場合には、当該ユーザ装置が正当なものであると判定する過程、当該ユーザ装置が正当なものであると判定された場合、前記受信装置から受信した前記初期解又は当該初期解に基づいて生成した解を初期解として、前記ユーザ装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して、前記送信対象データを暗号化する過程、を実行させるためのコンピュータプログラムである。
【００２０】
本願は、以上の送受信システムに含まれうるユーザ装置をも本願の第２発明の１つとして提案する。
このユーザ装置と同様の作用効果を、以下の方法によって得ることができる。
その方法は、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができるものであり、複数のユーザ装置の正当性を認証することのできる認証装置と、その正当性が前記認証装置で認証された場合に前記暗号化データを前記認証装置から前記ネットワークを介して受取ることができる複数のユーザ装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する認証側解発生手段と、前記認証側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段と、前記ユーザ装置と前記ネットワークを介して通信を行う認証側通信手段と、前記ユーザ装置の正当性を判定する認証手段と、前記暗号化データの送受信が行われる場合に、前記ＩＤと、前記初期解又は当該初期解に基づいて生成された解とを前記ユーザ装置から受付る手段と、を備えており、前記認証側解発生手段は、前記ＩＤと前記解とが受付けられた場合、前記ユーザ装置から受付けたＩＤと同じＩＤに対応付けられた前記初期解又は当該初期解から発生させられた解を前記認証側記録手段から読出して、当該初期解又は解に基づいて解を生成するようになっており、前記認証手段は、前記認証側解発生手段が生成した解が前記ユーザ装置から受付けた解と等しいか否か判定しそれらが一致する場合には、当該ユーザ装置が正当なものであると判定するようになっており、前記認証側解発生部は、前記ユーザ装置が正当なものであると判定された場合、前記ユーザ装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記認証側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記認証装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記認証側解発生手段で用いられるものと同じ初期解を用いれば、前記認証側初期解発生手段と同じ解を生成できる制御手段を備えている前記ユーザ装置にて実行される方法である。
そして、その方法は、前記制御手段が、前記認証装置に、そのユーザ装置のＩＤと、前記初期解又は当該初期解に基づいて生成した解を送信する過程、前記認証装置から、前記暗号化データを受信する過程、前記認証装置に送信した前記初期解又は当該初期解に基づいて生成した解を初期解にして、前記認証装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して、前記暗号化データを復号化する過程、を含んでいる。
ユーザ装置は、例えば以下のコンピュータプログラムにより実現することができる。このコンピュータプログラムを用いることにより、汎用的なコンピュータ（例えば、パーソナルコンピュータ、携帯電話）によっても、ユーザ装置と同様の作用効果を得られることになる。
そのコンピュータプログラムは、送信の対象となるデータである送信対象データを暗号化した暗号化データを所定のネットワークを介して送信することができるものであり、複数のユーザ装置の正当性を認証することのできる認証装置と、その正当性が前記認証装置で認証された場合に前記暗号化データを前記認証装置から前記ネットワークを介して受取ることができる複数のユーザ装置と、を含んでいる送受信システムを、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生する認証側解発生手段と、前記認証側解発生手段が発生させた前記解を使用して、前記送信対象データを暗号化して暗号化データにする暗号化手段と、各ユーザ装置に固有の情報であるＩＤと、各ユーザ装置に固有の各ユーザ装置毎の初期解又は当該初期解から作られた解とを対応付けて記録している認証側記録手段と、前記ユーザ装置と前記ネットワークを介して通信を行う認証側通信手段と、前記ユーザ装置の正当性を判定する認証手段と、前記暗号化データの送受信が行われる場合に、前記ＩＤと、前記初期解又は当該初期解に基づいて生成された解とを前記ユーザ装置から受付る手段と、を備えており、前記認証側解発生手段は、前記ＩＤと前記解とが受付けられた場合、前記ユーザ装置から受付けたＩＤと同じＩＤに対応付けられた前記初期解又は当該初期解から発生させられた解を前記認証側記録手段から読出して、当該初期解又は解に基づいて解を生成するようになっており、前記認証手段は、前記認証側解発生手段が生成した解が前記ユーザ装置から受付けた解と等しいか否か判定しそれらが一致する場合には、当該ユーザ装置が正当なものであると判定するようになっており、前記認証側解発生部は、前記ユーザ装置が正当なものであると判定された場合、前記ユーザ装置との間で取決められていた所定数の解を生成するようになっているとともに、所定数の解の最後の解を新たな初期解として解を発生させるようになっており、前記暗号化手段は、前記認証側解発生手段が所定数の解の最後の解を新たな初期解として発生させた解を使用して前記送信対象データを暗号化するようになっている、前記認証装置、との組合わせにより構成するものであり、所定のデータである初期解に基づいて、前記初期解に依存し、前記初期解によって一義的に決定される解を連続して発生するものとされ、前記認証側解発生手段で用いられるものと同じ初期解を用いれば、前記認証側初期解発生手段と同じ解を生成できる制御手段を備えている前記ユーザ装置の前記制御装置に、前記認証装置に、そのユーザ装置のＩＤと、前記初期解又は当該初期解に基づいて生成した解を送信する過程、前記認証装置から、前記暗号化データを受信する過程、前記認証装置に送信した前記初期解又は当該初期解に基づいて生成した解を初期解にして、前記認証装置との間で取決められていた所定数の解を生成する過程、所定数の解の最後の解を新たな初期解として発生させた解を使用して、前記暗号化データを復号化する過程、を実行させるためのコンピュータプログラムである。
【図面の簡単な説明】
【００２１】
【図１】第１実施形態の送受信システムの全体構成を示す図。
【図２】図１に示した送受信システムに含まれる通信装置のハードウエア構成を示す図。
【図３】図１に示した送受信システムに含まれる通信装置の暗号化通信部の構成を示すブロック図。
【図４】図３に示した暗号化通信部に含まれる暗号化・復号化部の構成を示すブロック図。
【図５】図１に示した送受信システムで送信時に実行される処理の流れを示す流れ図。
【図６】第２実施形態の送受信システムの全体構成を示す図。
【図７】図６に示した送受信システムに含まれる認証装置のハードウエア構成を示す図。
【図８】図６に示した送受信システムに含まれる認証装置の暗号化通信部の構成を示すブロック図。
【図９】図８に示した初期共通データ群記録部に記録されているデータの例を示すブロック図。
【図１０】図６に示した送受信システムで送信時に実行される処理の流れを示す流れ図。
【発明を実施するための形態】
【００２２】
以下、本発明の第１及び第２実施形態について説明する。
両実施形態において、重複する対象には同一の符号を付すものとし、重複する説明は場合により省略するものとする。
【００２３】
≪第１実施形態≫
この実施形態による送受信システムは、概略で図１に示したように構成される。
この送受信システムは、通信装置１−１、通信装置１−２、通信装置１−３……、通信装置１−ＮのＮ個の通信装置１を含んでいる。通信装置１は、所定のネットワーク３にて互いに接続されている。ネットワーク３は、これには限られないが、この実施形態ではインターネットである。ネットワーク３は、ＬＡＮ等のインターネット以外のものによって構成されていてもよいし、インターネット以外のものを含んでいてもよい。
【００２４】
通信装置１は、コンピュータを含んでいる。通信装置１−１〜１−Ｎは、互いにデータの送受信を行えるようにされている。本願の第１発明との関係でいえば、この実施形態におけるすべての通信装置１は、送信装置と受信装置を兼ねているということになる。通信装置１が相互に送受信するデータは、どのようなものであっても構わない。
この限りではないが、この実施形態における通信装置１は、汎用のパーソナルコンピュータである。通信装置１は、携帯電話によっても構成され得る。
この実施形態では、通信装置１−１〜１−Ｎのそれぞれの間で送受信されるデータは、この限りではないが、電子メールのデータである。この実施形態では、通信装置１−１〜１−Ｎのそれぞれの間で、電子メールを暗号化して送受信する。通信装置１は、必ずしもこの限りではないが、本実施形態においては、送受信するデータをパケットに分割して、パケット通信を行う。
【００２５】
次に、通信装置１の構成を説明する。各通信装置１−１〜１−Ｎの構成は、本願第１発明との関連でいえば同じであるといえる。
【００２６】
各通信装置１−１〜１−Ｎに共通する通信装置１のハードウエア構成を、図２に示す。
通信装置１は、この実施形態では、ＣＰＵ（central processing unit）２１、ＨＤＤ（hard disc drive）２２、ＲＯＭ（read only memory）２３、ＲＡＭ（random access memory）２４、入力装置２５、表示装置２６、暗号化通信部２７、及びバス２８を含む構成とされている。ＣＰＵ２１、ＨＤＤ２２、ＲＯＭ２３、ＲＡＭ２４、入力装置２５、表示装置２６、暗号化通信部２７は、バス２８を介してデータの交換が可能とされている。
ＲＯＭ２３には、所定のプログラムやそのプログラムを実行するために必要なデータ等が記録されている。このプログラムには、本発明のプログラムも含まれている。なお、本発明のプログラムは、ＯＳ等の他のプログラム又は他のデータとの協働で、後述する処理を実行するようなものとなっていてもよい。また、このプログラムは、通信装置１の出荷時から通信装置１に搭載されていてもよく、通信装置１の出荷後に例えばユーザの手によりインストールされたものでもよい。通信装置１にプログラムがインストールされる場合、プログラムは所定の記録媒体から通信装置１にインストールされてもよいし、ネットワークを介しての配信によってインストールされてもよい。なお、ＲＯＭ２３に記録されるプログラム、データ等の一部はＨＤＤ２２に記録されていてもよい。
ＨＤＤ２２は、大容量の記録媒体である。ＨＤＤ２２は、上述したように、ＲＯＭ２３の機能の一部を肩代わりすることができる。また、ＲＡＭ２４の機能の一部を肩代わりすることができる。ＨＤＤ２２には、また、ＲＯＭ２３、ＲＡＭ２４に記録されていないプログラム、データが記録される。例えば、ＨＤＤ２２には、この実施形態では、通信装置１を制御するＯＳのプログラムが記録されている。
ＣＰＵ２１は、通信装置１全体の制御を行うものであり、ＲＯＭ２３に記憶されたプログラムやデータに基づいて、後述する処理を実行する。ＲＡＭ２４は、ＣＰＵ２１が後述する処理を行う際の作業用記憶領域として用いられる。また、ＲＡＭ２４には、後述する初期解が必要に応じて記録されるようになっている。
入力装置２５は、少なくとも通信装置１が他の通信装置１と通信を行う際に必要な入力を行えるようなものとなっている。入力装置２５は、この限りではないが、キーボードとマウスによって構成できる。入力装置２５にその他の公知の入力手段を採用することができるのは当然である。
表示装置２６は、例えばＬＣＤ（liquid crystal display）により構成されている。表示装置２６は、入力装置２５から入力された内容や、通信装置１で実行されている処理の内容などが表示されるようになっている。表示装置２６として、ＣＲＴ（cathode ray tube）、有機ＥＬ（electro luminescence）パネル等の公知の表示手段を採用できるのは言うまでもない。
暗号化通信部２７は、ネットワーク３を介しての通信を行うものである。暗号化通信部２７は、送受信のいずれの場合でも、暗号化されたデータによる暗号化通信を行うことができる。ある通信装置１の暗号化通信部２７は、他の通信装置の暗号化通信部２７と暗号化データの送受信を行える。なお、暗号化通信部２７が行う暗号化通信の詳細は追って説明する。
【００２７】
次に、暗号化通信部２７の構成について説明する。図３に、暗号化通信部２７のブロック構成図を示す。なお、暗号化通信部２７の機能の一部は、上述のプログラムの機能によって形成されていてもよい。この実施形態では、そうされている。
暗号化通信部２７は、インタフェイス部３１、前処理部３２、暗号化・復号化部３３、共通データ生成部３４、共通データ記録部３４Ａ、アルゴリズム生成部３５、鍵生成部３６、通信部３７、ヘッダ生成部３８、及び接続部３９から構成されている。
なお、通信装置１は、データを送信する送信装置としても、データを受信する受信装置としても機能する場合があり、暗号化通信部２７、インタフェイス部３１、前処理部３２、暗号化・復号化部３３、共通データ生成部３４、アルゴリズム生成部３５、鍵生成部３６、通信部３７、ヘッダ生成部３８、及び接続部３９の機能は、通信装置１が送信装置として機能する場合と、受信装置として機能する場合で異なる場合がある。そこで、以下の説明では、前者の場合を『送信時』、後者の場合を『受信時』と表現して、両者を分けて説明する。
【００２８】
インタフェイス部３１は、バス２８と暗号化通信部２７との間におけるデータのやりとりを行うものである。
送信時において、インタフェイス部３１は以下のように機能する。インタフェイス部３１は、バス２８から受付けたデータ（例えば、後述する電子メールのデータ）を前処理部３２に送るようになっている。インタフェイス部３１は、また、音声データをバス２８から受付けると、その旨を、共通データ生成部３４に通知するようになっている。
他方、インタフェイス部３１は、受信時には、以下のように機能する。インタフェイス部３１は、他の通信装置１からネットワーク３を介して受付けたデータ（例えば、後述する電子メールのデータ）を、バス２８に送る機能を有している。
【００２９】
送信時において、前処理部３２は、インタフェイス部３１を介してバス２８から受取ったデータ（例えば、電子メールのデータ）を所定のビット数毎に切断してパケットとするようになっている。前処理部３２は、生成したパケットを、暗号化・復号化部３３に送るようになっている。
受信時において、前処理部３２は、以下のように機能するようになっている。前処理部３２は、相手方の通信装置１からのパケットの羅列とされた電子メールのデータを通信部３７を介して受付けた場合には、それを暗号化・復号化部３３に送るようになっている。前処理部３２は、また、相手方の通信装置１から通信部３７を介してデータを受付けた場合には、その旨を共通データ生成部３４に通知するようになっている。
【００３０】
共通データ生成部３４は、共通データを順次生成するものである。この共通データは、本願発明でいう『解』に当たる。共通データ生成部３４は、その意味で、送信時には本願における送信側解発生手段として、受信時には本願における受信側解発生手段として機能する。なお、実施形態の説明では、『解』と『共通データ』は同義である。
共通データは、初期解（初期共通データ）に基づいて生成される。共通データは、例えば、１、２、３…などと連続する数字などでもよい。この実施形態では、共通データは、その共通データ生成部３４で生成された過去の解に基づいて連続して生成される。この実施形態では、連続して複数生成される共通データは、必ずしもこの限りではないが非線形遷移する擬似乱数となり、カオス的な振舞いを見せる。共通データ記録部３４Ａには、少なくとも最初の通信が行われる前の状態では、共通データを生成するために必要な初期解のデータが記録されている。また、共通データ記録部３４Ａには、共通データを生成するために必要となる過去に生成された共通データが必要に応じて記録されるようになっている。共通データ記録部３４Ａに対する共通データの書込、更新は、共通データ生成部３４が行うようになっている。
通信装置１同士で通信が行われる場合、共通データは、初期解が同じ場合には、同じ順番で生成された共通データ同士を比較すると、通信が行われる双方の通信装置１で共通したものとなるようになっている。この仕組みについては追って説明する。
共通データ生成部３４は、他の通信装置１への電子メールのデータの送信時においては、電子メールのデータを受取った旨の通知をインタフェイス部３１から受取った場合に、他の通信装置１からの受信時においては電子メールのデータを受取った旨の通知を前処理部３２から受取った場合にそれぞれ、共通データの生成を開始する。
生成された共通データは、送信時の場合も、受信時の場合も同じく、前処理部３２と、暗号化・復号化部３３と、アルゴリズム生成部３５と、鍵生成部３６とに送られるようになっている。なお、共通データ生成部３４は、送信時においては、解を連続して生成するために用いる初期解のデータを、通信部３７に送り、通信部３７を介して受信側の通信装置１に送るようになっている。
なお、擬似乱数である共通データを、２つの通信装置１、即ち送信側の通信装置１と受信側の通信装置１という離れた場所にある装置の内部で、同じように生成するための仕組みについては追って詳述することとする。
【００３１】
暗号化・復号化部３３は、送信時においては、前処理部３２から受付けたデータ（例えば、電子メールのデータ）を暗号化して暗号化データにし、受信時においては、前処理部３２から受付けた暗号化データを復号化して共通データに戻す機能を有している。
暗号化・復号化部３３は、図４に示すように暗号化部３３Ａ、復号化部３３Ｂを備えており、暗号化部３３Ａが暗号化の処理を、復号化部３３Ｂが復号化の処理をそれぞれ実行するようになっている。暗号化部３３Ａが暗号化して生成した暗号化データは、接続部３９に送られるようになっている。復号化部３３Ｂが復号化して生成したデータは、インタフェイス部３１に送られるようになっている。
暗号化・復号化部３３の暗号化部３３Ａと復号化部３３Ｂはともに、暗号化又は復号化の処理を行う際に、アルゴリズムと鍵を用いる。そのアルゴリズムと鍵を暗号化・復号化部３３に供給するのが、アルゴリズム生成部３５と、鍵生成部３６である。
【００３２】
アルゴリズム生成部３５は、共通データ生成部３４から受付けた共通データに基づいてアルゴリズムを生成するものである。生成されたアルゴリズムは、アルゴリズム生成部３５から、暗号化・復号化部３３に送られるようになっている。
鍵生成部３６は、共通データ生成部３４から受付けた共通データに基づいて鍵を生成するものである。鍵は、鍵生成部３６から、暗号化・復号化部３３に送られるようになっている。
必ずしもそうである必要はないが、この実施形態では、アルゴリズム生成部３５、鍵生成部３６はともに、共通データ生成部３４から共通データを受付けるたびに、アルゴリズム又は鍵を生成するようになっている。アルゴリズムと鍵の生成の仕方の詳細については後述する。
【００３３】
ヘッダ生成部３８は、送信時にのみ機能するものであり、暗号化・復号化部３３で暗号化され暗号化データとされたパケットのそれぞれに付すヘッダのデータを生成するものである。ヘッダには、例えば、送信元の通信装置１を特定するための情報、送信先の通信装置１を特定するための情報、そのヘッダが付されたパケットに含まれるデータの量等の一般的に必要な情報が含まれている。ヘッダ生成部には、ヘッダに含めるべきデータがどこかから、例えば、インタフェイス部３１から予め送られるようになっている。ヘッダ生成部３８は、生成したヘッダのデータを、接続部３９に送るようになっている。接続部３９は、送信時にのみ機能するものであり、暗号化・復号化部３３から送られて来た暗号化されたパケットに（例えば、パケットの先頭に）、ヘッダ生成部３８で生成されたヘッダを一体化させる機能を有する。
【００３４】
通信部３７は、ネットワーク３との間でデータのやり取りを行うものである。
送信時において、通信部３７は、ヘッダを付されたパケットの羅列とされたデータを接続部３９から受付け、それをネットワーク３を介して他の通信装置１に送るようになっている。送信時においては、通信部３７は、共通データ生成部１３４から受取った初期解のデータを受信側の通信装置１にネットワーク３を介して送るようになっている。
受信時において、通信部３７は、通信装置１から、電子メールのデータを受付けるようになっている。通信部３７は、このデータを、前処理部３２に送るようになっている。受信時において、通信部３７は、送信側の通信装置１から初期解のデータをネットワーク３を介して受付けるようになっている。通信部３７は、送信側の通信装置１から受付けた初期解のデータを共通データ生成部３４に送るようになっている。
【００３５】
次に、この送受信システムで実行される処理の流れについて、図５を用いて説明する。
【００３６】
この通信システムで通信が行われる場合、まず、送信側となる通信装置１の一つが、通信の相手方となる他の通信装置１を特定する情報を含むものであり、他の通信装置１との通信を要求するデータを含む電子メールのデータを生成する（Ｓ１０１）。
具体的には、通信装置１を持つユーザは、自分の通信装置１の入力装置２５を操作して、通信の相手方となる他の通信装置１を特定するための情報（これは、例えば、当該他の通信装置１で使用することのできる電子メールアドレスである。）を入力し、また、送信する対象となるコンテンツのデータを入力することにより電子メールのデータを作成する。電子メールのデータは、例えば、ＨＤＤ２２等に記録されていた電子メールのメーラの既知のプログラムの機能によって生成される。生成された電子メールのデータは後で暗号化されるが、この実施形態では、暗号化される前に一旦ＨＤＤ２２に記録される。
【００３７】
次いで、送信側の通信装置１は、これから電子メールを暗号化するために用いられる初期解を、受信側の通信装置１に送る（Ｓ１０２）。
次いで、送信側の通信装置１は、ＨＤＤ２２に記録されている上述の電子メールのデータを暗号化する（Ｓ１０３）。
次いで、送信側の通信装置１は、暗号化した電子メールのデータを、受信側の通信装置１にネットワーク３を介して送る（Ｓ１０４）。
【００３８】
Ｓ１０２〜Ｓ１０４の処理について、以下詳述する。
電子メールのデータは、受信側の通信装置１への送信に先立って、ＣＰＵ２１からの指示に基づいてＨＤＤ２２からバス２８を介して暗号化通信部２７に送られる。電子メールのデータは、暗号化通信部２７にて暗号化される。
電子メールのデータは、暗号化通信部２７のインタフェイス部３１が受取る。インタフェイス部３１は、通信要求データを前処理部３２に送るとともに、電子メールのデータを受取ったことを、共通データ生成部３４に通知する。
前処理部３２は、電子メールのデータを、所定のビット数毎に切断して、多数のパケットを生成する。必ずしもこの限りではないが、この実施形態では、データの並び方の前後が入れ替わらないように、通信要求データは前から順に切断されていく。なお、必ずしもそうする必要はないが、この実施形態の前処理部３２は、各パケットに含まれるデータの大きさが同じになるようにして、通信要求データを切断するようになっている。前処理部３２で生成されたパケットは、暗号化・復号化部３３に送られる。
他方、上述の通知をインタフェイス部３１から受取った共通データ生成部３４は、共通データの生成を行う。
共通データ生成部３４における共通データの生成は、以下のようにして行われる。共通データ生成部３４は、通信要求データを分割して前処理部３２で生成されたパケットと同じ数だけ、共通データを生成する。なお、これには限られないが、この実施形態における共通データは８行８列の行列（Ｘ）である。共通データ生成部３４は、必ずしもそうなっている必要はないが、この実施形態では、上述したように、共通データを、非線形遷移する擬似乱数として発生させる。
非線形遷移するように共通データを連続して発生させるには、例えば、（１）共通データの生成の過程に、過去の共通データのべき乗の演算を含める、（２）共通データの生成の過程に、過去の２つ以上の共通データの掛け合わせを含める、或いは、（１）と（２）を組み合わせるなどの手法が考えられる。
この実施形態では、共通データ記録部３４Ａには、初期解（初期共通データ）である初期行列として、第０１共通データ（Ｘ０１）と第０２共通データ（Ｘ０２）を予め記録されている（第０１共通データと第０２共通データは、ＲＯＭ２３などに予め記録されていてもよい。）。なお、必ずしもこの限りではないが、この実施形態では、各通信装置１が有する初期行列は互いにユニークなものとされている。
【００３９】
共通データ生成部３４は、この初期行列を、共通データ記録部３４Ａより読出して、共通データの生成に用いる。なお、共通データ生成部３４は、共通データ記録部３４Ａから読出した初期共通データを、それに基づいて共通データの生成を行う前に通信部３７に送る。通信部３７はそれをネットワーク３を介して、受信側の通信装置１に送る。送信された初期共通データは受信側の通信装置１で後述するようにして暗号化された電子メールのデータを復号化するために用いられるので、初期共通データは受信側の通信装置１でかかる復号化が行われる際に受信側の通信装置１が受取れるような適当なタイミングで、受信側の通信装置１に送るようにすればよい。
続けて、共通データ生成部３４は、通信部３７に送ったものと同じ初期共通データを用いて共通データを連続的に生成する。共通データの生成は、初期共通データを、共通データ生成部３４が保持している共通データ生成用アルゴリズムに代入することにより行う。
初期共通データから、第１共通データ（Ｘ１）が以下のように生成される。
第１共通データ（Ｘ１）＝Ｘ０２Ｘ０１＋α（α＝８行８列の行列）
これが最初に生成される共通データである。
ここで、αは、環境情報である。ただし、環境情報は、必ずしも必要なものではない。αは、例えば、その日の日付や、送信側の通信装置１で用いられている電子メールアドレス等の適当な情報を、適当なルールにしたがって２進法に表示しなおした場合の「１」、「０」で表されるデータ列を、８行８列の行列の要素に順に当てはめたものとされる。なお、その日の日付け等を２進法に表示しなおした場合の「１」、「０」で表されるデータ列を作る数字が８行８列の行列の要素の数である６４個に満たない場合には、例えば、その６４個に満たない「１」、「０」の数字で構成されるデータ列を繰り返して用いることによりαを作ればよいし、データ列を作る数字が６４個を超える場合には、例えば不要な数字を削ってαを作ればよい。
共通データ生成部３４は、第２共通データ（Ｘ２）を以下のように生成する。
第２共通データ（Ｘ２）＝Ｘ１Ｘ０２＋α
同様に、共通データ生成部３４は、第３共通データ、第４共通データ、……第Ｎ共通データを、以下のように生成する。
第３共通データ（Ｘ３）＝Ｘ２Ｘ１＋α
第４共通データ（Ｘ４）＝Ｘ３Ｘ２＋α
：
第Ｎ共通データ（ＸＮ）＝ＸＮ−１ＸＮ−２＋α
このようにしてパケットの数と同じ数だけ生成された共通データは、アルゴリズム生成部３５、及び鍵生成部３６に送られるとともに、次の共通データを生成するために共通データ生成部３４で保持されることになる。この実施形態では、第Ｎ共通データ（ＸＮ）を生成するために、第Ｎ−１共通データ（ＸＮ−１）と第Ｎ−２共通データ（ＸＮ−２）を、つまり、その直前に生成された２つの共通データを用いる。したがって、共通データ生成部３４は、新しい共通データを生成するにあたって、過去に生成された直近２つの共通データを保持していなければならない（又は、共通データ生成部３４ではない他の何者かがこれら２つの共通データを保持していなければならない）。
このように生成される共通データは、非線形遷移するカオス的なものとなり、擬似乱数となる。
なお、環境情報であるαは、必ずしも、共通データを発生するすべての場合に用いる必要はない。例えば、第１共通データを生成する場合に、
（Ｘ１）＝Ｘ０２Ｘ０１＋α
というようにαを用い、第２共通データ以降の共通データを生成する場合には、
（ＸＮ）＝ＸＮ−１ＸＮ−２というαを用いない式にを用いるようにしてもよい。
生成される共通データに非線形遷移を起こさせるには、第Ｎ共通データを求める際に、上述した、
第Ｎ共通データ（ＸＮ）＝ＸＮ−１ＸＮ−２（＋α）
という式を用いる他に、以下のような式を用いることが考えられる。
なお、αに付けた括弧書きは、以下に例示される場合も含め、すべての共通データを生成する場合、或いは、第２共通データ以降の共通データを生成する場合に、αが必ずしも必要ではないことを示している。
用いることのできる数式は、例えば、
（ａ）第Ｎ共通データ（ＸＮ）＝（ＸＮ−１）Ｐ（＋α）
（ｂ）第Ｎ共通データ（ＸＮ）＝（ＸＮ−１）Ｐ（ＸＮ−２）Ｑ（ＸＮ−３）Ｒ（ＸＮ−４）Ｓ（＋α）
（ｃ）  第Ｎ共通データ（ＸＮ）＝（ＸＮ−１）Ｐ＋（ＸＮ−２）Ｑ（＋α）
などである。
なお、Ｐ、Ｑ、Ｒ、Ｓはそれぞれ所定の定数である。また、数式（ａ）を用いる場合は１つ、数式（ｃ）を用いる場合には２つ、数式（ｂ）を用いる場合には４つの初期行列を、共通データ記録部３４Ａに記録しておく必要がある。なお、この実施形態では、一連の暗号化或いは復号化の処理が終了し、それ以上の共通データの発生が一旦不要になった場合、最後に発生させられた共通データを、新たな初期行列として、共通データ生成部３４が共通データ記録部３４Ａに上書きするようになっている。
【００４０】
共通データ生成部３４は、以上のようにして共通データを連続的に生成することができる。
ここで、この実施形態の共通データ生成部３４は、送信側の通信装置１と受信側の通信装置１との間で取決められた適当な数の共通データをまず生成する。『送信側の通信装置１と受信側の通信装置１との間で取決められた適当な数』は、すべての通信装置１の間で共通で、且つ固定としておくのがもっとも簡単であるが、必ずしもその限りではない。
例えば、この『数』は、初期共通データが送信側の通信装置１から受信側の通信装置１に送られた時刻、或いは、送信側の通信装置１から受信側の通信装置１に送られた初期共通データの行列内に含まれている数字の和などに基づいて決定するように可変にすることもできる。また、例えば、送信側の通信装置１の電子メールアドレスと受信側の通信装置１の電子メールアドレスを数列化した場合の両者の差等に基づいて上述の『数』を決定することにしておけば、その『数』は、送信側の通信装置１と受信側の通信装置１の組合わせの如何によって変化することになる。これらはいずれも例示であるが、これらの組合せによって上述の『数』を決定するようになっていてももちろん構わない。
簡単のため、『送信側の通信装置１と受信側の通信装置１との間で取決められた適当な数』は、すべての通信装置１の間で共通で、且つ固定されており、その数は１０であるとする。
共通データ記録部３４Ａに記録されていた初期共通データを読出してから１０個の共通データを発生させ、最後に生成した共通データで共通データ記録部３４Ａに記録されていた初期共通データを上書きする。なお、『最後に生成した共通データ』は、以後の共通データの生成に必要な共通データが複数の場合には、複数である場合がある。この実施形態では、第Ｎ共通データ（ＸＮ）＝ＸＮ−１ＸＮ−２（＋α）、という式により共通データを生成するので、共通データ記録部３４Ａに記録されていた初期共通データを読出してから９番目に生成された共通データと１０番目に生成された共通データが共通データ記録部３４Ａに記録されることになる。これが新たな初期共通データとなる。
共通データ生成部３４は、この新たな初期共通データを用いて、上述したのと同じ方法で新たな共通データを生成する。もっとも、共通データ生成部３４は、新たな初期共通データを用いて共通データを生成する場合に用いる数式を、新たな初期共通データを生成する場合に用いた数式とは異なるものとすることができる。その場合には、送信側の通信装置１と受信側の通信装置１で、その決め事を共有しておく必要がある。
共通データ生成部３４は、新たな初期解に基づいて順に生成される共通データを、アルゴリズム生成部３５と鍵生成部３６とに送る。
【００４１】
共通データ生成部３４から共通データを受付けると、アルゴリズム生成部３５はアルゴリズムを、鍵生成部３６は鍵を、それぞれ生成する。
アルゴリズムと鍵の生成の仕方は、例えば、以下のようなものである。アルゴリズムと鍵は、いずれも、この実施形態では、共通データを用いて作られる。
この実施形態において、アルゴリズム生成部３５は、アルゴリズムを以下のようなものとして生成する。
この実施形態におけるアルゴリズムは、『暗号化すべき共通データを８行８列の行列Ｙとした場合に、共通データである８行８列の行列Ｘをａ乗してから、時計周りにｎ×９０°だけ回転させた行列に、Ｙを掛け合わせて求められるものが暗号化データである』と定義される。
ここで、ａは所定の固定された定数とされる場合もあるが、この実施形態では、共通データに基づいて変化する数字である。つまり、この実施形態におけるアルゴリズムは、共通データに基づいて変化する。例えばａは、８行８列の行列である共通データに含まれている行列の要素である数すべてを足し合わせて得られる数を５で割った場合の余り（ただし、余りが０の場合はａ＝１とする）のように定めることができる。
また、上述のｎは、鍵であり、所定の数である。鍵が一定の数であればｎは固定であるが、以下に説明するように、この実施形態では、鍵は共通データに基づいて変化する。つまり、この実施形態では、このｎも共通データに基づいて変化するようになっている。
もっとも、アルゴリズムを他のものとして決定することもできる。また、アルゴリズムは、変化しないもの、即ち固定されたものであってもよい。アルゴリズムの生成は、アルゴリズムを上述のようにして新たに作る場合に限られず、共通データを用いて（例えば共通データの一部に着目して）、予め準備されていた複数のアルゴリズムから１つを選択する場合も含む。
この実施形態では、アルゴリズム生成部３５は、共通データ生成部３４から共通データを受取るたびにアルゴリズムを生成し、それを暗号化・復号化部３３の暗号化部３３Ａに送る。
他方、アルゴリズム生成部３５によるアルゴリズムの生成と並行して、鍵生成部３６が、鍵を生成する。鍵生成部３６は、上述したように、鍵を共通データに基づいて生成する。鍵の生成は、鍵を以下のようにして新たに作る場合に限られず、共通データを用いて（例えば共通データの一部に着目して）、予め準備されていた複数の鍵から１つを選択する場合も含む。
この実施形態においては、鍵生成部３６は、鍵を以下のようなものとして生成する。
この実施形態における鍵は、８行８列の行列である共通データに含まれている行列の要素である数すべてを足し合わせて得られる数とされる。したがって、鍵は、この実施形態では、共通データに基づいて変化する。なお、鍵を他のものとして決定することもできる。例えば、鍵は、８行８列の行列である共通データに含まれている行列の要素である数すべてを掛け合わせて得られる数の下２桁と定義することができる。
この実施形態では、鍵生成部３６は、共通データ生成部３４から共通データを受取るたびに鍵を生成し、それを暗号化・復号化部３３の暗号化部３３Ａに送る。
【００４２】
暗号化部３３Ａは、アルゴリズム生成部３５から受付けたアルゴリズムと、鍵生成部３６から受付けた鍵に基づいて、前処理部３２から受付けたデータを暗号化する。ここで、暗号化されるのは、上述したように、電子メールのデータを切断して作られたパケットである。
アルゴリズムは、上述したように、『暗号化すべき共通データを８行８列の行列Ｙとした場合に、共通データである８行８列の行列Ｘをａ乗してから、時計周りにｎ×９０°だけ回転させた行列に、Ｙを掛け合わせて求められるものが暗号化データである』という決まりであり、鍵であるｎは、上述したような方法で決定された数である。
例えば、ａが３、ｎが６である場合には、Ｘを３乗して得られる８行８列の行列を、６×９０°＝５４０°だけ時計回りに回転させることによって得られた８行８列の行列に、暗号化すべき共通データを掛け合わせて暗号化が行われる。
これにより生成されたデータが、暗号化データである。
暗号化データは接続部３９に送られる。
暗号化データが生成されるたびに、ヘッダ生成部３８は暗号化データのヘッダとなるデータであるヘッダデータを生成する。ヘッダには上述の如き情報が含まれる。ヘッダには、少なくとも、そのパケットの送信先がどの通信装置１であるかという情報と、そのパケットの送信元が通信装置１のうちのどれかということを特定する情報が含まれる。なお、暗号化部３３Ａで生成された暗号化データの数と、ヘッダ生成部３８で生成されるヘッダデータの数を揃えるには、例えば、暗号化部３３Ａからヘッダ生成部３８に、暗号化部３３Ａでパケットの暗号化が行われる度にその旨を通知する、或いは暗号化部３３Ａが暗号化を行った回数を通知する等すればよい。その他、前処理部３２が、生成したパケットの数をヘッダ生成部３８に通知するようにしても構わない。
ヘッダ生成部３８は、生成したヘッダを、接続部３９に送る。
接続部３９は、暗号化部３３Ａから受取った暗号化データ（暗号化されたパケット）の先頭に、ヘッダ生成部３８から受付けたヘッダを接続する。接続部３９は、この処理をすべてのパケットに対して行う。
ヘッダを接続されたパケットは、接続部３９から通信部３７に送られる。
通信部３７は、そのパケットを、ネットワーク３を介して受信側の通信装置１に送る。ヘッダに書き込まれた情報にしたがって、各パケットは正しい通信装置１に送られることになる。
【００４３】
上述したようにして、送信側の通信装置１から受信側の通信装置１に初期共通データが送られる。送られた初期共通データは、受信側の通信装置１に受取られることになる（Ｓ２０１）。
上述したようにして、送信側の通信装置１から受信側の通信装置１に暗号化された電子メールのデータがパケット化されて送られる。送られた電子メールのデータは、受信側の通信装置１に受取られることになる（Ｓ２０２）。
初期共通データと電子メールのデータはともに、受信側の通信装置１の暗号化通信部２７に含まれている通信部３７により、受取られる。
【００４４】
次いで、受信側の通信装置１は、電子メールのデータを復号化する（Ｓ２０３）。
かかる復号化は、暗号化通信部２７で行われる。
通信部３７は、受取ったパケットを次々に前処理部３２に送る。前処理部３２は、パケットを受取ると、各パケットからヘッダを削除し、パケットを受取ったという通知を共通データ生成部３４に送る。
【００４５】
パケットを受取ったという通知を前処理部３２から受取ると、共通データ生成部３４は共通データを生成する。
共通データ生成部３４での共通データの生成の仕方は、上述した送信時の場合と変わらない。つまり、この実施形態では、初期共通データと、環境情報とを用いて共通データが生成される。
共通データ生成部３４が用いる初期共通データは、送信側の通信装置１から送られて来たものである。この初期共通データは、送信側の通信装置１からそれを受取った通信部３７から共通データ生成部３４を経て共通データ記録部３４Ａに記録されている。
受信側の通信装置１の共通データ生成部３４は、送信側の通信装置の共通データ生成部３４がそうしたように、送信側の通信装置１と受信側の通信装置１との間で予め取決められていた数（１０個）の共通データを送信側の通信装置１から受取った初期共通データに基づいて生成し、それを共通データ記録部３４Ａに記録する。そして、共通データ記録部３４Ａは、その際に最後に生成した９番目と１０番目の共通データを新たな初期共通データとし、それら新たな初期共通データに基づいて、共通データを連続的に生成する。
新たな共通データに基づいて生成された共通データは、共通データ生成部３４から、アルゴリズム生成部３５と鍵生成部３６とに送られる。
【００４６】
アルゴリズム生成部３５と鍵生成部３６は、共通データを共通データ生成部３４から受付ける度に、アルゴリズムと鍵を生成する。アルゴリズムと鍵の生成の仕方は、送信時と同様である。
アルゴリズム生成部３５は、アルゴリズムを生成する際に共通データを使用する。受信側の通信装置１のアルゴリズム生成部３５がアルゴリズムを生成する過程は、送信側の通信装置１のアルゴリズム生成部３５がアルゴリズムを生成する過程と同じである。送信側の通信装置１と受信側の通信装置１で同じ順番で生成されるアルゴリズムは、同じ共通データに基づいて生成されることになるので、常に同じになるようになっている。
他方、鍵生成部３６は、鍵を生成する際に共通データを使用する。受信側の通信装置１の鍵生成部３６が鍵を生成する過程は、送信側の通信装置１の鍵生成部３６が鍵を生成する過程と同じである。送信側の通信装置１と受信側の通信装置１で同じ順番で生成される鍵は、同じ共通データに基づいて生成されることになるので、常に同じになるようになっている。
アルゴリズム生成部３５と鍵生成部３６は、生成したアルゴリズム又は鍵を暗号化・復号化部３３の復号化部３３Ｂに送る。
復号化部３３Ｂは、前処理部３２から受取った暗号化データを復号化する。かかる復号化を行う際、復号化部３３Ｂは、アルゴリズム生成部３５と鍵生成部３６から受取ったアルゴリズムと鍵を用いる。
より詳細には、復号化部３３Ｂは、アルゴリズム生成部３５から受付けたアルゴリズム（『暗号化すべき共通データを８行８列の行列Ｙとした場合に、共通データである８行８列の行列Ｘをａ乗してから、時計周りにｎ×９０°だけ回転させた行列に、Ｙを掛け合わせて求められるものが暗号化データである。』という定義）に基づいて、復号化処理を行うためのアルゴリズム（『暗号化データを８行８列の行列Ｚと見た場合に、共通データである８行８列の行列Ｘをａ乗してから、時計周りにｎ×９０°だけ回転させた行列の逆行列に、Ｙを掛け合わせて求められるものが暗号化前の平文のデータである』という定義）を生成し、鍵生成部３６から受取った鍵を用いて上述の定義にしたがった演算を行うことで、復号化の処理を行う。
こうして、復号化部３３Ｂでは、前処理部３２から送られた暗号化データを順番に復号化し、パケットに分割されている電子メールのデータを復号化する。
【００４７】
復号化部３３Ｂは、復号化した電子メールのデータを一まとめにしてインタフェイス部３１に送る。このデータは、必要に応じて、ＨＤＤ２２、ＲＡＭ２４等に記録され、受信側の通信装置１で適宜使用される。
【００４８】
＜変形例＞
第１実施形態では、送信側の通信装置１から受信側の通信装置１に初期共通データが送信された。
しかしながら、初期共通データは、受信側の通信装置１から送信側の通信装置１に送られるようになっていても構わない。
この場合には、例えば、送信側の通信装置１から受信側の通信装置１に電子メールのデータが送られるに先立って、送信側の通信装置１から受信側の通信装置１に、電子メールの受取りを要求する受信要求が送られる。そして、これを受取った受信側の通信装置１が、その共通データ記録部３４Ａに記録されていた初期共通データを共通データ生成部３４、通信部３７、及びネットワーク３を介して、送信側の通信装置１に送る。このようにすれば、送信側の通信装置１と受信側の通信装置１が共通した初期共通データを持てるようになる。
送信側の共通データ生成部３４と受信側の共通データ生成部３４は、受信した又は送信した初期共通データに基づいて新しい初期共通データを生成し、新しい初期共通データに基づいて暗号化又は復号化に用いられる共通データを生成すればよい。
【００４９】
≪第２実施形態≫
第２実施形態の通信システムについて説明する。
第２実施形態の通信システムは、第１実施形態の場合と略同様に構成された通信装置１−１〜通信装置１−Ｎと、認証装置２とを備えている。これらは、互いにネットワーク３で接続可能となっている。
第２実施形態の通信装置１−１〜１−Ｎは、通信装置１−１〜通信装置１−Ｎの相互間での暗号化通信を第１実施形態の場合と同様に行えるようになっている。また、第２実施形態の通信装置１−１〜１−Ｎは、認証装置２とも接続できるようになっている。通信装置１と認証装置２の通信は、後述するように、通信装置１から認証装置２へのデータ送信の場合には平文による通信とされるが、認証装置２から通信装置１へのデータ送信の場合には暗号化通信とされる。なお、認証装置２と通信装置１との間の通信は、この実施形態では、汎用のインターネットブラウザを介しての通信となる。
第２実施形態では、認証装置２は、通信装置１−１〜通信装置１−Ｎの認証を行い、通信装置１−１〜通信装置１−Ｎのうち適切と認証されたものに対してデータ、例えば、動画のコンテンツのデータの送信を行うものとする。
【００５０】
第２実施形態の通信装置１は、第１実施形態の通信装置１と同じように構成されている。ただし、第２実施形態の通信装置１−１〜１−Ｎのそれぞれの共通データ記録部３４Ａに記録されている初期共通データは、互いにユニークなものとなっている。
【００５１】
認証装置２は、第１実施形態の通信装置１と、基本的な部分は同じように構成されている。
【００５２】
次に、認証装置２の構成について説明する。認証装置２は、この限りではないが、この実施形態では、汎用のコンピュータにより構成されている。なお、認証装置２を２つ以上の装置、例えば、後述するコンテンツのデータを送信する送信サーバと、後述する認証処理を行う認証サーバ等に分割して設けることができるのは、公知技術に照らせば当然である。
認証装置２のハードウエア構成を、図７に示す。
認証装置２は、この実施形態では、ＣＰＵ１２１、ＨＤＤ１２２、ＲＯＭ１２３、ＲＡＭ１２４、入力装置１２５、表示装置１２６、暗号化通信部１２７、及びバス１２８を含む構成とされている。ＣＰＵ１２１、ＨＤＤ１２２、ＲＯＭ１２３、ＲＡＭ１２４、入力装置１２５、表示装置１２６、暗号化通信部１２７は、バス１２８を介してデータの交換が可能とされている。
ＣＰＵ１２１、ＨＤＤ１２２、ＲＯＭ１２３、ＲＡＭ１２４、入力装置１２５、表示装置１２６、暗号化通信部１２７、及びバス１２８の機能は、通信装置１のＣＰＵ２１、ＨＤＤ２２、ＲＯＭ２３、ＲＡＭ２４、入力装置２５、表示装置２６、暗号化通信部２７、及びバス２８の機能と略同じである。なお、第２実施形態のＨＤＤ１２２には、上述したコンテンツのデータが記録されている。
ＲＯＭ１２３には、所定のプログラムやそのプログラムを実行するために必要なデータ等が記録されている。プログラムは、本願発明の認証装置の機能を認証装置２に与えるためのプログラムを含んでいる。このプログラムには、また、上述のブラウザを実現するためのプログラムが含まれている。これらのプログラムを含め、認証装置２が持つプログラムは、それ単独で実行される場合も、ＯＳ等の他のプログラムと協働して実行される場合もある。
ＣＰＵ１２１は、認証装置２全体の制御を行うものであり、ＲＯＭ１２３に記憶されたプログラムやデータに基づいて、後述する処理を実行する。ＲＡＭ１２４は、ＣＰＵ１２１が後述する処理を行う際の作業用記憶領域として用いられる。また、ＲＡＭ１２４には、後述する初期解が必要に応じて記録されるようになっている。
入力装置１２５は、キーボードとマウスのような公知の入力装置を用いればよい。初期解の入力の際などに用いられる。表示装置１２６は、例えばＬＣＤにより構成されている。もっとも、入力装置１２５と表示装置１２６は、本願の方法の発明が実施されている間に、必ず使用されるというものではない。
暗号化通信部１２７は、ネットワーク３を介して通信装置１との通信を実行するものである。この実施形態では、暗号化通信部１２７が通信装置１とする通信は、上述したように、暗号化通信とされる。
【００５３】
次に、暗号化通信部１２７の構成について説明する。図８に、暗号化通信部１２７のブロック構成図を示す。
なお、以下の説明における『送信時』という言葉は、認証装置２から通信装置１へデータを送信する場合という意味であり、主にコンテンツのデータの送信時という意味である。また、以下の説明における『受信時』という言葉は、認証装置２が通信装置１からデータを受信する場合という意味であり、通信装置１を特定するための情報であるＩＤと初期共通データの受信時という意味である。
暗号化通信部１２７は、インタフェイス部１３１、前処理部１３２、暗号化部１３３、共通データ生成部１３４、初期共通データ群記録部１３４Ａ、アルゴリズム生成部１３５、鍵生成部１３６、通信部１３７、ヘッダ生成部１３８、接続部１３９、認証部Ｃから構成される。インタフェイス部１３１、前処理部１３２、暗号化部１３３、共通データ生成部１３４、アルゴリズム生成部１３５、鍵生成部１３６、通信部１３７、ヘッダ生成部１３８、及び接続部１３９は、通信装置１のインタフェイス部３１、前処理部３２、暗号化・復号化部３３、共通データ生成部３４、アルゴリズム生成部３５、鍵生成部３６、通信部３７、ヘッダ生成部３８、及び接続部３９と略同様の機能を有している。
【００５４】
インタフェイス部１３１は、バス１２８と暗号化通信部１２７との間におけるデータのやりとりを行うものである。
送信時において、インタフェイス部１３１は以下のように機能する。インタフェイス部１３１は、バス１２８から受付けたデータ（この実施形態では、コンテンツのデータ）を前処理部１３２に送るようになっている。インタフェイス部１３１は、また、コンテンツのデータをバス１２８から受付けると、その旨を、共通データ生成部１３４に通知するようになっている。
他方、インタフェイス部１３１は、受信時には、特に機能しない。
【００５５】
前処理部１３２は、送信時においては、インタフェイス部１３１を介してバス１２８から受取ったコンテンツのデータを所定のビット数毎に切断してパケット化するようになっている。前処理部１３２は、生成したパケットを、暗号化部１３３に送るようになっている。
受信時において、前処理部１３２は、通信装置１からの、後述の通信要求データを受付けた場合には、その中からＩＤを抜出して、それを共通データ生成部１３４に送るようになっている。
【００５６】
共通データ生成部１３４は、通信装置１の共通データ生成部３４と同様の方法で共通データを連続的に生成する。共通データ生成部１３４が生成する共通データは、同じ初期共通データを用いれば、通信装置１の共通データ生成部３４が生成したものと同じものとなる。共通データ生成部１３４は、送信時においては、コンテンツのデータを受取った旨の通知をインタフェイス部１３１から受取った場合に、受信時においては音声データを受取った旨の通知を前処理部１３２から受取った場合にそれぞれ、共通データの生成を開始する。
生成された共通データは、送信時の場合、前処理部１３２と、暗号化部１３３と、アルゴリズム生成部１３５と、鍵生成部１３６とに送られるようになっている。受信時の場合、共通データは、認証部Ｃに送られるようになっている。
共通データを生成する場合には、初期共通データ群記録部１３４Ａに記録された各通信装置１毎にユニークな初期共通データが用いられる。初期共通データ群記録部１３４Ａには、各通信装置１毎に割振られたユニークなＩＤと、初期共通データとが、例えば、図９に示されたようにして互いに紐付けた状態で記録されている。なお、各通信装置１についての初期共通データは後述した方法で更新されるが、その管理は共通データ生成部１３４が行う。
【００５７】
暗号化部１３３は、送信時においては、共通データ生成部１３４から受付けたコンテンツのデータを暗号化して暗号化データにする。暗号化部１３３は、受信時においては特に機能しない。暗号化部１３３は、通信装置１の暗号化・復号化部３３の復号化部３３Ｂの機能をなくしたものといってよい。
暗号化部１３３が暗号化して生成した暗号化データは、接続部１３９に送られるようになっている。
暗号化部１３３は、暗号化の処理を行う際に、アルゴリズムと鍵を用いる。そのアルゴリズムと鍵を暗号化部１３３に供給するのが、アルゴリズム生成部１３５と、鍵生成部１３６である。
【００５８】
アルゴリズム生成部１３５は、共通データ生成部１３４から受付けた共通データに基づいてアルゴリズムを生成するものである。生成されたアルゴリズムは、アルゴリズム生成部１３５から、暗号化部１３３に送られるようになっている。
鍵生成部１３６は、共通データ生成部１３４から受付けた共通データに基づいて鍵を生成するものである。鍵は、鍵生成部１３６から、暗号化部１３３に送られるようになっている。
必ずしもそうである必要はないが、この実施形態では、アルゴリズム生成部１３５、鍵生成部１３６はともに、共通データ生成部１３４から共通データを受付けるたびに、アルゴリズム又は鍵を生成するようになっている。
【００５９】
ヘッダ生成部１３８は、送信時にのみ機能するものであり、暗号化部１３３で暗号化され暗号化データとされたパケットのそれぞれに付すヘッダのデータを生成するものである。ヘッダには、例えば、送信元の情報、送信先の情報、そのヘッダが付されたパケットに含まれるデータの量等の一般的に必要な情報が含まれている。ヘッダ生成部１３８は、生成したヘッダのデータを、接続部１３９に送るようになっている。接続部１３９は、送信時にのみ機能するものであり、暗号化部１３３から送られて来た暗号化されたパケットに（例えば、パケットの先頭に）、ヘッダ生成部１３８で生成されたヘッダを一体化させる機能を有する。
【００６０】
通信部１３７は、ネットワーク３との間でデータのやり取りを行うものである。
送信時において、通信部１３７は、ヘッダを付されたパケットの羅列とされたデータを接続部１３９から受付け、それをネットワーク３を介して通信装置１に送る。
受信時において、通信部１３７は、通信装置１から、ＩＤと初期共通データを含んだ送信要求データをネットワーク３を介して受付ける。送信要求データは、通信部１３７から前処理部１３２に送られるが、送信要求データに含まれていた初期共通データは認証部Ｃに送られる。
【００６１】
次に、この送受信システムで実行される処理の流れについて、図９を用いて説明する。
通信装置１−１〜通信装置１−Ｎの相互間での通信は、第１実施形態の場合と同様なので説明を省略し、通信装置１と認証装置２との間の通信に絞って第２実施形態の送受信システムの処理の流れについて説明する。
【００６２】
通信装置１と認証装置２の間の通信は、上述したように、認証装置２から通信装置１へのコンテンツのデータの送信として実行されるが、これに先立って、認証装置２の通信装置１に対する認証が実行される。
具体的な処理の流れは以下の通りである。
【００６３】
まず、通信装置１で、送信要求データが生成される（Ｓ３０１）。送信要求データは、コンテンツのデータの送信を認証装置２に要求する内容と、その通信装置１のＩＤと、その通信装置１の共通データ記録部３４Ａに記録されている初期共通データとを含んでいる。
具体的には、通信装置１を持つユーザは、自分の通信装置１の入力装置２５を操作して、例えば、汎用のブラウザの機能を用いて、認証装置２にアクセスし、画面上に自分のＩＤを入力することにより送信要求データを生成する。このとき、例えば、ＣＰＵ２１の指示により、共通データ生成部３４が共通データ記録部３４Ａから初期共通データを読出し、送信要求データに初期共通データを含めるべくそれを通信部３７に送る。通信部３７で初期共通データが含められた送信要求データは、ネットワーク３を介して認証装置２に送られる（Ｓ３０２）。
【００６４】
通信装置１から送信された送信要求データは、ネットワーク３を介して認証装置２に受取られる（Ｓ４０１）。具体的には、認証装置２は、その暗号化通信部１２７に含まれている通信部１３７によって送信要求データを受取る。
【００６５】
送信要求データを受取った認証装置２は、送信要求データを送信してきた通信装置１の認証を行う（Ｓ４０２）。
認証処理は、以下のように行われる。
通信部１３７が受取った送信要求データは、前処理部１３２に送られる。また、通信部１３７は、送信要求データに含まれていた初期共通データを認証部Ｃに送る。
前処理部１３２は、送信要求データから、ＩＤのデータを読出し、それを共通データ生成部１３４に送る。共通データ生成部１３４は、そのＩＤと紐付けられている初期共通データを初期共通データ群記録部１３４Ａから読出し、それを認証部Ｃに送る。
送信要求データを送って来た通信装置１が、この認証が行われる前に他の通信装置１と通信を行っておらず、且つこの認証が行われる前に認証装置２による認証を受けていない場合には、通信装置１から送られて来た初期共通データと、認証装置２の初期共通データ群記録部１３４Ａに記録されていた初期共通データはともに、初期状態の初期共通データであり一致する。このように通信装置１から送られて来た初期共通データと、認証装置２の初期共通データ群記録部１３４Ａに記録されていた初期共通データが一致した場合、送信要求データを送って来た通信装置１は正当なものであると、認証部Ｃは判定する。
送信要求データを送って来た通信装置１が、この認証が行われる前に他の通信装置１と通信を行っていないけれども、この認証が行われる前に認証装置２による認証を受けていた場合には、後述するような方法（結局のところ、第１実施形態で述べたのと同じ方法であるが）で通信装置１の共通データ記録部３４Ａに記録されている初期共通データと、認証装置２の初期共通データ群記録部１３４Ａに記録されていた初期共通データとがともに、後から生成された同じ共通データで更新されているため、通信装置１から送られて来た初期共通データと、認証装置２の初期共通データ群記録部１３４Ａに記録されていた初期共通データは一致することになる。この場合にも、認証部Ｃは、送信要求データを送って来た通信装置１は正当なものであると判定する。
送信要求データを送って来た通信装置１が、この認証が行われる前に他の通信装置１と通信を行ったけれども、この認証が行われる前に認証装置２による認証を受けており、且つその後に更に他の通信装置１と通信を行っていない場合も同様である。
送信要求データを送って来た通信装置１が、認証装置２による認証を過去に受けておらず、且つこの認証が行われる前に他の通信装置１と通信を行っていた場合、または、この認証が行われる前に他の通信装置と通信を行っており、且つその後認証装置２による認証を受けていない場合には、通信装置１の共通データ生成部３４で生成された共通データの数が、認証装置２の共通データ生成部１３４で生成された共通データの数よりも多いため、通信装置１の共通データ生成部３４の初期共通データは、認証装置２の共通データ生成部１３４で将来的に生成される（未だ生成されていない）共通データで上書きされた状態となっている。つまり、通信装置１から送られて来た初期共通データと、認証装置２の初期共通データ群記録部１３４Ａに記録されていた初期共通データは一致しない。この場合、認証部Ｃは、共通データ生成部１３４に、認証部Ｃに送ってきた初期共通データに基づいて次の共通データを生成させる。共通データ生成部１３４は、生成した次の共通データを認証部Ｃに送る。共通データ生成部１３４が生成した次の共通データが、通信装置１から送られて来た初期共通データと一致した場合、認証部Ｃは、送信要求データを送って来た通信装置１を正当なものと判定する。共通データ生成部１３４が生成した次の共通データが、通信装置１から送られて来た初期共通データと一致しなかった場合、認証部Ｃは、共通データ生成部１３４に、認証部Ｃに送ってきた初期共通データに基づいて次の共通データを生成させ、上述の処理を繰り返す。既に述べたように、通信装置１の共通データ生成部３４と、認証装置２の共通データ生成部１３４は、同じ初期共通データを用いた場合においては、同じ共通データを生成することができる。したがって、通信装置１が、第三者の成りすましではなく、通信装置１が送って来た初期共通データが、その通信装置１に割振られたＩＤに紐付けられた初期共通データから発生させられたものなのであれば、通信装置１から送られて来た初期共通データと同じ初期共通データは、いつかは共通データ生成部１３４から認証部Ｃに供給される。認証部Ｃは、このような理屈で、通信装置１の正当性を判定するのである。なお、かかる方法には、認証部Ｃが、共通データ生成部１３４に新しい共通データを生成させることをどの段階で中止し、送信要求データを送信してきた通信装置１が正当なものでないとどの段階で判定するかということについて多少問題がある。この問題は、例えば、認証部Ｃが、共通データ生成部１３４に新しい共通データを生成させる回数を予め決めておくことにより解決できる。この回数は多ければ多いほど、通信装置１が正当なものである場合に当該通信装置１を正当であると正しく判定できる可能性が高まるが、認証装置２のデータ処理能力等に応じて適当に決定することができる。
【００６６】
上述の如く認証が行われた結果、送信要求データを送って来た通信装置１が正当でないと判定された場合（Ｓ４０２：Ｎｏ）、認証部Ｃはその旨をインタフェイス部１３１を介してＣＰＵ１２１に伝える。これを受取ったＣＰＵ１２１は、ここで処理を終了する（Ｓ４０３）。この場合には、送信要求データを送って来た通信装置１へのコンテンツのデータの送信は行われない。
【００６７】
送信要求データを送って来た通信装置１が正当であると判定された場合（Ｓ４０２：Ｙｅｓ）、コンテンツの暗号化が開始される（Ｓ４０４）。
具体的には、送信要求データを前処理部１３２からインタフェイス部１３１を介して受取り、且つ送信要求データを送って来た通信装置１が正当であるということを示すデータを認証部Ｃから受取ったＣＰＵ１２１は、ＨＤＤ１２２に記録されていたコンテンツのデータを暗号化通信部１２７に送る。
暗号化通信部１２７に送られたコンテンツのデータは、暗号化通信部１２７で、第１実施形態で電子メールのデータを暗号化した場合と同様の方法で暗号化され、パケット化された状態で、第１実施形態の場合と同様の方法で送信要求データを送って来た通信装置１に送信される（Ｓ４０５）。
送信要求データを送って来た通信装置１に対して送られるコンテンツのデータを暗号化するために用いられる初期共通データを発生させるために用いられる初期共通データは、送信要求データを送って来た通信装置１から送られて来た初期共通データである。認証の処理で送信要求データを送って来た通信装置１が正当であると判定された後、共通データ生成部１３４は、その通信装置１から送られて来た初期共通データで、初期共通データ群記録部１３４Ａに記録されていた当該初期共通データとともに送られて来たＩＤと紐付けられていた初期共通データを更新する。この初期共通データを用いて、以後の新しい初期共通データの生成と、暗号化の際に用いられる暗号化データの生成が行われる。
【００６８】
通信装置１は、暗号化して送られて来たコンテンツのデータを受取り（Ｓ３０３）、それを復号化する（Ｓ３０４）。
通信装置１がコンテンツのデータを受取る処理と、コンテンツのデータを復号化する処理は、第１実施形態における受信側の通信装置１が電子メールのデータを受取る処理と、電子メールのデータを復号化する処理と同じように実行される。
通信装置１がコンテンツのデータを復号化するために用いられる初期共通データを発生させるために用いられる初期共通データは、送信要求データとともに通信装置１が認証装置２に送った初期共通データである。
復号化されたコンテンツは、例えば、ＨＤＤ２２に記録され、通信装置１で適当に使用される。
【符号の説明】
【００６９】
１  通信装置
２  認証装置
３  ネットワーク
３１  インタフェイス部
３２  前処理部
３３  暗号化・復号化部
３３Ａ  暗号化部
３３Ｂ  復号化部
３４  共通データ生成部
３４Ａ  共通データ記録部
３５  アルゴリズム生成部
３６  鍵生成部
３７  通信部
１２２  ＨＤＤ
１３１  インタフェイス部
１３２  前処理部
１３３  暗号化部
１３４  共通データ生成部
１３４Ａ  初期共通データ群記録部
１３５  アルゴリズム生成部
１３６  鍵生成部
１３７  通信部
【図１】
2014053954.tif 000003
【図２】
2014053954.tif 000004
【図３】
2014053954.tif 000005
【図４】
2014053954.tif 000006
【図５】
2014053954.tif 000007
【図６】
2014053954.tif 000008
【図７】
2014053954.tif 000009
【図８】
2014053954.tif 000010
【図９】
2014053954.tif 000011
【図１０】
2014053954.tif 000012