説明

データ送受信システム、暗号化情報共有方法、データ送信装置、及びデータ受信装置

【課題】暗号鍵交換のためのデータ送信量を抑えつつ、通信データ送信単位ごとに異なる暗号鍵を使用すること。
【解決手段】移動局装置10において、各IPパケットの送信順序に関連する順序関連情報に基づいて、該各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する送信側暗号鍵生成部27、を含み、ルータ40において、受信される各IPパケットのそれぞれについて、前記順序関連情報を推定するヘッダ復元部41と、ヘッダ復元部41により推定される前記各IPパケットの順序関連情報に基づいて、該各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する受信側暗号鍵生成部45と、を含んだことを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はデータ送受信システム、暗号化情報共有方法、データ送信装置、及びデータ受信装置に関する。
【背景技術】
【0002】
IP通信では通信データの暗号化がなされることがある。この暗号化は通常、共通鍵暗号方式により行われる。共通鍵暗号方式では、通信開始前に通信装置の間で、共通鍵暗号方式の暗号鍵を示す暗号化情報の交換が行われる。通信が開始されると、各通信装置は、送信時にはこの暗号化情報により示される暗号鍵による通信データの暗号化を行い、受信時にはこの暗号化情報により示される暗号鍵による通信データの復号化を行う。こうして暗号化が実現される。
【0003】
特許文献1には、上記暗号鍵を、通信途中でそれまでとは異なる鍵に取り替えることに関する技術が記載されている。この技術では、通信途中に一方の通信装置が新たな暗号鍵を取得して送信し、他方の通信装置が新たな暗号鍵を受信することにより、新たな暗号鍵が交換される。
【特許文献1】特開平11−234260号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
共通鍵暗号方式の暗号強度を高めるためのひとつの手段として、パケットなど通信データの送信単位ごとに暗号鍵を取り替えることが考えられる。この場合、上記特許文献1に記載の技術では、全ての暗号鍵を送信しなければならず、暗号鍵送信のために大きな帯域が必要となってしまうという問題があった。
【0005】
従って、本発明の課題の一つは、暗号鍵交換のためのデータ送信量を抑えつつ、通信データ送信単位ごとに異なる暗号鍵を使用することを実現するデータ送受信システム、暗号化情報共有方法、データ送信装置、及びデータ受信装置を提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するための本発明にかかるデータ送受信システムは、前記データ送信装置は、通信データを、送信単位ごとに取得する通信データ取得手段と、前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成手段と、前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成手段により生成された暗号鍵で暗号化する暗号化手段と、前記暗号化手段により暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信手段と、を含み、前記データ受信装置は、前記送信手段により送信された前記送信単位を順次受信する受信手段と、前記送信単位のそれぞれについて、前記順序関連情報を推定する推定手段と、前記推定手段により推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成手段と、前記受信手段により受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成手段により生成された暗号鍵で復号化する復号化手段と、を含む、ことを特徴とする。
【0007】
順序関連情報は、データ送信装置からデータ受信装置に直接その全てを送らなくとも、データ受信装置で各送信単位の受信順序から推定できるので、上記データ送受信システムによれば、暗号鍵交換のためのデータ送信量を抑えつつ、通信データ送信単位ごとに異なる暗号鍵を使用することが実現される。
【0008】
また、上記データ送受信システムにおいて、前記送信単位の順序関連情報は、該送信単位に付与されるシーケンス番号であり、前記送信手段は、送信する前記送信単位のうち、一部の送信単位には該送信単位に付与されたシーケンス番号の全体を含めて送信するとともに、他の一部の送信単位には該送信単位に付与されたシーケンス番号の一部分を含めず送信し、前記推定手段は、前記受信手段によりシーケンス番号の全体を含む送信単位が受信された場合には、該シーケンス番号を示すシーケンス番号情報を記憶手段に記憶し、前記受信手段によりシーケンス番号の前記一部分を含まない送信単位が受信された場合には、前記記憶手段に記憶される前記シーケンス番号情報と、該送信単位に含まれる部分と、に基づいて、該送信単位に付与されたシーケンス番号を推定する、こととしてもよい。
【0009】
これによれば、データ受信装置は、一部の送信単位に含まれるシーケンス番号の全体に基づき、その後に受信される他の送信単位のシーケンス番号の全体を推定できるようになる。
【0010】
また、本発明にかかる暗号化情報共有方法は、データ送信装置とデータ受信装置とを含むデータ送受信システムにおいて、前記データ送信装置と前記データ受信装置の間で暗号化情報を共有するための暗号化情報共有方法であって、前記データ送信装置が、通信データを、送信単位ごとに取得する通信データ取得ステップと、前記データ送信装置が、前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成ステップと、前記データ送信装置が、前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成ステップにおいて生成された暗号鍵で暗号化する暗号化ステップと、前記データ送信装置が、前記暗号化ステップにおいて暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信ステップと、前記データ受信装置が、前記データ送信装置により送信された前記送信単位を順次受信する受信ステップと、前記データ受信装置が、前記送信単位のそれぞれについて、前記順序関連情報を推定する推定ステップと、前記データ受信装置が、前記推定ステップにおいて推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成ステップと、前記データ受信装置が、前記受信ステップにより受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成ステップにより生成された暗号鍵で復号化する復号化ステップと、を含むことを特徴とする。
【0011】
また、本発明にかかるデータ送信装置は、通信データを、送信単位ごとに取得する通信データ取得手段と、前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成手段と、前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成手段により生成された暗号鍵で暗号化する暗号化手段と、前記暗号化手段により暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信手段と、を含むことを特徴とする。
【0012】
また、本発明にかかるデータ受信装置は、データ送信装置により送信された通信データを、送信単位ごとに順次受信する受信手段と、前記送信単位のそれぞれについて、該送信単位の送信順序に関連する順序関連情報を推定する推定手段と、前記推定手段により推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成手段と、前記受信手段により受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成手段により生成された暗号鍵で復号化する復号化手段と、を含むことを特徴とする。
【発明を実施するための最良の形態】
【0013】
本発明の実施の形態について、図面を参照しながら説明する。
【0014】
図1は、本実施の形態にかかるデータ送受信システム1のシステム構成を示す図である。同図に示すように、データ送受信システム1は、コンピュータ10、移動局装置20、基地局装置30、ルータ40、PDSN(パケット交換機)50、インターネット60を含んで構成される。
【0015】
移動局装置20、基地局装置30、ルータ40、及びPDSN50は、パケット方式を採用する移動体通信システムの構成要素である。コンピュータ10は、移動局装置20と接続され、移動体通信システムを介して、インターネット60上の他のコンピュータ(不図示)とIP通信を行う。ここでは特に、RTP(Real-time Transport Protocol)による音声通信(VoIP通信)を行う。
【0016】
移動局装置20、基地局装置30、ルータ40、及びPDSN50は、上記VoIP通信において送受信されるIPパケットを中継する。このIPパケットは通信データの送信単位であり、IPヘッダとIPペイロードとから構成される。IPヘッダには、IPパケットの宛先情報やシーケンス番号が含まれる。IPペイロードには通信データそのものが含まれる。
【0017】
移動局装置20とルータ40の間では、上記IPヘッダが圧縮された状態で通信が行われる。このIPヘッダ圧縮は、RFC3095に規定されるROHC(ロバストヘッダ圧縮、RObust Header Compression)により行われ、コンピュータ10からインターネット60に対して送信されるIPパケットについては、移動局装置20がROHCによりヘッダ圧縮されるIPパケットのデータ送信装置、ルータ40が該IPパケットのデータ受信装置となる。一方、インターネット60からコンピュータ10に対して送信されるIPパケットについては、ルータ40がROHCによりヘッダ圧縮されるIPパケットのデータ送信装置、移動局装置20が該IPパケットのデータ受信装置となる。
【0018】
また、移動局装置20とルータ40の間ではさらに、IPペイロードの暗号化が行われる。この暗号化に使用する暗号鍵は、IPパケットごとに異なるものが使用される。以下では、このような処理を行うための移動局装置20及びルータ40の構成の詳細について説明する。
【0019】
移動局装置20及びルータ40はともに、CPU及びメモリを備えたコンピュータである。CPUは、メモリに記憶されるプログラムを実行するための処理ユニットであり、移動局装置20又はルータ40の各部を制御する処理を行うとともに、後述する各機能を実現する。メモリは本実施の形態を実施するためのプログラムやデータを記憶している。また、CPUのワークメモリとしても動作する。
【0020】
図2は、移動局装置20及びルータ40の機能ブロックを示す図である。同図に示すように、移動局装置20は機能的に通信データ取得部21、シーケンス番号付与部22、共通鍵付加部23、CRC付加部24、ヘッダ圧縮部25、コンテキスト記憶部26、送信側暗号鍵生成部27、ペイロード暗号化部28を含んで構成される。また、ルータ40は機能的にヘッダ復元部41、コンテキスト記憶部42、CRC確認部43、初期化要求部44、受信側暗号鍵生成部45、ペイロード復号化部46を含んで構成される。なお、ここでは移動局装置20及びルータ40が、それぞれデータ送信装置及びデータ受信装置である場合について説明するが、これを逆にした場合についても同様である。
【0021】
通信データ取得部21は、コンピュータ10が送信した一連のIPパケットを取得し、シーケンス番号付与部22に出力する。このIPパケットのIPヘッダには、宛先情報(IPアドレス)が含まれる。ここでは、このIPアドレスはインターネット60上のコンピュータ(不図示)のIPアドレスであるとする。
【0022】
シーケンス番号付与部22は、通信データ取得部21から入力された各IPパケットのIPヘッダに、その送信順序に関連する順序関連情報を付与し、共通鍵付加部23に出力する。ここでは、この順序関連情報はIPパケットのシーケンス番号であり、特にIPパケットの送信順を示す8ビットの情報であるとして説明する。なお、順序関連情報としては、他にも、例えばIPパケットの生成時の時刻を示すタイムスタンプを使用することも可能である。
【0023】
共通鍵付加部23は、通信ごとに共通鍵(ここでは「kyocera」とする。)を生成し、シーケンス番号付与部22から入力されたIPパケットのIPヘッダに付加して、CRC付加部24に出力する。
【0024】
CRC付加部24は、共通鍵付加部23から入力された各IPパケットのIPヘッダについてのCRC(巡回冗長符号)をそれぞれ生成する。すなわち、CRC付加部24は、ビット列としてのIPヘッダを所定の定数で割り算し、その剰余をCRCとして取得する。そして、このCRCをIPヘッダに付加し、ヘッダ圧縮部25に出力する。
【0025】
ヘッダ圧縮部25は、IPヘッダに含まれる情報のうち通信が終了するまで変化しない部分(不変部分)を取得し、コンテキスト記憶部26に記憶させる。この部分の例には、例えばIPパケットの宛先情報(IPアドレス)や共通鍵付加部23で付加される共通鍵などが挙げられる。
【0026】
ヘッダ圧縮部25は、通信ごとの最初のIPパケットについては、IPパケットをそのままCRC付加部24に出力する。なお、このようにIPヘッダが省略されずに送信されるIPパケットは、初期化パケットと称される。通信ごとの最初のIPパケット以外のIPパケットについては、ヘッダ圧縮部25は、後述する初期化要求信号が受信されない限り、コンテキスト記憶部26に記憶させた部分及びシーケンス番号の上位所定数桁分を省略することによりIPパケット長を圧縮して、ペイロード暗号化部28に出力する。
【0027】
送信側暗号鍵生成部27は、各IPパケットの送信順序に関連する順序関連情報に基づいて、該各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する。具体的には、コンテキスト記憶部26に記憶される共通鍵と、シーケンス番号付与部22において各IPパケットに付与されたシーケンス番号と、に基づき、各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する。ここで生成される暗号鍵の具体的な例を挙げると、シーケンス番号が「10100010」であるIPパケットに含まれる通信データについての暗号鍵は、「kyocera10100010」となる。なお、さらに移動局装置20とルータ40とで予め共有する所定の関数に「kyocera10100010」を代入して得られる文字列を、暗号鍵として使用することとしてもよい。
【0028】
ペイロード暗号化部28は、ヘッダ圧縮部25から入力されたIPパケットのうちのIPペイロードを、該IPペイロードに含まれる通信データについて送信側暗号鍵生成部27により生成された暗号鍵により暗号化する。ペイロード暗号化部28は、このようにして一連のIPパケットのIPペイロード部分を順次暗号化し、さらに各IPパケットを移動体通信システムのパケット(以下、移動体通信パケットと称する。)によりカプセリングして、その宛先をインターネット60とし、基地局装置30に対して順次送信する。
【0029】
基地局装置30は、移動局装置20から送信された移動体通信パケットを順次受信し、その宛先(ここではインターネット60。)を参照する。ここで、基地局装置30は、宛先と移動体通信パケットの送信先とを対応づけて記憶している。具体的には、宛先としてのインターネット60と、送信先としてのルータ40とを対応付けて記憶している。基地局装置30は、参照した宛先(インターネット60)と対応付けて記憶される送信先(ルータ40)を取得し、該送信先に対して、順次受信した各移動体通信パケットにそれぞれ含まれる一連のIPパケットを順次転送する。
【0030】
ヘッダ復元部41は、基地局装置30から送信された一連のIPパケットを順次受信する。通信の開始時には、このIPパケットは初期化パケットであり、そのIPヘッダには上記不変部分及びシーケンス番号が含まれる。ヘッダ復元部41は、受信したIPパケットのIPヘッダからこの不変部分及びシーケンス番号を取り出し、コンテキスト記憶部42に記憶させるとともに、該IPパケットをCRC確認部43に出力する。
【0031】
一方、IPパケットが圧縮パケットである場合、ヘッダ復元部41は、まず、コンテキスト記憶部42に記憶される不変部分を取り出す。
【0032】
さらに、ヘッダ復元部41は、該各IPパケットのそれぞれについて、上記順序関連情報を推定する。ここでは特に、シーケンス番号付与部22により各IPパケットに付与されたシーケンス番号を推定する。より具体的には、コンテキスト記憶部42に記憶されるシーケンス番号と、該IPパケットに含まれるシーケンス番号の一部分(LSB(Least Significant Bits)と呼ばれる。)と、に基づいて、該IPパケットに付与されたシーケンス番号を推定する。以下、具体的な例を挙げて説明する。
【0033】
この例では、LSBが下位4ビットであるとして説明する。初期化パケットのシーケンス番号が「10100010」であった場合、コンテキスト記憶部42には「10100010」が記憶される。圧縮パケットに「0011」が含まれていたとすると、ヘッダ復元部41は、「0011」からコンテキスト記憶部42に記憶しているシーケンス番号「10100010」の下位4ビットを減算して、差「0001」を得る。そして、この「0001」をコンテキスト記憶部42に記憶しているシーケンス番号「10100010」に加算することにより、シーケンス番号「10100011」を取得する。ここで、IPヘッダが省略されたIPパケットに下位4ビット「0000」が含まれていたとすると、上記差はマイナスになる。このように、上記差が0以下になる場合、ヘッダ復元部41は算出した差にLSBのビット数に応じた数、具体的には24=16(「10000」)を加算した上で、コンテキスト記憶部42に記憶しているシーケンス番号「10100010」に加算する。こうすることにより、ヘッダ復元部41は、シーケンス番号「10110000」を得る。
【0034】
このようにしてシーケンス番号の推定が行われるので、2=16以上パケットロスがあると、ヘッダ復元部41は、もはや正しくシーケンス番号を復元することができなくなる。上記例では、例えばシーケンス番号「10100011」から「10110010」までのパケットが通信途中で失われた場合、次に到達するIPパケットのシーケンス番号「10110011」を、ヘッダ復元部41は誤って「10100011」と推定してしまう。この場合の処理については後述する。
【0035】
シーケンス番号の推定が終了すると、ヘッダ復元部41は、推定したシーケンス番号と、コンテキスト記憶部42から取り出した不変部分から共通鍵を除いた部分と、をIPパケットのIPヘッダに含め、該IPパケットをCRC確認部43に出力する。
【0036】
CRC確認部43は、ヘッダ復元部41から入力された各IPパケットのIPヘッダについてのCRC(巡回冗長符号)を、CRC付加部24と同様の方法により、それぞれ生成する。そして、各IPヘッダについて生成したCRCと、該各IPヘッダに含まれるCRCと、を比較する。
【0037】
この比較の結果、これらが一致していた場合、CRC確認部43は該IPパケットをペイロード復号化部46に出力する。また、コンテキスト記憶部42に記憶されるシーケンス番号を、該IPパケットのシーケンス番号により更新する。
【0038】
一方、比較の結果2つのCRCが異なっていた場合、CRC確認部43は上述のシーケンス番号の推定誤りが発生したと判断する。そして、その判断結果を初期化要求部44に出力する。
【0039】
初期化要求部44は、CRC確認部43からシーケンス番号の推定誤りが発生したとの判断結果が入力された場合、ヘッダ圧縮部25に対し、初期化パケットを送信するよう要求する。具体的には、初期化要求信号を送信する。この初期化要求信号を受けたヘッダ圧縮部25は、次に送信するIPパケットを初期化パケットとして送信する。すなわち、IPヘッダを省略せずにペイロード暗号化部28に出力する。
【0040】
CRC確認部43による上記比較の結果、2つのCRCが一致しているとされた場合、受信側暗号鍵生成部45は、ヘッダ復元部41により推定される各IPパケットの順序関連情報に基づいて、該各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する。具体的には、コンテキスト記憶部42に記憶される共通鍵と、CRC確認部43によりコンテキスト記憶部42に新たに記憶されたシーケンス番号と、に基づき、各IPパケットに含まれる各通信データについての暗号鍵をそれぞれ生成する。
【0041】
ペイロード復号化部46は、CRC確認部43から順次入力されるIPパケットのうちのIPペイロードを、該IPペイロードに含まれる通信データについて受信側暗号鍵生成部45により生成された暗号鍵により復号化する。そして、復号化されたIPパケットを、PDSN30に対して送信する。
【0042】
以上説明した処理を、データ送受信システム1における処理のシーケンスを参照しながら、より詳細に説明する。
【0043】
図3及び図4は、データ送受信システム1における処理のシーケンスを示す図である。なお、ここでは簡単のためにコンピュータ10がインターネット60に対して送信する方向のIPパケットのみを取り上げるが、実際にはその逆方向のIPパケットについても同様の処理が行われる。
【0044】
ここでは、コンピュータ10においてユーザがVoIP通信の開始を指示したとする(S1)。コンピュータ10は、まず一つ目のIPパケットを移動局装置20に対して送信する(S2)。このIPパケットを受信した移動局装置20は、該VoIP通信の共通鍵を取得し(S3)、IPパケットのIPヘッダに含める。また、このIPヘッダには該IPパケットのシーケンス番号も含まれる。移動局装置20は、こうして取得した共通鍵を含むIPヘッダの不変部分と、シーケンス番号と、をコンテキスト記憶部26に記憶させる。そして、IPヘッダに含まれるべき全情報を含むIPパケットである初期化パケットを送信する(S4)。
【0045】
S4で送信された初期化パケットを受信したルータ40は、まずACK(受信確認)を返送する(S5)。そして、初期化パケットのIPヘッダに含まれる不変情報とシーケンス番号とを取り出し、コンテキスト記憶部42に記憶させる(S6)。そしてルータ40は、受信した初期化パケットに含まれる共通鍵を取り除いてなるIPパケットをPDSN50に送信する(S7)。
【0046】
続いて、コンピュータ10は二つ目のIPパケットを移動局装置20に対して送信する(S8)。このIPパケットを受信した移動局装置20は、コンテキスト記憶部26に記憶される共通鍵と、シーケンス番号と、によりIPペイロードを暗号化する(S9)。そして、IPヘッダのうち不変部分とシーケンス番号(LSBを除く)を取り除いてなるIPパケットである圧縮パケットを送信する(S10)。
【0047】
S10で送信された圧縮パケットを受信したルータ40は、まずACK(受信確認)を返送する(S11)。そして、圧縮パケットに含まれるLSBと、コンテキスト記憶部42に記憶されるシーケンス番号と、に基づいて、該圧縮パケットのシーケンス番号を推定する(S12)。次に、ルータ40は、このシーケンス番号と、コンテキスト記憶部42に記憶される不変部分と、を含めて復元したIPヘッダのCRCを確認する(S13)。ここでは、この確認の結果、CRCエラーがないことが確認されたとして説明する。すると、ルータ40はコンテキスト記憶部42に記憶される共通鍵と、推定したシーケンス番号と、によりIPペイロードを復号化する(S14)。そしてルータ40は、復元したIPヘッダから共通鍵を取り除いた上で、IPパケットをPDSN50に送信する(S15)。
【0048】
ここで、移動局装置20と基地局装置30の間の無線状態が悪化したとする。すると、移動局装置20からルータ40に対して送信するIPパケットが途中で失われることになる(S16乃至S21)。
【0049】
その後、無線状態が回復すると、圧縮パケットが再度ルータ40に到達するようになる(S22乃至S24)。この圧縮パケットを受信したルータ40は、まずACK(受信確認)を返送する(S25)。そして、圧縮パケットに含まれるLSBと、コンテキスト記憶部42に記憶されるシーケンス番号と、に基づいて、該圧縮パケットのシーケンス番号を推定する(S26)。次に、ルータ40は、このシーケンス番号と、コンテキスト記憶部42に記憶される不変部分と、を含めて復元したIPヘッダのCRCを確認する(S27)。この確認の結果は、上述のように、所定数以上のパケットロスが発生した場合、必ずCRCエラーとなる。すると、ルータ40は、初期化要求信号を生成し、移動局装置20に対して送信する(S28)。
【0050】
初期化要求信号を受信した移動局装置20は、次に送信するIPパケット(S29)を、IPペイロードを暗号化した初期化パケットにより送信する(S30,S31)。この初期化パケットを受信したルータ40は、まずACK(受信確認)を返送する(S32)。そして、初期化パケットのIPヘッダに含まれる不変情報とシーケンス番号とを取り出し、コンテキスト記憶部42に記憶させる(S33)。こうして、コンテキスト記憶部42の更新が行われると、伝送区間でのビットエラーが発生していなければ、CRCの確認結果はCRCエラーなしとなる(S34)。すると、ルータ40はコンテキスト記憶部42に記憶される共通鍵及びシーケンス番号によりIPペイロードを復号化する(S35)。そしてルータ40は、受信した初期化パケットに含まれる共通鍵を取り除いてなるIPパケットをPDSN50に送信する(S36)。その後は、再度S8からの処理と同様にして、圧縮パケットの送信がなされることになる。
【0051】
以上説明したデータ送受信システム1によれば、データ受信装置において順序関連情報を推定し、推定した順序関連情報に基づいて暗号鍵を生成できるので、送信する暗号鍵を最小限に抑えつつ、通信データ送信単位ごとに異なる暗号鍵を使用することが実現される。
【0052】
また、データ受信装置は、一部の送信単位に含まれるシーケンス番号の全体に基づき、その後に受信される他の送信単位のシーケンス番号の全体を推定できるようになる。
【0053】
なお、本発明は上記実施の形態に限定されるものではない。例えば、上記実施の形態ではシーケンス番号を移動局装置20において付与しているが、コンピュータ10などIPパケットの生成装置において付与することとしてもよい。また、上記実施の形態ではデータ送信装置に初期化パケットを送信させるためにデータ受信装置が初期化要求信号を送信しているが、データ送信装置が、送信したIPパケットに対するACKの到達を監視し、所定回数にわたりACKが到達しない場合に自律的に初期化パケットを送信するようにしてもよい。
【図面の簡単な説明】
【0054】
【図1】本発明の実施の形態にかかるデータ送受信システムのシステム構成を示す図である。
【図2】本発明の実施の形態にかかる移動局装置及びルータの機能ブロックを示す図である。
【図3】本発明の実施の形態にかかる通信システムにおける処理のシーケンスを示す図である。
【図4】本発明の実施の形態にかかる通信システムにおける処理のシーケンスを示す図である。
【符号の説明】
【0055】
1 データ送受信システム、10 コンピュータ、20 移動局装置、21 通信データ取得部、22 シーケンス番号付与部、23 共通鍵付加部、24 CRC付加部、25 ヘッダ圧縮部、26,42 コンテキスト記憶部、27 送信側暗号鍵生成部、28 ペイロード暗号化部、30 基地局装置、40 ルータ、41 ヘッダ復元部、43 CRC確認部、44 初期化要求部、45 受信側暗号鍵生成部、46 ペイロード復号化部、60 インターネット。

