(57)【要約】【課題】通信経路途中で情報漏洩があっても、暗号化された送信情報の解読が不可能である暗号データ送信システムを提供する。【解決手段】送信側装置でデータを暗号化して受信側装置に送信する暗号化データ送信システムにおいて、送信側装置では、暗号化データを送信した場合に受信側装置が当該暗号化データを受信する予定時刻を算出し、この算出された時間情報に基づいて暗号鍵を生成する。送信側装置は、この暗号鍵を用いて送信すべきデータを暗号化するとともに、暗号鍵の情報を算出した受信予定時刻データで暗号化し、これらの暗号化データと暗号化鍵情報を送信する。受信側装置では、暗号化データと暗号化鍵情報とを受信すると、実際に受信した時刻で暗号化鍵情報を復号し、復号された暗号鍵情報に基づいて暗号鍵を生成し、当該暗号鍵で暗号化データを復号する。【選択図】図４
2009290398.tif 000002
【特許請求の範囲】
【請求項１】
送信側装置でデータを暗号化して受信側装置に送信する暗号化データ送信システムであって、
前記送信側装置は、
暗号化データを送信した場合に前記受信側装置が当該暗号化データを受信する予定時刻を算出する受信予定時刻算出手段と、
前記受信予定時刻算出手段により算出された時間情報に基づいて暗号鍵を生成する暗号鍵生成手段と、
前記暗号鍵生成手段により生成された暗号鍵を用いて送信すべきデータを暗号化するデータ暗号化手段と、
前記暗号鍵生成手段により生成された暗号鍵の情報を前記受信予定時刻算出手段により算出された受信予定時刻データで暗号化する鍵暗号化手段と、
前記データ暗号化手段により暗号化された暗号化データと前記鍵暗号化手段により暗号化された鍵情報を前記受信側装置に送信する送信手段と、を具備し、
前記受信側装置は、
前記送信側装置の送信手段により送信された暗号化データと暗号化鍵情報とを受信する受信手段と、
前記受信手段により実際に受信した時刻で暗号化鍵情報を復号する暗号鍵復号手段と、
前記暗号鍵復号手段により復号された暗号鍵情報に基づいて暗号鍵を生成し、当該暗号鍵で暗号化データを復号するデータ復号手段と
を具備したことを特徴とする暗号化データ送信システム。
【請求項２】
前記送信側装置は、
暗号化データ送信前にネットワーク接続確認コマンドを受信側装置に送信し、送信経路の情報及びデータ送信に関する時間情報を取得する事前情報取得手段を具備し、
受信予定時刻算出手段は、前記事前情報取得手段により取得した時間情報を利用して受信予定時刻を算出することを特徴とする請求項１に記載の暗号化データ送信システム。
【請求項３】
前記事前情報取得手段は、データ送信に関する時間情報として、前記受信側装置に送信データが到達するのにかかる到達時間情報と送信側装置と受信側装置が備えている計時手段の時差情報を取得することを特徴とする請求項２に記載の暗号化データ送信システム。  
【請求項４】
送信側装置でデータを暗号化して受信側装置に送信する暗号化データ送信方法であって、
前記送信側装置においては、
暗号化データを送信した場合に前記受信側装置が当該暗号化データを受信する予定時刻を算出する受信予定時刻算出ステップと、
前記受信予定時刻算出ステップにより算出された時間情報に基づいて暗号鍵を生成する暗号鍵生成ステップと、
前記暗号鍵生成ステップにより生成された暗号鍵を用いて送信すべきデータを暗号化するデータ暗号化ステップと、
前記暗号鍵生成ステップにより生成された暗号鍵の情報を前記受信予定時刻算出ステップにより算出された受信予定時刻データで暗号化する鍵暗号化ステップと、
前記データ暗号化ステップにより暗号化された暗号化データと前記鍵暗号化ステップにより暗号化された鍵情報を前記受信側装置に送信する送信ステップと、を行い、
前記受信側装置においては、
前記送信側装置の送信ステップにより送信された暗号化データと暗号化鍵情報とを受信する受信ステップと、
前記受信ステップにより実際に受信した時刻で暗号化鍵情報を復号する暗号鍵復号ステップと、
前記暗号鍵復号ステップにより復号された暗号鍵情報に基づいて暗号鍵を生成し、当該暗号鍵で暗号化データを復号するデータ復号ステップと
を行うことを特徴とする暗号化データ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された相手先装置にデータを暗号化して送信する暗号化データ送信システム及び暗号化データ送信方法に関する。
【背景技術】
【０００２】
従来より、情報を相手に送る際、通信経路等での情報漏洩を防ぐためにデータを暗号化して送信することが行われている。
【０００３】
暗号化の手法としては、メッセージの送信者と受信者が一組の鍵を共有しており、その鍵を用いて平文を暗号化し、暗号化データを復号する共通鍵方式や、「対称暗号」と呼ばれる共通鍵方式と反対に「非対称暗号」と呼ばれる、暗号化と復号に異なる鍵が使用される公開鍵方式が知られている。また、共通鍵方式と公開鍵方式の両方の長所を生かして、大容量の情報を共通鍵方式で暗号化し、その暗号化に用いた共通鍵を公開鍵方式で暗号化するといった暗号方式も提案されている（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００２−５７６５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、送信データを暗号化し、さらに暗号化に用いた共通鍵も暗号化して送信して場合、通信経路の途中で情報が盗まれたりして、共通鍵が解読されてしまうと、暗号化された送信データも解読されてしまう虞がある。
【０００６】
本発明は、時間情報を利用して暗号鍵を生成し、送信したい情報をこの暗号鍵で暗号化し、その暗号鍵の情報を暗号化して相手側に送ることにより、通信経路途中で情報漏洩があっても、暗号化された送信情報の解読が不可能である暗号データ送信システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係る暗号化データ送信システムは、送信側装置でデータを暗号化して受信側装置に送信する暗号化データ送信システムであって、前記送信側装置は、暗号化データを送信した場合に前記受信側装置が当該暗号化データを受信する予定時刻を算出する受信予定時刻算出手段と、前記受信予定時刻算出手段により算出された時間情報に基づいて暗号鍵を生成する暗号鍵生成手段と、前記暗号鍵生成手段により生成された暗号鍵を用いて送信すべきデータを暗号化するデータ暗号化手段と、前記暗号鍵生成手段により生成された暗号鍵の情報を前記受信予定時刻算出手段により算出された受信予定時刻データで暗号化する鍵暗号化手段と、前記データ暗号化手段により暗号化された暗号化データと前記鍵暗号化手段により暗号化された鍵情報を前記受信側装置に送信する送信手段と、を具備し、前記受信側装置は、前記送信側装置の送信手段により送信された暗号化データと暗号化鍵情報とを受信する受信手段と、前記受信手段により実際に受信した時刻で暗号化鍵情報を復号する暗号鍵復号手段と、前記暗号鍵復号手段により復号された暗号鍵情報に基づいて暗号鍵を生成し、当該暗号鍵で暗号化データを復号するデータ復号手段とを具備したことを特徴とする。
【発明の効果】
【０００８】
この発明によれば、通信経路途中で情報漏洩があっても、暗号化された送信情報が簡単に解読されることはなくなる。
【発明を実施するための最良の形態】
【０００９】
本発明の実施形態にかかる暗号化データ送信システムについて、以下図面を参照して説明する。
【００１０】
図１は、この発明の実施形態に適用される暗号化データ送信システムの構成の一例を示す全体構成図である。図示するように、暗号化データ送信システムは、送信側装置としてのパーソナルコンピュータ（ＰＣ）１と、この送信側ＰＣ１から暗号化されたデータを受信する受信側装置としての相手先サーバ２と、送信側ＰＣ１をインターネット等の通信回線に接続するインターネット・サービス・プロバイダ（ＩＳＰ）３およびインターネット上に設置される多数の中継点４で構成されておおり、ＩＳＰ３及び各中継点４はルータを持っている。
【００１１】
本システムにおいては、送信側ＰＣ１において、ユーザは相手に送る文書データ等を作成し、送信する場合は、後述する暗号化処理を実行して、暗号化されたデータを相手先サーバ２に送信する。
【００１２】
図２は、前記送信側ＰＣ１の構成の一例を示すブロック図である。図示するように、送信側ＰＣ１は、制御部１０、通信部１１、表示部１２、入力部１３、計時部１４、記憶装置１５、ＲＡＭ１６、及び暗号化部１７を備えて構成される。
【００１３】
通信部１１は、インターネット等の通信回線と接続を行い、相手先サーバ２に対してデータの送信を行う。表示部１２は、ＬＣＤ（Liquid Crystal Display）等からなり、ＰＣ１で作成する文書や、ＰＣの動作状況を示す画像等を表示する。入力部１３は、キーボードを有し、ユーザによる情報の入力に用いられる。計時部１４は当該ＰＣ１の現在時刻を計時している。
【００１４】
記憶装置１５は、ＰＣの動作を制御するためのプログラムや各種データを記憶する。ＲＡＭ１６は、制御部１０のＣＰＵがプログラムを実行する際に、ワークメモリとして用いられる。
【００１５】
暗号化部１７は、ユーザにより作成された文書等を暗号化データに変換する暗号化処理を実行する。
【００１６】
制御部１０はＣＰＵを含んでおり、通信部１１、表示部１２、入力部１３、計時部１４、記憶装置１５、ＲＡＭ１６、暗号化部１７等と連携して各種処理を行う。
【００１７】
図３は、相手先サーバ２の構成の一例を示すブロック図である。図示するように、サーバ２は、制御部２０、通信部２１、入力部２２、出力部２３、計時部２４、記憶装置２５、ＲＡＭ２６、復号部２７を備えて構成される。
【００１８】
通信部２１は、専用回線等によりインターネットと接続し、ＰＣ１とデータの送受信を行うものである。
【００１９】
入力部２２は、キーボード等を備え各種データを入力するものであり、出力部２３は、表示部、プリンタ等で構成され、各種データを出力するものである。
【００２０】
計時部２４は、当該サーバ２の現在時刻を計時している。記憶装置２５は、サーバ２の動作を制御するためのプログラムや各種データを記憶する。ＲＡＭは２６は、制御部２０のＣＰＵがプログラムを実行する際に、ワークメモリとして用いられる。
【００２１】
復号部２７は、暗号化データを受信した際にこのデータを制御部１０の指令にしたがって復号する。
【００２２】
制御部２０はＣＰＵを含んでおり、通信部２１、入力部２２、出力部２３、計時部２４、記憶装置２５、ＲＡＭ２６、復号部２７等と連携して各種処理を行う。
【００２３】
次に上記の構成を有する暗号化データ送信システムにおける動作を説明する。
図４は、暗号化データ送信システム１の全体動作を示すフローチャートである。
【００２４】
送信側ＰＣ１では、データを相手方サーバ２に送信するにあたり、予め送信データを作成しておく。そして相手先を指定して暗号化送信の命令がユーザにより行われると、まず相手先サーバ２に対してネットワーク接続確認コマンドが送信される（ステップＡ１）。  このとき送信側ＰＣ１は、計時部１４の時刻データを読み込んで、ＲＡＭ１５に送信時刻データとして記録する。
【００２５】
このネットワーク接続確認コマンドは、ネットワーク接続を確認したいホストコンピュータに対してIPパケットを発行し、そのパケットが正しく届いて返答が行われるかを確認するためのコマンドで、送信側ＰＣ１から相手先サーバ２まで中継した中継点のＩＰアドレスを一緒に相手先まで送り、相手先サーバがこのコマンドを受信した時刻を添付して、同じルートで返信コマンドを貰うものである。
【００２６】
したがって、送信側ＰＣ１から送信されたネットワーク接続確認コマンドは、ＩＳＰ（中継点１）から適当な中継点を経由して相手先サーバ２に到達する。
【００２７】
相手先サーバ２では、このネットワーク接続確認コマンドを受信すると（ステップＢ１）、計時部２４の時刻データを読み込んで、この受信時刻データをネットワーク接続確認コマンドに添付して送信元である送信側ＰＣ１に返信する（ステップＢ２）。
【００２８】
相手先サーバ２がネットワーク接続確認コマンドに受信時刻データを添付して返信すると、送信側ＰＣ１は、送信したときと同じルートで送られてくる当該コマンドを受信する（ステップＡ２）。この受信時に送信側ＰＣ１は、計時部１４の時刻データを読み込んで、ＲＡＭ１５に受信時刻データとして記録する。
【００２９】
そして次に送信側ＰＣ１では、ＲＡＭ１５に記憶した受信時刻データと送信時刻データから相手先サーバ２にデータを送信するのに要する時間（到達時間ｔ１）を算出する（ステップＡ３）。
【００３０】
例えば、送信時刻が９：００：００：０００（９時）であり、受信時刻が９：００：００：０２４であった場合、ネットワーク接続確認コマンドを送信してから返信コマンドを受信するまで、往復するのにかかった時間が０．０２４秒であるから、片道にかかる時間を０．０１２秒と計算し、これを到達時間ｔ１とする。
【００３１】
次に、添付された相手先サーバ２の受信時刻データを読み出し、自己の有する計時部１４と相手先サーバ２の有する計時部２４の時差ｔ２を算出する（ステップＡ４）。例えば、相手先サーバがネットワーク接続確認コマンドを受信した時刻が９：００：０１：０１２であったとすると、到達時間ｔ１は０．０１２秒であると計算されているから、送信側ＰＣ１の計時部１４の時間でみれば相手先サーバ２に到達する時刻は９：００：００：０１２のはずであり、このことから相手先サーバ２の計時部２４は、送信側ＰＣ１の計時部１４に対して１秒進んだ時差を有している、つまり時差ｔ２は＋１秒であると算出される。
【００３２】
到達時間ｔ１と時差ｔ２が算出されると、次に、送信側ＰＣ１で暗号化してデータを送信する送信予定時刻ｔ３を設定する（ステップＡ５）。ここでは、例えば暗号化処理する時間を考慮して、１分後の９：０１：００：０００にデータを送信すると設定する。
【００３３】
次に、送信側ＰＣ１では、暗号化したデータをステップＡ５で設定した送信予定時刻に相手先サーバ２に送信した場合の、相手先サーバ２の受信予定時刻ｔ４を算出する（ステップＡ６）。この場合、到達時間ｔ１が０．０１２秒、計時部２４の時差ｔ２が＋１秒と算出されているから、相手先サーバ２の受信予定時刻ｔ４は、９：０１：０１：０１２となる。
【００３４】
次に、送信側ＰＣ１では、ステップＡ３〜Ａ６で求めた各時間データｔ１〜ｔ４を用いて暗号鍵Ｋを生成し、この暗号鍵Ｋで送信するデータを暗号化する（ステップＡ７）。例えば、ｔ１〜ｔ４の値をつないで暗号鍵Ｋ（ｔ１＋ｔ２＋ｔ３＋ｔ４）として、データと排他的論理和を演算することで暗号化する。
【００３５】
送信すべきデータの暗号化が終了すると、暗号鍵Ｋの一部、ｔ１＋ｔ２＋ｔ３からなる鍵情報をｔ４を暗号鍵として用いて暗号化する（ステップＡ８）。
【００３６】
データの暗号化と暗号鍵の一部データ（鍵情報）の暗号化が終了すると、ステップＡ５で設定した送信予定時刻になるのを待つ（ステップＡ９）。そして時刻になると送信側ＰＣ１は暗号化されたデータ及び暗号鍵データを相手先サーバ２に対し、ネットワーク接続確認コマンドを送信したときの経路を指定して送信する（ステップＡ１０）。
【００３７】
相手先サーバ２は、送信側ＰＣ１から暗号データが送信されてくるとこの暗号化データを受信する（ステップＢ３）。この暗号データには、暗号鍵Ｋで暗号化された暗号化データと暗号鍵Ｋの一部をｔ４で暗号化した暗号化鍵情報が含まれている。また、相手先サーバ２は、この暗号データを受信したときの計時部２４の実際の受信時刻Ｔ４を読み込んでＲＡＭ２６に記憶する。
【００３８】
そして、相手先サーバ２は、実際の受信時刻Ｔ４で暗号鍵Ｋの一部が暗号化された暗号化鍵情報を復号する（ステップＢ４）。復号された暗号鍵情報は、送信側ＰＣ１で算出された各時間データｔ１〜ｔ３をつないだｔ１＋ｔ２＋ｔ３である。
【００３９】
その後相手先サーバ２は、この復号された暗号鍵情報から時間データｔ１、ｔ２、ｔ３を抽出し、これらの各データを用いて受信予定時刻ｔ４を算出する（ステップＢ５）。
【００４０】
そして、ステップＢ５で算出された受信予定時刻ｔ４と実際の受信時刻Ｔ４が一致するか判断する（ステップＢ６）。一致していればｔ１〜ｔ４の時間データを連結して、暗号鍵Ｋ（ｔ１＋ｔ２＋ｔ３＋ｔ４）を生成する（ステップＢ７）。
【００４１】
暗号鍵Ｋが生成されると、相手先サーバ２では、この暗号鍵Ｋを用いて受信した暗号化データを復号する（ステップＢ８）。
【００４２】
なお、相手先サーバ２で実際の受信時刻Ｔ４が受信予定時刻ｔ４と一致しない場合は（ステップＢ６（Ｎo））、復号処理を行わず終了する。
【００４３】
その結果、経路途中で暗号化データを傍受しても、受信時刻が異なるため暗号の解読はできないことになる。
【００４４】
なお、本願発明は、前記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【図面の簡単な説明】
【００４５】
【図１】暗号化データ送信システムの全体を示す構成図である。
【図２】暗号化データ送信システムに使用される送信側ＰＣ１の構成を示すブロック図である。
【図３】暗号化データ送信システムに使用される相手先サーバ２の構成を示すブロック図である。
【図４】暗号化データ送信システムの送信側ＰＣ１及び相手先サーバ２動作を示すフローチャートである。
【符号の説明】
【００４６】
１    送信側ＰＣ
２    相手先サーバ
３    ＩＳＰ
４    中継点
１０  制御部
１１  通信部
１２  カメラ部
１３  入力部
１４  計時部
１５  記憶装置
１６  ＲＡＭ
１７  暗号化部
２０  制御部
２１  通信部
２２  入力部
２３  出力部
２４  計時部
２５  記憶装置
２６  ＲＡＭ
２７  復号部
【図１】
2009290398.tif 000003
【図２】
2009290398.tif 000004
【図３】
2009290398.tif 000005
【図４】
2009290398.tif 000006