(57)【特許請求の範囲】
【請求項１】
送信端末から通信回線を介して受信端末へ暗号化データを送信する暗号通信方法であって、
（１）送信端末が、第２プログラムと連携して暗号化データを復号するための第１プログラムを受信端末に送信する処理と、
（２）受信端末が、前記第１プログラムを受信する処理と、
（３）受信端末が、前記第１プログラムを実行する処理と、
（４）送信端末が、データを暗号化して暗号化データを作成し、受信端末に送信すると共に、前記第１プログラムと連携して前記暗号化データを復号するための第２プログラムを受信端末に送信する処理と、
（５）受信端末が、前記暗号化データと前記第２プログラムを受信し、前記第２プログラムを実行し、前記第２プログラムが、前記第１プログラムと連携して前記暗号化データを復号する処理と、
を有することを特徴とする暗号通信方法。
【請求項２】
請求項１に記載の暗号通信方法において、前記第１プログラムは、前記第２プログラムに復号キーを渡すプログラムであり、前記第２プログラムは、前記復号キーを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信方法。
【請求項３】
請求項１に記載の暗号通信方法において、前記第１プログラムは、前記第２プログラムに復号アルゴリズムを渡すプログラムであり、前記第２プログラムは、前記復号アルゴリズムを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信方法。
【請求項４】
送信端末から通信回線を介して受信端末へ暗号化データを送信する暗号通信システムであって、
前記送信端末は、第２プログラムと連携して暗号化データを復号するための第１プログラムを受信端末に送信する第１プログラム配布手段と、データを暗号化して暗号化データを作成し受信端末に送信する暗号化処理手段と、前記第１プログラムと連携して前記暗号化データを復号するための第２プログラムを受信端末に送信する第２プログラム配布手段とを具備し、
前記受信端末は、前記第１プログラムと前記暗号化データと前記第２プログラムを受信する受信手段と、前記第１プログラムと前記第２プログラムを実行するプログラム実行手段とを具備する
ことを特徴とする暗号通信システム。
【請求項５】
請求項４に記載の暗号通信システムにおいて、前記第１プログラムは、前記第２プログラムに復号キーを渡すプログラムであり、前記第２プログラムは、前記復号キーを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信システム。
【請求項６】
請求項４に記載の暗号通信システムにおいて、前記第１プログラムは、前記第２プログラムに復号アルゴリズムを渡すプログラムであり、前記第２プログラムは、前記復号アルゴリズムを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、暗号通信方法およびシステムに関し、さらに詳しくは、暗号攻撃に強い暗号通信方法およびシステムに関する。
【０００２】
【従来の技術】
暗号化データを復号するためには、復号キーと復号アルゴリズムを知る必要がある。換言すれば、復号キーか復号アルゴリズムを秘密にできれば、暗号攻撃に耐えられる。
インターネット上で従来利用されている暗号通信方法では、不特定多数の利用を図るため、同一の復号プログラム（つまり、同一の復号アルゴリズム）を用い、復号キーを秘密にしている。
【０００３】
【発明が解決しようとする課題】
インターネット上で従来利用されている暗号通信方法では、暗号攻撃（例えば差分攻撃法等が知られている）により復号キーを特定されると、暗号化データを復号されてしまう問題点がある。
そこで、本発明の目的は、暗号攻撃に強い暗号通信方法およびシステムを提供することにある。
【０００４】
【課題を解決するための手段】
第１の観点では、本発明は、送信端末から通信回線を介して受信端末へ暗号化データを送信する暗号通信方法であって、
（１）送信端末が、第２プログラムと連携して暗号化データを復号するための第１プログラムを受信端末に送信する処理と、
（２）受信端末が、前記第１プログラムを受信する処理と、
（３）受信端末が、前記第１プログラムを実行する処理と、
（４）送信端末が、データを暗号化して暗号化データを作成し、受信端末に送信すると共に、前記第１プログラムと連携して前記暗号化データを復号するための第２プログラムを受信端末に送信する処理と、
（５）受信端末が、前記暗号化データと前記第２プログラムを受信し、前記第２プログラムを実行し、前記第２プログラムが、前記第１プログラムと連携して前記暗号化データを復号する処理と、
を有することを特徴とする暗号通信方法を提供する。
上記第１の観点による暗号通信方法では、受信端末は第１プログラムと第２プログラムを実行するだけであるから、特殊な構成は不要であり、不特定多数の利用を図ることが出来る。また、送信端末は、第１プログラムと第２プログラムを任意に変更できるから、例えば暗号化データ毎に変更することが可能である。この場合、第三者が、多数のデータ（平文）と暗号化データ（暗号文）の対を入手できても、復号方法を特定できないから、暗号化データを復号することは出来ない。これに対して、従来の暗号通信方法では、複数の平文と暗号文の対を入手することで復号キーを特定できるから、暗号文を復号されてしまう。かくして、従来よりも暗号攻撃に強い暗号通信方法を提供できる。
【０００５】
第２の観点では、本発明は、上記構成の暗号通信方法において、前記第１プログラムは、前記第２プログラムに復号キーを渡すプログラムであり、前記第２プログラムは、前記復号キーを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信方法を提供する。
上記第２の観点による暗号通信方法では、第１プログラムと第２プログラムとで復号キーを動的に生成するから、例えば暗号化データ毎に異なる復号キーを生成するようにすることが可能である。この場合、第三者が、多数のデータ（平文）と暗号化データ（暗号文）の対を入手できても、復号キーを特定できないから、暗号化データを復号することは出来ない。これに対して、従来の暗号通信方法では、複数の平文と暗号文の対を入手することで復号キーを特定できるから、暗号文を復号されてしまう。かくして、従来よりも暗号攻撃に強い暗号通信方法を提供できる。
【０００６】
第３の観点では、本発明は、上記構成の暗号通信方法において、前記第１プログラムは、前記第２プログラムに復号アルゴリズムを渡すプログラムであり、前記第２プログラムは、前記復号アルゴリズムを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信方法を提供する。
上記第３の観点による暗号通信方法では、第１プログラムと第２プログラムとで復号アルゴリズムを動的に生成するから、例えば暗号化データ毎に異なる復号アルゴリズムを生成するようにすることが可能である。この場合、第三者が、多数のデータ（平文）と暗号化データ（暗号文）の対を入手できても、復号アルゴリズムを特定できないから、暗号化データを復号することは出来ない。これに対して、従来の暗号通信方法では、複数の平文と暗号文の対を入手することで復号キーを特定できるから、暗号文を復号されてしまう。かくして、従来よりも暗号攻撃に強い暗号通信方法を提供できる。
【０００７】
第４の観点では、本発明は、送信端末から通信回線を介して受信端末へ暗号化データを送信する暗号通信システムであって、前記送信端末は、第２プログラムと連携して暗号化データを復号するための第１プログラムを受信端末に送信する第１プログラム配布手段と、データを暗号化して暗号化データを作成し受信端末に送信する暗号化処理手段と、前記第１プログラムと連携して前記暗号化データを復号するための第２プログラムを受信端末に送信する第２プログラム配布手段とを具備し、前記受信端末は、前記第１プログラムと前記暗号化データと前記第２プログラムを受信する受信手段と、前記第１プログラムと前記第２プログラムを実行するプログラム実行手段とを具備することを特徴とする暗号通信システムを提供する。
上記第４の観点による暗号通信システムでは、上記第１の観点の暗号通信方法を好適に実施できる。
【０００８】
第５の観点では、本発明は、上記構成の暗号通信システムにおいて、前記第１プログラムは、前記第２プログラムに復号キーを渡すプログラムであり、前記第２プログラムは、前記復号キーを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信システムを提供する。
上記第５の観点による暗号通信システムでは、上記第２の観点の暗号通信方法を好適に実施できる。
【０００９】
第６の観点では、本発明は、上記構成の暗号通信システムにおいて、前記第１プログラムは、前記第２プログラムに復号アルゴリズムを渡すプログラムであり、前記第２プログラムは、前記復号アルゴリズムを用いて前記暗号化データを復号するプログラムであることを特徴とする暗号通信システムを提供する。
上記第６の観点による暗号通信システムでは、上記第３の観点の暗号通信方法を好適に実施できる。
【００１０】
【発明の実施の形態】
以下、図に示す実施の形態により本発明を詳細に説明する。なお、これにより本発明が限定されるものではない。
【００１１】
−第１の実施形態−
図１は、本発明の第１の実施形態にかかる暗号通信システム１０００を示すブロック図である。
この医用画像提供システム１０００は、インターネット，ＬＡＮ，ＷＡＮのようなネットワーク１と、そのネットワーク１に接続された暗号通信サーバ２００と、一般クライアント１００とを具備して構成されている。
【００１２】
前記一般クライアント１００は、一般のパソコンと同じ構成であり、通信部１０１と、認証要求部１０２と、プログラム実行部１０３と、データ記憶部１０４とを具備している。
【００１３】
前記暗号通信サーバ２００は、通信部２０１と、セキュリティ管理部２０２と、第１プログラム配布部２０３と、暗号化処理部２０４と、第２プログラム配布部２０５と、データ記憶部２０６とを具備している。
【００１４】
図２は、一般クライアント１００が暗号通信サーバ２００から第１プログラムをダウンロードする動作を示すフロー図である。
ステップｒ１１では、一般クライアント１００の認証要求部１０２は、暗号通信サーバ２００に対して、ネットワーク１上の通信回線を接続し、ネットワーク１を介して、認証を要求する。
【００１５】
ステップｓ１１では、暗号通信サーバ２００のセキュリティ管理部２０２が、前記認証要求を受信する。
ステップｓ１２では、セキュリティ管理部２０２は、認証要求してきた一般クライアント１００の認証検査を行い、不合格ならステップｓ１３へ進み、合格ならステップｓ１４へ進む。
ステップｓ１３では、通信回線を切断する。
ステップｓ１４では、第１プログラム配布部２０３は、一般クライアント１００に対して、ネットワーク１を介して、第１プログラムを送信する。
【００１６】
ステップｒ１２では、一般クライアント１００のプログラム実行部１０３が、前記第１プログラムを受信し、データ記憶部１０４に記憶する。
【００１７】
図３は、一般クライアント１００が暗号通信サーバ２００から暗号化データおよび第２プログラムをダウンロードする動作を示すフロー図である。
ステップｒ２１では、一般クライアント１００のプログラム実行部１０３は、データ記憶部１０４に記憶していた第１プログラムを実行する。
ステップｒ２２では、プログラム実行部１０３は、暗号通信サーバ２００に対して、ネットワーク１上の通信回線を接続し、ネットワーク１を介して、データｉを要求する。
【００１８】
ステップｓ２１では、暗号通信サーバ２００の暗号化処理部２０４が、前記データｉの要求を受信する。
ステップｓ２２では、暗号化処理部２０４は、データ記憶部２０６に記憶していたデータｉを暗号化方法ｊで暗号化し、暗号化データＩＪを作成する。
ステップｓ２３では、暗号化処理部２０４は、前記暗号化データＩＪを復号するために前記第１プログラムと連携して動作する第２プログラムｊを作成する。ここで、第２プログラムｊは、第１プログラムに復号キーｊを生成させると共にその復号キーｊを用いて暗号化データＩＪを復号するプログラムとする。また、復号キーｊは、ｊに応じて異なる値とする。
ステップｓ２４では、暗号化処理部２０４は、一般クライアント１００に、暗号化データＩＪを送信する。また、第２プログラム配布部２０５は、一般クライアント１００に、第２プログラムｊを送信する。
【００１９】
ステップｒ２３では、一般クライアント１００のプログラム実行部１０３が、前記暗号化データＩＪおよび第２プログラムｊを受信し、データ記憶部１０４に記憶する。
ステップｒ２４では、プログラム実行部１０３は、データ記憶部１０４に記憶した第２プログラムｊを実行する。
【００２０】
図４は、第１プログラムと第２プログラムｊの連係動作を示すフロー図である。
ステップＰ２１では、第２プログラムｊは、第１プログラムに対して復号キーｊを要求する。
【００２１】
ステップＰ１１では、第１プログラムは、復号キーｊの要求を受信する。
ステップＰ１２では、第１プログラムは、復号キーｊを動的に生成する。すなわち、第２プログラムｊに応じて異なる復号キーｊを生成する。ここで、アクセス毎に異なる第２プログラムｊとすれば、アクセス毎に異なる復号キーｊとすることが出来る。また、クライアント１００毎に異なる第２プログラムｊとすれば、クライアント毎に異なる復号キーｊとすることが出来る。
ステップＰ１３では、第１プログラムは、第２プログラムｊに対して復号キーｊを送信する。
【００２２】
ステップＰ２２では、第２プログラムｊは、復号キーｊを受信する。
ステップＰ２３では、復号キーｊを用いて、データ記憶部１０４に記憶していた暗号化データＩＪを復号し、データｉを得る。
【００２３】
以上により、一般クライアント１００は、データｉを得ることが出来る。そして、第２プログラムｊや復号キーｊは、頻繁に変更することが出来る（例えばアクセス毎やクライアント毎に変更することが出来る）ので、第三者が暗号データを復号することは非常に困難になる。
【００２４】
−第２の実施形態−
本発明の第２の実施形態にかかる暗号通信システムのブロック図は、図１と同じになる。
一般クライアント１００が暗号通信サーバ２００から第１プログラムをダウンロードする動作は、図２と同じになる。
【００２５】
一般クライアント１００が暗号通信サーバ２００から暗号化データおよび第２プログラムをダウンロードする動作は、図３と同じになる。但し、ステップｓ２３で生成される第２プログラムｊは、第１プログラムに復号アルゴリズムｊを生成させると共にその復号アルゴリズムｊを用いて暗号化データＩＪを復号するプログラムとする。また、復号アルゴリズムｊは、ｊに応じて異なる方法とする。
【００２６】
図５は、第１プログラムと第２プログラムｊの連係動作を示すフロー図である。
ステップＰ２５では、第２プログラムｊは、第１プログラムに対して復号アルゴリズムｊを要求する。
【００２７】
ステップＰ１５では、第１プログラムは、復号アルゴリズムｊの要求を受信する。
ステップＰ１６では、第１プログラムは、復号アルゴリズムｊを動的に生成する。すなわち、第２プログラムｊに応じて異なる復号アルゴリズムｊを生成する。ここで、アクセス毎に異なる第２プログラムｊとすれば、アクセス毎に異なる復号アルゴリズムｊとすることが出来る。また、クライアント１００毎に異なる第２プログラムｊとすれば、クライアント毎に異なる復号アルゴリズムｊとすることが出来る。
ステップＰ１７では、第１プログラムは、第２プログラムｊに対して復号アルゴリズムｊを送信する。
【００２８】
ステップＰ２６では、第２プログラムｊは、復号アルゴリズムｊを受信する。
ステップＰ２７では、復号アルゴリズムｊを用いて、データ記憶部１０４に記憶していた暗号化データＩＪを復号し、データｉを得る。
【００２９】
以上により、一般クライアント１００は、データｉを得ることが出来る。そして、第２プログラムｊや復号アルゴリズムｊは、頻繁に変更することが出来る（例えばアクセス毎やクライアント毎に変更することが出来る）ので、第三者が暗号データを復号することは非常に困難になる。
【００３０】
−他の実施形態−
（１）第１プログラムと第２プログラムｊの連係動作により、復号キーと復号アルゴリズムの両方を変更するようにしてもよい。これにより、セキュリティを向上できる。
（２）第１プログラムに有効期限や有効期限を定めておき、第１プログラムの実行により自己消滅するようにしてもよい。これにより、一般クライアント１００は、第１プログラムを入手するために度々認証を受けなければならなくなり、セキュリティを向上できる。
（３）第１プログラムが実行された端末を第１プログラムが検査し、不正であれば自己消滅するようにしてもよい。これにより、セキュリティを向上できる。
（４）第２プログラムが第１プログラムと通信した履歴等の情報を第１プログラムに保持させ、それによって次の第２プログラムに渡す復号キーや復号アルゴリズムを変更させるようにしてもよい。これにより、セキュリティを向上できる。
（５）一般に普及しているブラウザプログラムを一般クライアント１００とし、暗号通信サーバ２００をホームページとしてもよい。これにより、一般のインターネット上で本発明を実施できる。
【００３１】
【発明の効果】
本発明の暗号通信方法およびシステムによれば、不特定多数の利用を図ることが出来ると共に暗号攻撃に強くなる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態にかかる暗号通信システムの構成図である。
【図２】本発明の第１の実施形態にかかる第１プログラム配布動作を示すフロー図である。
【図３】本発明の第１の実施形態にかかる暗号化データ送信および第２プログラム配布動作を示すフロー図である。
【図４】本発明の第１の実施形態にかかる第１プログラムと第２プログラムの連携動作を示すフロー図である。
【図５】本発明の第２の実施形態にかかる第１プログラムと第２プログラムの連携動作を示すフロー図である。
【符号の説明】
１                ネットワーク
１００            一般クライアント
１０１            通信部
１０２            認証要求部
１０３            プログラム実行部
１０４            データ記憶部
２００            暗号通信サーバ
２０１            通信部
２０２            セキュリティ管理部
２０３            第１プログラム配布部
２０４            暗号化処理部
２０５            第２プログラム配布部
２０６            データ記憶部
１０００          暗号通信システム
【図１】
0004502461.tif 000002
【図２】
0004502461.tif 000003
【図３】
0004502461.tif 000004
【図４】
0004502461.tif 000005
【図５】
0004502461.tif 000006