【特許請求の範囲】
【請求項1】
データ送信装置とデータ受信装置とを含むデータ送受信システムであって、
前記データ送信装置は、
通信データを、送信単位ごとに取得する通信データ取得手段と、
前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成手段と、
前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成手段により生成された暗号鍵で暗号化する暗号化手段と、
前記暗号化手段により暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信手段と、
を含み、
前記データ受信装置は、
前記送信手段により送信された前記送信単位を順次受信する受信手段と、
前記送信単位のそれぞれについて、前記順序関連情報を推定する推定手段と、
前記推定手段により推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成手段と、
前記受信手段により受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成手段により生成された暗号鍵で復号化する復号化手段と、
を含む、
ことを特徴とするデータ送受信システム。
【請求項2】
請求項1に記載のデータ送受信システムにおいて、
前記送信単位の順序関連情報は、該送信単位に付与されるシーケンス番号であり、
前記送信手段は、送信する前記送信単位のうち、一部の送信単位には該送信単位に付与されたシーケンス番号の全体を含めて送信するとともに、他の一部の送信単位には該送信単位に付与されたシーケンス番号の一部分を含めず送信し、
前記推定手段は、前記受信手段によりシーケンス番号の全体を含む送信単位が受信された場合には、該シーケンス番号を示すシーケンス番号情報を記憶手段に記憶し、前記受信手段によりシーケンス番号の前記一部分を含まない送信単位が受信された場合には、前記記憶手段に記憶される前記シーケンス番号情報と、該送信単位に含まれる部分と、に基づいて、該送信単位に付与されたシーケンス番号を推定する、
ことを特徴とするデータ送受信システム。
【請求項3】
データ送信装置とデータ受信装置とを含むデータ送受信システムにおいて、前記データ送信装置と前記データ受信装置の間で暗号化情報を共有するための暗号化情報共有方法であって、
前記データ送信装置が、通信データを、送信単位ごとに取得する通信データ取得ステップと、
前記データ送信装置が、前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成ステップと、
前記データ送信装置が、前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成ステップにおいて生成された暗号鍵で暗号化する暗号化ステップと、
前記データ送信装置が、前記暗号化ステップにおいて暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信ステップと、
前記データ受信装置が、前記データ送信装置により送信された前記送信単位を順次受信する受信ステップと、
前記データ受信装置が、前記送信単位のそれぞれについて、前記順序関連情報を推定する推定ステップと、
前記データ受信装置が、前記推定ステップにおいて推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成ステップと、
前記データ受信装置が、前記受信ステップにより受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成ステップにより生成された暗号鍵で復号化する復号化ステップと、
を含むことを特徴とする暗号化情報共有方法。
【請求項4】
通信データを、送信単位ごとに取得する通信データ取得手段と、
前記送信単位の送信順序に関連する順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する送信側暗号鍵生成手段と、
前記送信単位に含まれる前記通信データを、該通信データについて前記送信側暗号鍵生成手段により生成された暗号鍵で暗号化する暗号化手段と、
前記暗号化手段により暗号化された前記通信データを含む前記送信単位を、前記送信順序で順次送信する送信手段と、
を含むことを特徴とするデータ送信装置。
【請求項5】
データ送信装置により送信された通信データを、送信単位ごとに順次受信する受信手段と、
前記送信単位のそれぞれについて、該送信単位の送信順序に関連する順序関連情報を推定する推定手段と、
前記推定手段により推定される前記送信単位の順序関連情報に基づいて、該送信単位に含まれる前記通信データについての暗号鍵を生成する受信側暗号鍵生成手段と、
前記受信手段により受信された送信単位に含まれる通信データを、該通信データについて前記受信側暗号鍵生成手段により生成された暗号鍵で復号化する復号化手段と、
を含むことを特徴とするデータ受信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate