JP2012029225A - 暗号通信システム、端末装置 - Google Patents

暗号通信システム、端末装置 Download PDF

Info

Publication number
JP2012029225A
JP2012029225A JP2010168383A JP2010168383A JP2012029225A JP 2012029225 A JP2012029225 A JP 2012029225A JP 2010168383 A JP2010168383 A JP 2010168383A JP 2010168383 A JP2010168383 A JP 2010168383A JP 2012029225 A JP2012029225 A JP 2012029225A
Authority
JP
Japan
Prior art keywords
terminal
key
public key
authority server
certificate authority
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010168383A
Other languages
English (en)
Other versions
JP5799240B2 (ja
Inventor
Hisahiro Fukuda
尚弘 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Electric Works Co Ltd
Original Assignee
Panasonic Electric Works Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Electric Works Co Ltd filed Critical Panasonic Electric Works Co Ltd
Priority to JP2010168383A priority Critical patent/JP5799240B2/ja
Publication of JP2012029225A publication Critical patent/JP2012029225A/ja
Application granted granted Critical
Publication of JP5799240B2 publication Critical patent/JP5799240B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 端末に事前の固有鍵(秘密鍵)を設定する必要なく、安全に固有鍵を設定できる暗号通信システム等を提供することを目的とする。
【解決手段】 親機が子機との間で暗号通信を開始するときに、手順(1)にて、親機に予め記憶した親機の公開鍵pk(B)と、認証局サーバの公開鍵pk(S)で暗号化された親機の公開鍵pk(B)とを含む証明書CertBを、子機1に送信する。子機1は、証明書CertBを受信したときに、証明書CertBを予め記憶した認証局サーバの公開鍵pk(S)で復号した値と、受信した親機の公開鍵pk(B)の値とが同じである場合に、当該子機により生成した固有鍵Kを、受信した親機の公開鍵pk(B)で暗号化し、当該暗号化されたメッセージを、手順(2)にて、親機に送信し、親機は、子機から送信されたメッセージを、親機の秘密鍵sk(B)で復号して、子機の固有鍵Kを取得する。
【選択図】 図4

Description

本発明は、端末間で暗号通信をする暗号通信システム、端末装置に関する。
従来、端末で暗号通信を開始するときに、端末に秘密鍵を設定する技術としては、下記の特許文献1に記載された技術等が知られている。
この特許文献1に記載された技術は、端末が端末用公開鍵と端末用秘密鍵を生成し、サーバは、端末から端末用公開鍵と設定要求パケットを受信した時に、自身のサーバ用公開鍵とサーバ用秘密鍵を生成する。端末は、サーバ用公開鍵を受信して自身の固有情報を暗号化して返信する。サーバは、端末から送信された暗号化された固有情報を復号し、当該固有情報と時刻情報等を用いてセキュリティ鍵を生成する。このセキュリティ鍵を端末用公開鍵で暗号化して送信する。端末は、受信した暗号化情報を端末用秘密鍵を用いて復号し、セキュリティ鍵を取得する。これにより、端末は、サーバによって生成されたセキュリティ鍵を用いて暗号通信を行える。
特開2007−214767号公報
しかしながら、端末の端末用公開鍵及び端末用秘密鍵、端末の固有情報を事前に設定する必要がある。したがって、大規模な暗号通信システムを想定した場合に、全ノードに対して固有の秘密鍵を設定する必要があり、ノードの製造時に、全ノードの公開鍵と秘密鍵の組み合わせを用意する必要がある。
そこで、本発明は、上述した実情に鑑みて提案されたものであり、端末に事前の固有鍵(秘密鍵)を設定する必要なく、安全に固有鍵を設定できる暗号通信システム、端末装置を提供することを目的とする。
上記の課題を解決する第1の発明に係る暗号通信システムは、相互間で通信を行う第1端末及び第2端末と、自身の公開鍵及び秘密鍵を有する認証局サーバとを含む暗号通信システムにおいて、前記第1端末は、当該第1端末の秘密鍵と、当該第1端末の公開鍵と、当該第1端末の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値を記憶する第1記憶部を備え、前記第2端末は、前記認証局サーバの公開鍵を記憶した第2記憶部を備え、前記第1端末は、前記第2端末との間で暗号通信を開始するときに、前記第1記憶部に記憶した前記第1端末の公開鍵と前記第1署名値とを、前記第2端末に送信し、前記第2端末は、前記第1端末から送信された前記第1端末の公開鍵と前記第1署名値とを受信したときに、当該第1署名値を前記第2記憶部に記憶した認証局サーバの公開鍵で復号した値と、受信した前記第1端末の公開鍵の値とが同じである場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信し、前記第1端末は、前記第2端末から送信されたメッセージを、前記第1記憶部に記憶された第1端末の秘密鍵で復号して、前記第2端末の固有鍵を取得することを特徴とする。
第1の発明に係る暗号通信システムであって、第2の発明は、前記第2端末の記憶部は、前記認証局サーバ及び/又は前記第1端末の公開鍵を含むデータをハッシュ処理した値を前記認証局サーバの秘密鍵を用いて暗号化した第2署名値を記憶し、前記認証局サーバの公開鍵を含むデータにより前記第2署名値を検証することにより前記認証局サーバ及び/又は前記第1端末の信頼性を評価することを特徴とする。
第1の発明に係る暗号通信システムであって、第3の発明は、前記第1端末は、前記第2端末の固有鍵を取得した後に、当該第2端末の固有鍵を新たに生成し、当該新たに生成された第2端末の固有鍵を、前記第2端末から取得した第2端末の固有鍵で暗号化し、当該暗号化したメッセージを前記第2端末に送信し、前記第2端末は、前記第1端末から送信されたメッセージを前記第1端末に送信した第2端末の固有鍵により復号して、前記第1端末によって新たに生成された第2端末の固有鍵を取得することを特徴とする。
第1の発明に係る暗号通信システムであって、第4の発明は、前記第1端末は、第1署名値を更新するイベント時に前記認証局サーバに第1署名値を取得するための要求を送信し、前記認証局サーバから返信された第1署名値を前記第2端末に送信し、前記第2端末は、前記第1端末から、当該第1端末の公開鍵と前記第1署名値を受信したときに、当該第1署名値を前記認証局サーバの公開鍵で復号した値と、受信した第1端末の公開鍵とが同じである場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信し、前記第1端末は、前記第2端末から送信されたメッセージを、前記第1記憶部に記憶された第1端末の秘密鍵で復号して、前記第2端末の固有鍵を取得することを特徴とする。
第4の発明に係る暗号通信システムであって、第5の発明は、前記認証局サーバが、有効期限を含む第1署名値を前記第1端末に送信し、前記第1端末は、前記認証局サーバから返信された第1署名値を前記第2端末に送信し、前記第2端末は、前記第1端末から、当該第1端末の公開鍵と前記第1署名値を受信したときに、当該第1署名値を前記認証局サーバの公開鍵で復号した値と、受信した第1端末の公開鍵とが同じであり、当該第1署名値に含まれる有効期限内である場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信することを特徴とする。
第1の発明に係る暗号通信システムであって、第6の発明は、前記第2端末は、前記第2端末の固有鍵に加えて自己のID情報を含むメッセージを第1端末に送信し、前記第1端末は、予め記憶しておいたID情報と、前記第2端末から受信したメッセージに含まれるID情報とを比較して、双方のID情報が一致した場合に、当該メッセージに含まれている第2端末の固有鍵を取得することを特徴とする。
第6の発明に係る暗号通信システムであって、第7の発明は、前記第1端末は、前記第2端末のID情報を、前記認証局サーバから取得しておき、当該認証局サーバから取得したID情報と、前記第2端末から受信したメッセージに含まれるID情報とを比較して、双方のID情報が一致した場合に、当該メッセージに含まれている第2端末の固有鍵を取得することを特徴とする。
第7の発明に係る暗号通信システムであって、第8の発明は、前記認証局サーバは、前記第2端末のID情報を乱数でハッシュ処理した値及び当該乱数を前記第1端末に送信し、前記第1端末は、前記第1署名値及び前記認証局サーバから送信された乱数を第2端末に送信し、前記第2端末は、予め記憶しておいた自己のID情報を前記第1端末から送信された乱数でハッシュ処理した値及び当該第2端末の固有鍵を前記第1端末に送信し、前記第1端末は、前記認証局サーバから送信された第2端末のID情報を乱数でハッシュ処理した値と、前記第2端末から送信された第2端末のID情報を乱数でハッシュ処理した値とを比較して、双方の値が一致した場合に、当該第2端末の固有鍵を取得することを特徴とする。
第1の発明に係る暗号通信システムであって、第9の発明は、前記第2端末は、当該第2端末の固有鍵を前記第1端末の公開鍵で暗号化した値に加え、当該第2端末にて生成した乱数を第1端末に送信し、前記第1端末は、前記第2端末の固有鍵を当該第1端末の秘密鍵で復号し、前記第2端末から送信された乱数をハッシュ処理した値を、当該復号された第2端末の固有鍵で暗号化した値を第2端末に送信し、前記第2端末は、前記第1端末から送信された値を、前記第1端末に送信した第2端末の固有鍵で復号し、当該復号して得た値が、前記第1端末に送信した乱数をハッシュ処理した値と一致している場合に、当該第2端末の固有鍵を利用することを特徴とする。
第10の発明に係る端末装置は、相互相手の通信相手端末と、認証局サーバの公開鍵及び秘密鍵を有する認証局サーバと接続された端末装置であって、自身の秘密鍵及び公開鍵と、当該自身の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値を記憶する記憶部と、前記通信相手端末との間で暗号通信を開始するときに、前記記憶部に記憶した前記自身の公開鍵と前記第1署名値とを、前記通信相手端末に送信し、前記通信相手端末の固有鍵が前記自身の端末の公開鍵で暗号化されたメッセージを受信し、前記通信相手端末から送信されたメッセージを、前記記憶部に記憶された自身の秘密鍵で復号して、前記通信相手端末の固有鍵を取得する通信手段とを備えることを特徴とする。
第11の発明に係る端末装置は、認証局サーバの公開鍵及び秘密鍵を有する認証局サーバと接続された通信相手端末と通信を行う端末装置であって、前記認証局サーバの公開鍵を記憶した記憶部と、前記通信相手端末の公開鍵と、第1端末の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値とを受信したときに、当該第1署名値を前記記憶部に記憶した認証局サーバの公開鍵で復号した値と、受信した前記通信相手端末の公開鍵の値とが同じである場合に認証を許可する認証手段と、前記認証手段によって認証が許可された場合に、自身の固有鍵を生成する固有鍵生成手段と、前記固有鍵生成手段により生成された固有鍵を前記受信した通信相手端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記通信相手端末に送信する固有鍵送信手段とを備えることを特徴とする。
本発明によれば、第1端末が第2端末との間で暗号通信を開始するときに、第1端末から第2端末に認証局サーバの公開鍵で暗号化された値を第2端末に送信し、第2端末によって認証局サーバの秘密鍵で復号した値が正当であるかを判断する。そして、第2端末によって復号した値が正当である場合には、固有鍵を生成して、第1端末に送信する。これにより、第2端末に予め事前の固有鍵(秘密鍵)を設定する必要なく、安全に第1端末及び第2端末に固有鍵を設定できる。
本発明の一実施形態として示す暗号通信システムの機能的な構成を示すブロック図である。 本発明の一実施形態として示す暗号通信システムの一構成例を示すブロック図である。 (a)はX.509証明書の項絵師、(b)は当該証明書から取り出した情報、(c)は暗号通信システムにおいて最低限必要となる情報、である。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、子機が証明書を認証するときの処理手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、親機及び子機の他の動作手順を示すフローチャートである。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ、親機、子機の他の動作手順を示すシーケンス図である。 本発明の一実施形態として示す暗号通信システムにおいて、認証局サーバ及び/又は親機を、子機によって認証する構成を示すシステム図である。
以下、本発明の実施の形態について図面を参照して説明する。
本発明の実施形態として示す暗号通信システムは、例えば図1に示すように、複数の端末1と、認証局サーバ2(D)とを含む。複数の端末は、第1端末としての親機1(B)と、第2端末としての子機1(A)とを含む。この暗号通信システムは、子機1(A)及び親機1(B)の相互間で暗号通信を行うために、子機1(A)に固有鍵Kを設定するものである。すなわち、子機1(A)は、その製造段階では、他の子機1(A)と異なる固有鍵Kが設定されていない。この暗号通信システムは、子機1(A)と親機1(B)とが暗号通信を行うために、子機1(A)に固有鍵Kを設定し、当該子機1(A)の固有鍵Kを親機1(B)に共有させる必要がある。
例えば図2に示すように、認証局サーバ2(D1)に親機1(B1)が接続されている。当該親機1(B1)に多数の子機1(A1)〜子機1(A4)が接続されている。認証局サーバ2(D2)に親機1(B2)が接続され、当該親機1(B2)に子機1(A5)、子機1(A6)が接続されている。更に、親機1(B1)が親機1(B2)を制御できる状況を考える。この場合、各子機1(A)に製造段階で固有鍵Kが必要だとすると、各子機1(A)に固有鍵Kを予め設定し、且つ親機1(B)にも固有鍵Kを設定する必要があり、設備構築工数が多大となってしまう。
そこで、本発明の実施形態として示す暗号通信システムは、認証局サーバ2(D1)のルート証明書CertSを信頼することによって、親機1(B1)及び子機1(A1)〜子機1(A4)に、子機1(A1)〜子機1(A4)の固有鍵K1〜K4を設定させる。また、親機1(B1)は、認証局サーバ2(D1)のルート証明書CertSを信頼することによって、親機1(B2)の固有鍵K8も設定可能である。これにより、親機1(B)は、各子機1(A)の固有鍵Kを用いて、データを暗号化して暗号通信をできる。
図3(a)に、ルート証明書CertSとしてのX.509証明書の構成を示す。このルート証明書CertSのうち、子機1(A)に記憶しておく情報としては、図3(b)に示す識別子(ID)、有効期間、認証局サーバ2(D)の公開鍵pk(S)、署名値である。最低限の情報として、子機1(A)には、図3(c)に示す認証局サーバ2(D)の公開鍵pk(S)及び証明書CertSが必要である。この証明書CertSは、親機1(B)の公開鍵pk(B)のハッシュ値hash(pk(B))を認証局サーバ2(D)の秘密鍵pk(S)で暗号化した値{hash(pk(B))}pk(S)となる。
以下、子機1(A)に固有鍵Kを設定し、親機1(B)との間で共有する固有鍵Kの設定例について説明する。
(第1設定例)
図4乃至図6を参照して、子機1(A)に固有鍵Kを設定して、親機1(B)と子機1(A)とが固有鍵Kを共有する手順を説明する。
この暗号通信システムの前提として、認証局サーバ2(D)は、自身の公開鍵(認証局サーバ2(D)の公開鍵pk(S))及び秘密鍵(認証局サーバ2(D)の秘密鍵sk(D))を有している。この認証局サーバ2(D)は、親機1(B)と接続されて、後述するように、子機1(A)の固有鍵Kの設定時に、親機1(B)と通信を行う。
図5に示すように、親機1(B)は、親機1(B)の公開鍵pk(B)と、親機1(B)の秘密鍵sk(B)と、認証局サーバ2(D)の公開鍵pk(S)と、証明書CertB=[pk(B),Sig(S,B)]=[pk(B),[hash(pk(B))]sk(D)]と、を記憶している(第1記憶部、ステップST1)。証明書CertBは、当該親機1(B)の公開鍵pk(B)と、認証局サーバ2(D)の公開鍵pk(S)をハッシュ処理した値を認証局サーバ2(D)の秘密鍵sk(D)を用いて暗号化した署名値Sig(S,B)と、を含む。
子機1(A)は、認証局サーバ2(D)の公開鍵pk(S)を記憶している(第2記憶部、ステップST11)。この認証局サーバ2(D)の公開鍵pk(S)は、認証局サーバ2(D)の自己証明書CertS=[pk(S),Sig(S,S)]を信頼することから、認証局サーバ2(D)の証明書CertSに含まれる認証局サーバ2(D)の公開鍵pk(S)である。
先ず、図4の手順(1)に示すように、親機1(B)は、子機1(A)との間で暗号通信を開始するときに、親機1(B)の公開鍵pk(B)と第1署名値Sig(S,B)とを含む証明書CertBであるメッセージmsg1を、子機1(A)に送信する(図5のステップST2)。この証明書CertBは、認証局サーバ2(D)によって正当であることが証明された親機1(B)の証明書である。
メッセージmsg1は、子機1(A)に受信される(ステップST12)。子機1(A)は、メッセージmsg1を受信すると、当該メッセージmsg1に含まれる証明書CertBを記憶する。
子機1(A)は、ステップST12にて受信した証明書CertBを認証する(ステップST13)。なお、この認証処理は後述する。子機1(A)は、認証処理によって証明書CertBが許可されたことに応じて、固有鍵Kを生成し、記憶する(ステップST14)。そして、子機1(A)は、生成した固有鍵Kを含むメッセージmsg2を親機1(B)に送信する(ステップST15、図4の手順(2))。この図4の手順(2)において、子機1(A)は、メッセージmsg2として、固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化した値を、親機1(B)に送信する。
親機1(B)は、子機1(A)から送信されてメッセージmsg2を受信する(ステップST3)。親機1(B)は、メッセージmsg2に含まれる親機1(B)の公開鍵pk(B)で暗号化された固有鍵Kを、証明書CertBに含まれていた親機1(B)の公開鍵pk(B)で復号する。これにより、親機1(B)は、子機1(A)により生成された固有鍵Kを取得する。以上により、暗号通信システムにおいては、子機1(A)と親機1(B)とで子機1(A)の固有鍵Kを共有できる。
ステップST13における子機1(A)による証明書CertBの認証処理を、図6を参照して説明する。
先ずステップST101において、子機1(A)は、証明書CertBに含まれる、親機1(B)の公開鍵pk(B)と、親機1(B)の公開鍵pk(B)のハッシュ値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した値[{hash(pk(B))}sk(D)]とを、受信する。
次のステップST102において、受信した子機1(A)は、親機1(B)の公開鍵pk(B)をハッシュ化して、ハッシュ値hash(pk(B))=Xを取得する。なお、ハッシュ関数は、子機1(A)と親機1(B)とで予め設定されている。
次のステップST102において、受信した{hash(pk(B))}sk(D)を、予めステップST11にて記憶している認証局サーバ2(D)の公開鍵pk(S)で復号して、ハッシュ値hash(pk(B))=Yを取得する。
次のステップST104において、子機1(A)は、ステップST102にて取得したハッシュ値Xと、ステップST103にて取得したハッシュ値Yとが一致しているか否かを判定する。双方のハッシュ値X,Yが一致しているときには、親機1(B)から送信された証明書CertBにおける{hash(pk(B))}sk(D)が、正当な認証局サーバ2(D)の秘密鍵sk(D)によって暗号化されたものであり、当該証明書CertBが信頼できるものとなる。したがって、この場合、子機1(A)は、認証を許可する。
一方、双方のハッシュ値X,Yが異なる値であるときには、認証を拒否する。これにより、子機1(A)は、処理を中止し、固有鍵Kの生成及び送信をしない。
なお、本例では、認証局サーバ2(D)の公開鍵pk(S)のハッシュ値を用いているが、署名値Sig(S,B)は、認証局サーバ2(D)の公開鍵pk(S)のハッシュ値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化したものではなく、単に親機1(B)の公開鍵pk(B)を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した値でも良い。この場合、上述の図6では、親機1(B)の公開鍵pk(B)をハッシュ化した値を比較するのではなく、親機1(B)の公開鍵pk(B)と復号した親機1(B)の公開鍵pk(B)とを比較して認証をすることとなる。
以上のように、この暗号通信システムによれば、親機1(B)が子機1(A)との間で暗号通信を開始するときに、親機1(B)から子機1(A)に認証局サーバ2(D)の公開鍵pk(S)で暗号化された値を子機1(A)に送信し、子機1(A)によって認証局サーバ2(D)の秘密鍵sk(D)で復号した値が正当であるかを判断する。そして、子機1(A)によって復号した値が正当である場合には、固有鍵Kを生成して、親機1(B)に送信する。これにより、子機1(A)に予め事前の固有鍵(秘密鍵)を設定する必要なく、安全に親機1(B)及び子機1(A)に固有鍵Kを設定できる。
すなわち、この暗号通信システムによれば、認証局サーバ2(D)の公開鍵pk(S)に基づいて親機1(B)の信頼度を確保できる。これにより、この暗号通信システムによれば、子機1(A)に事前の固有鍵を設定することなしに、暗号通信の開始時点で固有鍵Kを子機1(A)で生成して、親機1(B)に安全に供給することができる。
また、この暗号通信システムにおいて、子機1(A)は、その記憶部(ステップST11)に、認証局サーバ2(D)の公開鍵pk(S)を含むデータをハッシュ処理した値を認証局サーバ2(D)の秘密鍵sk(D)を用いて暗号化した第2署名値を記憶していても良い。これにより、子機1(A)は、認証局サーバ2(D)の公開鍵pk(S)により第2署名値を検証することにより信頼性を評価しても良い。
(第2設定例)
つぎに、固有鍵Kの第2設定例について、図7及び図8を参照して説明する。
この第2設定例は、図7に示すように、上述した第1設定例に、手順(3)を加えて、親機1(B)により生成した固有鍵K’を子機1(A)に設定するものである。
この手順(3)において、親機1(B)は、自身で固有鍵K’を生成し(図8のステップST5)、子機1(A)から送信された固有鍵Kで暗号化した値{K’}Kを、メッセージmsg3として、子機1(A)に送信する(ステップST6)。
子機1(A)は、メッセージmsg3を受信すると(ステップST16)、当該メッセージmsg3を固有鍵Kで復号することによって、親機1(B)によって生成された固有鍵K’を記憶する(ステップST17)。これにより、子機1(A)と親機1(B)とは、子機1(A)の固有鍵K’を共有する。
以上のように、この第2設定例を行う暗号通信システムによれば、親機1(B)が子機1(A)よりも性能が高い場合に、より安全性を向上した固有鍵K’を子機1(A)に設定できる。すなわち、親機1(B)に高度の乱数生成器を備える場合、親機1(B)は、固有鍵Kよりも推測されにくい生成品質が高い固有鍵K’を生成して、子機1(A)に設定できる。また、この暗号通信システムによれば、子機1(A)の乱数生成器を安価なものとでき、子機1(A)の個数が膨大となるほど、コストを低減できる。
(第3設定例)
つぎに、固有鍵Kの第3設定例について、図9及び図10を参照して説明する。
この第3設定例は、先ず、親機1(B)によって自身の親機1(B)の公開鍵pk(B)及び親機1(B)の秘密鍵sk(B)のペアを生成し(ステップST1’)、認証局サーバ2(D)に、メッセージmsg01として認証局サーバ2(D)の公開鍵pk(S)を送信する(図10のステップST7)。ここで、親機1(B)は、上述したように証明書CertBを記憶していなくても良い(ステップST1’)。
認証局サーバ2(D)は、親機1(B)から送信された親機1(B)の公開鍵pk(B)を受信する(ステップST22)。ここで、認証局サーバ2(D)は、予め自身の認証局サーバ2(D)の公開鍵pk(S)、認証局サーバ2(D)の秘密鍵sk(D)を記憶している(ステップST21)。
次の手順(2)において、認証局サーバ2(D)は、親機1(B)の公開鍵pk(B)と、当該親機1(B)の公開鍵pk(B)をハッシュした値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した署名値Sig(S,B)と、からなる証明書CertBを生成する(ステップST23)。認証局サーバ2(D)は、当該生成した証明書CertBを、メッセージmsg02として親機1(B)に送信する(ステップST24)。
親機1(B)は、認証局サーバ2(D)から送信されたメッセージmsg02を受信して、記憶する(ステップST8)。これにより、親機1(B)は、新たな証明書CertBを取得できる。
その後、認証局サーバ2(D)は、第1設定例の手順(1)と同様に手順(3)を行って、メッセージmsg1としての証明書CertBを、子機1(A)に送信する。子機1(A)は、第1設定例と同様に手順(4)を行って、固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化して、親機1(B)に送信する。これにより、親機1(B)は、メッセージmsg2を、親機1(B)の秘密鍵sk(B)で復号して、固有鍵Kを取得できる。
このような第3設定例によれば、証明書CertBを更新するイベント時に、親機1(B)から認証局サーバ2(D)に証明書CertBを取得するための要求を送信し、認証局サーバ2(D)から返信された証明書CertBを子機1(A)に送信できる。この証明書CertBを更新するイベントとは、親機1(B)の故障や交換が挙げられる。これにより、暗号通信システムによれば、親機1(B)の交換等がされても、新しい親機1(B)と子機1(A)との間で固有鍵Kを安全に共有できる。すなわち、古い親機1(B)との間で共有していた固有鍵Kを新たなものとできる。
また、この暗号通信システムによれば、図2に示したように親機1(B)が複数存在する場合に、親機1(B)ごとに親機1(B)の公開鍵pk(B)を生成できる。これにより、仮に固有鍵Kが漏洩しても、当該固有鍵Kを悪用した脅威を分散することができる。
(第4設定例)
つぎに、固有鍵Kの第4設定例について、図11及び図12を参照して説明する。
第4設定例は、図11に示すように、認証局サーバ2(D)は、手順(1)によって親機1(B)からメッセージmsg01に対する応答として、手順(2)において、有効期限Tを含む署名値Sig(S,B)を含む証明書CertB(T)を親機1(B)に返信する(図12のステップST23,24)。この証明書CertB(T)は、有効期限Tと、親機1(B)の公開鍵pk(B)と、当該有効期限T、親機1(B)の公開鍵pk(B)をハッシュ化した値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した値[[hash(T,pk(B)]sk(D)]と、を含む。
親機1(B)は、当該証明書CertB(T)を受信すると、当該証明書CertB(T)を記憶し(ステップST8)、認証局サーバ2(D)から返信された証明書CertB(T)を子機1(A)に送信する(ステップST2、手順(3))。
子機1(A)は、証明書CertB(T)を受信し、当該証明書CertB(T)を用いて認証を許可すると、当該証明書CertB(T)に含まれている有効期限Tと、現在時刻T’とを比較する(ステップST18)。現在時刻T’が有効期限T内である場合には、当該証明書CertB(T)の認証を許可し、そうでない場合には、当該証明書CertB(T)を破棄する。証明書CertB(T)の認証を許可した場合、子機1(A)は、上述した設定例と同様に、ステップST14,15を行って、固有鍵Kを含むメッセージmsg2を送信する。
以上のように、この暗号通信システムによれば、証明書CertB(T)に有効期限Tを設ける。これによって、認証局サーバ2(D)から親機1(B)に送信された証明書CertBが不正に傍受された場合であっても、有効期限Tが経過していれば、当該証明書CertB(T)の認証を拒否できる。したがって、この暗号通信システムによれば、有効期限Tとして、例えば親機1(B)の修理期間という短時間を設けておけば、その後の悪意のリプレー攻撃に対するリスクを低減できる。
(第5設定例)
つぎに、固有鍵Kの第5設定例について、図13及び図14を参照して説明する。
第5設定例は、子機1(A)のID情報hIDを用いて、固有鍵Kを共有するものである。子機1(A)及び親機1(B)は、予め、子機1(A)のID情報hIDを保持している(図14のステップST1’、ステップST11’)。このID情報hIDは、子機1(A)に固有に与えられたものであり、ネットワーク上に流れることがない。このID情報hIDとしては、例えば子機1(A)の起動用ROMに含まれるオブジェクト識別子等が使用可能である。
親機1(B)は、上述と同様に、図13の手順(1)にて、証明書CertBを、メッセージmsg1として子機1(A)に送信する。子機1(A)は、証明書CertBを受信すると(ステップST12)、当該証明書CertBの認証を行って(ステップST13)、固有鍵Kを生成する(ステップST14)。子機1(A)は、手順(2)にて、固有鍵KとID情報hIDとを、親機1(B)の公開鍵pk(B)によって暗号化した値[[hID,K]pk(B)]を、メッセージmsg2として生成して、親機1(B)に送信する(ステップST19)。
親機1(B)は、メッセージmsg2を受信すると(ステップST3)、当該メッセージmsg2を親機1(B)の秘密鍵sk(B)によって復号する(ステップST4)。
次に、親機1(B)は、復号されて取得した子機1(A)のID情報hIDと、予め記憶(ステップST1’)していたID情報hIDとを比較して、一致した場合には、子機1(A)の認証を許可する。そして、親機1(B)は、当該ID情報hIDと共に送信された固有鍵Kを記憶する(ステップST10)。一方、双方のID情報hIDが異なっている場合には、子機1(A)の認証を拒否して、固有鍵Kを破棄する。
以上のように、この暗号通信システムによれば、親機1(B)によって子機1(A)の認証をすることにより、子機1(A)のなりすましを防止できる。すなわち、親機1(B)から子機1(A)宛てに送信されたメッセージmsg1を傍受して、当該メッセージmsg1の返信として攻撃端末が親機1(B)にメッセージを送信しても、当該攻撃端末を認証して、攻撃端末が設定した固有鍵の使用することを拒否できる。
(第6設定例)
つぎに、固有鍵Kの第6設定例について、図15及び図16を参照して説明する。
第6設定例も、子機1(A)のID情報hIDを用いて、固有鍵Kを共有するものである。この暗号通信システムは、予め、認証局サーバ2(D)に親機1(B)のID情報hIDb及び子機1(A)のID情報hID1を含む子機1のID情報hIDaのリストを記憶している(ステップST21’)。また、親機1(B)は、自己のID情報hIDbを記憶している(ステップST1’)。更に、子機1(A)は、第5設定例と同様に、自己のID情報hID1を記憶している(ステップST11’)。
親機1(B)は、証明書CertBの更新時に、図15の手順(1)にて、メッセージmsg01として、親機1(B)の公開鍵pk(B)と、自己のID情報hIDbを認証局サーバ2(D)の公開鍵pk(S)で暗号化した値[[hIDb]pk(S)]とを、認証局サーバ2(D)に送信する(ステップST7)。なお、親機1(B)は、メッセージmsg01として、自己のID情報hIDbを親機1(B)の秘密鍵sk(B)で暗号化した値[[hIDb]sk(B)]を送信することもできるが、親機1(B)の公開鍵pk(B)を平文で送信するために、ネットワークで盗聴した第三者がID情報hIDbを復号できる可能性がある。
認証局サーバ2(D)は、メッセージmsg01を受信すると、当該メッセージmsg01から、親機1(B)の公開鍵pk(B)を記憶しておく(ステップST22)。認証局サーバ2(D)は、親機1(B)の公開鍵pk(B)と、当該親機1(B)の公開鍵pk(B)をハッシュ化した値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した署名値Sig(S,B)と、からなる証明書CertB=[[hash(pk(B))]sk(D)]を生成する(ステップST23)。同時に、認証局サーバ2(D)は、子機1(A)のID情報hIDaのリストを、親機1(B)の秘密鍵sk(B)で暗号化したデータ[[hID1,hID2,...,hIDn]pk(B)]と生成する。そして認証局サーバ2(D)は、証明書CertB=[[hash(pk(B))]sk(D)]と、データ[[hID1,hID2,...,hIDn]sk(B)]とを、メッセージmsg02として、親機1(B)に送信する(手順(2)、ステップST24)。
親機1(B)は、メッセージmsg02を受信すると(ステップST8)、親機1(B)の公開鍵pk(B)によってデータを復号して、子機1(A)のID情報hIDaのリストを取得する。そして親機1(B)は、当該ID情報hIDaのリストと、証明書CertBとを記憶する(ステップST8)。その後、親機1(B)は、手順(3)にて、証明書CertBを、メッセージmsg1として子機1(A)に送信する。
子機1(A)は、証明書CertBを受信すると(ステップST12)、当該証明書CertBの認証を行って(ステップST13)、固有鍵Kを生成する(ステップST14)。子機1(A)は、固有鍵Kと自身のID情報hID1とを、親機1(B)の公開鍵pk(B)によって暗号化した値[[hID1,K]pk(B)]を、メッセージmsg2として生成して、親機1(B)に送信する(手順(4)、ステップST15)。
親機1(B)は、メッセージmsg2を受信すると(ステップST3)、当該メッセージmsg2を親機1(B)の秘密鍵sk(B)により復号して(ステップST4)、固有鍵K及びID情報hID1を取得する。親機1(B)は、メッセージmsg02から取得したID情報hIDaのリストと、メッセージmsg2から取得したID情報hID1とを比較して、当該ID情報hID1がID情報hIDaのリストに含まれている場合には、当該固有鍵Kの利用を許可する。
以上のように、この暗号通信システムによれば、認証局サーバ2(D)から親機1(B)に正当な子機1(A)のID情報hIDaのリストを送信し、親機1(B)に接続された子機1(A)の認証を一括して管理できる。したがって、この暗号通信システムによれば、子機1(A)のなりすましを一括して管理でき、安全に固有鍵Kを設定できる。
また、この第6設定例においては、任意の乱数であるノンス(not at once)を用いることによって、更に安全に固有鍵Kを設定できる。
この設定例は、図17に示すように、手順(1)において、認証局サーバ2(D)によって、メッセージmsg01として、認証局サーバ2(D)にて生成したノンスNb0、親機1(B)の公開鍵pk(B)、ID情報hIDbを認証局サーバ2(D)の公開鍵pk(S)で暗号化した値を親機1(B)に送信する。
親機1(B)は、メッセージmsg01を受信する。親機1(B)は、手順(2)にて、メッセージmsg02として、証明書CertBと、ノンスNb0及び子機1のID情報hIDのリストを親機1(B)の公開鍵pk(B)で暗号化した値とを、認証局サーバ2(D)に返送する。認証局サーバ2(D)は、当該メッセージmsg02を親機1(B)の秘密鍵sk(B)で復号することによりノンスNb0を取得し、手順(1)で自身が送信したノンスNb0と同じであれば、認証局サーバ2(D)が正当なものと判断できる。
次の手順(3)にて、親機1(B)は、ノンスNbを生成し、当該ノンスNbと証明書CertBとを含むメッセージmsg1を子機1(A)に送信する。
次の手順(4)にて、子機1(A)は、証明書CertBを認証して固有鍵Kを生成し、ノンスNb、自己のID情報hID1、固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化した値を、メッセージmsg2として親機1(B)に返信する。
親機1(B)は、メッセージmsg2を親機1(B)の秘密鍵sk(B)で復号することによりノンスNbを取得し、手順(3)にて自身が送信したノンスNbと同じであれば、子機1(A)を正当なものと判断できる。また、親機1(B)は、復号により取得した子機1(A)のID情報hID1が、ID情報hIDのリストに含まれている場合に、当該子機1(A)が正当なものであると判定し、固有鍵Kを利用した暗号通信を行う。
以上のように、この暗号通信システムによれば、認証局サーバ2(D)が生成したノンスNb0、親機1(B)が生成したNbを利用することによって、認証局サーバ2(D)が親機1(B)を認証でき、親機1(B)が子機1(A)を認証できる。したがって、この暗号通信システムによれば、親機1(B)及び子機1(A)のなりすましを回避でき、安全に固有鍵Kを設定できる。
(第7設定例)
つぎに、固有鍵Kの第7設定例について、図18及び図19を参照して説明する。
第7設定例は、子機1(A)のID情報hIDaに加え、認証局サーバ2(D)が生成した乱数rを用いて、固有鍵Kを共有するものである。
この暗号通信システムは、予め、認証局サーバ2(D)に親機1(B)のID情報hIDb及び子機1(A)のID情報hID1を含む子機1(A)のID情報hIDaのリストを記憶している(ステップST21’)。また、親機1(B)は、自己のID情報hIDbを記憶している(ステップST1’)。更に、子機1(A)は、第5設定例と同様に、自己のID情報hID1を記憶している(ステップST11’)。
親機1(B)は、証明書CertBの更新時に、メッセージmsg01として、親機1(B)の公開鍵pk(B)と、自己のID情報hIDbを認証局サーバ2(D)の公開鍵pk(S)で暗号化した値[hIDb]pk(S)とを、認証局サーバ2(D)に送信する(図18の手順(1)ステップST7)。
認証局サーバ2(D)は、メッセージmsg01を受信すると、当該メッセージmsg01から、親機1(B)の公開鍵pk(B)を記憶しておく(ステップST22)。
認証局サーバ2(D)は、親機1(B)の公開鍵pk(B)と、当該親機1(B)の公開鍵pk(B)をハッシュ化した値を認証局サーバ2(D)の秘密鍵sk(D)で暗号化した署名値Sig(S,B)と、からなる証明書CertB=[[hash(pk(B))]sk(D)]を生成する(ステップST23)。更に、認証局サーバ2(D)は、乱数rを生成する(ステップST25)。同時に、認証局サーバ2(D)は、乱数rと、子機1(A)のID情報hIDaを乱数rでハッシュ化した値hIDaxとを、親機1(B)の秘密鍵sk(B)で暗号化したデータ[[hIDa1,hIDa2,...,hIDan]pk(B)]を生成する。そして認証局サーバ2(D)は、証明書CertB=[[hash(pk(B))]sk(D)]と、乱数rを含むデータ[[r,hIDa1,hIDa2,...,hIDan]sk(B)]とを、メッセージmsg02として、親機1(B)に送信する(手順(2)、ステップST24)。
親機1(B)は、メッセージmsg02を受信すると(ステップST8)、親機1(B)の秘密鍵sk(B)によってデータを復号して、乱数r及び子機1(A)のID情報hIDaxを取得する。そして親機1(B)は、当該ID情報hIDaxと、証明書CertBとを記憶する(ステップST8)。その後、親機1(B)は、手順(3)にて、乱数r及び証明書CertBを、メッセージmsg1として子機1(A)に送信する。
子機1(A)は、乱数r及び証明書CertBを受信すると(ステップST12)、当該証明書CertBの認証を行って(ステップST13)、固有鍵Kを生成する(ステップST14A)と共に、ID情報hIDaを生成する(ステップST14B)。子機1(A)は、固有鍵KとID情報hIDaとを乱数rでハッシュ化した値hash(K,hIDa)を得て、当該ハッシュ値を親機1(B)の公開鍵pk(B)によって暗号化した値[[hash(K,hIDa)]pk(B)]を、メッセージmsg2として生成して、親機1(B)に送信する(手順(4)、ステップST15)。
親機1(B)は、メッセージmsg2を受信すると(ステップST3)、当該メッセージmsg2を親機1(B)の秘密鍵sk(B)により復号して(ステップST4)、固有鍵K及びID情報hIDaを乱数rでハッシュ化した値を取得する。親機1(B)は、メッセージmsg02から取得した乱数r及び予め記憶しているID情報hIDaのハッシュ値を生成し、メッセージmsg2から取得したハッシュ値とを比較する。親機1(B)は、双方のハッシュ値が一致している場合には、当該固有鍵Kの利用を許可する(ステップST9)。
以上のように、この暗号通信システムによれば、認証局サーバ2(D)から親機1(B)に正当な子機1(A)のID情報hIDaを乱数rでハッシュ化して親機1(B)に送信すると共に、子機1(A)にてID情報hIDaを乱数rでハッシュ化できる。これにより、喩え子機1(A)が盗難に遭っても、子機1(A)のID情報hIDaを乱数rでハッシュして秘匿できる。
(第8設定例)
つぎに、固有鍵Kの第8設定例について、図20を参照して説明する。
この第8設定例は、図20に示すように、手順(1)において、親機1(B)から子機1(A)に、メッセージmsg1としての証明書CertBを送信する。
次の手順(2)において、子機1(A)から親機1(B)に、メッセージmsg2としてのノンスNa及び固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化した値を送信する。このノンスNaは、子機1(A)によって生成された乱数である。
次の手順(3)において、親機1(B)は、メッセージmsg2のACKとして、ノンスNaのハッシュ値を固有鍵Kで暗号化した値のメッセージmsg3を、子機1(A)に返信する。子機1(A)は、メッセージmsg3を固有鍵Kで復号することによってノンスNaのハッシュ値を得て、手順(2)にて送信したノンスNaのハッシュ値と一致している場合には、当該固有鍵Kを使用する。
比較例として、図21(a)に示すように、新たな子機1(A)の固有鍵K’を設定するときを考える。ここで、攻撃端末Xは、以前に子機1(A)に接続されていた古い親機1(B)の固有鍵Kを傍受して記憶している。
先ず手順(1)にて、新たにネットワーク接続された親機1(B)は、子機1(A)宛てに送信したメッセージmsg1を送信すると、攻撃端末Xによって新たなメッセージmsg1が傍受される。攻撃端末Xは、当該メッセージmsg1を子機1(A)に転送し、子機1(A)が新しい固有鍵K’を親機1(B)の公開鍵pk(B)で暗号化したメッセージmsg2を返信する。
しかし、攻撃端末Xは、新たな固有鍵K’ではなく、古い固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化した値をメッセージmsg2’として親機1(B)に送信する。これにより、攻撃端末Xは、子機1(A)に、常に古い固有鍵Kのメッセージを通信して、親機1(B)に登録させておくことができる。これにより、攻撃端末Xは親機1(B)との通信を行うことができる。
これに対し、第8設定例によって固有鍵Kを設定する暗号通信システムによれば、図21(b)に示すように、子機1(A)が新たにノンスNa’及び固有鍵K’を設定して、メッセージmsg2としてノンスNa’及び固有鍵K’を親機1(B)の公開鍵pk(B)により暗号化した値を返信する。これに対し、攻撃端末Xが当該メッセージmsg2を傍受して、古いノンスNaと固有鍵Kから生成したメッセージmsg2を親機1(B)に送信したとする(リプレー攻撃)。
しかし、親機1(B)は、図22に示すように、手順(1)にてメッセージmsg1を送信したときに、ノンスNaを、新たなノンスNa’に更新する。一方、子機1(A)は、メッセージmsg1の証明書CertBを認証して、固有鍵K’を生成して、メッセージmsg2を送信するときに、ノンスNaを、新たなノンスNa’に更新する。これにより、メッセージmsg2は、新たなノンスNa’と、新たな固有鍵K’を親機1(B)の公開鍵pk(B)で暗号化した値とを含むものとなる。
そして、メッセージmsg2を攻撃端末Xが傍受して、古い固有鍵K及びノンスNaを用いたメッセージmsg2を用いたリプレー攻撃をしたとする。しかし、親機1(B)は、ステップST3’にて、当該メッセージmsg2のノンスNaと、ステップST2’で更新したノンスNa’とが一致しないことを認識できる。よって、親機1(B)は、当該メッセージmsg2を破棄し、新たな固有鍵K’及びノンスNa’から作成したメッセージmsg3を子機1(A)に返信できる(ステップST6)。
なお、図23(a)に示すように、メッセージmsg1としての親機1(B)の証明書CertBを子機1(A)に送信しても、攻撃端末Xは認証局サーバ2(D)の秘密鍵sk(D)を知ることができない。したがって、証明書CertBは、攻撃端末Xによって改竄は困難である。また、メッセージmsg2は、固有鍵Kを親機1(B)の公開鍵pk(B)で暗号化したものであるが、攻撃端末Xは親機1(B)の秘密鍵sk(B)を知ることができない。したがって、当該メッセージmsg2から固有鍵Kを盗聴することは困難である。しかし、攻撃端末Xは、メッセージmsg2を記憶しておくとする。
また、図23(b)に示すように、手順(3)によって証明書CertBを親機1(B)から子機1(A)に送信したことに対し、子機1(A)が新たな固有鍵K’を生成して、当該固有鍵K’を親機1(B)の公開鍵pk(B)で暗号化したメッセージmsg2を送信する。しかし、攻撃端末Xは、新たなメッセージmsg2を傍受して、古い固有鍵Kを使用している期間においては、リプレー攻撃によって親機1(B)が応答してしまう。
なお、上述の実施の形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施の形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることは勿論である。
上述した暗号通信システムは、図3(b)に示したように、子機1(A)に、有効期限やIDを含む認証局サーバ2(D)の公開鍵pk(D)を記憶していたが、認証局サーバ2(D)の公開鍵pk(D)と共に、当該認証局サーバ2(D)を認証するデータを記憶していても良い。また、上述した暗号通信システムは、認証局サーバ2(D)の公開鍵pk(D)と共に、当該親機1(B)を認証するデータを記憶していても良い。
暗号通信システムは、図24に示すように、子機1(A)の記憶部に、認証局サーバ2(D)及び親機1(B)の公開鍵を含むデータをハッシュ処理した値を認証局サーバ2(D)の秘密鍵sk(D)を用いて暗号化した第2署名値(署名値2)を記憶する。そして、子機1(A)は、認証局サーバ2(D)の公開鍵pk(D)を含むデータにより第2署名値を検証することにより、認証局サーバ2(D)及び親機1(B)の信頼性を評価する。
このような暗号通信システムは、子機1(A)に対して、複数の認証局サーバ2(D)及び親機1(B)が接続され得るネットワーク環境下において、子機1(A)が認証局サーバ2(D)及び親機1(B)を認証する。
このような暗号通信システムは、子機1(A)に、予め親機1(B)を認証するための親機情報(data1)及び認証局サーバ2(D)を認証するための認証局情報(data2)が設定されて、記憶している。また、子機1(A)には、上述したように、認証局サーバ2(D)の公開鍵pk(D)が記憶されている。
認証局サーバ2(D)には、当該認証局サーバ2(D)の秘密鍵0=sk(D)、公開鍵0=pk(D)、署名値2=[[hash(pk(D)),data2]sk(D)]が記憶されている。親機1(B)には、当該親機1(B)の秘密鍵1=sk(B)、公開鍵1=pk(B)、署名値1=[[hash(pk(B)),data1]sk(D)]が記憶されている。
このような暗号通信システムにおいて、子機1(A)の固有鍵Kを親機1(B)が取得するとき、子機1(A)が記憶している親機情報(data1)の親機1(B)及び子機1(A)が記憶している認証局情報(data2)の認証局サーバ2(D)は、自己の公開鍵及びデータと、署名値2を子機1(A)に送信する。
子機1(A)は、送信された署名値2を、認証局サーバ2(D)の公開鍵pk(D)で復号する。これにより、子機1(A)は、認証局サーバ2(D)の公開鍵pk(D)及び認証局情報(data2)のハッシュ値、及び、親機1(B)の公開鍵及び親機情報(data1)のハッシュ値を取得する。子機1(A)は、復号して得たハッシュ値と、事前に記憶しておいた認証局サーバ2(D)の公開鍵及び認証局情報(data2)から演算したハッシュ値、親機1(B)の公開鍵及び親機情報(data1)から演算したハッシュ値とが同じ値であるときには、正当な認証局サーバ2(D)及び親機1(B)であり、認証を許可する。すなわち、子機1(A)は、ハッシュ値同士を比較することによって、事前に設定された親機情報(data1)及び認証局情報(data2)に設定されている親機1(B)及び認証局サーバ2(D)であるかを確認する。
子機1(A)は、認証を許可した場合、自己の固有鍵Kを親機1(B)に送信する。これにより、暗号通信システムによれば、認証局サーバ2(D)が複数存在する場合や、親機1(B)が複数存在する場合であっても、認証局サーバ2(D)の公開鍵、子機1(A)の公開鍵の改竄自体を防ぎ、子機1(A)の固有鍵Kを安全に親機1(B)に設定できる。
1(A) 子機
1(B) 親機
2 認証局サーバ

Claims (11)

  1. 相互間で通信を行う第1端末及び第2端末と、自身の公開鍵及び秘密鍵を有する認証局サーバとを含む暗号通信システムにおいて、
    前記第1端末は、当該第1端末の秘密鍵と、当該第1端末の公開鍵と、当該第1端末の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値を記憶する第1記憶部を備え、
    前記第2端末は、前記認証局サーバの公開鍵を記憶した第2記憶部を備え、
    前記第1端末は、前記第2端末との間で暗号通信を開始するときに、前記第1記憶部に記憶した前記第1端末の公開鍵と前記第1署名値とを、前記第2端末に送信し、
    前記第2端末は、前記第1端末から送信された前記第1端末の公開鍵と前記第1署名値とを受信したときに、当該第1署名値を前記第2記憶部に記憶した認証局サーバの公開鍵で復号した値と、受信した前記第1端末の公開鍵の値とが同じである場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信し、
    前記第1端末は、前記第2端末から送信されたメッセージを、前記第1記憶部に記憶された第1端末の秘密鍵で復号して、前記第2端末の固有鍵を取得すること
    を特徴とする暗号通信システム。
  2. 前記第2端末の記憶部は、前記認証局サーバ及び/又は前記第1端末の公開鍵を含むデータをハッシュ処理した値を前記認証局サーバの秘密鍵を用いて暗号化した第2署名値を記憶し、
    前記認証局サーバの公開鍵を含むデータにより前記第2署名値を検証することにより前記認証局サーバ及び/又は前記第1端末の信頼性を評価すること
    を特徴とする請求項1に記載の暗号通信システム。
  3. 前記第1端末は、前記第2端末の固有鍵を取得した後に、当該第2端末の固有鍵を新たに生成し、当該新たに生成された第2端末の固有鍵を、前記第2端末から取得した第2端末の固有鍵で暗号化し、当該暗号化したメッセージを前記第2端末に送信し、
    前記第2端末は、前記第1端末から送信されたメッセージを前記第1端末に送信した第2端末の固有鍵により復号して、前記第1端末によって新たに生成された第2端末の固有鍵を取得すること
    を特徴とする請求項1に記載の暗号通信システム。
  4. 前記第1端末は、第1署名値を更新するイベント時に前記認証局サーバに第1署名値を取得するための要求を送信し、前記認証局サーバから返信された第1署名値を前記第2端末に送信し、
    前記第2端末は、前記第1端末から、当該第1端末の公開鍵と前記第1署名値を受信したときに、当該第1署名値を前記認証局サーバの公開鍵で復号した値と、受信した第1端末の公開鍵とが同じである場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信し、
    前記第1端末は、前記第2端末から送信されたメッセージを、前記第1記憶部に記憶された第1端末の秘密鍵で復号して、前記第2端末の固有鍵を取得すること
    を特徴とする請求項1に記載の暗号通信システム。
  5. 前記認証局サーバが、有効期限を含む第1署名値を前記第1端末に送信し、
    前記第1端末は、前記認証局サーバから返信された第1署名値を前記第2端末に送信し、
    前記第2端末は、前記第1端末から、当該第1端末の公開鍵と前記第1署名値を受信したときに、当該第1署名値を前記認証局サーバの公開鍵で復号した値と、受信した第1端末の公開鍵とが同じであり、当該第1署名値に含まれる有効期限内である場合に、当該第2端末により生成した第2端末の固有鍵を、前記受信した第1端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記第1端末に送信すること
    を特徴とする請求項4に記載の暗号通信システム。
  6. 前記第2端末は、前記第2端末の固有鍵に加えて自己のID情報を含むメッセージを第1端末に送信し、
    前記第1端末は、予め記憶しておいたID情報と、前記第2端末から受信したメッセージに含まれるID情報とを比較して、双方のID情報が一致した場合に、当該メッセージに含まれている第2端末の固有鍵を取得すること
    を特徴とする請求項1に記載の暗号通信システム。
  7. 前記第1端末は、前記第2端末のID情報を、前記認証局サーバから取得しておき、当該認証局サーバから取得したID情報と、前記第2端末から受信したメッセージに含まれるID情報とを比較して、双方のID情報が一致した場合に、当該メッセージに含まれている第2端末の固有鍵を取得することを特徴とする請求項6に記載の暗号通信システム。
  8. 前記認証局サーバは、前記第2端末のID情報を乱数でハッシュ処理した値及び当該乱数を前記第1端末に送信し、
    前記第1端末は、前記第1署名値及び前記認証局サーバから送信された乱数を第2端末に送信し、
    前記第2端末は、予め記憶しておいた自己のID情報を前記第1端末から送信された乱数でハッシュ処理した値及び当該第2端末の固有鍵を前記第1端末に送信し、
    前記第1端末は、前記認証局サーバから送信された第2端末のID情報を乱数でハッシュ処理した値と、前記第2端末から送信された第2端末のID情報を乱数でハッシュ処理した値とを比較して、双方の値が一致した場合に、当該第2端末の固有鍵を取得すること
    を特徴とする請求項7に記載の暗号通信システム。
  9. 前記第2端末は、当該第2端末の固有鍵を前記第1端末の公開鍵で暗号化した値に加え、当該第2端末にて生成した乱数を第1端末に送信し、
    前記第1端末は、前記第2端末の固有鍵を当該第1端末の秘密鍵で復号し、前記第2端末から送信された乱数をハッシュ処理した値を、当該復号された第2端末の固有鍵で暗号化した値を第2端末に送信し、
    前記第2端末は、前記第1端末から送信された値を、前記第1端末に送信した第2端末の固有鍵で復号し、当該復号して得た値が、前記第1端末に送信した乱数をハッシュ処理した値と一致している場合に、当該第2端末の固有鍵を利用すること
    を特徴とする請求項1に記載の暗号通信システム。
  10. 相互相手の通信相手端末と、認証局サーバの公開鍵及び秘密鍵を有する認証局サーバと接続された端末装置であって、
    自身の秘密鍵及び公開鍵と、当該自身の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値を記憶する記憶部と、
    前記通信相手端末との間で暗号通信を開始するときに、前記記憶部に記憶した前記自身の公開鍵と前記第1署名値とを、前記通信相手端末に送信し、前記通信相手端末の固有鍵が前記自身の端末の公開鍵で暗号化されたメッセージを受信し、前記通信相手端末から送信されたメッセージを、前記記憶部に記憶された自身の秘密鍵で復号して、前記通信相手端末の固有鍵を取得する通信手段と
    を備えることを特徴とする端末装置。
  11. 認証局サーバの公開鍵及び秘密鍵を有する認証局サーバと接続された通信相手端末と通信を行う端末装置であって、
    前記認証局サーバの公開鍵を記憶した記憶部と、
    前記通信相手端末の公開鍵と、第1端末の公開鍵を前記認証局サーバの秘密鍵を用いて暗号化した第1署名値とを受信したときに、当該第1署名値を前記記憶部に記憶した認証局サーバの公開鍵で復号した値と、受信した前記通信相手端末の公開鍵の値とが同じである場合に認証を許可する認証手段と、
    前記認証手段によって認証が許可された場合に、自身の固有鍵を生成する固有鍵生成手段と、
    前記固有鍵生成手段により生成された固有鍵を前記受信した通信相手端末の公開鍵で暗号化し、当該暗号化されたメッセージを、前記通信相手端末に送信する固有鍵送信手段と
    を備えることを特徴とする端末装置。
JP2010168383A 2010-07-27 2010-07-27 暗号通信システム、端末装置 Active JP5799240B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010168383A JP5799240B2 (ja) 2010-07-27 2010-07-27 暗号通信システム、端末装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010168383A JP5799240B2 (ja) 2010-07-27 2010-07-27 暗号通信システム、端末装置

Publications (2)

Publication Number Publication Date
JP2012029225A true JP2012029225A (ja) 2012-02-09
JP5799240B2 JP5799240B2 (ja) 2015-10-21

Family

ID=45781599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010168383A Active JP5799240B2 (ja) 2010-07-27 2010-07-27 暗号通信システム、端末装置

Country Status (1)

Country Link
JP (1) JP5799240B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014230213A (ja) * 2013-05-24 2014-12-08 横河電機株式会社 情報設定方法及び無線通信システム
CN105099671A (zh) * 2015-08-20 2015-11-25 赵运磊 一种身份隐藏且非延展安全的认证密钥协商方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11136234A (ja) * 1997-10-30 1999-05-21 Nec Corp 利用者認証方式および利用者認証方法
JP2003005641A (ja) * 2001-06-25 2003-01-08 Nec Corp 無線lanシステムにおける認証方法と認証装置
JP2004135004A (ja) * 2002-10-09 2004-04-30 Fujitsu Ltd 個人データ保護流通方法及びプログラム
JP2004159100A (ja) * 2002-11-06 2004-06-03 Kureo:Kk 暗号通信プログラム、暗号通信システム用サーバシステム、暗号通信方法および暗号通信システム
JP2006129441A (ja) * 2004-07-21 2006-05-18 Sanyo Electric Co Ltd コンテンツ利用情報送信方法およびその方法を利用可能なコンテンツ利用情報提供装置およびコンテンツ利用情報享受装置
JP2006186807A (ja) * 2004-12-28 2006-07-13 Hitachi Ltd 通信支援サーバ、通信支援方法、および通信支援システム
JP2007274388A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd ネットワークシステム、通信装置、及び、プログラム
JP2008109612A (ja) * 2006-09-27 2008-05-08 Kyocera Corp 無線通信方法及び無線通信システム
JP2008271476A (ja) * 2007-04-25 2008-11-06 Konica Minolta Holdings Inc 暗号通信処理方法及び暗号通信処理装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11136234A (ja) * 1997-10-30 1999-05-21 Nec Corp 利用者認証方式および利用者認証方法
JP2003005641A (ja) * 2001-06-25 2003-01-08 Nec Corp 無線lanシステムにおける認証方法と認証装置
JP2004135004A (ja) * 2002-10-09 2004-04-30 Fujitsu Ltd 個人データ保護流通方法及びプログラム
JP2004159100A (ja) * 2002-11-06 2004-06-03 Kureo:Kk 暗号通信プログラム、暗号通信システム用サーバシステム、暗号通信方法および暗号通信システム
JP2006129441A (ja) * 2004-07-21 2006-05-18 Sanyo Electric Co Ltd コンテンツ利用情報送信方法およびその方法を利用可能なコンテンツ利用情報提供装置およびコンテンツ利用情報享受装置
JP2006186807A (ja) * 2004-12-28 2006-07-13 Hitachi Ltd 通信支援サーバ、通信支援方法、および通信支援システム
JP2007274388A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd ネットワークシステム、通信装置、及び、プログラム
JP2008109612A (ja) * 2006-09-27 2008-05-08 Kyocera Corp 無線通信方法及び無線通信システム
JP2008271476A (ja) * 2007-04-25 2008-11-06 Konica Minolta Holdings Inc 暗号通信処理方法及び暗号通信処理装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSND200300006006; 高橋 秀和: 'インターネットが簡単に盗聴できる理由とそれを防ぐ仕組みを知る' 日経バイト 第208号, 20000922, p.162〜167, 日経BP社 *
CSND200400494011; 福田 崇男: 'そろそろ使い時?敷居下がるディジタル証明書' 日経Internet Solutions 第75号, 20030922, p.71〜81, 日経BP社 *
JPN6014007377; 高橋 秀和: 'インターネットが簡単に盗聴できる理由とそれを防ぐ仕組みを知る' 日経バイト 第208号, 20000922, p.162〜167, 日経BP社 *
JPN6014007380; 福田 崇男: 'そろそろ使い時?敷居下がるディジタル証明書' 日経Internet Solutions 第75号, 20030922, p.71〜81, 日経BP社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014230213A (ja) * 2013-05-24 2014-12-08 横河電機株式会社 情報設定方法及び無線通信システム
US9331849B2 (en) 2013-05-24 2016-05-03 Yokogawa Electric Corporation Information setting method and wireless communication system
CN105099671A (zh) * 2015-08-20 2015-11-25 赵运磊 一种身份隐藏且非延展安全的认证密钥协商方法

Also Published As

Publication number Publication date
JP5799240B2 (ja) 2015-10-21

Similar Documents

Publication Publication Date Title
US10951423B2 (en) System and method for distribution of identity based key material and certificate
US8526606B2 (en) On-demand secure key generation in a vehicle-to-vehicle communication network
JP4599852B2 (ja) データ通信装置および方法、並びにプログラム
JP5975594B2 (ja) 通信端末及び通信システム
CN108683501B (zh) 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法
US8572387B2 (en) Authentication of a peer in a peer-to-peer network
US20020154782A1 (en) System and method for key distribution to maintain secure communication
CN106790261B (zh) 分布式文件系统及用于其中节点间认证通信的方法
CN103763356A (zh) 一种安全套接层连接的建立方法、装置及系统
US20160344725A1 (en) Signal haystacks
US9773129B2 (en) Anti-replay protected flash
CN113630248B (zh) 一种会话密钥协商方法
CN108600152B (zh) 基于量子通信网络的改进型Kerberos身份认证系统和方法
US8972734B2 (en) Symmetric dynamic authentication and key exchange system and method thereof
EP3506137A1 (en) User authentication at an offline secured object
JP2011239146A (ja) 通信装置および通信方法
JP2016184892A (ja) 認証方法、認証システム及び通信機器
JP7064653B2 (ja) 通信システム
KR100892616B1 (ko) 무선 센서 네트워크에서의 새로운 장치 참여 방법
CN104125239A (zh) 一种基于数据链路加密传输的网络认证方法和系统
JP5799240B2 (ja) 暗号通信システム、端末装置
JP4924943B2 (ja) 認証付鍵交換システム、認証付鍵交換方法およびプログラム
JP5664104B2 (ja) 通信システム、並びに、通信装置及びプログラム
JP4554264B2 (ja) デジタル署名処理方法及びそのためのプログラム
Raza et al. Design and implementation of a security manager for WirelessHART networks

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140225

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140425

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140708

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141007

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20141015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150106

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150123

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20150127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150330

R151 Written notification of patent or utility model registration

Ref document number: 5799240

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151