図1〜図12を参照して、暗号通信システム及び暗号通信方法が具体化された一実施形態について説明する。
図1に示すように、本実施形態の暗号通信システムは、概略的には、異なるローカルエリアネットワーク(以下、LAN)に属する複数の通信端末をそれぞれ適正な通信先とし、これらの適正な通信先である複数の通信端末の間に秘匿性の担保された通信路である暗号化通信路を構築する。暗号通信システムでは、例えば、第1のLAN10と第2のLAN20との間には暗号化によって秘匿性が担保された暗号化通信路VC12が構築され、同様に、第2のLAN20と第3のLAN30との間には暗号化通信路VC23が構築され、第1のLAN10と第3のLAN30との間には暗号化通信路VC13が構築される。
以下、暗号通信システムについて詳しく説明する。
図1に示すように、開放型の通信ネットワークであるインターネット40には、第1のLAN10、第2のLAN20及び第3のLAN30が通信可能に接続されている。また、インターネット40には、電子証明書を発行する電子証明書発行機関50と、法人の情報を管理する法人情報管理装置51と、ドメイン名を管理するドメイン管理装置52と、暗号通信の履歴を管理する暗号通信管理装置53と、データ通信管理装置54とが通信可能に接続されている。インターネット40に通信可能に接続されている各LAN及び各装置等はインターネット40を介して相互に通信可能である。電子証明書発行機関50と法人情報管理装置51とはインターネット40とは別の通信経路で相互通信可能に接続されていてもよい。
電子証明書発行機関50は、いわゆる認証局(CA:Certification Authority)であって、電子証明書を発行する機能(電子証明書発行機能)と、発行した電子証明書及びその履歴を管理する機能(履歴機能)と、登録された公開鍵を公開する機能(公開鍵リポジトリ機能)とを備えている。また、電子証明書発行機関50は、電子証明書の真正性を判定する機能として、有効期限よりも前に失効させたデジタル証明書の一覧である証明書失効リスト(CRL:Certificate Revocation List)との照合する機能を備えている。
図2に示すように、電子証明書発行機関50が発行する電子証明書500は、「ITU−T X.509 v3」規格の電子証明書である。例えば、電子証明書500は、証明書の鍵長は、楕円曲線DSA(ECDSA:Digital Signature Algorithm)の256bit以上であり、ハッシュ関数アルゴリズムは、SHA256であることが好ましい。電子証明書500は、署名前証明書501、署名アルゴリズム502及びデジタル署名503を有する。署名前証明書501の基本領域は、証明書バージョン情報50a、証明書シリアル番号50b、ハッシュ関数・公開鍵暗号アルゴリズム50c、証明書発行者(認証局)50d、証明書の有効期間50e、証明書発行対象:法人名50f、発行対象の公開鍵50gを有する。このうち、証明書発行対象:法人名50fには、電子証明書の発行を申請した法人の名称が格納され、発行対象の公開鍵50gには、電子証明書の発行を申請した法人が生成した公開鍵が格納される。
また、署名前証明書501は、目的に応じて利用することが可能である拡張領域を有している。署名前証明書501の拡張領域は、特定法人番号・位置情報等の法人情報50hを有している。この特定法人番号・位置情報等の法人情報50hには、電子証明書の発行を申請した法人の特定法人番号としての「法人番号」や位置情報等の「法人情報」が格納される。例えば、「法人番号」は、「行政手続における特定の個人を識別するための番号の利用等に関する法律(平成二十五年五月三十一日法律第二十七号)」、いわゆる番号法に規定される法人番号である。
本実施形態の電子証明書発行機関50は、電子証明書の発行を依頼する申請情報が法人情報管理装置51の有する情報に一致するもしくは一致の度合いが高いとの判定に基づいて電子証明書500を発行する。そのために電子証明書発行機関50は、法人情報管理装置51に申請情報の正当性の判定を依頼する、もしくは、法人情報管理装置51から判定に必要な情報を取得する。また、電子証明書発行機関50は、電子証明書の発行を依頼する申請情報がドメイン管理装置52によって一致するもしくは一致の度合いが高いとの判定や、申請者の位置情報が登録された位置と一致するもしくは一致の度合いが高いとの判定等をさらに考慮して電子証明書500を発行してもよい。そのために電子証明書発行機関50は、ドメイン管理装置52に申請情報の一致度合いの判定を依頼する、もしくは、ドメイン管理装置52から判定に必要な情報を取得する。
図1を参照して、法人情報管理装置51は、コンピュータを含み構成されるサーバ装置であって、「法人番号」と、当該「法人番号」に対応する「公的法人電子証明書」などを管理している。「公的法人電子証明書」には、「法人登記の情報」、「商号」、「名称」、「本店」、「主たる事務所の所在地」などの法人情報が含まれている。よって法人情報管理装置51は、国などの所定の公的機関に直接的、又は間接的に管理されている装置である。法人情報管理装置51は、電子証明書発行機関50から「法人番号」及び「法人情報」による問い合わせを受け、当該「法人番号」に対応する「公的法人電子証明書」を返信する。つまり、電子証明書発行機関50は、「法人番号」に基づいて、国などが管理している信頼性の高い「公的法人電子証明書」を取得し、この取得した「公的法人電子証明書」に含まれる「法人情報」と、申請情報の「法人情報」とを比較し、これらの一致の度合いを得て申請情報の正当性を判定できる。
本実施形態では、電子証明書発行機関50と法人情報管理装置51とで公的番号認証基盤55が構成される。例えば、公的番号認証基盤55は、電子証明書発行機関50がインターネット40経由で電子証明書の発行や認証、履歴の問い合わせ等を受け、法人情報の確認等については、電子証明書発行機関50が法人情報管理装置51に問い合わせる構成になっている。つまり、電子証明書発行機関50は、公的に管理された信頼性の高い番号情報に基づいて申請を認証し、電子証明書を発行したり、管理したりする。
ドメイン管理装置52は、コンピュータを含み構成されるサーバ装置であって、インターネット40に登録されているドメイン名の最新の登録情報を管理している。「ドメイン名」と「IPアドレス」との関係は、変化することが少なくないので、「ドメイン名」に対応する「IPアドレス」を参照する都度、最新の対応関係を管理しているドメイン管理装置52に対応関係を確認することが確実である。ドメイン管理装置52は、電子証明書発行機関50からドメイン名の検索の要求を受け、この検索要求の結果としてドメインに対応する「IPアドレス」を返す。ドメイン名の検索の要求では、ドメインには、「ホスト名」、「ドメイン名」が入力される。なお、ドメイン管理装置52は、「ホスト名」、「ドメイン名」に加えて他の情報が入力されてもよいし、「IPアドレス」に加えて他のドメイン登録情報を返してもよい。
図1に示すように、第1のLAN10は、通信メッセージの送受信を行う第1の通信端末11と、暗号化通信路を構築する第1の通信路構築部12とを備える。同様に、第2のLAN20は、第2の通信端末21と第2の通信路構築部22とを備え、第3のLAN30は、第3の通信端末31と第3の通信路構築部32とを備える。以下では、第1の通信端末11及び第1の通信路構築部12について詳細に説明し、説明の便宜上、第2及び第3の通信端末21,31、第2及び第3の通信路構築部22,32についての詳細な説明については割愛する。なお、第1,第2及び第3のLAN10,20,30は、複数の通信端末を備えていてもよいし、複数の通信路構築部を備えていてもよい。
図3を参照して、第1の通信端末11と第1の通信路構築部12とについて説明する。第1の通信端末11は、LANスイッチ13を介して第1の通信路構築部12に通信可能に接続されている。LANスイッチ13は、LANに接続される複数の機器の間で送受信されるメッセージをLAN内に中継する。第1の通信路構築部12は、LAN側の通信線が接続されるLANポートと、インターネット40側の通信線が接続されるワイドエリアネットワーク(以下、WAN)ポートとを備えている。第1の通信路構築部12は、LANポートにLANスイッチ13が接続され、WANポートにファイアウォール14が接続されている。ファイアウォール14は、2つのネットワークの間に論理的なアクセス制御等を行うものであって、本実施形態では、LANに属する第1の通信路構築部12とWANであるインターネット40との通信経路の間に設けられている。よって、第1の通信端末11は、インターネット40との間に第1の通信路構築部12を備えており、LANスイッチ13、第1の通信路構築部12及びファイアウォール14を介してインターネット40との間で通信用のメッセージの授受を行うようになっている。
図1に示すように、第1の通信端末11は、パーソナルコンピュータを含み構成されるコンピュータ装置である。第1の通信端末11は、インターネット40を介して接続される第2のLAN20の第2の通信端末21や第3のLAN30の第3の通信端末31と通信可能に構成されている。また、第1の通信端末11は、インターネット40を介して接続される電子証明書発行機関50やドメイン管理装置52などの各種サーバ装置に対して各種の要求を行うとともに、要求に対する回答を受け取る。例えば、第1の通信端末11は、図示しないメールサーバにも接続されていてもよく、メールサーバを介して電子メールの授受を行ってもよい。
また、第1の通信端末11は、GPSなどの位置測定装置を有し、位置測定装置で検出した現在位置をメッセージに添付して送信することなどができる。また、第1の通信端末11は、時計を有し、時計で計測される現在時刻をメッセージに添付して送信することなどができる。また、本実施形態では、第1の通信端末11は電子証明書500を有している。詳述すると、第1の通信端末11は法人に属し、この法人は電子証明書発行機関50から電子証明書500を発行されているとともに、電子証明書発行機関50に公開鍵を登録している。第1の通信端末11は電子証明書発行機関50に対して、自他の各端末が使用する各電子証明書500の認証を要求したり、自他の各端末が登録した公開鍵の取得を要求したりすることができる。なお、第1の通信端末11の電子証明書500は、法人の電子証明書500ではなく、例えば、法人に属していることが証明され、かつ、当該通信端末に固有な電子証明書であってもよい。
データ通信管理装置54は、コンピュータを含み構成されるサーバ装置であって、第1の通信端末11が公的番号認証基盤55によって認証される通信先へのインターネット40を介してのデータ通信に関する通信の履歴を登録管理する。具体的には、第1の通信端末11が、通信を開始したり、暗号化、復号を行ったり、電子証明書について認証を求めたりすることを第1の通信端末11等からの通知に基づいて自動的に履歴管理する。例えば、データ通信管理装置54は、第1の通信端末11等の通信開始から通信終了までの間の通信を監視して履歴を自動的に取得する。データ通信管理装置54は、図示しない履歴保持テーブルに通信に関する各種の履歴を保持している。
暗号通信管理装置53は、コンピュータを含み構成されるサーバ装置であって、第1の通信路構築部12がインターネット40上に構築した暗号化通信路VC12等について、その開設、使用、及び閉鎖等の状態を第1の通信路構築部12等からの通知に基づいて自動的に履歴管理する。例えば、暗号通信管理装置53は、暗号化通信路VC12の開始から終了までの間の通信を監視して履歴を自動的に取得する。暗号通信管理装置53は、図示しない履歴保持テーブルに暗号化通信に関する各種の履歴を保持している。
図4(a)〜(d)に示すように、例えば、暗号化通信路に関する履歴として、公開鍵リポジトリ参照履歴FR1、プリマスターシークレット(PMSN)生成履歴FR2、暗号化伝送路構築履歴FR3、及び暗号化通信文送受信履歴FR4等が挙げられる。例えば、公開鍵リポジトリ参照履歴FR1に含まれる項目は、「日時」、「参照元ID」、「参照元CA S/N」(S/N:シリアルナンバー)、「要求先ドメイン」、「公開鍵S/N」、「理由」等である。PMSN生成履歴FR2に含まれる項目は、「日時」、「参照元CA S/N」、「公開鍵S/N」、「要求先ドメイン」、「PMSN」、「理由」等である。暗号化伝送路構築履歴FR3に含まれる項目は、「確立日時」、「送信元」、「送信先」、「共通鍵S/N」、「暗号化方式」、「理由」等である。暗号化通信文送受信履歴FR4に含まれる項目は、「送信暗号日時」、「受信復号日時」、「送信元」、「送信先」、「暗号化公開鍵」、「内容(通信データ)ダイジェスト」等である。これらの履歴を事後的に参照できるようにすることで、通信の安全性や確実性、信頼性が担保されるようになる。
続いて、図1を参照して、第1の通信路構築部12について説明する。なお、説明の便宜上、第1の通信端末11と第2の通信端末21とが暗号化通信路VC12を介して通信する場合について説明する。暗号化通信路VC12は、第1の通信路構築部12と第2の通信路構築部22との間のインターネット40上に仮想的に構築される秘匿性の担保された通信路である。なお、第1の通信路構築部12は複数の通信路構築部との間にそれぞれ暗号化通信路を同時に構築及び維持することが可能であってもよいが、処理性能等の制約によって同時に維持できる暗号化通信路の数には上限がある。
第1の通信路構築部12は、第2の通信路構築部22との間に暗号化通信路VC12を構築する。そして、第1及び第2の通信路構築部12,22は、それらの間に構築した暗号化通信路VC12を介して第1及び第2の通信端末11,21の間に送受信される通信用のメッセージを転送する。詳しくは後に説明するが、本実施形態では、暗号化通信路VC12を利用する通信には以下のA〜Dに示す作用効果のうちの少なくとも1つ以上が得られるようになる。
A:第1及び第2の通信路構築部12,22の間の相互認証を、法人情報管理装置51を利用して行う。また、公開鍵の交換を複数回行う。これにより、メッセージに含まれる通信データとしての送信電文を強固に暗号化することが可能である。なお、送信電文は、通信したい内容そのものを示すデータ、いわゆるペイロード部である。
B:上記Aに加えて、第1及び第2の通信端末11,21の間では、法人情報管理装置51を利用して電子証明書発行機関50から発行された電子証明書の公開鍵を使用して、送信電文を暗号化する。つまり送信電文は暗号化が2重に行われ、不正に復号されるおそれがより一層低減されて通信の秘匿性が高められる。
C:暗号化通信路VC12の利用状況や、暗号化通信路VC12を利用した第1及び第2の通信端末11,21の間の暗号通信の状況を自動的に履歴管理する。よって、送信電文の送受信、電子証明書や公開鍵の使用状況、暗号化通信路の開設・閉鎖をリアルタイムに把握することができる。これにより、第1及び第2の通信路構築部12,22の間の送信電文の送受を証明できる。例えば、送信電文を受信して復号したにもかかわらず、送信電文を受け取ったことを否認するといったことを防止できる。
D:第1及び第2の通信路構築部12,22に実装する暗号スイートは、これら2つの通信路構築部の間で整合させることができる範囲で任意に設定できる。換言すると、暗号スイートの実装に、第1及び第2の通信路構築部12,22以外の機器による制約が生じない。よって、高い機密性が要求される政府内および政府間(G2G:Government to Government)の利用にも耐えられる、高セキュリティ性を持たせることが可能である。
上記A及びBで述べたように、本実施形態では、2つの通信路構築部の間に構築される暗号化通信路VC12は、2つの通信端末間で暗号化された送信電文を、さらに2つの通信路構築部の間で暗号化することで秘匿性が高められる。また、本実施形態では、通信先の電子証明書の信頼性が、法人情報管理装置51で管理される情報を利用することによって高められている。よって、本実施形態の暗号化通信路VC12は、従来のイーサネット(登録商標)のフレームのオプションである仮想LANのタグ属性を用いた通信や、特殊なプロトコルで通信データを符号化する通信とは、秘匿性や信頼性を高めるための構成が相違する。
図5を参照して、第1の通信路構築部12について、その構成の詳細について説明する。第1の通信路構築部12は、各種データを記憶する図示しない記憶部を備えている。また、第1の通信路構築部12は、装置ID/固有情報部100、電子証明書記憶部101、秘密鍵記憶部102、公開鍵記憶部103、送受信平文記憶部104及び送受信暗号文記憶部105を備えている。また、第1の通信路構築部12は、電子署名計算器110、ステート管理部111、UI部112、鍵再生成カウンタ部113、AES計算器114、TSP(タイムスタンププロトコル:Time Stamp Protocol)生成器115、ハッシュ値計算器116及び疑似乱数発生器117を備える。また、第1の通信路構築部12は、データ送受信機能120、時刻同期機能121、RSVP層/VPN層/トランスポート層対応部122及びネットワーク層/データリンク層/物理層対応部123を備える。これら第1の通信路構築部12の備える各構成は、それら構成の間で必要な情報を授受することで、必要な処理を行うことができるようになっている。
装置ID/固有情報部100は、装置IDや固有情報等の装置情報に基づいて十分なエントロピーを有する情報であるエントロピー情報を生成し、生成したエントロピー情報を、TSP生成器115やハッシュ値計算器116、疑似乱数発生器117等に提供する。装置ID/固有情報部100は、時刻、装置IDやMACアドレス、内蔵するセンサーの情報、その他のエントロピー情報を入力し、これら入力した情報に基づいてエントロピー情報を生成し、この生成したエントロピー情報を時刻、装置ID、MACアドレス等の固有情報とともに出力する。
電子証明書記憶部101は、電子署名、暗号化、復号などにより使用される電子証明書を記憶する。電子証明書記憶部101は、署名された第1の通信路構築部12に固有の電子証明書を記憶する。また、電子証明書記憶部101は、暗号化のとき、送信平文を入力し、これに対して、第1の通信路構築部12で署名された秘密鍵、共通鍵、公開鍵、電子証明書と暗号化された送信文を出力する。さらに、電子証明書記憶部101は、復号のとき、暗号化された受信文、第1の通信路構築部12で署名された秘密鍵及び共通鍵を入力し、これに対して、復号された受信平文を出力する。
秘密鍵記憶部102は、第1の通信路構築部12の非対称暗号、いわゆる公開鍵暗号方式の秘密鍵、及び対称暗号の鍵(復号用共通鍵)を記憶する。秘密鍵記憶部102は、第1の通信路構築部12の非対称暗号方式の鍵ペア、復号用共通鍵を入力して記憶するとともに、記憶している非対称暗号鍵ペアや、復号用共通鍵を要求に応じて出力する。
公開鍵記憶部103は、未署名・署名済みの非対称暗号の公開鍵を記憶する。公開鍵記憶部103は、署名された第1の通信路構築部12の公開鍵、第1及び第2の通信端末11,21や第2の通信路構築部22の未署名・署名済み公開鍵を入出力する。
送受信平文記憶部104は、第1及び第2の通信路構築部12,22の間でやりとりされる通信平文(暗号化されていない送信電文)を記憶する。送受信平文記憶部104は、送信時には送信する通信平文を入出力し、受信時には受信した通信平文を入出力する。
送受信暗号文記憶部105は、第1及び第2の通信路構築部12,22の間でやりとりされる暗号文を記憶する。送受信暗号文記憶部105は、送信時は、共通鍵で暗号化された署名と、送信電文と、セッション鍵とを入力し、送信先と送信電文を出力する。なお、セッション鍵は、エントロピー情報に基づいて疑似乱数発生器117で発生させたものである。また、送受信暗号文記憶部105は、受信時は、送信元と受信電文を入力し、共通鍵で暗号化された署名、受信電文及びセッション鍵を出力する。
電子署名計算器110は、非対称暗号及び対称暗号の鍵を含む電子証明書や送信電文に電子署名を付する。電子署名計算器110は、第1の通信路構築部12の秘密鍵、固有ハッシュ値を保持し、署名された第1の通信路構築部12の電子証明書(公開鍵、秘密鍵を含む)を出力する。
ステート管理部111は、第1の通信路構築部12の全体の機能状態を監視し、機能動作による状態遷移を記録する。ステート管理部111は、各機能の状態を入力して記録するとともに、要求に応じて状態遷移情報を出力する。
UI部112は、第1の通信路構築部12を監視管理するためのユーザインタフェースを提供する。UI部112は、監視のための指示や変更が必要な装置情報等を入力し、状態遷移情報画面、装置管理画面や、通信品質情報画面等を出力する。
鍵再生成カウンタ部113は、第1の通信路構築部12の非対称暗号用鍵ペア(仮、正式)の生成に応じて、鍵再生成カウンタの値を所定の値に設定する。鍵ペアを使用する毎に鍵再生成カウンタの値を減算することで、同じ鍵ペアの使用回数を管理し、所定回数以上の使用を防止する。
AES計算器114は、第1の通信路構築部12の鍵の復元処理、送信電文の暗号化処理、受信電文の復号処理を行う。AES計算器114は、第1の通信路構築部12の鍵の復元処理では、AES(Advanced Encryption Standard)の標準プロトコルによる復元処理を行う。このときAES計算器114は、第1の通信路構築部12の非対称暗号鍵ペア、AES用共通鍵を入力し、復元された自身の秘密鍵を出力する。AES計算器114は、送信電文の暗号化処理、受信電文の復号処理では、対称暗号化・復号を行う。暗号化処理や復号処理では、セッション鍵と送信者・受信者の署名済み公開鍵とが入力される。そして、AES計算器114は、送信電文の暗号化処理では、署名された第1の通信路構築部12の電子証明書と送信電文とを入力し、共通鍵で暗号化された署名、送信文及びセッション鍵とを出力する。また、AES計算器114は、受信電文の復号処理では、共通鍵で暗号化された署名、受信電文及びセッション鍵を入力し、署名された第1の通信路構築部12の電子証明書と受信電文を出力する。
TSP生成器115は、時刻からTSPに準じたタイムスタンプ文字列を生成する。TSPは、基本的に時刻とそのハッシュ値を事前共有鍵で暗号化した文字列となる。TSP生成器115は、タイムスタンプ要求の入力に応じて、タイムスタンプ文字列を生成し、生成したタイムスタンプ文字列を出力する。TSPは、「IETF RFC3161」に規定された「X.509」の存在証明のための要求事項であって、本実施形態では、TSPがTSP生成器115で発行される。
ハッシュ値計算器116は、任意の英数文字列からSHA256、SHA384もしくはSHA−3等の一方向性関数を利用してハッシュ値を生成する。ハッシュ値計算器116は、装置ID、固有情報、TSP及び乱数等を入力し、この入力した情報に基づいて要求された長さのハッシュ値を生成し、出力する。出力されたハッシュ値は、非対称暗号の鍵ペアの生成や、対称暗号の鍵の生成、署名用ハッシュ値等に利用される。
疑似乱数発生器117は、例えば、決定論的乱数生成器(DRBG:Deterministic Random Bit Generator)であって、通信路構築部内で提供される暗号化・署名用の鍵生成に利用される乱数を生成する。疑似乱数発生器117は、装置ID、エントロピー情報を入力するとともに、指定した長さの乱数要求を受け取ることに応じて、指定された長さの乱数を出力する。発生した乱数は、暗号化のセッション鍵にも使用される。
データ送受信機能120は、インターネット40を経由してメッセージの送信及び受信するための機能を有する。入力した送信するメッセージをインターネット40を介して送信先に送信し、送信元からインターネット40を介して受信したメッセージを出力する。
時刻同期機能121は、第1の通信路構築部12の内部に保持している時計の時刻をネットワーク経由で標準時に同期させる。
RSVP層/VPN層/トランスポート層対応部122、及び、ネットワーク層/データリンク層/物理層対応部123は、インターネット40との間でデータ通信を可能にさせる部分である。各対応部122,123は、インターネット40から受信した通信メッセージに含まれる通信データを取り出すとともに、生成した通信データをインターネット40で通信可能なメッセージに組み込む。本実施形態では、通信品質を考慮して、送信する転送量を制御する。転送先装置が属するドメインの確認などの通信に必要な諸条件の設定および、転送量について常時モニタする。なお、RSVP(Resource Reservation Protocol:リソース予約プロトコル)層は、伝送路品質保持に使用する。VPN(Virtual Private Network:バーチャルプライベートネットワーク)層は、仮想的な専用線の構築に利用する。トランスポート層、ネットワーク層、データリンク層、及び物理層は、OSI(Open Systems Interconnection)参照モデルに規定される第4層〜第1層である。
(通信動作について)
図6を参照して、本実施形態で第1及び第2の通信路構築部12,22が暗号化通信路VC12を構築する手順の概要について説明する。
本実施形態の通信システムでは、第1の通信端末11は、通信先となる第2の通信端末21の認証を公的番号認証基盤55から得る。また逆に、第2の通信端末21は、通信先となる第1の通信端末11の認証を公的番号認証基盤55から得る(ステップS10)。これにより、通信システムでは、第1及び第2の通信端末11,21が相互に通信先の認証を得る。続いて、通信システムでは、第1及び第2の通信路構築部12,22が、暗号化通信路VC12の形成について合意するとともに、それぞれが生成した仮の非対称暗号鍵の公開鍵を通信によって交換する(ステップS11)。例えば、まず、第1の通信路構築部12が自身で生成した仮の公開鍵を第2の通信路構築部22に送信し、これに応じて、第2の通信路構築部22が自身で生成した仮の公開鍵を第1の通信路構築部12に返信する。仮の公開鍵の交換が完了すると、第1及び第2の通信路構築部12,22は、正式な非対称暗号鍵の生成について合意するとともに、それぞれが生成した正式な非対称暗号鍵の公開鍵を、先に交換した仮の公開鍵を利用した暗号化通信によって交換する(ステップS12,S13)。そして、第1及び第2の通信路構築部12,22は交換した正式な公開鍵に基づいて暗号化通信路VC12を構築する(ステップS14)。第1及び第2の通信端末11,21の間での通信データの送受信が、第1及び第2の通信路構築部12,22を介して暗号化通信路VC12を利用して行われる(ステップS15)。続いて、第1の通信路構築部12は、第1及び第2の通信端末11,21の間で通信が終了したか否かを判定する(ステップS16)。通信が終了したか否かの判定は、第1の通信端末11からの終了通知や、通信データの送信が行われていないこと等から判定される。通信が終了していると判定された場合(ステップS16でYES)、第1及び第2の通信路構築部12,22は暗号化通信路VC12による通信を終了する。
一方、通信が終了していないと判定された場合(ステップS16でNO)、第1の通信路構築部12は、正式な非対称暗号鍵を再生成するか否かを判定する(ステップS17)。正式な非対称暗号鍵を再生成するか否かは、正式な非対称暗号鍵を通信に使用した回数に基づいて判定する。正式な非対称暗号鍵を再生成しないと判定された場合(ステップS17でNO)、第1の通信路構築部12は、ステップS15に戻り、現在使用中の暗号化通信路VC12を利用しての第1及び第2の通信端末11,21の間での通信を維持する。一方、正式な非対称暗号鍵を再生成すると判定された場合(ステップS17でYES)、第1及び第2の通信路構築部12,22は、同再生成について合意して処理をステップS13に戻し、正式な非対称暗号鍵を生成する処理と、それ以下の処理を続ける。
図7〜図12を参照して、本実施形態で第1及び第2の通信路構築部12,22が暗号化通信路VC12を構築する手順の詳細について説明する。ここでは、第1及び第2の通信端末11,21、第1及び第2の通信路構築部12,22、暗号通信管理装置53、データ通信管理装置54、及び、公的番号認証基盤55は、それぞれが非対称暗号方式の鍵ペアとして公開鍵暗号方式の公開鍵及び秘密鍵を生成する。例えば、第1の通信端末11(A)は、公開鍵「鍵A1」及び「秘密鍵A2」を生成し、第2の通信端末21(C)は公開鍵「鍵C1」及び「秘密鍵C2」を生成するものとする。また、第1の通信路構築部12(B)は、仮の公開鍵「仮鍵B1」及び「仮の秘密鍵B2」を生成し、正式な公開鍵「鍵B3」及び「秘密鍵B4」を生成するものとする。また、第2の通信路構築部22(D)は、仮の公開鍵「仮鍵D1」及び「仮の秘密鍵D2」を生成し、正式な公開鍵「鍵D3」及び「正式な秘密鍵D4」を生成するものとする。また、暗号通信管理装置53(H)は、公開鍵「鍵H1」及び「秘密鍵H2」を、データ通信管理装置54(J)は、公開鍵「鍵J1」及び「秘密鍵J2」を、公的番号認証基盤55(F)は、公開鍵「鍵F1」及び「秘密鍵F2」をそれぞれ生成するものとする。
(履歴管理の利用)
図7に示すように、第1の通信端末11は、第2の通信端末21を認証するとともに、暗号通信管理装置53に通信履歴を管理させる。
第1の通信端末11は、処理LA10として、「第2の通信端末21のドメイン名参照」を指示するメッセージM10を作成し、これをドメイン管理装置52へ送信する。ドメイン管理装置52は、処理LG10として、受信したメッセージM10の指示「第2の通信端末21のドメイン名参照」に基づいて第2の通信端末21のドメイン名に対応するIPアドレスを回答するメッセージM11を第1の通信端末11に返信する。このとき、ドメイン管理装置52は、参照対象のドメイン名が不正であったり、不正確であったりする場合、その旨を回答するメッセージM11を返信する。
第1の通信端末11は、処理LA11として、返信されたメッセージM11を受信し、回答されたIPアドレスに応じた処理を行う。例えば、IPアドレスが回答されなかった場合、第1の通信端末11は第2の通信端末21との通信を断念する。一方、IPアドレスが回答された場合、第1の通信端末11は、次に、公的番号認証基盤55から自身についての認証を得る。第1の通信端末11は、「自身の端末情報」(法人番号、TSP、位置情報等)を付して「自端末の認証」を指示するメッセージM12を公的番号認証基盤55へ送信する。
公的番号認証基盤55は、処理LF11として、受信したメッセージM12の指示「自端末の認証」と、第1の通信端末11の端末情報と、管理している法人情報とに基づいて第1の通信端末11の認証を行う。そして公的番号認証基盤55は、第1の通信端末11を認証することに応じて、「鍵F1」を含む自身の電子証明書を回答するメッセージM13を返信する。このとき、メッセージM13の回答内容は、指示元の公開鍵「鍵A1」で暗号化する。
第1の通信端末11は、処理LA12として、返信されたメッセージM13を受信し、公的番号認証基盤55の公開鍵「鍵F1」を取得するとともに、第2の通信端末21の公開鍵の取得を要求する。第1の通信端末11は、「第2の通信端末21の公開鍵の取得要求」の指示を「鍵F1」で暗号化したメッセージM14を公的番号認証基盤55へ送信する。公的番号認証基盤55は、処理LF12として、受信したメッセージM14の指示「第2の通信端末21の公開鍵の取得要求」を自身の秘密鍵F2で復号するとともに、要求された第2の通信端末21の公開鍵「鍵C1」を含む電子証明書を回答するメッセージM15を返信する。このとき、メッセージM15の回答内容は、指示元の公開鍵「鍵A1」で暗号化する。このとき公的番号認証基盤55は、公開鍵が取得された履歴として、例えば公開鍵リポジトリ参照履歴FR1(図4(a)参照)に示す情報を履歴管理する。
第1の通信端末11は、処理LA13として、返信されたメッセージM15から要求した「鍵C1」を取得するとともに、暗号通信管理装置53に「公開鍵暗号通信の開始」を指示するメッセージM16を送信する。
暗号通信管理装置53は、処理LH13として、受信したメッセージM16の指示「公開鍵暗号通信の開始」に基づいて通信端末間の通信履歴の取得管理を開始するとともに、自身の認証と公開鍵の発行とを公的番号認証基盤55に要求する。暗号通信管理装置53は、通信履歴の取得管理を開始すると、同取得管理を終了するまでの間、通信端末から通信に関する情報を得ることに応じて、こうして得られた情報を履歴管理する。
公的番号認証基盤55は、処理LF13として、暗号通信管理装置53の認証及び公開鍵の発行要求に基づいて、暗号通信管理装置53を認証してその公開鍵「鍵H1」を回答するメッセージを暗号通信管理装置53に返信する。
暗号通信管理装置53は、処理LH13として、返信されたメッセージから「鍵H1」を取得するとともに、「鍵H1」を含む電子証明書を回答するメッセージM17を第1の通信端末11に返信する。このとき、メッセージM17の回答内容は、指示元の公開鍵「鍵A1」で暗号化する。
第1の通信端末11は、処理LA14として、返信されたメッセージM17から「鍵H1」を取得するとともに、「第1及び第2の通信端末11,21とで通信開始する情報」を「鍵H1」で暗号化して通知するメッセージM18を作成して暗号通信管理装置53に送信する。
暗号通信管理装置53は、処理LH14として、受信したメッセージM18の通知「第1及び第2の通信端末11,21とで通信開始する情報」を自身の秘密鍵H2で復号するとともに、履歴管理する。また、暗号通信管理装置53は、処理LH14として、「暗号化通信開始許諾」の旨を「鍵A1」で暗号化して回答するメッセージM19を第1の通信端末11に返信する。
第1の通信端末11は、処理LA15として、返信されたメッセージM19から「暗号化通信開始許諾」を復号して得るとともに、第2の通信端末21の公開鍵「鍵C1の使用履歴」を「鍵H1」で暗号化して通知するメッセージM20を生成して暗号通信管理装置53に送信する。
暗号通信管理装置53は、処理LH15として、受信したメッセージM20を復号して得られた「鍵C1の使用履歴」を履歴管理するとともに、「鍵C1の使用履歴のシリアル番号」を指示元の公開鍵「鍵A1」で暗号化して回答するメッセージM21を第1の通信端末11に返信する。
第1の通信端末11は、処理LA16として、返信されたメッセージM21を復号して「鍵C1の使用履歴のシリアル番号」を得る。そして、第1の通信端末11は、第2の通信端末21への暗号化通信の送信準備を開始する。
こうして、暗号通信管理装置53は通信履歴の管理を開始し、第1の通信端末11は暗号化通信を開始するようになる。なお、同様にして、第2の通信端末21は、第1の通信端末11を認証するとともに、暗号通信管理装置53に通信履歴を管理させることができる。
(暗号化通信路の構築)
図8は、暗号化通信路を構築する手順について示す。
第1の通信端末11は、処理LA20として、「第2の通信端末21のドメイン名参照」を指示するメッセージM30をドメイン管理装置52へ送信する。
ドメイン管理装置52は、処理LG20として、受信したメッセージM30の指示「第2の通信端末21のドメイン名参照」に基づいて第2の通信端末21のドメイン名に対応するIPアドレスを回答するメッセージM31を第1の通信端末11に返信する。
第1の通信端末11は、処理LA21として、返信されたメッセージM31を受信し、回答されたIPアドレスを取得するとともに、第2の通信路構築部22との間に「暗号化通信路VC12の構築」を要求するメッセージM32を第1の通信路構築部12に伝達する。
第1の通信路構築部12は、メッセージM32の要求「暗号化通信路VC12の構築」に基づいて、第2の通信路構築部22との間に暗号化通信路VC12を構築することを開始する。
まず、第1の通信路構築部12は、処理LB21として、「通信路構築要求」を平文で含むメッセージM33を第2の通信路構築部22に送信する。また、第2の通信路構築部22は、処理LD21として、受信したメッセージM33の指示「通信路構築要求」に応じて、暗号化通信路VC12の構築に応じた旨を示す「通信路構築許諾」を平文で回答するメッセージM34を第1の通信路構築部12に返信する。
なお、必要になるまでに、第1の通信路構築部12は、「装置ID」、「IPアドレス」及び「TSP」に基づいて仮の公開鍵「仮鍵B1」及び「仮秘密鍵B2」を生成する(処理LB21,22等)。同様に必要になるまでに、第2の通信路構築部22は、「装置ID」、「IPアドレス」及び「TSP」に基づいて第2の通信路構築部22の仮公開鍵「仮鍵D1」及び「仮秘密鍵D2」を生成する(処理LD21,22等)。
第1の通信路構築部12は、処理LB22として、受信したメッセージM34から平文の「通信路構築許諾」を得て、自身の仮公開鍵「仮鍵B1」をAESで暗号化した状態(暗号化が1重の状態)で通知するメッセージM35を第2の通信路構築部22に伝達する。
第2の通信路構築部22は、処理LD22として、受信したメッセージM35から「仮鍵B1」を復号するとともに、自身の仮公開鍵「仮鍵D1」をAESで暗号化した状態(暗号化が1重の状態)で通知するメッセージM36を第1の通信路構築部12に返信する。
第1の通信路構築部12は、処理LB23として、返信されたメッセージM36から「仮鍵D1」を復号するとともに、「非対称暗号通信開始要求」を平文で通知するメッセージM37を第2の通信路構築部22に送信する。
第2の通信路構築部22は、処理LD23として、受信したメッセージM37の通知「非対称暗号通信開始要求」に対応して、当該要求を許諾する「非対称暗号通信開始許諾」を通知するメッセージM38を第1の通信路構築部12に返信する。
第1の通信路構築部12は、処理LB24として、返信されたメッセージM38から「非対称暗号通信開始要求許諾」を取得して、「第1及び第2の通信路構築部12,22の間で暗号通信開始」と「TSP」とを「鍵H1」で暗号化して通知するメッセージM39を暗号通信管理装置53に通知する。
第2の通信路構築部22は、処理LD24として同様に、メッセージM38の返信に対応して、「第1及び第2の通信路構築部12,22の間で暗号通信開始」と「TSP」とを「鍵H1」で暗号化して通知するメッセージM40を暗号通信管理装置53に通知する。
暗号通信管理装置53は、処理LH24として、2つのメッセージM39,M40の各通知からそれぞれ「第1及び第2の通信路構築部12,22の間で暗号通信開始」及び「TSP」を復号し、それぞれを履歴管理する。つまり、第1及び第2の通信路構築部12,22の間で行われる暗号化通信の履歴管理が開始される。このとき、暗号通信管理装置53は、プリマスターシークレット生成履歴FR2(図4(b)参照)に示す情報を履歴管理する。
また、必要になるまでに、第1の通信路構築部12は、「装置ID」、「IPアドレス」、「法人番号」、「位置情報」及び「TSP」に基づいて正式な公開鍵「鍵B3」及び正式な秘密鍵B4を生成する(処理LB24,25等)。同様に適時、第2の通信路構築部22は、「装置ID」、「IPアドレス」、「法人番号」、「位置情報」、「TSP」に基づいて正式な公開鍵「鍵D3」及び正式な秘密鍵D4を生成する(処理LD24,25等)。
その後、第1の通信路構築部12は、処理LB25として、正式な公開鍵「鍵B3」、「署名付き電子証明書」及び「鍵再生成カウンタ」を「仮鍵D1」で暗号化して通知するメッセージM41を第2の通信路構築部22に送信する。
また、第2の通信路構築部22は、処理LD25として、受信したメッセージM41から「鍵B3」、「署名付き電子証明書」及び「鍵再生成カウンタ」を復号する。また、第2の通信路構築部22は、処理LD25として、メッセージM41に応じて、正式な公開鍵「鍵D3」及び「署名付き電子証明書」を「仮鍵B1」で暗号化して通知するメッセージM42を第1の通信路構築部12に返信する。
第1の通信路構築部12は、処理LB26として、返信されたメッセージM42から「鍵D3」及び「署名付き電子証明書」を復号して取得する。
なお、暗号通信管理装置53は、履歴管理を開始しているので、第1及び第2の通信路構築部12,22の間で授受されるメッセージを逐次取得して履歴管理する(処理LH24)。このとき、暗号通信管理装置53は、例えば、暗号化伝送路構築履歴FR3(図4(c)参照)に示す情報を履歴管理する。
これにより、暗号化通信路が構築される。
(暗号化通信路を介する通信)
図9は、第1及び第2の通信端末11,21が暗号化通信路を介して通信する手順について示す。
第1の通信端末11は、処理LA27として、第2の通信端末21あての「送信電文」を「鍵C1」で暗号化したメッセージM50を第1の通信路構築部12に伝達する。
第1の通信路構築部12は、処理LB27として、伝達されたメッセージM50の「送信電文」に、「TSP」、「署名付き電子証明書」及び「鍵再生成カウンタ」を加えてこれらを「鍵D3」で暗号化して通知するメッセージM51を生成し、これを第2の通信路構築部22へ送信する。
第2の通信路構築部22は、処理LD27として、受信したメッセージM51から「送信電文」、「TSP」、「署名付き電子証明書」及び「鍵再生成カウンタ」を自身の秘密鍵D4で復号するとともに、これら復号した情報を通知するメッセージM52を第2の通信端末21に送信する。なお、「送信電文」は「鍵C1」で暗号化されたままである。
そして、第2の通信端末21は、処理LC28として、「送信電文」、「TSP」、「署名付き電子証明書」及び「鍵再生成カウンタ」を取得する。このとき、第2の通信端末21は、「送信電文」を自身の秘密鍵C2で復号して「送信電文」の平文を取得する。また、第2の通信端末21は、処理LC28として、第1の通信端末11あての「送信電文」を「鍵A1」で暗号化したメッセージM53を第2の通信路構築部22に伝達する。
第2の通信路構築部22は、処理LD28として、伝達されたメッセージM53の「送信電文」に、「TSP」、「署名付き電子証明書」及び「1」減算した値の「鍵再生成カウンタ」を加えてこれらを「鍵B3」で暗号化して通知するメッセージM54を生成し、これを第1の通信路構築部12へ送信する。
第1の通信路構築部12は、処理LB28として、受信したメッセージM54から「送信電文」、「TSP」、「署名付き電子証明書」及び「鍵再生成カウンタ」を自身の秘密鍵B4で復号するとともに、これら復号した情報を通知するメッセージM55を第1の通信端末11に送信する。なお、「送信電文」は「鍵A1」で暗号化されたままである。
そして、第1の通信端末11は、処理LA28として、「送信電文」、「TSP」、「署名付き電子証明書」及び「鍵再生成カウンタ」を取得する。このとき、第1の通信端末11は、「送信電文」を自身の秘密鍵A2で復号して「送信電文」の平文を取得する。
こうして、第1の通信端末11から第2の通信端末21への「送信電文」の送信が開始されるとともに、通信に必要な情報が交換される。こうした一連の処理LA27,LB27,LD27,LC28,LD28,LB28,LA28は、第1の通信端末11から第2の通信端末21に送信電文の送信が開始される都度、繰り返される。
そして、残りの「送信電文」が、引き続き第1の通信端末11から第2の通信端末21に送信される。
すなわち、第1の通信端末11は、処理LA29として、第2の通信端末21あての「送信電文」を「鍵C1」で暗号化したメッセージM56を第1の通信路構築部12に伝達する。
第1の通信路構築部12は、処理LB29として、伝達されたメッセージM56の「送信電文」に、「TSP」及び「署名付き電子証明書」を加えてこれらを「鍵D3」で暗号化して通知するメッセージM57を生成し、これを第2の通信路構築部22へ送信する。
第2の通信路構築部22は、処理LD29として、受信したメッセージM57から「送信電文」、「TSP」及び「署名付き電子証明書」を自身の秘密鍵D4で復号するとともに、これら復号した情報を通知するメッセージM58を第2の通信端末21に送信する。なお、「送信電文」は「鍵C1」で暗号化されたままである。
そして、第2の通信端末21は、処理LC29として、「送信電文」、「TSP」及び「署名付き電子証明書」を取得する。このとき、第2の通信端末21は、「送信電文」を自身の秘密鍵C2で復号して「送信電文」の平文を取得する。
また、第2の通信路構築部22は、処理LD29として、メッセージM57を正常に受信したことを示す「受信正常」の旨、及び、前回から「1」を減算した値の「鍵再生成カウンタ」を平文で通知するメッセージM59を生成し、これを第1の通信路構築部12へ送信する。なお、秘匿性が要求されない情報について平文で通信を行うことにより暗号化に要する処理負荷を軽減させることができる。
第1の通信路構築部12は、処理LB29Aとして、受信したメッセージM59から「受信正常」及び「鍵再生成カウンタ」を取得し、第1の通信端末11にその旨を通知し、暗号化通信路を使用しての通信処理を通常に進める。なお、秘匿性が要求されない情報について平文で通信を行うことにより復号に要する処理負荷を低減させることができる。
そして、残りの送信電文の送信に必要に回数だけ、一連の処理LA29,LB29,LD29,LC29,LB29Aが繰り返される。
なお、暗号通信管理装置53は、履歴管理を開始しているので、第1及び第2の通信路構築部12,22の間で授受されるメッセージを逐次取得して履歴管理する(処理LH27)。このとき、暗号通信管理装置53は、暗号化通信文送受信履歴FR4(図4(d)参照)に示す情報を履歴管理する。また、データ通信管理装置54は、第1の通信端末11と第2の通信端末21との通信開始に応じて履歴管理を開始するので、第1及び第2の通信端末11,21の間で授受されるメッセージを逐次取得して履歴管理する(処理LJ27)。
(暗号化通信路の再構築)
図10は、第1及び第2の通信端末11,21が正式な公開鍵暗号を再生成するとともに、暗号化通信路を再構築する手順について示す。
第2の通信路構築部22は、第1の通信端末11からのメッセージを第2の通信端末21に伝達する都度、第1の通信路構築部12に「受信正常」及び前回から「1」を減算した値の「鍵再生成カウンタ」を平文で通知するメッセージを第1の通信路構築部12へ送信する。こうした送信が「鍵再生成カウンタ」の初期値と同じ回数だけ続くと、「鍵再生成カウンタ」=「0」となり、第2の通信路構築部22は、処理LD30として、第1の通信路構築部12に「受信正常」及び「0」(=鍵再生成カウンタ)を平文で通知するメッセージM60を第1の通信路構築部12へ送信する。
第1の通信路構築部12は、処理LB31として、受信したメッセージM60に含まれる「受信正常」及び「0」(=鍵再生成カウンタの値)に基づいて暗号化通信路を使用しての通信を中断するとともに、第2の通信路構築部22のドメイン名の認証を要求するメッセージM61を生成してドメイン管理装置52に送信する。
また、第2の通信路構築部22は、処理LD31として、「0」(=鍵再生成カウンタ)に基づいて暗号化通信路を使用しての通信を中断するとともに、第1の通信路構築部12のドメイン名の認証を要求するメッセージM62を生成してドメイン管理装置52に送信する。
なお、暗号通信管理装置53は、履歴管理を開始しているが、暗号化通信路を使用しての通信が中断されることに応じて、第1及び第2の通信路構築部12,22の間の履歴管理を中断する(処理LH30)。また、データ通信管理装置54は、履歴管理を開始しているが、暗号化通信路を使用しての通信が中断されることに応じて、第1及び第2の通信端末11,21の間の履歴管理を中断する(処理LJ30)。
ドメイン管理装置52は、処理LG32として、受信したメッセージM61に対する応答結果である「第2の通信路構築部22の認証結果」の回答であるメッセージM63を第1の通信路構築部12に返信する。同様に、ドメイン管理装置52は、処理LG32として、受信したメッセージM62に対応する応答結果である「第1の通信路構築部12の認証結果」の回答であるメッセージM64を第2の通信路構築部22に返信する。
第1の通信路構築部12は、処理LB32として、返信されたメッセージM63から得られた「第2の通信路構築部22の認証結果」に基づいて正式な公開鍵暗号方式の鍵を再生成する。また、第1の通信路構築部12は、処理LB32として、認証結果を確認して、「第1及び第2の通信路構築部12,22の間で暗号通信再度開始」及び「TSP」を「鍵H1」で暗号化したメッセージM65を暗号通信管理装置53に通知する。
同様に、第2の通信路構築部22は、処理LD32として、返信されたメッセージM64から得られた「第1の通信路構築部12の認証結果」に基づいて正式な公開鍵暗号方式の鍵を再生成する。また、第2の通信路構築部22は、処理LD32として、認証結果を確認して、「第1及び第2の通信路構築部12,22の間で暗号通信再度開始」及び「TSP」を「鍵H1」で暗号化したメッセージM66を暗号通信管理装置53に通知する。
暗号通信管理装置53は、処理LH31として、受信したメッセージM65とメッセージM66とのそれぞれの「第1及び第2の通信路構築部12,22の間で暗号通信再度開始」及び「TSP」に基づいて、第1及び第2の通信路構築部12,22の間で行われる暗号化通信路VC12を介した暗号通信の履歴管理を再開する。また、データ通信管理装置54は、処理LJ31として、暗号化通信路を使用しての通信が再開されることに応じて、第1及び第2の通信端末11,21の間の履歴管理を再開する。
また、第1の通信路構築部12は、「装置ID」、「IPアドレス」、「法人番号」、「位置情報」及び「TSP」に基づいて正式な公開鍵「鍵B3n」(但し、nは再生成回数を示す整数)及び「秘密鍵B4n」を再生成する(処理LB32,33等)。
第2の通信路構築部22は、「装置ID」、「IPアドレス」、「法人番号」、「位置情報」及び「TSP」に基づいて正式な公開鍵「鍵D3n」及び「秘密鍵D4n」を生成する(処理LD32,33等)。
なお、公開鍵暗号方式の鍵ペアは、生成の都度、少なくとも「TSP」が相違するため、上記処理LB32等やLD32等で生成される公開鍵暗号方式の鍵ペアは、以前に生成された公開鍵暗号方式の鍵とは相違するものとして生成される。
そして、第1の通信路構築部12は、処理LB33として、再生成した「鍵B3n」、「署名付き電子証明書」及び「鍵再生成カウンタ」を再生成前の「鍵D3」で暗号化した通知であるメッセージM67を第2の通信路構築部22に送信する。
第2の通信路構築部22は、処理LD33として、受信したメッセージM67から「鍵B3n」、「署名付き電子証明書」及び「鍵再生成カウンタ」を復号するとともに、再生成した「鍵D3n」及び「署名付き電子証明書」を生成性前の「鍵B3」で暗号化して通知するメッセージM68を第1の通信路構築部12に返信する。
第1の通信路構築部12は、処理LB34として、受信したメッセージM68から「鍵D3n」及び「署名付き電子証明書」を復号する。
暗号化通信路が再構築されると、第1及び第2の通信端末11,21との間の通信が再開される。
第1の通信端末11は、処理LA35として、「送信電文」を「鍵C1」で暗号化して通知するメッセージM70を第1の通信路構築部12に伝達する。
第1の通信路構築部12は、処理LB35として、メッセージM70で伝達された「送信電文」、「TSP」及び「署名付き電子証明書」を「鍵D3n」で暗号化した通知であるメッセージM71を第2の通信路構築部22へ送信する。
第2の通信路構築部22は、処理LD35として、受信したメッセージM71から「送信電文」、「TSP」及び「署名付き電子証明書」を自身の秘密鍵D4nで復号するとともに、これら復号した情報を通知するメッセージM72を第2の通信端末21に送信する。なお、「送信電文」は「鍵C1」で暗号化されたままである。
そして、第2の通信端末21は、処理LC35として、「送信電文」、「TSP」及び「署名付き電子証明書」を取得する。このとき、第2の通信端末21は、「送信電文」を自身の秘密鍵C2で復号して「送信電文」の平文(受信電文)を取得する。
また、第2の通信路構築部22は、処理LD35として、メッセージM71を正常に受信したことを示す「受信正常」の旨、及び、前回から「1」を減算した値の「鍵再生成カウンタ」を平文で通知するメッセージM73を生成し、これを第1の通信路構築部12へ送信する。
第1の通信路構築部12は、処理LB36として、受信したメッセージM73から「受信正常」及び「鍵再生成カウンタ」を取得し、第1の通信端末11にその旨を通知し、暗号化通信路を使用しての通信処理を通常通りに進める。
そして、第1及び第2の通信路構築部12,22とは、「鍵B3n」、「鍵D3n」を使用した暗号化通信路VC12を使用した通信を「鍵再生成カウンタ」が「0」になるまで繰り返し、「鍵再生成カウンタ」が「0」になることを条件にして正式な非対称暗号鍵を再生成することを繰り返す。
上述したように、暗号通信管理装置53は、履歴管理を開始しているので、第1及び第2の通信路構築部12,22の間で授受されるメッセージを逐次取得して履歴管理する(処理LH31)。また、データ通信管理装置54も、履歴管理を開始しているので、第1及び第2の通信端末11,21の間で授受されるメッセージを逐次取得して履歴管理する(処理LJ31)。
(履歴管理の開始及び終了)
図11及び図12を参照して、履歴管理の開始から終了までの手順について説明する。ここでは、「端末間の通信履歴管理」の開始及び終了と、「暗号化通信路の通信履歴管理」の開始及び終了との詳細について説明する。なお、説明の便宜上、図7〜図9に示した処理手順については簡略化している。
第1の通信端末11は、処理LA40として、「第2の通信端末21への送信要求」を通知するメッセージM80を第1の通信路構築部12に伝達する。第1の通信路構築部12は、処理LB40として、メッセージM80から取得した「第2の通信端末21への送信要求」を「鍵H1」で暗号化した通知であるメッセージM81を暗号通信管理装置53に送信する。
暗号通信管理装置53は、処理LH40として、受信したメッセージM81から「第2の通信端末21への送信要求」の通知を復号して暗号化通信の履歴管理を開始する。また、暗号通信管理装置53は、処理LH40として、「履歴管理開始」を「鍵B3」で暗号化した通知であるメッセージM82を第1の通信路構築部12に返信する。
第1の通信路構築部12は、処理LB41として、受信したメッセージM82の「履歴管理開始」の通知に基づいて、「送信許諾」を通知するメッセージM83を生成し、これを第1の通信端末11に伝達する。
第1の通信端末11は、処理LA41として、伝達されたメッセージM83から「送信許諾」を得ると、第2の通信端末21の「鍵C1の要求」を「鍵F1」で暗号化した通知であるメッセージM84を公的番号認証基盤55に送信する。
公的番号認証基盤55は、処理LF41として、受信したメッセージM84から第2の通信端末21の「鍵C1の要求」を復号し、これに応じて「鍵C1」を含む電子証明書を「鍵A1」で暗号化した応答であるメッセージM85を返信する。
第1の通信端末11は、処理LA42として、返信されたメッセージM85から「鍵C1」を取得すると、第2の通信端末21に対する「転送開始」の通知であるメッセージM86を第1の通信路構築部12に伝達する。
第1の通信路構築部12は、処理LB42として、伝達されたメッセージM86から得た「転送開始」を「鍵J1」で暗号化した通知であるメッセージM87をデータ通信管理装置54に送信する。
データ通信管理装置54は、処理LJ42として、「転送開始」に基づいて履歴管理を開始するとともに、「履歴管理開始」の情報を「鍵B3」で暗号化したメッセージM88を第1の通信路構築部12に送信する。
第1の通信路構築部12は、処理LB43として、受信したメッセージM88から「履歴保持開始」の情報に基づいて、「転送許諾」を通知するメッセージM89を生成して第1の通信端末11に伝達する。また、第1の通信路構築部12は、処理LB43として、「転送許諾」を「鍵B3」で暗号化して通知するメッセージM90を生成して第2の通信路構築部22に送信する。
第1の通信端末11は、処理LA43として、メッセージM89から「転送許諾」を得ると、第2の通信端末21への「送信電文」を「鍵C1」で暗号化した通知であるメッセージM91を生成して第1の通信路構築部12に伝達する。第1の通信路構築部12は、処理LB43として、メッセージM91の「送信電文」を「鍵D3」で暗号化したメッセージM92を第2の通信路構築部22へ送信する。
第2の通信路構築部22は、処理LD43として、受信したメッセージM91の「送信電文」を自身の秘密鍵D4で復号する一方、第2の通信端末21へ「第1の通信端末11からの転送要求」のみを伝達する。
第2の通信端末21は、第2の通信路構築部22から「第1の通信端末11からの転送要求」を得る。
第2の通信端末21は、処理LC44として、「第1の通信端末11からの転送要求」に応じて、第1の通信端末11の電子証明書の有効性を確認する。第2の通信端末21は、第1の通信端末11の電子証明書を「鍵F1」で暗号化したメッセージM93を生成して公的番号認証基盤55に送信する。
なお、上述したように、暗号通信管理装置53は、履歴管理を開始しているので、第1及び第2の通信路構築部12,22の間で授受されるメッセージを逐次取得して履歴管理する(処理LH43)。また、データ通信管理装置54も、履歴管理を開始しているので、第1及び第2の通信端末11,21の間で授受されるメッセージを逐次取得して履歴管理する(処理LJ43)。また、第2の通信端末21と公的番号認証基盤55との間に第2の通信路構築部22が介在するが、通信先の一方が暗号化通信路を構築できる通信先ではないので、第2の通信路構築部22は公的番号認証基盤55が送受信先となるメッセージについては、そのまま透過させる。
公的番号認証基盤55は、処理LF44として、受信したメッセージM93から第1の通信端末11の電子証明書を自身の秘密鍵F2で復号し、この復号した電子証明書の真正性の確認を行う。真正性の確認は、CRLとの照合等により行われる。また、公的番号認証基盤55は、処理LF44として、第1の通信端末11の電子証明書の真正性の確認結果を「鍵C1」で暗号化した通知であるメッセージM94を第2の通信端末21に返信する。
第2の通信端末21は、処理LC45として、受信したメッセージM94から第1の通信端末11の電子証明書の真正性の確認結果を自身の秘密鍵C2で復号して取得する。また、第2の通信端末21は、処理LC45として、電子証明書が真正であることに応じて、第1の通信端末11から受信した送信電文の受信を許諾し、「受信許諾」を示す通知であるメッセージM95を第2の通信路構築部22に伝達する。
図12に示すように、第2の通信路構築部22は、処理LD46として、伝達されたメッセージM95から「受信許諾」を取得すると、第1の通信端末11から取得した「送信電文」を通知するメッセージM96を第2の通信端末21へ伝達する。また、第2の通信路構築部22は、処理LD46として、第1の通信端末11からの「送信電文」を第2の通信端末21が受信した旨の情報を通知するメッセージM97をデータ通信管理装置54に送信する。
そして、データ通信管理装置54は、処理LJ46として、受信したメッセージM97に基づいて、「第1の通信端末11の送信電文を第2の通信端末21が受信した」ことを通信履歴として管理する。
また、第2の通信端末21は、処理LC46として、第2の通信路構築部22のメッセージM96から「受信電文」を自身の秘密鍵C2で復号し、第1の通信端末11からの「送信電文」を取得(受信)する。
第2の通信端末21は、処理LC47として、受信したメッセージM96の「送信電文」の受信を完了すると、「受信完了」を回答するメッセージM100を第2の通信路構築部22に伝達する。
第2の通信路構築部22は、処理LD47として、伝達されたメッセージM100の「受信完了」の情報に基づいて、「受信完了」の通知であるメッセージM101,M103をそれぞれデータ通信管理装置54及び第1の通信端末11に送信する。
データ通信管理装置54は、処理LJ47として、受信したメッセージM101から取得した「受信完了」を履歴管理するとともに、通信端末間の通信の履歴管理を終了する。また、データ通信管理装置54は、「暗号化通信路終了」を要求するメッセージM102を第2の通信路構築部22に送信する。
第2の通信路構築部22は、処理LD48として、伝達されたメッセージM102から取得した「暗号化通信路終了」の要求に基づいて、暗号化通信路VC12を使用した暗号化通信を終了するとともに、暗号化通信路VC12の使用を終了したことを示す「通信路終了」を通知するメッセージM105を暗号通信管理装置53に送信する。
一方、第1の通信端末11は、処理LA47として、受信したメッセージM103から「受信完了」を取得すると、「暗号化通信路終了」を要求するメッセージM104を第1の通信路構築部12に送信する。
第1の通信路構築部12は、処理LB48として、伝達された「暗号化通信路終了」の要求に基づいて、暗号化通信路VC12を使用した暗号化通信を終了するとともに、暗号化通信路VC12の使用を終了したことを示す「通信路終了」を通知するメッセージM106を暗号通信管理装置53に送信する。
暗号通信管理装置53は、処理LH48として、第2の通信路構築部22のメッセージM105から「暗号化通信路終了」の通知、及び、第1の通信路構築部12のメッセージM106から「暗号化通信路終了」の通知を受け取ることに応じて、それらの通知を通信履歴として管理するとともに、暗号化通信路を利用した通信の履歴管理を終了する。
以上説明したように、本実施形態に係る暗号通信システム及び暗号通信方法によれば、以下に記載する効果が得られる。
(1)第1の通信端末11は、通信先である第2の通信端末21の電子証明書の有効性を法人情報管理装置51への問い合わせに基づいて確認することから、第2の通信端末21の電子証明書の信頼性が維持される。そして、信頼性が維持される電子証明書に基づいて暗号化通信路VC12を構築することで、秘匿性の担保された通信路が形成される。これにより、適正な通信先に対して秘匿性の担保された暗号化通信路VC12を構築することができるようになる。
また、第1及び第2の通信路構築部12,22の間では、新たに生成した暗号鍵で送信電文(通信データ)が秘匿化される。つまり、2つの通信路構築部の間には通信データの秘匿性の担保された通信路が確保される。
(2)第1及び第2の通信端末11,21の間では、公開鍵暗号方式の鍵で秘匿化され、さらに、第1及び第2の通信路構築部12,22の間では、新たに生成した公開鍵暗号方式の鍵で秘匿化されることから、第1及び第2の通信路構築部12,22の間には送信電文の秘匿性の担保された暗号化通信路が確保される。
(3)第1及び第2の通信路構築部12,22が暗号化通信路の秘匿化に用いる新たな公開鍵暗号方式の鍵を作成するための情報が、仮の公開鍵暗号方式の公開鍵「仮鍵B1」,「仮鍵D1」で暗号化されて授受されるため、構築される暗号化通信路の秘匿性が高められるようになる。
(4)仮の公開鍵暗号方式の公開鍵「仮鍵B1」,「仮鍵D1」、新たな公開鍵暗号方式の公開鍵「鍵B3」,「鍵D3」の作成に「TSP」が含まれるため、鍵の偽造が難しくなる。
(5)新たな公開鍵暗号方式の公開鍵「鍵B3」,「鍵D3」の交換に仮の公開鍵暗号方式の公開鍵「仮鍵B1」,「仮鍵D1」を利用することで、新たな公開鍵暗号方式の公開鍵「鍵B3」,「鍵D3」の秘匿性が維持される。
(6)第1及び第2の通信路構築部12,22の間で暗号化通信路VC12を使用した通信についてその通信履歴が検証できるようになる。
(7)第1及び第2の通信端末11,21の間の通信履歴を検証することができる。
(8)暗号化通信路VC12の秘匿性を担保する新たな公開鍵暗号方式の鍵が、交換条件の成立(「鍵再生成カウンタ」=「0」)で再生成され、この再生成された新たな公開鍵暗号方式の鍵で暗号化通信路VC12が再構築されるので、暗号化通信路VC12の秘匿性がより一層確保されるようになる。
(その他の実施形態)
なお上記実施形態は、以下の態様で実施することもできる。
・上記実施形態では、正式な公開鍵暗号方式の鍵の再生成を鍵再生成カウンタの値に基づいて行う場合について例示した。しかしこれに限らず、必要な秘匿性が維持されているうちに正式な公開鍵暗号方式の鍵を再生成することができるのであれば、再生成の条件を経過時間等の他条件としてもよい。
・上記実施形態では、第1及び第2の通信路構築部12,22は、正式な公開鍵暗号方式の鍵を再生成する場合について例示した。しかしこれに限らず、必要な秘匿性が維持できているのであれば、正式な公開鍵暗号方式の鍵を再生成しなくてもよい。
・上記実施形態では、第1及び第2の通信端末11,21が送信する通信データをデータ通信管理装置54が履歴管理する場合について例示したが、暗号通信管理装置で暗号化通信の履歴管理がなされている場合、通信端末が送信する通信データが履歴管理されなくてもよい。
・上記実施形態では、第1及び第2の通信路構築部12,22が送信する情報を暗号通信管理装置53で履歴管理する場合について例示したが、データ通信管理装置で通信端末の間の通信データが履歴管理されている場合、通信路構築部が送信する情報が履歴管理されなくてもよい。
・上記実施形態では、各通信路構築部12,22は、「装置ID」、「IPアドレス」及び「TSP」に基づいて仮の公開鍵「仮鍵B1」,「仮鍵D1」を生成する場合について例示した。しかしこれに限らず、通信路構築部は、「装置ID」「IPアドレス」及び「TSP」の少なくとも1つに基づいて仮の公開鍵を生成してもよい。
・上記実施形態では、各通信路構築部12,22は、「装置ID」、「IPアドレス」、「法人番号」、「位置情報」及び「TSP」に基づいて正式な公開鍵「鍵B3」,「鍵D3」を生成する場合について例示した。しかしこれに限らず、通信路構築部は、「装置ID」、「IPアドレス」、「位置情報」及び「TSP」の少なくとも1つと、「法人番号」とに基づいて正式な公開鍵を生成してもよい。
・上記実施形態では、各通信路構築部12,22の正式な公開鍵「鍵B3」,「鍵D3」が、仮の公開鍵「仮鍵D1」「仮鍵B1」で暗号化されて交換される場合について例示した。しかしこれに限らず、正式な公開鍵の秘匿性が確保できるのであれば、各通信路構築部は正式な公開鍵を、仮の公開鍵を利用せずに交換してもよい。例えば、平文での交換よりも秘匿性が高められる方法、例えば、通信端末の公開鍵や、予め定めた共通鍵や、その他の方法を交換に用いてもよい。
・上記実施形態では、各通信端末11,21の間で通信データを暗号化する場合について例示した。しかし、これに限らず、各通信端末の間の通信データは暗号化されない平文であってもよい。これによっても、暗号化通信路によって暗号化通信が行える。
・上記実施形態では、第1の通信端末11と第1の通信路構築部12とが別の装置であり、第2の通信端末21と第2の通信路構築部22とも別の装置である場合について例示した。しかしこれに限らず、通信端末と通信路構築部とが1つの装置であってもよい。
・上記実施形態では、第1及び第2の通信路構築部12,22が装置である場合について例示したが、通信路構築部は、その機能を発揮できるソフトウェアの実行によって構成されていてもよい。例えば、こうしたソフトウェアを通信端末に導入し、実行させることで通信端末においてその機能を発揮することができるようにしてもよい。
・上記実施形態では、第1の通信端末11から通信が開始された場合について例示したが、どの通信端末から通信が開始されてもよい。通信の終了についても、どの通信端末から通信が終了されてもよい。
・上記実施形態では、第1の通信端末11と第2の通信端末21とはそれぞれ通信相手を認証する場合について例示したが、これに限らず、必要な信頼性が確保できるのであれば、いずれか一方が通信の相手方を認証するだけでもよい。
・上記実施形態では、第1の通信端末11と第2の通信端末21との公開鍵は電子証明書とともに取得される場合について例示したが、通信端末の公開鍵が単独、もしくは電子証明書以外の他の情報とともに取得できてもよい。
・上記実施形態では、第1の通信路構築部12と第2の通信路構築部22との間で公開鍵が授受される場合について例示したが、公開鍵は単独で授受されてもよいし、電子証明書等の他の情報とともに授受されてもよい。
・上記実施形態では、法人の電子証明書500を法人番号に基づいて発行する場合について例示した。しかしこれに限らず、法人以外の個人についても、個人を特定する特定個人番号などを公的機関などの信頼性の高い機関で検証できるのであれば、例えば、通信端末を使用する個人に対して信頼性の高い電子証明書を発行してもよい。
・上記実施形態では、電子証明書500の拡張領域には、特定法人番号・位置情報等の法人情報50hの項目が設けられ、この項目に「法人情報」が格納されている場合について説明した。しかしこれに限らず、拡張領域には、特定法人番号・位置情報等の項目に法人情報が格納されることに加えて、「申請者氏名」や「申請者識別番号」の項目が設けられるとともに、各項目には対応する内容が格納されていてもよい。また、「受信者情報」の項目が設けられるとともに、この項目に対応する内容が格納されていてもよい。これにより、電子証明書500の正当性を高めることができるようにもなる。
・上記実施形態では、現在位置がGPSなどで検出される場合について例示した。しかしこれに限らず、現在位置が、無線、有線の電話通信網や、郵便の配達区域などに基づいて検出されてもよいし、GPSなどとの組合せで検出されてもよい。
・上記実施形態では、特定法人番号が日本国の番号法に規定される法人番号である場合について例示した。しかしこれに限らず、公的に法人を特定することのできる情報であれば、これを特定法人番号として利用してもよい。例えば、日本国の法人番号と同様の機能を有する外国で法人を特定する符号などを用いることもできる。例えば、日本国の法人番号に対応するものとして、アメリカ合衆国では「EIN」(Employer Identification Number)が、ベルギーでは「Enterprise Number」が、オランダでは「KVK Number」が、フィンランドでは「Organisation Number」が挙げられる。また、ノルウェーでは「Business ID」が、デンマークでは「CVR Number」が、スウェーデンでは「Organisation Number」が、シンガポールでは「UEN」が、中国では「組織機構コード」が、タイでは「登記番号」が、インドでは「CIN」が挙げられる。