説明

データ送受信システムおよびデータ送受信方法

【課題】送信側および受信側の当事者間で同期を取ることなく、暗号鍵を動的に更新することを可能とするデータ送受信システムを提供する。
【解決手段】送信器100は、セッションキーを検証用データとして平文データに付加した後、当該セッションキーを用いて暗号化する。また、送信器100は、このセッションキーを、受信器200と同期を取ることなく、所定の規則で加工する。一方、受信器200は、セッションキーを用いて送信器100からの暗号化データを復号し、検証用データとして付加されたセッションキーを抽出して、この抽出したセッションキーと生成したセッションキーとが一致するかどうかによって当該データの正当性を調べる。そして、一致しなかった場合には、セッションキーの加工を所定の規則で実行し、復号および検証を再実行する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、通信データを暗号化および復号するために用いる共通鍵の更新を受信側との同期を取ることなく送信側にて適宜に行うことを可能とするデータ送受信システムおよびデータ送受信方法に関する。
【背景技術】
【0002】
近年、インターネットの普及などに伴い、不特定多数の者がアクセス可能な汎用ネットワーク経由で各種データを送受信する機会が飛躍的に増加している。インターネット等の汎用ネットワーク経由でデータを送受信する場合のセキュリティ保護は、データの暗号化によることが主流であり、そのために、データの暗号化および復号に使用する暗号鍵の取り扱いに関する手法が種々提案されている(例えば特許文献1〜3等参照)。
【0003】
この特許文献1〜3を始めとする様々な手法を用い、送信側および受信側で同期を取りつつ暗号鍵を動的に更新していくことにより、暗号鍵が漏洩した際の被害を最小限に抑えることが可能となる。
【特許文献1】特開平11−55241号公報
【特許文献2】特開2003−134106号公報
【特許文献3】特開平5−292078号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、このような暗号鍵の更新は、送信側および受信側の双方が同期を取って行うことが一般的であるが、機動性を考慮すれば、受信側との同期を取ることなく、送信側において任意のタイミングで実施でき、かつ、受信側においても、送信側との同期を取ることなく、その更新に追従できることが望ましい。
【0005】
この発明は、このような事情を考慮してなされたものであり、送信側および受信側の当事者間で同期を取ることなく、暗号鍵を動的に更新することを可能とするデータ送受信システムおよびデータ送受信方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
前述した目的を達成するために、この発明のデータ送受信システムは、データ送信装置とデータ受信装置とがデータを暗号化して送受信するデータ送受信システムにおいて、前記データ送信装置は、互いを確認し合うための認証処理を前記データ受信装置との間で実行する認証手段と、前記認証手段の認証処理によって生成されたセッションキーを共通鍵として用いてデータを暗号化する暗号化手段と、送信対象の平文データに前記セッションキーを検証用データとして付加したデータ全体を送信データとして前記暗号化手段に暗号化を行わせ、これにより得られた暗号データを前記認証手段により認証処理が行われた前記データ受信装置に対して送信するデータ送信手段と、前記暗号化手段および前記データ送信手段により共通鍵および検証用データとして用いられる前記セッションキーの値を所定の規則に基づいて加工する加工手段と、を具備し、前記データ受信装置は、互いを確認し合うための認証処理を前記データ送信装置との間で実行する認証手段と、前記認証手段により認証処理が行われた前記データ送信装置から暗号データを受信するデータ受信手段と、前記認証手段の認証処理によって生成されたセッションキーを共通鍵として用いて前記暗号データを復号する復号手段と、前記復号手段により復号された受信データ全体の中から受信対象の平文データに検証用データとして付加された前記セッションキーを抽出し、この抽出したセッションキーの値と前記生成されたセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第1の判定手段と、前記第1の判定手段により正しくないと判断された場合、前記生成されたセッションキーの値を所定の規則に基づいて加工し、この加工後のセッションキーを共通鍵として用いた前記暗号データの復号を前記復号手段に再実行させ、これにより得られた受信データ全体の中から検証用データとして付加された前記セッションキーを再抽出し、この再抽出したセッションキーの値と前記加工後のセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第2の判定手段と、を具備することを特徴とする。
【0007】
また、この発明のデータ送受信方法は、データ送信装置とデータ受信装置とがデータを暗号化して送受信するデータ送受信システムのデータ送受信方法であって、前記データ送信装置は、互いを確認し合うための認証処理を前記データ受信装置との間で実行する認証ステップと、前記認証ステップの認証処理によって生成されたセッションキーを共通鍵として用いてデータを暗号化する暗号化ステップと、送信対象の平文データに前記セッションキーを検証用データとして付加したデータ全体を送信データとして前記暗号化ステップに暗号化を行わせ、これにより得られた暗号データを前記認証ステップにより認証処理が行われた前記データ受信装置に対して送信するデータ送信ステップと、前記暗号化ステップおよび前記データ送信ステップにより共通鍵および検証用データとして用いられる前記セッションキーの値を所定の規則に基づいて加工する加工ステップと、を具備し、前記データ受信装置は、互いを確認し合うための認証処理を前記データ送信装置との間で実行する認証ステップと、前記認証ステップにより認証処理が行われた前記データ送信装置から暗号データを受信するデータ受信ステップと、前記認証ステップの認証処理によって生成されたセッションキーを共通鍵として用いて前記暗号データを復号する復号ステップと、前記復号ステップにより復号された受信データ全体の中から受信対象の平文データに検証用データとして付加された前記セッションキーを抽出し、この抽出したセッションキーの値と前記生成されたセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第1の判定ステップと、前記第1の判定ステップにより正しくないと判断された場合、前記生成されたセッションキーの値を所定の規則に基づいて加工し、この加工後のセッションキーを共通鍵として用いた前記暗号データの復号を前記復号ステップに再実行させ、これにより得られた受信データ全体の中から検証用データとして付加された前記セッションキーを再抽出し、この再抽出したセッションキーの値と前記加工後のセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第2の判定ステップと、を具備することを特徴とする。
【発明の効果】
【0008】
この発明によれば、送信側および受信側の当事者間で同期を取ることなく、暗号鍵を動的に更新することを可能とするデータ送受信システムおよびデータ送受信方法を提供することができる。
【発明を実施するための最良の形態】
【0009】
以下、図面を参照して、本発明の実施の形態を説明する。
【0010】
ここでは、本発明のデータ送受信システムを、情報処理装置内における汎用データバス経由のデータ送受信用に適用した例を示す。まず、図1および図2を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、例えばノートブック型パーソナルコンピュータ1として実現されている。
【0011】
図1はノートブック型パーソナルコンピュータ1のディスプレイユニットを開いた状態における斜視図である。本コンピュータ1は、コンピュータ本体2と、ディスプレイユニット3とから構成されている。ディスプレイユニット3には、TFT−LCD(Thin Film Transistor Liquid Crystal Display)4からなる表示装置が組み込まれており、そのLCD4の表示画面はディスプレイユニット3のほぼ中央に位置されている。
【0012】
ディスプレイユニット3は、コンピュータ本体2に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体2は薄い箱形の筐体を有しており、その上面にはキーボード5、本コンピュータ1をパワーオン/パワーオフするためのパワーボタン6、入力操作パネル7、タッチパッド8およびスピーカ9A,9Bなどが配置されている。
【0013】
入力操作パネル7は、押下されたボタンに対応するイベントを入力するための入力装置であり、複数の機能をそれぞれ起動するための複数のボタンを備えている。これらボタン群には、TV起動ボタン7AやDVD/CD起動ボタン7Bも含まれている。TV起動ボタン7Aは、TV放送番組データの再生および記録を行うためのTV機能を起動するためのボタンであり、ユーザによって押下されると、このTV機能を実行するためのTVアプリケーションプログラムが起動される。
【0014】
本コンピュータ1においては、汎用の主オペレーティングシステムの他に、AV(オーディオ・ビデオ)データを処理するための専用の副オペレーティングシステムがインストールされている。TVアプリケーションプログラムは、副オペレーティングシステム上で動作するプログラムである。
【0015】
パワーボタン6がユーザによって押下された時、主オペレーティングシステムが起動される。一方、TV起動ボタン7Aがユーザによって押下された時は、主オペレーティングシステムではなく、副オペレーティングシステムが起動され、そしてTVアプリケーションプログラムが自動的に実行される。副オペレーティングシステムはAV機能を実行するための最小限の機能のみを有している。このため、副オペレーティングシステムのブートアップに要する時間は、主オペレーティングシステムのブートアップに要する時間に比べて遙かに短い。よって、ユーザは、TV起動ボタン7Aを押すだけで、TV視聴/録画を即座に行うことが出来る。
【0016】
本コンピュータ1は、地上波デジタルTV放送を受信、再生することができる。コンピュータ本体1の右側面には、地上波デジタルTV放送用のアンテナ端子10が設けられている。
【0017】
DVD/CD起動ボタン7Bは、DVDやCDに記録されたビデオコンテンツを再生するためのボタンである。DVD/CD起動ボタン7Bがユーザによって押下された時、ビデオコンテンツを再生するためのビデオ再生アプリケーションプログラムが起動される。このビデオ再生アプリケーションプログラムも、副オペレーティングシステム上で動作するアプリケーションプログラムである。DVD/CD起動ボタン7Bがユーザによって押下された時は、主オペレーティングシステムではなく、副オペレーティングシステムが起動され、ビデオ再生アプリケーションプログラムが自動的に実行される。
【0018】
次に、図2を参照して、本コンピュータ1のシステム構成について説明する。
【0019】
本コンピュータ1は、図2に示されているように、CPU11、ノースブリッジ(NB)12、システムメモリ13、サウスブリッジ(SB)14、グラフィクスコントローラ15、サウンドコントローラ16、ビデオエンハンサ17、BIOS−ROM18、LANコントローラ19、ハードディスクドライブ(HDD)20、DVDドライブ(DVDD)21、カードコントローラ22、無線LANコントローラ23、IEEE 1394コントローラ24、エンベデッドコントローラ(EC)25、デジタルTV放送受信処理部26および暗号化機27を備えている。
【0020】
CPU11は本コンピュータ1の動作を制御するプロセッサであり、HDD20からシステムメモリ13にロードされる、主オペレーティングシステム/副オペレーティングシステムおよびTVアプリケーションプログラムのような各種アプリケーションプログラムを実行する。また、CPU11は、BIOS−ROM18に格納されたシステムBIOS(Basic Input Output System)も実行する。システムBIOSはハードウェア制御のためのプログラムである。
【0021】
NB12は、CPU11のローカルバスとSB14との間を接続するブリッジデバイスである。NB12には、システムメモリ13をアクセス制御するメモリコントローラも内蔵されている。また、NB12は、AGP(Accelerated Graphics Port)バス、PCI express規格のシリアルバスなどを介してグラフィクスコントローラ15との通信を実行する機能も有している。
【0022】
グラフィクスコントローラ15は、本コンピュータ1のディスプレイモニタとして使用されるLCD4を制御する表示コントローラである。このグラフィクスコントローラ15によって生成される映像データは、ビデオエンハンサ17に送られ、映像データを高画質化するための映像処理(画質調整処理)が施される。このビデオエンハンサ17によって高画質化された映像データは、LCD4に送られる。また、このビデオエンハンサ17によって高画質化された映像データは、コンピュータ本体1に設けられたコネクタを介して外部のTVモニタやHDMIモニタに送出することもできる。
【0023】
SB14は、LPC(Low Pin Count)バス上の各デバイスおよびPCI(Peripheral Component Interconnect)バス上の各デバイスを制御する。また、SB14は、HDD20、DVDD21を制御するためのIDE(Integrated Drive Electronics)コントローラを内蔵している。さらに、SB14は、サウンドコントローラ16との通信を実行する機能も有している。
【0024】
サウンドコントローラ16は音源デバイスであり、再生対象のオーディオデータをスピーカ9A,9Bやコネクタを介して接続される外部の5.1チャンネルスピーカシステムに出力する。
【0025】
カードコントローラ22は、PCカード、SD(Secure Digital)カードのようなカードを制御する。無線LANコントローラ23は、例えばIEEE 802.11規格の無線通信を実行する無線通信デバイスである。IEEE 1394コントローラ24は、IEEE 1394規格のシリアルバスを介して外部機器との通信を実行する。EC25は、電力管理のためのエンベデッドコントローラと、キーボード5およびタッチパッド8を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このEC25は、ユーザによるパワーボタン6の操作に応じて、本コンピュータ1をパワーオン/パワーオフする機能を有している。さらに、EC25は、ユーザによるTV起動ボタン7A、DVD/CD起動ボタン7Bの操作に応じて、本コンピュータ1をパワーオンすることもできる。
【0026】
デジタルTV放送受信処理部26は、地上波デジタルTV放送のようなデジタル放送番組を受信する装置であり、アンテナ端子10に接続されている。このデジタルTV放送受信処理部26は、図示のように、デジタルTVチューナ28およびOFDM(Orthogonal Frequency Division Multiplexing)デモジュレータ29を備えている。デジタルTVチューナ28およびOFDMデモジュレータ29は、地上波デジタルTV放送の放送番組データを受信するチューナモジュールとして機能する。地上波デジタルTV放送では、各放送番組データ(ビデオ、オーディオ)に対する圧縮符号化方式としてMPEG2が利用されている。また、映像フォーマットとしては、高解像度のHD(High Definition)が使用されている。
【0027】
このデジタルTVチューナ28およびOFDMデモジュレータ29から構成されるデジタルTV放送受信処理部26は、アンテナ端子10から入力されるTV放送信号の中から特定チャネルの放送信号を受信し、その受信したTV放送信号からトランスポートストリーム(TS)を取り出す。トランスポートストリームは、圧縮符号化された放送コンテンツを多重化したストリームである。地上波デジタルTV放送においては、チャネル(物理チャネル)毎に複数の番組が多重化されている。
【0028】
暗号化機27は、デジタルTV放送受信処理部26から入力されるトランスポートストリームを復号した後、TVアプリケーションプログラムと共有する暗号鍵を使って再暗号化し、PCIバスを介してシステムメモリ13に転送する。この再暗号化は、たとえPCIバス経由で放送番組データが不正に取り出されても、その取り出された放送番組データが再生されることを防止するために行うものである。
【0029】
つまり、本コンピュータ1では、PCIバスといった汎用インタフェースを介して重要データを暗号化して送受信しているわけである。そして、本コンピュータ1は、この暗号化に用いる暗号鍵の更新を、送信側および受信側の当事者間で同期を取ることなく、送信側にて任意のタイミングで実行でき、かつ、受信側にてその更新に追従できるようにしたものであり、以下、この点について詳述する。
【0030】
なお、送信側および受信側の当事者間で同期を取ることなく、送信側にて任意のタイミングで暗号鍵を更新でき、かつ、受信側にてその更新に追従できるようにするために、本コンピュータ1では、受信したデータの正当性を受信側で検証するための検証データを送信側が送信データに付加することを前提としており、まず、図3を参照して、本コンピュータ1で実行される暗号データ通信の基本的な動作原理を説明する。
【0031】
図3は、汎用インタフェースであるPCIバス経由で暗号化機27とTVアプリケーションプログラムとの間で実行される暗号データ通信の基本的な動作原理を説明するための機能ブロック図である。図中の送信器100は暗号化機27に対応し、また、受信器200はTVアプリケーションプログラムに対応する。
【0032】
送信器100および受信器200は、暗号データ通信路を確立するための認証処理を行う認証処理部を有している。この認証処理を行うタイミングには特に制約はなく、当該認証処理が正常終了すると、各々の認証処理部にてセッションキーが生成される。例えば暗号化方式がAES(Advanced Encryption Standard)−128bitの場合、認証処理部によって生成されるセッションキーは128ビットである。この場合、暗号化対象となるデータブロックは、128ビット単位でCBC(CipherBlockChaining)暗号されることになる。
【0033】
図中の平文データとは、実際に転送対象となるデータであり、ここでは128ビットデータであるとする。そして、本実施形態では、この平文データを送信器100から受信器200へ送信する場合に、認証処理によって当事者間で生成されるセッションキーを検証用データとしても利用する。なお、この例では、セッションキーデータは128ビットデータであるとする。
【0034】
送信器100では、セッションキー生成部101にて生成されたセッションキーを検証用データとして平文データの先頭に付加する。そして、このセッションキーと平文データとからなる256ビットのデータ全体が暗号化部102に渡され、その結果、256ビットのデータブロックとして、同セッションキーの128ビット鍵にてCBC暗号されることになる。なお、この例では、セッションキーを平文データの先頭に付加することとしたが、これに限らず、例えば末尾に付加するようにしても構わない。
【0035】
暗号化されたデータ(暗号データ)は、転送先の受信器200では、セッションキー生成201にて生成されたセッションキーにより復号部202にて復号される。また、セッションキー抽出部203は、この復号されたデータ中から先頭128ビットを検証用データ、つまりセッションキーとして抽出する。そして、セッションキー検証部204は、セッションキー抽出部203にて検証用データとして抽出されたセッションキーとセッションキー生成部201にて生成されたセッションキーとを比較し、この検証結果に問題がない場合、復号後の平文データは正常データであると判定する。
【0036】
次に、図4を参照して、このような動作原理で暗号データ通信を実行する本コンピュータ1において、送信側および受信側の当事者間で同期を取ることなく実行される暗号鍵更新の動作原理について説明する。
【0037】
図中、(A)は、暗号鍵の更新前における送信器100および受信器200間の暗号データ通信の様子を示しており、(B)は、暗号鍵の更新後における送信器100および受信器200間の暗号データ通信の様子を示している。
【0038】
まず、送信器100は、受信器200との間で実行した認証処理によって生成されたセッションキー(K1)の値をそのまま用いて(K1a)、前述した平文データへの付加およびデータ全体の暗号化を実行する。同様に、受信器200も、送信器100との間で実行した認証処理によって生成されたセッションキー(K2)の値をそのまま用いて(K2a)、前述したデータ全体の復号および検証を実行する。
【0039】
ここで、例えば何らかの都合で、送信器100が、受信器200と何等の同期を取ることなく、暗号鍵を更新する場合を想定する。この場合、送信器100は、受信器200との間で実行した認証処理によって生成されたセッションキーの上位ビットと下位ビットとを入れ替えた(加工した)値を用いて(K1b)、前述した平文データへの付加およびデータ全体の暗号化を実行する。
【0040】
この暗号鍵の更新時においても、(当該暗号鍵の更新が行われたことを知らない)受信器200では、まず、送信器100との間で実行した認証処理によって生成されたセッションキーの値をそのまま用いて(K2a)、前述したデータ全体の復号および検証を実行することになる。そうすると、この検証結果は当然に問題ありとなるが、この時点で、本コンピュータ1の受信器200は、送信器100が暗号鍵を更新したものと暫定的に判断する。
【0041】
この判断を行うと、受信器200は、送信器100と同様、送信器100との間で実行した認証処理によって生成されたセッションキーの上位ビットと下位ビットとを入れ替えた値を用いて(K2b)、前述したデータ全体の復号および検証を再実行する。そして、この検証結果に問題がなければ、受信器200は、復号後の平文データは正常データであると判定するとともに、暗号鍵が更新されたという判断を確定させる。その結果、これ以降のデータ全体の復号および検証には、送信器100との間で実行した認証処理によって生成されたセッションキーの上位ビットと下位ビットとを入れ替えた値(K2b)が継続して用いられることになる。
【0042】
一方、この検証結果も問題ありとなった場合、受信器200は、復号後の平文データは異常データであると判定するとともに、暗号鍵が更新されたという判断を破棄する(セッションキーの加工を無効化する)。その結果、これ以降のデータ全体の復号および検証には、送信器100との間で実行した認証処理によって生成されたセッションキーの値(K2a)がそのまま用いられることになる。
【0043】
つまり、送信器100は、受信器200と同期を取ることなく、任意のタイミングで所定の規則(ここでは、上位ビットと下位ビットとを入れ替える)で暗号鍵を更新することができ、また、受信器200は、送信器100と同期を取ることなく、この暗号鍵の更新に追従できる。
【0044】
なお、この図4(B)に示す暗号鍵の更新後、さらに暗号鍵を更新する場合、その時点で使用している値の上位ビットと下位ビットとを入れ替えることから、当初のセッションキーの値に戻ることになる。よって、この暗号鍵の更新は、2種類の値を交互に適用することと同義となるが、予め与えられた2つの値を選択的に使用するのではなく、1つの値から2つ目の値を所定の規則で派生させ、かつ、その交換タイミングを何等のやり取りもなしに一方が自主判断で追従する点が大きく異なっている。
【0045】
送信器100と受信器200とが保有する暗号鍵の更新規則は、ここで説明した上位ビットと下位ビットとを入れ替えるもののほか、種々の規則が適用可能である。例えばセッションキーをm分割(m=4であれば32ビット毎に分割、m=8であれば16ビット毎に分割)し、この分割後のm個のデータの並びを所定の手順でシャッフルするようにしてもよい。あるいは、その時点で使用している値全体を例えば上位側にmビットずつ移動させ、上位mビットに存在していた値を下位mビットに再配置するといった巡回的なスライドを規則としてもよい。その規則によっては、1つの値から2つ以上の値を派生させることが可能となる。
【0046】
図5は、送信器100の暗号データ通信時の動作手順を示すフローチャートである。
【0047】
送信器100は、データを暗号化して送信するにあたり、まず、暗号鍵を変更する必要があるかどうかを判定する(ステップA1)。もし、変更する必要があれば(ステップA1のYES)、送信器100は、所定の規則に基づき、セッションキーを加工する(ステップA2)。
【0048】
また、送信器100は、既存または加工後のセッションキーを平文データに付加し(ステップA3)、このセッションキーが付加された平文データを当該セッションキーを用いて暗号化して(ステップA4)、この暗号化されたデータを受信器200に向けて送信する(ステップA5)。
【0049】
また、図6は、受信器200の暗号データ通信時の動作手順を示すフローチャートである。
【0050】
受信器200は、送信器100から暗号化データを受信すると(ステップB1)、この暗号化データを既存のセッションキーを用いて復号し(ステップB2)、この復号したデータ中から検証用データとしてのセッションキーを抽出する(ステップB3)。
【0051】
次に、受信器200は、この抽出したセッションキーと既存のセッションキーとが一致するかどうかを調べ(ステップB4)、一致していれば(ステップB4のYES)、受信した平文データを正常データとして処理する(ステップB5)。
【0052】
一方、一致していなければ(ステップB4のNO)、受信器200は、所定の規則に基づき、セッションキーを加工し(ステップB6)、この加工後のセッションキーを用いて暗号化データの復号を再実行する(ステップB7)。そして、受信器200は、この復号したデータ中から検証用データとしてのセッションキーを抽出し(ステップB8)、この抽出したセッションキーと既存のセッションキーとが一致するかどうかを調べる(ステップB9)。そして、一致していれば(ステップB9のYES)、受信器200は、セッションキーの加工を確定し(ステップB10)、受信した平文データを正常データとして処理する(ステップB5)。また、ここでも一致しなければ(ステップB9のNO)、受信器200は、セッションキーの加工を無効化し(ステップB11)、受信した平文データを異常データとして処理する(ステップB12)。
【0053】
このように、本実施形態のコンピュータ1では、送信側および受信側の当事者間で同期を取ることなく、暗号鍵を動的に更新することを可能とする。その結果、同じセッションキーを使用し続けた場合でも、このセッションキーから暗号鍵としての値が派生的に複数生成されるので、第三者から取得される観測データに制限を加えることができ、セキュリティレベルを向上させることを実現する。
【0054】
なお、前述の例では、検証用データとしてセッションキーを流用しているが、セッションキー以外にも、例えば平文データのハッシュ値や、セッションキー生成の過程で生成される中間データ等を検証用データとして使用しても良い。さらに言えば、送受信者間で予め決められた値を検証用データとして使用することも可能である。
【0055】
つまり、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0056】
【図1】本発明の実施形態に係るノートブック型パーソナルコンピュータのディスプレイユニットを開いた状態における斜視図
【図2】同実施形態のコンピュータのシステム構成を示す図
【図3】同実施形態のコンピュータにおいて汎用インタフェースであるPCIバス経由で暗号化機とTVアプリケーションプログラムとの間で実行される暗号データ通信の基本的な動作原理を説明するための機能ブロック図
【図4】同実施形態のコンピュータにおいて送信側および受信側の当事者間で同期を取ることなく実行される暗号鍵更新の動作原理を説明するための図
【図5】同実施形態のコンピュータの送信器側の動作手順を示すフローチャート
【図6】同実施形態のコンピュータの受信器側の動作手順を示すフローチャート
【符号の説明】
【0057】
1…コンピュータ、2…コンピュータ本体、3…ディスプレイユニット、4…LCD、5…キーボード、6…パワーボタン、7…入力操作パネル、8…タッチパッド、9A,B…スピーカ、10…地上波デジタルTV放送用アンテナ端子、11…CPU、12…ノースブリッジ(NB)、13…システムメモリ、14…サウスブリッジ(SB)、15…グラフィクスコントローラ、16…サウンドコントローラ、17…ビデオエンハンサ、18…BIOS−ROM、19…LANコントローラ、20…ハードディスクドライブ(HDD)、21…DVDドライブ(DVDD)、22…カードコントローラ、23…無線LANコントローラ、24…IEEE 1394コントローラ、25…エンベデッドコントローラ(EC)、26…デジタルTV放送受信処理部、27…暗号化機、28…デジタルTVチューナ、29…OFDMデモジュレータ、100…送信器、101…セッションキー生成部、102…暗号化部、200…受信器、201…セッションキー生成部、202…復号器、203…セッションキー抽出部、204…セッションキー検証部。

【特許請求の範囲】
【請求項1】
データ送信装置とデータ受信装置とがデータを暗号化して送受信するデータ送受信システムにおいて、
前記データ送信装置は、
互いを確認し合うための認証処理を前記データ受信装置との間で実行する認証手段と、
前記認証手段の認証処理によって生成されたセッションキーを共通鍵として用いてデータを暗号化する暗号化手段と、
送信対象の平文データに前記セッションキーを検証用データとして付加したデータ全体を送信データとして前記暗号化手段に暗号化を行わせ、これにより得られた暗号データを前記認証手段により認証処理が行われた前記データ受信装置に対して送信するデータ送信手段と、
前記暗号化手段および前記データ送信手段により共通鍵および検証用データとして用いられる前記セッションキーの値を所定の規則に基づいて加工する加工手段と、
を具備し、
前記データ受信装置は、
互いを確認し合うための認証処理を前記データ送信装置との間で実行する認証手段と、
前記認証手段により認証処理が行われた前記データ送信装置から暗号データを受信するデータ受信手段と、
前記認証手段の認証処理によって生成されたセッションキーを共通鍵として用いて前記暗号データを復号する復号手段と、
前記復号手段により復号された受信データ全体の中から受信対象の平文データに検証用データとして付加された前記セッションキーを抽出し、この抽出したセッションキーの値と前記生成されたセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第1の判定手段と、
前記第1の判定手段により正しくないと判断された場合、前記生成されたセッションキーの値を所定の規則に基づいて加工し、この加工後のセッションキーを共通鍵として用いた前記暗号データの復号を前記復号手段に再実行させ、これにより得られた受信データ全体の中から検証用データとして付加された前記セッションキーを再抽出し、この再抽出したセッションキーの値と前記加工後のセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第2の判定手段と、
を具備することを特徴とするデータ送受信システム。
【請求項2】
前記所定の規則は、前記セッションキーの値を示すnビットのデータを2分割し、その上位ビットと下位ビットとを入れ替えることであることを特徴とする請求項1記載のデータ送受信システム。
【請求項3】
前記所定の規則は、前記セッションキーの値を示すnビットのデータをm分割し、そのm個の(n/m)ビット・データの並び順を所定の手順で入れ替えることであることを特徴とする請求項1記載のデータ送受信システム。
【請求項4】
前記所定の規則は、前記セッションキーの値を示すnビットのデータを所定の方向にmビット分巡回的にシフトさせることであることを特徴とする請求項1記載のデータ送受信システム。
【請求項5】
前記データ受信装置の前記第2の判定手段は、前記受信対象の平文データが正しくないと判断した場合、前記セッションキーに対して施した加工を無効化することを特徴とする請求項1記載のデータ送受信システム。
【請求項6】
データ送信装置とデータ受信装置とがデータを暗号化して送受信するデータ送受信システムのデータ送受信方法であって、
前記データ送信装置は、
互いを確認し合うための認証処理を前記データ受信装置との間で実行する認証ステップと、
前記認証ステップの認証処理によって生成されたセッションキーを共通鍵として用いてデータを暗号化する暗号化ステップと、
送信対象の平文データに前記セッションキーを検証用データとして付加したデータ全体を送信データとして前記暗号化ステップに暗号化を行わせ、これにより得られた暗号データを前記認証ステップにより認証処理が行われた前記データ受信装置に対して送信するデータ送信ステップと、
前記暗号化ステップおよび前記データ送信ステップにより共通鍵および検証用データとして用いられる前記セッションキーの値を所定の規則に基づいて加工する加工ステップと、
を具備し、
前記データ受信装置は、
互いを確認し合うための認証処理を前記データ送信装置との間で実行する認証ステップと、
前記認証ステップにより認証処理が行われた前記データ送信装置から暗号データを受信するデータ受信ステップと、
前記認証ステップの認証処理によって生成されたセッションキーを共通鍵として用いて前記暗号データを復号する復号ステップと、
前記復号ステップにより復号された受信データ全体の中から受信対象の平文データに検証用データとして付加された前記セッションキーを抽出し、この抽出したセッションキーの値と前記生成されたセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第1の判定ステップと、
前記第1の判定ステップにより正しくないと判断された場合、前記生成されたセッションキーの値を所定の規則に基づいて加工し、この加工後のセッションキーを共通鍵として用いた前記暗号データの復号を前記復号ステップに再実行させ、これにより得られた受信データ全体の中から検証用データとして付加された前記セッションキーを再抽出し、この再抽出したセッションキーの値と前記加工後のセッションキーの値とを比較して、前記受信対象の平文データの正否を判定する第2の判定ステップと、
を具備することを特徴とするデータ送受信方法。
【請求項7】
前記所定の規則は、前記セッションキーの値を示すnビットのデータを2分割し、その上位ビットと下位ビットとを入れ替えることであることを特徴とする請求項6記載のデータ送受信方法。
【請求項8】
前記所定の規則は、前記セッションキーの値を示すnビットのデータをm分割し、そのm個の(n/m)ビット・データの並び順を所定の手順で入れ替えることであることを特徴とする請求項6記載のデータ送受信方法。
【請求項9】
前記所定の規則は、前記セッションキーの値を示すnビットのデータを所定の方向にmビット分巡回的にシフトさせることであることを特徴とする請求項6記載のデータ送受信方法。
【請求項10】
前記データ受信装置の前記第2の判定ステップは、前記受信対象の平文データが正しくないと判断した場合、前記セッションキーに対して施した加工を無効化することを特徴とする請求項6記載のデータ送受信方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2007−150976(P2007−150976A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−345381(P2005−345381)
【出願日】平成17年11月30日(2005.11.30)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】