JP5102701B2 - 秘密鍵配布方法、秘密鍵配布システム - Google Patents

秘密鍵配布方法、秘密鍵配布システム Download PDF

Info

Publication number
JP5102701B2
JP5102701B2 JP2008138757A JP2008138757A JP5102701B2 JP 5102701 B2 JP5102701 B2 JP 5102701B2 JP 2008138757 A JP2008138757 A JP 2008138757A JP 2008138757 A JP2008138757 A JP 2008138757A JP 5102701 B2 JP5102701 B2 JP 5102701B2
Authority
JP
Japan
Prior art keywords
authentication server
secret key
distributed
distributed authentication
key
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.)
Active
Application number
JP2008138757A
Other languages
English (en)
Other versions
JP2009290378A (ja
Inventor
尚弘 福田
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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008138757A priority Critical patent/JP5102701B2/ja
Publication of JP2009290378A publication Critical patent/JP2009290378A/ja
Application granted granted Critical
Publication of JP5102701B2 publication Critical patent/JP5102701B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、秘密鍵配布方法、秘密鍵配布システムに関するものである。
一般に、コンピュータ通信において、通信に関わるデバイスをグループに分けることが必要になる場合がある。ここに、デバイスは、1個の固有の識別情報を持つ装置を意味するが、物理的な1台の装置に対応するとは限らず、1台の装置に複数のデバイスが存在する場合もある。
いま、宅内に配置された各機器に通信機能を設け、各機器がデバイスである場合を例として説明する(1台の機器に複数のデバイスが存在する場合もあるが、以下では、説明を簡単にするために機器とデバイスとが一対一に対応しているものとする)。宅内のデバイスが行う通信の内容は、宅外から制限なく監視できるものであってはならず、また宅内の各デバイスは他家のデバイスとは区別しなければならない。前者の技術的課題は暗号化技術を用いることによって解決され、後者の技術的課題は暗号化や復号化に用いる鍵(情報)を宅内のデバイスというグループ単位で管理することによって解決される。
たとえば、グループごとのデバイスに秘密鍵(共通鍵)を設定すれば、グループ単位での通信が可能になり、他者による通信内容の傍受を禁止することができる。このような秘密鍵は、デバイス間において暗号による通信を開始する前に、通信環境に応じたグループを形成するように、各デバイスに設定しなければならない。
いま、図7に示すように、6台のデバイスA〜Fが宅内に存在し、これらのデバイスA〜Fによりグループを構成する場合について考察する。図示例はスター接続を採用しているが、接続形態はバス接続など他の形態でもよい。
いま、デバイスFがグループ内のすべてのデバイスA〜Eと秘密鍵を用いて通信するには、まずデバイスA〜F間の通信を可能とするために、各デバイスA〜Fにそれぞれ固有の識別情報(以下では、固有の識別情報としてIPアドレスを用いるものとする)IPa〜IPfを割り振る必要がある。
各デバイスA〜FにIPアドレスIPa〜IPfを割り振った後には、デバイスFはデバイスA〜Eとの間で通信が可能になるから、デバイスFと他のデバイスA〜Eとの間の通信に用いる秘密鍵Ka〜Keを、各デバイスA〜FのIPアドレスIPa〜IPfに対応付けてそれぞれ設定することができる。このような秘密鍵Ka〜Keを設定すると、デバイスFは他の各デバイスA〜Eとそれぞれ秘密鍵Ka〜Keを共通に持つから、秘密鍵Ka〜Keの個数は、(デバイスの台数−1)個になる。
IPアドレスIPa〜IPfおよび秘密鍵Ka〜Keを手作業で設定する場合だけではなく、秘密鍵Ka〜Keを鍵配布サーバから配布する場合も同様である(たとえば、特許文献1参照)。たとえば、ケルベロス(Kerberos)やクリプトナイト(KryptoKnight)と称する鍵配布の技術を利用すれば、デバイスA〜EにIPアドレスIPa〜IPeが割り振られた後に、各デバイスA〜Eが鍵配布サーバであるデバイスFと通信することにより、各デバイスA〜Eにおいて秘密鍵Ka〜Keを取得することが可能になる。
特開2008−273857号公報
ところで、秘密鍵Ka〜Keを各デバイスA〜Eに設定(配布の場合も含めて設定という)するにあたっては、グループとして扱うIPアドレスIPa〜IPeを事前に知っていることが前提になっている。
しかしながら、デバイスA〜Eがアドホックである場合には、グループに属するデバイスA〜Eが時間経過とともに変化するから、グループに属するデバイスA〜EのIPアドレスIPa〜IPeが秘密鍵Ka〜Keの配布前に変化していることがある。ここで、デバイスA〜Eがアドホックであることは、必要に応じて通信可能になることを意味している。つまり、IPアドレスIPa〜IPeを持つデバイスA〜Eが以前にはデバイスFとグループであったとしても、秘密鍵Ka〜Keを設定する時点においてグループではなくなっている可能性がある。
いま、アドホックであるデバイスA〜Eについて、他のデバイスA〜Fと物理的に接続されているときに同じグループに属するという規定を設けているものとする(図7の例では、デバイスA〜EはデバイスFと物理的に接続されている)。この規定のもとで、同じグループに属するデバイスA〜Eに秘密鍵Ka〜Keを設定するには、デバイスA〜EがデバイスFに物理的に接続されていることを確認した直後に、秘密鍵Ka〜Keを設定する必要がある。
図7において、デバイスA〜D,E,Fは宅内に固定的に設置されたデバイスであるものとし、デバイスDは、デバイスEに対して着脱が可能であって、何らかのセンサーを備えるアドホックなデバイスであるものとする。デバイスEとしては、センサーでイベントが生じたときにデバイスDからの情報を受ける受信機を想定している。つまり、デバイスEは、デバイスDからの情報を他のデバイスA〜C,Fに通知する機能を有しているものとする。
図示する接続状態においては、デバイスDでイベントが発生すればデバイスEを通してデバイスFに通知されるから、デバイスEが宅内に固定的に設置されていることにより、デバイスDをデバイスEと同じグループに属すると判断することができる。つまり、デバイスDに付与した秘密鍵Kdは、デバイスEに付与した秘密鍵Keと同じグループに属することになる。
しかしながら、デバイスDはアドホックであるから、デバイスEから取り外されて他家で利用される可能性もある。このように、デバイスDが他家で使用されるときには、デバイスEを設置している宅内のデバイスA〜C,E,Fと同じグループと認識されると、他家で生じたイベントを自家で生じたイベントと誤認することになり不都合である。したがって、アドホックであるデバイスDは、使用開始時に秘密鍵が変更されるようにしておかなければならない。
また、アドホックであるデバイスDは、グループに属するか否かが着脱などによって瞬時に変化するから、デバイスDの接続を検出した後に、秘密鍵Kdを設定するまでに長い時間を要していると、秘密鍵Kdが設定されるまでの間にデバイスDがふたたび取り外され、上記規定を満たさなくなる場合がある。
本発明は上記事由に鑑みて為されたものであり、その目的は、デバイスのアドレスを用いることなくデバイスの物理的な接続によりグループを判断するとともに、グループの判断と共通の秘密鍵の配布とをほぼ同時に行うことにより、デバイスがアドホックであってもグループをなすデバイスに秘密鍵を配布することを可能にし、同グループのデバイスを共通の1つのデバイスに物理的に接続されているか否かによりデバイスの識別情報とは無関係にグループ化を可能にする秘密鍵配布方法、秘密鍵配布システムを提供することにある。
請求項1の発明は、固有の識別子を有したデバイスと、固有の識別子を有し少なくとも1台のデバイスが接続されるとともにデバイスとの間で通信が可能な分散認証サーバと、デバイスおよび分散認証サーバとの間で通信が可能であってデバイスおよび分散認証サーバに共通の秘密鍵を配布する認証サーバとを有する通信システムにおいて、認証サーバが秘密鍵を配布する方法であって、認証サーバが分散認証サーバとの間の通信に用いる第1の配布用秘密鍵と認証サーバがデバイスとの間の通信に用いる第2の配布用秘密鍵とを認証サーバが事前秘密鍵を用いてデバイスと分散認証サーバとにそれぞれ配布する第1過程と、分散認証サーバが第1のノンス値を生成してデバイスへ送信する第2過程と、デバイスが第2のノンス値を生成するとともに分散認証サーバから受信した第1のノンス値と第2のノンス値とに基づいて生成したメッセージ認証のデータを第2の配布用秘密鍵で暗号化した値および第2のノンス値をメッセージとして分散認証サーバに送信する第3過程と、分散認証サーバがデバイスからメッセージを受信した場合にデバイスからのメッセージに含まれる第2のノンス値と第1のノンス値とに基づいて生成したメッセージ認証のデータを第1の配布用秘密鍵で暗号化した値と、メッセージ認証のデータを第2の配布用秘密鍵で暗号化した値とを認証サーバへ送信する第4過程と、認証サーバが第1の配布用秘密鍵で分散認証サーバが生成したメッセージ認証のデータを復号しかつ第2の配布用秘密鍵でデバイスが生成したメッセージ認証のデータを復号し、両メッセージ認証のデータが一致した場合に分散認証サーバとデバイスとに共通に与える秘密鍵を生成し、当該秘密鍵を第1の配布用秘密鍵で暗号化した第1のメッセージと当該秘密鍵を第2の配布用秘密鍵で暗号化した第2のメッセージとを分散認証サーバに送信する第5過程と、分散認証サーバが第1のメッセージを第1の配布用秘密鍵で復号化することにより秘密鍵を取得するとともに、第2のメッセージをデバイスに転送する第6過程と、デバイスが第2のメッセージを第2の配布用秘密鍵で復号化することにより秘密鍵を取得する第7過程とを有することを特徴とする。
請求項2の発明では、請求項1の発明において、前記デバイスは、前記分散認証サーバと共通の事前秘密鍵を用いて分散認証サーバと通信することにより分散認証サーバとの通信に用いるセッション鍵を分散認証サーバから取得し、前記第2過程と前記第3過程と前記第6過程とにおける分散認証サーバとデバイスとの間の通信は、セッション鍵を用いて暗号化されることを特徴とする。
請求項3の発明では、請求項2の発明において、前記第3過程および前記第4過程で用いるメッセージ認証のデータは、前記セッション鍵による鍵付きのメッセージ認証コードであることを特徴とする。
請求項4の発明では、請求項1〜3のいずれかの発明において、前記分散認証サーバおよび前記デバイスにおける前記事前秘密鍵は、分散認証サーバおよびデバイスの製造者が管理する鍵発行装置により分散認証サーバおよび各デバイスに登録され、さらに鍵発行装置は、前記認証サーバに分散認証サーバおよび各デバイスの事前秘密鍵と識別子とを関係付けて登録することを特徴とする。
請求項5の発明では、請求項1の発明において、前記第3過程および前記第4過程で用いるメッセージ認証のデータは、第1のノンス値および第2のノンス値から求めたハッシュ値を用いることを特徴とする。
請求項6の発明では、請求項1の発明において、前記第3過程および前記第4過程で用いるメッセージ認証のデータは、第1のノンス値および第2のノンス値をそのまま用いることを特徴とする。
請求項7の発明は、固有の識別子を有したデバイスと、固有の識別子を有し少なくとも1台のデバイスが接続されるとともにデバイスとの間で通信が可能な分散認証サーバと、デバイスおよび分散認証サーバとの間で通信が可能であってデバイスおよび分散認証サーバに共通の秘密鍵を配布する認証サーバとを有し、分散認証サーバとデバイスとは、それぞれノンス値を生成するノンス生成手段を備え、デバイスは、分散認証サーバから受信したノンス値と自己のノンス値とのハッシュ値および自己のノンス値を分散認証サーバに送信する第1の認証コード送信手段を備え、分散認証サーバは、デバイスから受信したノンス値と自己のノンス値とのハッシュ値およびデバイスから受信したハッシュ値とを認証サーバに送信する第2の認証コード送信手段を備え、認証サーバは、デバイスと分散認証サーバとに認証サーバとの通信にそれぞれ用いる第1および第2の配布用秘密鍵を配布する第1の秘密鍵配布手段と、分散認証サーバから受信した2つのハッシュ値を比較する比較手段と、比較手段による比較結果が一致しているときに分散認証サーバとデバイスとに共通に与える秘密鍵を生成する秘密鍵生成手段と、秘密鍵を第1の配布用秘密鍵を用いて暗号化して分散認証サーバに配布するとともに秘密鍵を第2の配布用秘密鍵を用いて暗号化して分散認証サーバを介してデバイスに配布する第2の秘密鍵配布手段とを備えることを特徴とする。
請求項8の発明では、請求項7の発明において、前記分散認証サーバおよび前記デバイスの製造者が管理し前記事前秘密鍵を発行する鍵発行装置を備え、鍵発行装置は、発行した事前秘密鍵を分散認証サーバおよび各デバイスに登録するとともに、前記認証サーバに分散認証サーバおよび各デバイスの事前秘密鍵と識別子とを関係付けて登録することを特徴とする。
請求項1、7の発明によれば、分散認証サーバとデバイスとにおいてそれぞれノンス値を生成し、分散認証サーバとデバイスとが互いに他方から取得したノンス値と自己のノンス値とからメッセージ認証コードを生成して認証サーバに送信し、認証サーバにおいて両メッセージ認証コードが一致しているときに分散認証サーバとデバイスとが接続されているものと判断して、分散認証サーバとデバイスとに共通する秘密鍵を配布するから、従来方法のように、デバイスのアドレスによりグループを確認する必要がなく、分散認証サーバとデバイスとが通信可能であれば、デバイスは分散認証サーバと同じグループと判断され、分散認証サーバと同じ秘密鍵を取得することができる。つまり、デバイスがアドホックであっても分散認証サーバに接続されていると遅滞なく秘密鍵が配布され、一方、デバイスが分散認証サーバに物理的に接続されていなければデバイスには秘密鍵が渡されないから、このデバイスはグループから除外される。
請求項2の発明によれば、分散認証サーバとデバイスとの間でセッション鍵を用いて通信を暗号化するから、分散認証サーバとデバイスとの間の通信の傍受を防止することができる。
請求項3の発明によれば、メッセージ認証のデータとしてセッション鍵による鍵付きのメッセージ認証コードを用いるから、メッセージ認証コードの安全性が高まり、分散認証サーバおよびデバイスから認証サーバに対して送信される情報の改竄を確実に防止することができる。
請求項4、8の発明によれば、分散認証サーバおよびデバイスと認証サーバとの間の初期の通信に際して、分散認証サーバおよびデバイスの製造者が管理する鍵発行装置により発行された事前秘密鍵を用い、認証サーバでは事前秘密鍵と分散認証サーバおよびデバイスの識別子を関係付けており、この事前秘密鍵を用いて配布用秘密鍵を配布することができるから、分散認証サーバおよびデバイスと認証サーバとの間で既存の事前秘密鍵を用いた通信が可能であり、比較的安全に配布用秘密鍵を配布することが可能になる。また、事前秘密鍵には識別子を対応付けているから、事前秘密鍵に識別子を併用することにより、通信が漏洩する可能を大幅に低減することができる。
請求項5の発明によれば、メッセージ認証のデータとして第1のノンス値および第2のノンス値から求めたハッシュ値を用いるから、ハッシュ値による通信経路の保証がなされ、結果的に分散認証サーバとデバイスとの接続関係を検証することができる。
請求項6の発明によれば、メッセージ認証のデータとしてノンス値を用いるから、ノンス値から生成したメッセージ認証コードを用いる場合に比較すると通信が漏洩する可能性が増大するものの、比較的安全なメッセージ認証を行うことができる。
(原理)
以下に説明する実施形態では、図1に示すように、複数のデバイスD1〜DkがプロキシデバイスDpを経由してセンタサーバCSと通信可能であって、センタサーバCSが備える認証サーバASmにより鍵管理(鍵の生成、保管、配布、認証、更新、廃棄)が行われるものとする。認証サーバASmは、プロキシデバイスDpおよびデバイスDi(i=1〜k)に対して秘密鍵を配布する。
認証サーバASmが配布する秘密鍵には基本的には2種類ある。すなわち、プロキシデバイスDpおよびデバイスDiが認証サーバASmと通信する際に用いる秘密鍵(以下では、「配布用秘密鍵」という)と、プロキシデバイスDpとデバイスDiとの間の通常時の通信に用いる秘密鍵とである。プロキシデバイスDpとデバイスDiとは、認証サーバASmの発行した共通の秘密鍵を持つときに、通信の暗号化が可能でありかつ同グループに属していることになる。プロキシデバイスDpは、各デバイスDiの秘密鍵を保管する分散認証サーバASeを備える。
以下に説明する実施形態では、認証サーバASmとプロキシデバイスDpとの間の通信に一時的に用いるために発行されるセッション鍵と、プロキシデバイスDpとデバイスDiとの間で一時的に用いるために発行されるセッション鍵とを用いる場合がある。
秘密鍵は、デフォルトでは数ヶ月〜1年程度の比較的長期の保持期間に亘って半固定的に用いられる共通の鍵であり、当該保持期間の間に秘密鍵の再配布(ないし再設定)がなければ、保持期間の終了まで変更されることがない。一方、セッション鍵は使い捨ての鍵であり、デフォルトでは1日程度の比較的短期の保持期間だけ保持される。ただし、当該保持期間においてセッション鍵の再配布(ないし再設定)があれば、さらに短い期間で廃棄される。
分散認証サーバASeは、デバイスDiと認証サーバASmとの間で通信を直接行うことによるトラフィックの増加を抑制する機能と、認証サーバASmと分散認証サーバASeとの間のコネクションが切断したときにコネクションが回復するまでの間、デバイスDiに対する認証サーバASmの役割を代替するフェイルオーバの機能とを有する。
デバイスDiが宅内に配置されている機器である場合に、プロキシデバイスDpは宅内の機器を管理する宅内サーバの機能を有していると言える。この構成では、プロキシデバイスDpは、各デバイスDiを接続するスイッチングハブ機能を有しているか、各デバイスDiとともにバーチャルLANを構築する。
なお、センタサーバCSとデバイスDiとの間にプロキシデバイスDpを設けずに、プロキシデバイスDpとは別に分散認証サーバASeを設ける場合もある。この場合も、分散認証サーバASeには、デバイスDiの秘密鍵が認証サーバASmより配布され、デバイスDiの秘密鍵を格納する。
いずれにしても、分散認証サーバASeにデバイスDiが接続され、分散認証サーバASeとデバイスDiとが、認証サーバASmにより配布された共通の秘密鍵により暗号化された通信を行うときに、デバイスDiは認証サーバASmの配下のグループに属していることになる。
認証サーバASmが秘密鍵を配布する技術としては、ケルベロス(Kerberos)やクリプトナイト(KryptoKnight)のように、あらかじめ保持している共通の秘密鍵(共通鍵)を利用して秘密鍵を配布するほか、IPsecのようにDillie-Hellmanの方式で公開鍵の交換により共通鍵を生成する技術を用いて秘密鍵を配布したり、SSL/TLSのように公開鍵を用いて秘密鍵を配布したり、楕円曲線暗号を用いて秘密鍵を配布するなど、適宜の鍵配布の技術を用いることが可能である。公開鍵を用いて鍵を配布する場合には、公開鍵を交換することにより生成される秘密鍵を利用して、実際に用いる秘密鍵を配布する。
以下の説明では、ケルベロスあるいはクリプトナイトのような認証技術を想定し、プロキシデバイスDp(分散認証サーバASe)および各デバイスDiは、それぞれ事前に秘密鍵(以下では、「事前秘密鍵」という)を保持しているものとする。
したがって、以下の実施形態において説明する秘密鍵には、認証サーバASmが分散認証サーバASeとデバイスDiとの互いの通信に利用するために分散認証サーバASeとデバイスDiとに共通に与える秘密鍵のほかに、分散認証サーバASeおよびデバイスDiが共通に保有する事前秘密鍵と、認証サーバASmが分散認証サーバASeおよびデバイスDiとの通信に利用するために分散認証サーバASeおよびデバイスDiに与える配布用秘密鍵とがある。
次に、秘密鍵を設定するための基本的な手順について説明する。以下の手順(1)〜(9)は図1に示した(1)〜(9)に対応している。また、以下の説明において、「A→B」のように2個の要素を矢印で結合した表記は、要素Aから要素Bに向かってデータを伝送することを意味する。
以下の説明では、通信に関わる要素は、センタサーバCS、プロキシデバイスDp、デバイスDiの3要素である。これらの要素は複数台ずつ存在していてもよい。また、センタサーバCSとプロキシデバイスDpとの機能については、認証サーバASmと分散認証サーバASeとしての機能に着目して説明する。
以下の説明において、デバイスDi、プロキシデバイスDpは、工場出荷時などに固有の識別子と事前秘密鍵とがあらかじめ設定されているものとする。デバイスDiの固有の識別子をIDiと表記し、プロキシデバイスDpの固有の識別子をIDpと表記する。デバイスDiおよびプロキシデバイスDpに、機器をネットワークに接続するためのミドルウェアとしてのEMIT(Embedded Micro Internetworking Technology)を搭載している場合には,EMITのオブジェクトID(以下、「OID」と略称する)を識別子IDp,IDiに用いる。
事前秘密鍵は、プロキシデバイスDpとデバイスDiとに個別に設定される場合と、プロキシデバイスDpとデバイスDiとに共通に設定される場合とがある。事前秘密鍵をプロキシデバイスDpとデバイスDiとに個別に設定している場合には、認証サーバASmが事前秘密鍵を用いて通信するために、認証サーバASmには、プロキシデバイスDpおよびデバイスDiの個々の事前秘密鍵を登録しておくことが必要である。また、共通の事前秘密鍵を用いる場合には、認証サーバASmにも同じ事前秘密鍵を登録しておくことになる。
以下では、認証サーバASmと分散認証サーバASeとデバイスDiとの各要素を用いて、分散認証サーバASeとデバイスDiとに秘密鍵を設定する手順を説明する。以下に説明する手順では、任意のデバイスX(デバイスDiだけではなく、プロキシデバイスDpを含む)に関して、次の(A)〜(C)の3種類のメッセージTEP(X),TRP(X),KKkpx(X、Ksx)を用いる。
デバイスXに関して、識別子をIDx、デバイスXが保有している秘密鍵をKpx、配布される秘密鍵をKsx、チャレンジレスポンス認証に用いる乱数であってデバイスXで生成されるノンス値をNxと表す。
(A)TEP(X)は、デバイスXの識別子IDxとノンス値Nxとを含むメッセージである。また、必要に応じて付加情報Opを含むこともある。すなわち、TEP(X)は、基本的には、(IDx,Nx)を含む。TEPは、Ticket Exchange Protocolを意味している。
(B)TRP(X)は、デバイスXの識別子IDxとノンス値Nxとを含み、HTTP(HyperText Transfer Protocol)でカプセル化されたメッセージである。また、必要に応じて付加情報Opを含むこともある。TRP(X)は、基本的には、HTTP(IDx,Nx)を含む。すなわち、TRP(X)=HTTP{TEP(X)}になる。TRPは、Ticket Request Protocolを意味している。
このプロトコルは、認証サーバASmに対してチケット(秘密鍵や配布用秘密鍵)を要求するときに用いられる。たとえば、認証サーバASmに対して、プロキシデバイスDpが識別子IDpを用いてTRPによる要求を行うと、認証サーバASmでは、この識別子IDpに対して配布用秘密鍵Ktmpを発行し、認証付きの暗号化データとして返送する。すなわち、認証サーバASmはプロキシデバイスDpに対してグラントチケット(配布許可)を返送する。グラントチケットは、たとえば、KKkpp(Dp,Ktmp)の形になる。
(C)KKkbx(X,Kax)は、デバイスXが保有する秘密鍵Kbxを用いてデバイスXに関する情報Ixから求めたメッセージ認証コード(メッセージダイジェスト)MACkbx(Ix)を含むとともに、当該メッセージ認証コードMACkbx(Ix)をデバイスXが保有する秘密鍵Kbxで暗号化した値Ekbx{MACkbx(Ix)}と配布する秘密鍵KaxとのXOR処理を行った値を含むメッセージである。KKは、メッセージ認証の手続としてクリプトナイト(KryptoKnight)のプロトコルを用いることを意味し、KKkbx(X,Kax)は、認証サーバASmが認証付きの暗号化されたメッセージであることを示している。
デバイスXに関する情報Ixは、ノンス値NxとデバイスXへ配布する秘密鍵KaxとデバイスXの識別子IDxとからなる。したがって、KKkbx(X、Kax)は、MACkbx(Nx,Kax,IDx),Ekpx{MACkbx(Nx,Kax,IDx)} XOR Kaxになる。後者の値Ekpx{MACkbx(Ix)} XOR Kaxからは、前者の値MACkbx(Ix)と秘密鍵Kbxとがわかれば、秘密鍵Kaxを抽出することができる。
以下の説明では、分散認証サーバASeとデバイスDiとが通常の通信に用いる秘密鍵をKsiとし、分散認証サーバASeおよびデバイスDiがそれぞれ認証サーバASmとの間での通信に用いる配布用秘密鍵をそれぞれKtmp、Ktmiとする。
また、分散認証サーバASeを備えるプロキシデバイスDpの固有の識別子をIDp、デバイスDiの固有の識別子をIDiとする。さらに、プロキシデバイスDpとデバイスDiとは、事前秘密鍵Kpp,Kpiを保有しているものとする。分散認証サーバASeが生成するノンズ値をNpと表し、デバイスDiが生成するノンス値を値Niと表す。
秘密鍵KsiをデバイスDiに設定するとともに、プロキシデバイスDpに秘密鍵Ksiを共有させる基本的な手順は、以下の(a)〜(f)である。手順(a)(b)(f)は、さらに2手順に分けられる。以下に説明する(1)〜(9)のメッセージの流れの表記は、セミコロンの左側がメッセージの送受信に関わる要素を示し、矢印(→)の左側がメッセージの送信側であり矢印の右側がメッセージの受信側である。セミコロンの右側は、メッセージの内容を示している。これらの符合(1)〜(9)は図1、図2の(1)〜(9)に対応する。
(a)分散認証サーバASe(プロキシデバイスDp)が事前秘密鍵Kppを用いて認証サーバASm(センタサーバCS)から配布用秘密鍵Ktmpを得る。つまり、分散認証サーバASeと認証サーバASmとの間で双方向に送受信が行われる。分散認証サーバASeから認証サーバASmへのメッセージはTRP(Dp)として送信される。
また、認証サーバASmから分散認証サーバASeへのメッセージは、分散認証サーバASeの事前秘密鍵Kppを用いてプロキシデバイスDpに関する情報Ip(=(IDp,Np))から求めたメッセージ認証コードMACkpp(Ip)を含み、かつこのメッセージ認証コードMACkpp(Ip)を事前秘密鍵Kppで暗号化した値Ekpp{MACkpp(Ip)}と配布用秘密鍵KtmpとをXOR処理したものである。すなわち、認証サーバASmから分散認証サーバASeへのメッセージは、KKkpp(Dp,Ktmp)になる。
要するに、以下の手順(1)(2)で分散認証サーバASeが認証サーバASmから配布用秘密鍵Ktmpを取得する。
(1)分散認証サーバASe→認証サーバASm:TRP(Dp)
(2)認証サーバASm→分散認証サーバASe:KKkpp(Dp,Ktmp)
(b)デバイスDiが事前秘密鍵Kpiを用いて認証サーバASm(プロキシデバイスDp)から配布用秘密鍵Ktmiを得る。つまり、分散認証サーバASeが認証サーバASmから配布用秘密鍵Ktmpを得るのと同様に、認証サーバASmとデバイスDiとの間で双方向に送受信が行われる。
したがって、デバイスDiは分散認証サーバASeと同様に、以下の手順(3)(4)で認証サーバASmから配布用秘密鍵Ktmiを取得する。
(3)デバイスDi→認証サーバASm:TRP(Di)
(4)認証サーバASm→デバイスDi:KKkpi(Di,Ktmi)
手順(1)〜(4)において、ノンス値Np,Niは、それぞれ分散認証サーバASeに設けたノンス生成手段21とデバイスDiに設けたノンス生成手段11とにより生成される。また、手順(2)(4)においては認証サーバASmに設けた(第1の)秘密鍵配布手段31が配布用秘密鍵Ktmp,Ktmiを配布する。
(c)分散認証サーバASe(プロキシデバイスDp)とデバイスDiとの間でチャレンジレスポンス認証を行うために、分散認証サーバASeは、ノンス値Npを生成し(S1)、識別子IDpとノンス値NpとをデバイスDiに送信する。すなわち、以下の手順(5)のように、分散認証サーバASe(プロキシデバイスDp)からデバイスDiに対して、TEP(Dp)を送信する。
(5)分散認証サーバASe→デバイスDi:TEP(Dp)
手順(5)においてノンス値Npは分散認証サーバASeのノンス値生成手段21が生成する。
(d)TEP(Dp)を受信したデバイスDiは、受信したTEP(Dp)を分散認証サーバASeに返送するとともに、チャレンジレスポンス認証のためのノンス値Niを生成し(S2)、識別子IDiとノンス値Niとを分散認証サーバASeに送信する。このとき、ノンス値Niとノンス値Npとを並べた値(Ni|Np)からメッセージ認証コードH1=MAC(Ni|Np)を求め(S3)、認証サーバASmからデバイスDiが取得した配布用秘密鍵Ktmiでメッセージ認証コードH1を暗号化した値Ektmi(H1)を添付する。ここに、(x|y)は、2つの値x,yのビット列を上位ビットと下位ビットとして並べたものを意味する。
すなわち、デバイスDiから認証サーバASeに対して、TEP(Di)とTEP(Dp)とともに、Ektmi(H1)を送信する。メッセージ認証コードH1には(Ni|Np)のハッシュ値などを用いる。下線を付したノンス値Npは、分散認証サーバASeが発行したノンス値NpをデバイスDiが受信したことを意味している。なお、以下に説明する実施形態では、メッセージ認証コードを用いない場合もある。
(6)デバイスDi→分散認証サーバASe:TEP(Di),TEP(Dp),Ektmi{H1=MAC(Ni|Np)}
手順(6)においてノンス値NiはデバイスDiのノンス値生成手段11が生成し、認証コード送信手段12において、メッセージ認証コードH1を生成して分散認証サーバASeに送信する。
(e)TEP(Dp)とTEP(Di)とEktmi(H1)とをデバイスDiから受信した分散認証サーバASeは、TEP(Di)によって取得したデバイスDiのノンス値Niと、分散認証サーバASeがチャレンジレスポンス認証のために発行したノンス値Npとを並べた値(Ni|Np)からメッセージ認証コードH2=MAC(Ni|Np)を作成する(S4)。さらに、認証サーバASmから分散認証サーバASeが取得した配布用秘密鍵Ktmpでメッセージ認証コードH2を暗号化した値Ektmp(H2)を生成する。メッセージ認証コードH2には(Ni|Np)のハッシュ値などを用いる。下線を付したノンス値Niは、デバイスDiが発行したノンス値Niを分散認証サーバASeが受信したことを意味している。なお、以下に説明する実施形態では、メッセージ認証コードを用いない場合もある。
分散認証サーバASeがデバイスDiから受信したTEP(Di)とTEP(Dp)とは、HTTPでカプセル化されてTRP(Di)とTRP(Dp)として認証サーバASmに送信され、さらに、値Ektmp(H2)は、分散認証サーバASeがデバイスDiから受信した値Ektmi(H1)とともに認証サーバASmに送信される。つまり、以下の手順(7)により分散認証サーバASeから認証サーバASmに対して、ノンス値Ni,Npの組(Ni|Np)、(Ni|Np)に相当する情報を送信する。
(7)分散認証サーバASe→認証サーバASm:TRP(Di),TRP(Dp),Ektmp{H2=MAC(Ni|Np)},Ektmi(H1)
手順(7)においては分散認証サーバASeに設けた認証コード送信手段22がメッセージ認証コードH2を生成し、メッセージ認証コードH1とともに認証サーバASmに送信する。
(f)認証サーバASmは、分散認証サーバASeからTRP(Di)とTRP(Dp)とEktmp(H2)と値Ektmi(H1)とを受信する。認証サーバASmでは、配布用秘密鍵Ktmp,Ktmiが既知であるから、メッセージ認証コードH1,H2を復号して比較することができる。
両者が一致していることは(S5)、分散認証サーバASeとデバイスDiとの間でメッセージTEP(Dp)とTEP(Di)とが交換された保証とみなすことができる。すなわち、メッセージ認証コードH1,H2の一致により、鍵配布の瞬間においてプロキシデバイスDpとデバイスDiとが接続されていることが保証され、しかもプロキシデバイスDpに管理されるグループにデバイスDiが属していると言える。
ここで、認証サーバASmは、分散認証サーバASeを介してデバイスDiに秘密鍵Ksiを配布する。すなわち、クリプトナイトの三者モデルを用いて、プロキシデバイスDpとデバイスDiとに、それぞれ秘密鍵Ksiを配布する。
具体的には、認証サーバASmでは、分散認証サーバASeから受信したTRP(Dp)、TRP(Di)により得られるプロキシデバイスDpとデバイスDiとに関する情報Ip,Iiを、それぞれプロキシデバイスDpの配布用秘密鍵KtmpとデバイスDiの配布用秘密鍵Ktmiを用いてメッセージKKktmp(Dp,Ksi)とメッセージKKktmi(Di,Ksi)とに変換し、両メッセージKKktmp(Dp,Ksi),KKktmi(Di,Ksi)を分散認証サーバASeに送信する。
すなわち、H1=H2の成立時には、以下の手順(8)により、分散認証サーバASeとデバイスDiとのそれぞれで復号可能となるように秘密鍵Ksiを暗号化した値を分散認証サーバASeに送信する。
(8)認証サーバASm→分散認証サーバASe:KKktmp(Dp,Ksi),KKktmi(Di,Ksi)
手順(8)においては、認証サーバASmにおける比較手段32でメッセージ認証コードH1,H2を比較し、両メッセージ認証コードH1,H2の一致時に(第2の)秘密鍵生成手段33が秘密鍵Ksiを生成し、秘密鍵配布手段34が秘密鍵Ksiを分散認証サーバASeに送信する。
ここで、分散認証サーバASeでは配布用秘密鍵Ktmpを有しているからメッセージKKktmp(Dp,Ksi)のみの復号が可能である。以下の手順(9)のように、メッセージKKktmi(Di,Ksi)はデバイスDiに転送されて配布用秘密鍵Ktmiにより復号される。
(9)分散認証サーバASe→デバイスDi:KKktmi(Di、Ksi)
上述の例では、メッセージ認証コードとして簡単な鍵なしのハッシュ値を用いているが、鍵付きハッシュ値HMAC(Keyed Hashing for Message Authentication Code)を用いてもよい。鍵なしのハッシュ値は、鍵値がゼロの鍵付きハッシュ値ということができる(以下に説明するすべての実施形態で可能)。また、メッセージ認証の手続については、クリプトナイトを採用した例を示したが、クリプトナイトと同様に共通鍵を用いる鍵配布方式のケルベロスでもよい。ケルベロスではノンス値に代えて時間を用いる。したがって、ノンス性ないし乱数性の管理を時間管理に置き換えることができる。鍵付きハッシュ値を採用することとメッセージ認証の手続についてケルベロスを採用することとは、以下に説明するいずれの実施形態にも適用可能である。
(実施形態1)
上述したように、本発明では、デバイスDiが特定の分散認証サーバASeの配下であるときに、当該デバイスDiを当該分散認証サーバASeにより管理されるグループに属するものとしてグループ化する。たとえば、家屋に設置した宅内サーバを分散認証サーバASeとし、宅内に配置された各機器をデバイスDiとするとき、宅内サーバの管理下である機器は、その家屋に属するグループを形成していることになる。
本実施形態におけるメッセージの内容とメッセージの交換手順は原理と同様である。すなわち、メッセージの流れの手順(1)〜(9)は原理と同様である。
(1)分散認証サーバASeは、自己の固有の識別子IDpと生成したノンス値Npとを認証サーバASmに送信する。このTRP(Dp)メッセージには、付加情報Opは含まない。
(2)認証サーバASmは、分散認証サーバASeから受信した識別子IDpに基づいて、分散認証サーバASeに対する配布用秘密鍵Ktmpを生成し、受信したノンス値Npとともに分散認証サーバASeの事前秘密鍵Kppで暗号化して分散認証サーバASeへ返送する。このメッセージは、KKkpp(Dp,Ktmp)である。
(3)各デバイスDiは、自己の固有の識別子IDiと生成したノンス値Niとを認証サーバASmに送信する。このTRP(Di)メッセージには、付加情報Opは含まない。
(4)認証サーバASmは、デバイスDiから受信した識別子IDiに基づいて、デバイスDiに対する配布用秘密鍵Ktmiを生成し、受信したノンス値NiとともにデバイスDiの事前秘密鍵Kpiで暗号化してデバイスDiに返送する。このとき用いるメッセージは、KKkpi(Di,Ktmi)である。
(5)分散認証サーバASeは、自己の固有の識別子IDpと生成したノンス値NpとをデバイスDiに送信する。このとき用いるメッセージは、付加情報Opを含まないTEP(Dp)である。
(6)分散認証サーバASeから識別子IDpとノンス値Npとを受信したデバイスDiは、自己の固有の識別子IDiと生成したノンス値Niとを分散認証サーバASeに送信するとともに、分散認証サーバASeから受信したTEP(Dp)を分散認証サーバASeに返送する。つまり、分散認証サーバASeに対してTEP(Di),TEP(Dp)を送信する。
さらに、分散認証サーバASeのノンス値NpとデバイスDiで生成したノンス値Niとのメッセージ認証コードとしてハッシュ値H1を求め、認証サーバASmからデバイスDiに与えられた配布用秘密鍵Ktmiでハッシュ値H1を暗号化した値Ektmi{H1=H(Ni|Np)}を併せて分散認証サーバASeに送信する。
ここに、H(x)はxのハッシュ値を意味する。つまり、デバイスDiは分散認証サーバASeに対してTEP(Di)とEktmi{H1=H(Ni|Np)}とを送信する。
(7)デバイスDiからハッシュ値H1を暗号化した値を受信した分散認証サーバASeは、デバイスDiから受信したメッセージTEP(Dp),TEP(Di),Ektmi{H1=H(Ni|Np)}を認証サーバASmに送信する。またこのとき、メッセージTEP(Di)から取得したデバイスDiのノンス値Niと分散認証サーバASeのノンス値Npとのメッセージ認証コードとしてハッシュ値H2を求め、認証サーバASmから分散認証サーバASeに与えられた配布用秘密鍵Ktmpでハッシュ値H2を暗号化した値Ektmp{H2=H(Ni|Np)}を併せて認証サーバASmに送信する。
ここに、メッセージTEP(Di),TEP(Dp)はTRP(Di),TRP(Dp)の形に変換して認証サーバASmに送信する。したがって、分散認証サーバASeは認証サーバASmに対してTRP(Di)とEktmi{H1=H(Ni|Np)}とEktmp{H2=H(Ni|Np)}とを送信することになる。
(8)認証サーバASmは、デバイスDiに与えた配布用秘密鍵Ktmiでハッシュ値H1を復号し、また分散認証サーバASeに与えた配布用秘密鍵Ktmpでハッシュ値H2を復号する。
ハッシュ値H1とハッシュ値H2とが一致していれば、分散認証サーバASeとデバイスDiとが接続されている(同じグループに属する)といえる。そこで、ハッシュ値H1,H2が一致していれば、デバイスDiに対する秘密鍵Ksiをあらためて生成し、この秘密鍵Ksiを分散認証サーバASeとデバイスDiとで共有させるために、以下の処理を行う。
まず、メッセージTRP(Di)により受信したデバイスDiのノンス値Niを秘密鍵Ksiに加えてデバイスDiに与えた配布用秘密鍵Ktmiで暗号化した第1のメッセージEktmi(Ni,Ksi)と、メッセージTRP(Dp)により受信したデバイスDpのノンス値Npを秘密鍵Ksiに加えて分散認証サーバASeに与えた配布用秘密鍵Ktmpで暗号化した第2のメッセージEktmp(Np,Ksi)とを併せて分散認証サーバASeに送信する。
すなわち、認証サーバASmから分散認証サーバASeに対して、Ektmi(Ni,Ksi),Ektmp(Np,Ksi)を送信する。ここに、原理を説明する際の動作例では、認証サーバASmから分散認証サーバKKktmp(Dp,Ksi),KKktmi(Di,Ksi)を送信し、秘密鍵Ksiの送信にあたって高いセキュリティ性を持たせているが、本実施形態のような形態を採用してもよい。
(9)認証サーバASmから第1のメッセージEktmi(Ni,Ksi)および第2のメッセージEktmp(Np,Ksi)を受信した分散認証サーバASeは、第2のメッセージEktmp(Np,Ksi)を分散認証サーバASeの配布用秘密鍵Ktmpで復号する。すなわち、認証サーバASmが新たに発行したデバイスDiの秘密Ksiを取得する。また、分散認証サーバASeは第1のメッセージEktmi(Ni,Ksi)をデバイスDiに転送する。
分散認証サーバASeから第1のメッセージEktmi(Ni,Ksi)を受信したデバイスDiは、デバイスDiの配布用秘密鍵Ktmiを用いて第1のメッセージEktmi(Ni,Ksi)を復号し、デバイスDiの秘密鍵Ksiを取得する。
上述の動作により、分散認証サーバASeとデバイスDiとは、認証サーバASmが発行した秘密鍵Ksiを共通鍵としてほぼ同時に取得する。言い換えると、認証サーバASmが、分散認証サーバASeとデバイスDiとが互いのノンス値Np,Niを交換した証拠であるハッシュ値H1,H2を確認することにより、両者間の通信を第三者として確認することになり、通信の確認ができた分散認証サーバASeとデバイスDiとにデバイスDiの秘密鍵Ksiを提供するのである。ここに、上述した動作例では、分散認証サーバASeからデバイスDiに対してKKktmi(Di,Ksi)を送信しているが、本実施形態のような形態を採用してもよい。
以上の処理により、認証サーバASmに管理された分散認証サーバASeおよびデバイスDiが存在し、デバイスDiが分散認証サーバASeに接続されるグループに属するとき、すなわち、デバイスDiの秘密鍵Ksiを分散認証サーバASeに渡して分散認証サーバASeの管理下におくとき、互いに通信したことを認証サーバASmが客観的に確認すると同時に秘密鍵Ksiを配布することが可能になる。また、秘密鍵Ksiを配布する時点で、分散認証サーバASeと通信していないデバイスDiには、同じグループとしての秘密鍵Ksiを渡すことがないから、同じグループに属していないデバイスDiに秘密鍵Ksiを渡さないようにすることができる。
(実施形態2)
実施形態1では、分散認証サーバASeとデバイスDiとの間の通信に際して暗号化を行っていないが、本実施形態では、分散認証サーバASeとデバイスDiとの間の通信に際して共通のセッション鍵Kssを用いて暗号化を行うことにより、盗聴の可能性をさらに低減したものである。共通のセッション鍵Kssは、工場出荷時などに事前に設定された共通の事前秘密鍵Kgmを用いてデバイスDiが分散認証サーバASeと通信することにより配布される。この際には分散認証サーバASeが、デバイスDiに対してクリプトナイトなどの手順でセッション鍵Kssを発行する。
図3に示す本実施形態の手順のうち(1)〜(4)(8)は実施形態1の手順と同手順である。手順(5)(6)(7)(9)は、分散認証サーバASeとデバイスDiとの間の通信を含んでおり、この通信においてセッション鍵Kssによる暗号を用いる点が実施形態1との相違点である。したがって、以下では実施形態1と相違する手順のみ説明する。
実施形態1では、分散認証サーバASeはデバイスDiに対してTEP(Dp)をそのまま送信している。すなわち、分散認証サーバASeとデバイスDiとの間の通信は暗号化していないから盗聴される可能性がある。これに対して、本実施形態では、分散認証サーバASeからデバイスDiに送信するTEP(Dp)を分散認証サーバASeとデバイスDiとに設定されたセッション鍵Kssを用いて暗号化した値Ekss{TEP(Dp)}を送信する。これにより、盗聴の危険性を低減している。したがって、本実施形態では手順(5)は以下のようになる。なお、TEP(Dp)は、分散認証サーバASeの識別子IDpとノンス値Npとを含む。
(5)分散認証サーバASe→デバイスDi:Ekss{TEP(Dp)}
kss{TEP(Dp)}を受信したデバイスDiは、セッション鍵Kssを用いてTEP(Dp)を復号した後、デバイスDiの識別子IDiとノンス値Niとを含むTEP(Di)と、分散認証サーバASeから受信したTEP(Dp)と、ノンス値(Ni|Np)のハッシュ値H(Ni|Np)であるメッセージ認証コードH1(=H(Ni|Np))を認証サーバASmからデバイスDiが取得した配布用秘密鍵Ktmiで暗号化した値Ektmi(H1)との全体を、セッション鍵Kssで暗号化した値Ekss{TEP(Di),TEP(Dp),Ektmi(H1)}とを分散認証サーバASeに送信する。つまり、手順(6)は以下のようになる。
(6)デバイスDi→分散認証サーバASe:Ekss{TEP(Di),TEP(Dp),Ektmi(H1)}
分散認証サーバASeでは、デバイスDiから受信した値Ekss{TEP(Di),TEP(Dp),Ektmi(H1)}をセッション鍵Kssにより復号し、実施形態1と同様に、TEP(Di)によって取得したデバイスDiのノンス値Niと分散認証サーバASeが発行したノンス値Npとから求めたハッシュ値H2=H(Ni|Np)を配布用秘密鍵Ktmpで暗号化した値Etmp(H2)を、デバイスDiから受信した{TEP(Di),TEP(Dp),Ektmi(H1)}と併せて認証サーバASmに送信する。つまり、手順(7)は以下のようになる。
(7)分散認証サーバASe→認証サーバASm:TRP(Di),TRP(Dp),Ektmp(H2),Ektmi(H1)
手順(8)は、実施形態1と同手順であるが、実施形態1においてノンス値Np,Niのみを送信しているのに対して、本実施形態では識別子IDp,IDiを併せて送信している。すなわち、デバイスDiで生成したハッシュ値H1と分散認証サーバASeとで生成されたハッシュ値H2とが、H1=H2の関係を満たすときの手順(8)は以下のようになる。
(8)認証サーバASm→分散認証サーバASe:KKktmp(Dp,Ksi),KKktmi(Di,Ksi)
認証サーバASmからKKktmp(Dp,Ksi),KKktmi(Di,Ksi)を受信した分散認証サーバASeは、KKktmi(Di,Ksi)をセッション鍵Kssで暗号化した値Ekss{KKktmi(Di,Ksi)}をデバイスDiに送信し、デバイスDiではセッション鍵Kssを用いて復号する。すなわち、手順(9)は以下のようになる。
(9)分散認証サーバASe→デバイスDi:Ekss{KKktmi(Di、Ksi)}
本実施形態では、分散認証サーバASeとデバイスDiとの間の通信に際して、ノンス値Np,Niを含めるとともに、分散認証サーバASeとデバイスDiとの間でセッション鍵Kssを用いて暗号化しているから、分散認証サーバASeとデバイスDiとの間のリプレイ攻撃に対する安全性を高めることができる。他の構成および動作は実施形態1と同様である。
(実施形態3)
実施形態2では、手順(6)(7)において、分散認証サーバASeとデバイスDiとで生成されたノンス値Np,Niを用いて、メッセージ認証コードとしてのハッシュ値H1,H2を算出している。これらのハッシュ値H1,H2の算出にあたって、本実施形態では、図3に示すように、鍵付きハッシュ値を用いている。鍵付きハッシュ値の鍵にはセッション鍵Kssを用いる。セッション鍵Kssは実施形態2において説明したように分散認証サーバASeが発行する。
セッション鍵Kssを用いた鍵付きハッシュ関数をHkss(x)で表すことにすると、手順(6)(7)は以下のようになる。
(6)デバイスDi→分散認証サーバASe:Ekss[TEP(Di),TEP(Dp),Ektmi{H1=Hkss(Ni|Np)}]
(7)分散認証サーバASe→認証サーバASm:TRP(Di),TRP(Dp),Ektmp{H2=HkssNi|Np)},Ektmi{H1=Hkss(Ni|Np)}
セッション鍵Kssによる鍵付きハッシュ値をグループに属することの検証に用いることにより、分散認証サーバASeとデバイスDiとの双方が、共通のセッション鍵Kssの有効期限において鍵配布処理を行ったことを、認証サーバASmにより確認することができる。したがって、分散認証サーバASeとデバイスDiとの間の通信の安全性が高くなる。
上述の例では、実施形態2において説明したセッション鍵Kssを用いているが、実施形態1ではセッション鍵Kssを用いていないから、本実施形態の技術を実施形態1に適用するには、セッション鍵Kssを取得する処理を実施形態1に追加する必要がある。すなわち、実施形態2と同様に、共通の事前秘密鍵Kgmを用いて分散認証サーバASeにセッション鍵Kssを発行させ、手順(6)(7)を以下のようにすればよい。
(6)デバイスDi→分散認証サーバASe:TEP(Di),TEP(Dp),Ektmi{H1=Hkss(Ni|Np)}
(7)分散認証サーバASe→認証サーバASm:TRP(Di),TRP(Dp),Ektmp{H2=HkssNi|Np)},Ektmi{H1=Hkss(Ni|Np)}
他の構成および動作は実施形態1、実施形態2と同様である。
(実施形態4)
上述した実施形態で説明したように、分散認証サーバASeおよびデバイスDiには、それぞれ工場出荷時などに事前秘密鍵Kpp,Kpiが設定される。ただし、実施形態2,3の構成では、事前秘密鍵Kpp,Kpiとして共通の事前秘密鍵Kgmを用いている(すなわち、Kpp=Kpi=Kgm)。したがって、事前秘密鍵Kgmを第三者に知られてしまうと、配布用秘密鍵Ktmp、Ktmiを配布する際の通信が盗聴され、結果的に秘密鍵Ksiを他者に知られる可能性がある。
本実施形態では、事前秘密鍵Kpp,Kpiを認証サーバASmにあらかじめ登録しておくことにより、認証サーバASmから分散認証サーバASeおよびデバイスDiの識別子IDp,IDiによって事前秘密鍵Kpp,Kpiを選択する技術を採用している。
すなわち、本実施形態では、デバイスDiおよび分散認証サーバASeとして機能するプロキシデバイスDpを製造する製造者(工場)が管理する鍵発行装置Pk(図1参照)と認証サーバASmとが仮想専用網(VPN)を介して接続されているものとする。ここで、プロキシデバイスDpおよびデバイスDiに、鍵発行装置Pkにより、識別子IDp,IDiおよび事前秘密鍵Kpp,Kpiを登録すると、鍵発行装置Pkは認証サーバASmと通信することにより、プロキシデバイスDpおよびデバイスDiの識別子IDp,IDiおよび事前秘密鍵Kpp,Kpiを認証サーバASmにあらかじめ登録する。
このように、工場で設定された事前秘密鍵Kpp,Kpiと識別子IDp,IDiとの対応リストが認証サーバASmに登録されていると、プロキシデバイスDpやデバイスDiは、事前秘密鍵Kpp,Kpiを用いて識別子IDp,IDiを認証サーバASmに通知することにより、事前秘密鍵Kpp,Kpiを用いて安全にメッセージを交換することが可能になる。他の構成および動作は上述した各実施形態と同様である。
本実施形態では、実施形態3のように、分散認証サーバASeおよびデバイスDiに関して共通の事前秘密鍵Kgmを用いるのではなく、分散認証サーバASeおよびデバイスDiで個別の事前秘密鍵Kpp,Kpiを用いるから、共通の事前秘密鍵Kgmが第三者に取得された場合のようにメッセージが一括して漏洩することがなく、メッセージを安全に交換することができる。
なお、本実施形態の構成を採用する場合には、配布用秘密鍵Ktmp,Ktmiに代えて事前秘密鍵Kpp,Kpiを用いることも可能である。つまり、手順(1)〜(4)を省略することが可能である。
ただし、上述のように、分散認証サーバASeおよびデバイスDiと認証サーバASmとの間で事前秘密鍵Kpp,Kpiを用いてメッセージを交換することにより、認証サーバASmが事前秘密鍵Kpp,Kpiとは異なる配布用秘密鍵Ktmp,Ktmiを発行する構成を採用する技術を採用するのが望ましい。この技術を採用すると、仮に鍵発行装置Pk(図1参照)において事前秘密鍵Kpp,Kpiを発行する規則(たとえば、乱数系列)が漏洩したとしても、秘密鍵Ksiを配布する際の認証手続に用いる配布用秘密鍵Ktmp,Ktmiは認証サーバASmにより生成されることで、事前秘密鍵Kpp,Kpiとは異なったものになるから、秘密鍵Ksiを安全に配布することができる。
なお、認証サーバASmが配布用秘密鍵Ktmp,Ktmiを発行する規則についても、複数個のデバイスDi(認証サーバASeを含む)を集めることで推測されるおそれがあるが、認証サーバASmが発行する配布用秘密鍵Ktmp,Ktmiは一時的なものであるから、仮に認証サーバASmが配布用秘密鍵Ktmp,Ktmiを発行する規則が知られたとしても、配布用秘密鍵Ktmp,Ktmiを変更すればよく、秘密鍵Ksiを配布する際の安全性を高めることができる。他の構成および動作は実施形態3と同様である。
(実施形態5)
本実施形態は、実施形態2と同様に、分散認証サーバASeとデバイスDiとの間の通信において盗聴の可能性を低減させる技術である。ただし、実施形態2では、メッセージ認証コードとしてノンスNp,Niのハッシュ値を用いていたが、本実施形態では、図4に示すように、ハッシュ値を用いずにステップS1,S2で生成したノンス値Np,Niを暗号化することによって、メッセージの認証に用いている。
すなわち、認証サーバASmと分散認証サーバASeとの間のセッション鍵Ksspと、認証サーバASmとデバイスDiとの間のセッション鍵Kssiとを発行し、これらのセッション鍵Kssp,KssiをノンスNp,Niの暗号化に用いている。言い換えると、これらのセッション鍵Kssp,Kssiは、ノンス値Np,Niを暗号化する過程においては、配布用秘密鍵Ktmp,Ktmiと等価に用いていることになる。また、本実施形態では、分散認証サーバASeがデバイスDiに対して発行したセッション鍵Kssも用いる。
セッション鍵Kssは、分散認証サーバASeとデバイスDiとに対して工場出荷時などに事前に設定された共通の事前秘密鍵Kgmを用いて生成される。また、セッション鍵Kssp,Kssiは、分散認証サーバASeおよびデバイスDiに対してクリプトナイトの手順で事前に配布されているものとする。
本実施形態では、実施形態2における手順(5)〜(7)において、ノンス値Np,Niについてハッシュ値を用いずに、以下のメッセージを用いることにより認証サーバASmでのメッセージ認証を行う。ここでは、ノンス値Np,Niについてのみ着目しているが、分散認証サーバASeとデバイスDiとの間ではTEP(X)を伝送し、認証サーバASmと分散認証サーバASeとの間ではTRP(X)を伝送しており、Xにはノンス値Np,Niのほか、識別子IDp,IDiも含まれる。
(5)分散認証サーバASe→デバイスDi:Ekss(Np)
(6)デバイスDi→分散認証サーバASe:EkssNp,Ni),EkssiNp,Ni)
(7)分散認証サーバASe→認証サーバASm:Np,EksspNi,EkssiNp,Ni)}
手順(5)では分散認証サーバASeで生成したノンス値Npをセッション鍵Kssで暗号化した値Ekss(Np)を分散認証サーバASeからデバイスDiに送信する。また、手順(6)ではデバイスDiにおいて分散認証サーバASeから受信したノンス値Npを復号するとともに、ノンス値NpとデバイスDiで生成したノンス値Niとを合わせた値(Np,Ni)を、セッション鍵Kss,Kssiでそれぞれ暗号化した値EkssNp,Ni),EkssiNp,Ni)をデバイスDiから分散認証サーバASeに送信する。
分散認証サーバASeでは手順(7)において、分散認証サーバASeで生成したノンス値Npとともに、デバイスDiから受信した値EkssNp,Ni)を復号することにより得られるノンス値Niと、デバイスDiから受信した値EkssiNp,Ni)とを分散認証サーバASeのセッション鍵Ksspで暗号化した値EksspNi,EkssiNp,Ni)}を認証サーバASmに送信する。
認証サーバASmでは、値EksspNi,EkssiNp,Ni)}を復号し、さらにEkssiNp,Ni)を復号することによって、ノンス値Niとノンス値(Np,Ni)とが得られ、また分散認証サーバASeで生成されたノンス値Npも受信しているから、ノンス値(Np,Ni)とノンス値(Np,Ni)とを得ることができる。したがって、両者を比較し一致していれば(S3)、認証サーバASmとデバイスDiとが通信したことを確認することができる。
本実施形態において、セッション鍵Kssが第三者に推測されており、当該第三者が通信の傍受を行おうとした場合、あるいはセッション鍵Kssによる暗号化を省略した場合には、上述の手順(5)〜(7)は下記の手順(5)′〜(7)′と等価になる。
(5)′分散認証サーバASe→デバイスDi:Np
(6)′デバイスDi→分散認証サーバASe:Np,Ni,EkssiNp,Ni)
(7)′分散認証サーバASe→認証サーバASm:Np,EksspNi,EkssiNp,Ni)}
認証サーバASmでは、事前に配布したセッション鍵Kssp,Kssiを用いて復号することにより、Ni,(Np,Ni)を得る。この値が暗号化されずに送られたノンス値Npおよびセッション鍵Ksspで復号したノンス値Niと、セッション鍵Kssiで復号した(Np,Ni)とが一致すれば、認証サーバASmとデバイスDiとは接続されていると判断することができる。
他の構成および動作は実施形態2と同様である。本実施形態の技術によれば、ハッシュ関数を用いないからハッシュ値を生成するための暗号ライブラリが不要になる。
(実施形態6)
本実施形態では,実施形態5と同様に、認証サーバASmが分散認証サーバASeおよびデバイスDiとの通信のためのセッション鍵Kssp,Kssiを発行する。これらのセッション鍵Kssp,Kssiは、分散認証サーバASeで生成されたノンス値NpとデバイスDiで生成されたノンス値Niとのハッシュ値を暗号化するために用いる。つまり、セッション鍵Kssp,Kssiは、ハッシュ値を暗号化する過程においては、配布用秘密鍵Ktmp,Ktmiと等価に用いられる。また、分散認証サーバASeはデバイスDiとの間の通信に用いるセッション鍵Kssを発行する。
本実施形態では、実施形態5における手順(5)〜(7)において、図5に示すように、以下のメッセージを用いることにより認証サーバASmでのメッセージ認証を行う。ここでは、ノンス値Np,Niについてのみ着目しているが、分散認証サーバASeとデバイスDiとの間ではTEP(X)を伝送し、認証サーバASmと分散認証サーバASeとの間ではTRP(X)を伝送しているから、実際には識別子IDp,IDiも含まれている。
(5)分散認証サーバASe→デバイスDi:Ekss(Np)
(6)デバイスDi→分散認証サーバASe:EkssNp,Ni),Ekssi{Hkss(Ni|Np)}
(7)分散認証サーバASe→認証サーバASm:Ekssp[HkssNi|Np),Ekssi{Hkss(Ni|Np)}]
手順(5)は実施形態5と同処理であり、分散認証サーバASeで生成したノンス値Npをセッション鍵Kssで暗号化した値Ekss(Np)を分散認証サーバASeからデバイスDiに送信する。また、手順(6)ではデバイスDiにおいて分散認証サーバASeから受信したノンス値Npを復号するとともに、ノンス値NpとデバイスDiで生成したノンス値Niとを合わせた値(Np,Ni)を、セッション鍵Kssで暗号化した値EkssNp,Ni)と、ノンス値(Np,Ni)についてセッション鍵Kssによる鍵付きハッシュ値Hkss(Ni|Np)(=ハッシュ1値)を求め、セッション鍵Kssiで暗号化した値Ekssi{Hkss(Ni|Np)}とを合わせ、デバイスDiから分散認証サーバASeに送信する。
分散認証サーバASeでは手順(7)において、分散認証サーバASeから受信した値EkssNp,Ni)を復号してノンス値Niを取得し、分散認証サーバASeで生成したノンス値Npとともに、セッション鍵Kssによる鍵付きハッシュ値HkssNi|Np)(=ハッシュ2値)を求め、さらにセッション鍵Ksspで暗号化した値Ekssp{HkssNi|Np)}を生成する。この値をデバイスDiから受信した値Ekssi{Hkss(Ni|Np)}とともに認証サーバASmに送信する。
認証サーバASmでは、値Ekssp(HkssNi|Np)を復号し、さらにEkssi{Hkss(Ni|Np)を復号することによって、ハッシュ値HkssNi|Np),Hkss(Ni|Np)を得ることができる。したがって、両者を比較し一致していれば、認証サーバASmとデバイスDiとが通信したことを確認することができる。
他の構成および動作は実施形態5と同様である。本実施形態では、分散認証サーバASeとデバイスDiとの間の通信において、セッション鍵Kssを用いてノンス値(Ni|Np)の鍵付きハッシュ値Hkss(Ni|Np)を送信するから、分散認証サーバASeとデバイスDiとの間が鍵配布時に接続されていたことをハッシュ値が示すことになり、認証サーバASmはリプレイ攻撃などの異常を検知することができる。また、ハッシュ値を用いるから、結託によりセッション鍵Kssの推定が困難になる。また、認証サーバASmに対してはセッション鍵Kssを秘密にできる。
(実施形態7)
一般に、分散認証サーバASeの管理下には複数台のデバイスDiが存在するから、分散認証サーバASeは、デバイスDiとの通信インターフェイスを1個だけ備える構成とは限らず、デバイスDiとの通信インターフェイスをスイッチングハブのように複数個備える場合もある。本実施形態は、分散認証サーバASeがデバイスDiと接続するための複数個の通信インターフェイスを備える場合であって、分散認証サーバASeとデバイスDiとの間の通信に際して、分散認証サーバASeあるいはデバイスDiの持つ秘密鍵K(配布用秘密鍵Ktmp,Ktmi)を用いることにより、分散認証サーバASeとデバイスDiとのMACアドレスADp,ADiに関するメッセージ認証を行うようにしたものである。データ(X)に関して秘密鍵Kで生成するメッセージ認証コードはMAC(X)とする。
すなわち、本実施形態は、固有の識別子を有したデバイスと、固有の識別子を有し少なくとも1台のデバイスが接続されるとともにデバイスとの間で通信が可能な分散認証サーバと、デバイスおよび分散認証サーバとの間で通信が可能であってデバイスおよび分散認証サーバに共通の秘密鍵を配布する認証サーバとを有する通信システムにおいて、認証サーバが秘密鍵を配布する方法であって、認証サーバが分散認証サーバとの間の通信に用いる第1の配布用秘密鍵と認証サーバがデバイスとの間の通信に用いる第2の配布用秘密鍵とを認証サーバが事前秘密鍵を用いてデバイスと分散認証サーバとにそれぞれ配布する第1過程と、分散認証サーバが第1のノンス値を生成するとともに第1の配布用秘密鍵を用いて第1のノンス値に基づいて生成した第1のメッセージ認証コードと第1のノンス値とをデバイスへ送信する第2過程と、デバイスが第2のノンス値を生成するとともに第2の配布用秘密鍵を用いて第2のノンス値に基づいて生成した第2のメッセージ認証コードと第2のノンス値とを分散認証サーバから受信した第1のメッセージ認証コードと併せて分散認証サーバにメッセージとして送信する第3過程と、分散認証サーバがデバイスからメッセージを受信した場合に第1の配布用秘密鍵を用いてメッセージに基づいて生成した第3のメッセージ認証コードと第1のノンス値および第2のノンス値とを認証サーバへ送信する第4過程と、認証サーバが第1のノンス値および第2のノンス値と第1の配布用秘密鍵および第2の配布用秘密鍵を用いてメッセージ認証のデータを生成するとともに、生成したメッセージ認証コードと分散認証サーバから受信した第3のメッセージ認証コードとを比較し、両メッセージ認証のデータが一致した場合に分散認証サーバとデバイスとに共通に与える秘密鍵を生成し、当該秘密鍵を第1の配布用秘密鍵で暗号化した第1のメッセージと当該秘密鍵を第2の配布用秘密鍵で暗号化した第2のメッセージとを分散認証サーバに送信する第5過程と、分散認証サーバが第1のメッセージを第1の配布用秘密鍵で復号化することにより秘密鍵を取得するとともに、第2のメッセージをデバイスに転送する第6過程と、デバイスが第2のメッセージを第2の配布用秘密鍵で復号化することにより秘密鍵を取得する第7過程とを有している。
この方法では、分散認証サーバとデバイスとにおいてそれぞれノンス値を生成し、配布用秘密鍵を用いてノンス値に基づいて生成したメッセージ認証コードと、ノンス値とを認証サーバに送信し、認証サーバにおいて配布用秘密鍵とノンス値とからメッセージ認証コードを生成するとともに、分散認証サーバから受信したメッセージ認証コードと比較し、両メッセージ認証コードが一致しているときに分散認証サーバとデバイスとが接続されているものと判断して、分散認証サーバとデバイスとに共通する秘密鍵を配布するから、従来方法のように、デバイスのアドレスによりグループを確認する必要がなく、分散認証サーバとデバイスとが通信可能であれば、デバイスは分散認証サーバと同じグループと判断され、分散認証サーバと同じ秘密鍵を取得することができる。つまり、デバイスがアドホックであっても分散認証サーバに接続されていると遅滞なく秘密鍵が配布され、一方、デバイスが分散認証サーバに物理的に接続されていなければデバイスには秘密鍵が渡されないから、このデバイスはグループから除外される。
以下に具体的に説明する。本実施形態は、実施形態1における手順(5)〜(7)において、図6に示すように、以下のメッセージを用いる。以下の説明において、認証サーバASmが、分散認証サーバASeとデバイスDiとについて、MACアドレスADp,ADiと識別子IDp,IDiとの対応リストを保持している場合は、識別子IDp,IDiを含むメッセージ認証処理によってデバイスDp,Diの確認を行う必要がないので、識別子IDp,IDiを括弧内に記載している。また、上述した各実施形態と同様に、分散認証サーバASeとデバイスDiとはそれぞれ配布用秘密鍵Ktmp,Ktmiを備えているものとする。なお、以下の説明において付加情報Opを含むメッセージを記載しているが、付加情報Opは必須ではない。ノンス値Np,NiはステップS1,S2で生成される。
(5)分散認証サーバASe→デバイスDi:TEP(IDp,Np,Op),ADp,MACktmp(Np,(IDp),ADp)
(6)デバイスDi→分散認証サーバASe:TEP(IDi,Ni,IDp,Np,Op),ADi,MACktmi{Ni,(IDi),ADp,MACktmp(Np,(IDp),ADp)}
(7)分散認証サーバASe→認証サーバASm:TEP(IDi,Ni,IDp,Np,Op),(ADp,ADi),MACktmp[ADi,MACktmi{Ni,(IDi),ADp,MACktmp(Np,(IDp),ADp)}]
手順(5)は、分散認証サーバASeからデバイスDiにメッセージを送信する処理であり、分散認証サーバASeは、識別子IDpとノンス値Npと付加情報Opとを含むTEP(Dp)メッセージに加えて、MACアドレスADpを送信し、さらに、ノンス値NpとMACアドレスADpと(必要に応じて識別子IDp)から秘密鍵Ktmpを用いて生成したメッセージ認証コードMACktmp(Np,(IDp),ADp)を送信する。
手順(6)は、デバイスDiから分散認証サーバASeにメッセージを送信する処理であり、デバイスDiは、識別子IDiとノンス値Niと付加情報Opとに加えて分散認証サーバASeから取得した識別子IDpとノンス値Npとを含むTEP(Di,Dp)メッセージを送信する。このとき、デバイスDiのMACアドレスADiを送信し、さらに、ノンス値NiとMACアドレスADpと分散認証サーバASeから受信したメッセージ認証コードMACktmp(Np,(IDp),ADp)とから配布用秘密鍵Ktmiを用いて生成したメッセージ認証コードMACktmi{Ni,(IDi),ADp,MACktmp(Np,(IDp),ADp)}を送信する。
手順(7)は、分散認証サーバASeから認証サーバASmにメッセージを送信する処理であり、デバイスDiから取得した識別子IDiおよびノンス値Niと、分散認証サーバASeの識別子IDpおよびノンス値Npと、付加情報Opとを含むTEP(IDi,Ni,IDp,Np,Op)メッセージを送信する。また、必要に応じて、分散認証サーバASeのMACアドレスADpとデバイスDiのMACアドレスADiとを送信する。さらに、メッセージ認証コードとして、手続(6)においてデバイスDiから受信したメッセージ認証コードMACktmi{Ni,(IDi),ADp,MACktmp(Np,(IDp),ADp)}に、デバイスDiのMACアドレスを付加したものから配布用秘密鍵Ktmpを用いて生成したメッセージ認証コードMACktmp[ADi,MACktmi{Ni,(IDi)、ADp、MACktmp(Np,(IDp),ADp)}]を送信する。
なお、上述したように、認証サーバASmが、分散認証サーバASeとデバイスDiとについて、MACアドレスADp,ADiと識別子IDp,IDiとの対応リストを保持しているときには(ADp,ADi)を省略してもよい。
認証サーバASmは、分散認証サーバASeの秘密鍵Ktmpと、デバイスDiの秘密鍵Ktmiと、TEP(IDi,Ni,IDp,Np,Op)メッセージにより受信したノンス値(Np,Ni)および識別子IDpおよびIDiと、分散認証サーバASeから受信した(もしくは、認証サーバASmが保持している)MACアドレス(ADp、ADi)とを用いて、メッセージ認証コードMACktmp[ADi,MACktmi{Ni,(IDi)、ADp、MACktmp(Np,(IDp),ADp)}]を算出する。このようにして得られたメッセージ認証コードを、分散認証サーバASeから受信したメッセージ認証コードと比較し(S3)、両者が一致していれば分散認証サーバASeとデバイスDiとが、MACアドレスのリンクレベルで接続されていると確認することができる。
以後の処理手順は実施形態1と同様であり、手順(8)〜(9)により分散認証サーバASeとデバイスDiとに新たな秘密鍵Ksp,Ksiを配布する。本実施形態ではメッセージ認証コードとして、鍵付きのコード(たとえば、鍵付きハッシュ)を例示したが、鍵なしのハッシュ値を用いてもよい。
本実施形態の他の構成および動作は上述した各実施形態と同様であり、分散認証サーバASeとデバイスDiとの間でノンス値Np,Niを交換するのに加え、MACアドレスのようなリンクアドレスを用いているから、認証サーバASmでは分散認証サーバASeとデバイスDiとの間の論理的接続だけではなく、物理的接続も確認することができる。すなわち、分散認証サーバASeとデバイスDiとが物理的に接続されていることをもって同じグループに属すると判断する場合に、分散認証サーバASeに対して物理的に接続されていないデバイスDiに秘密鍵を配布するのを防止することができる。
実施形態を示すブロック図である。 実施形態1の動作説明図である。 実施形態2の動作説明図である。 実施形態5の動作説明図である。 実施形態6の動作説明図である。 実施形態7の動作説明図である。 従来例を示す構成図である。
符号の説明
ASe 分散認証サーバ
ASm 認証サーバ
Di デバイス
Pk 鍵発行装置
11 ノンス生成手段
12 (第1の)認証コード送信手段
21 ノンス生成手段
22 (第2の)認証コード送信手段
31 (第1の)秘密鍵配布手段
32 比較手段
33 秘密鍵生成手段
34 (第2の)秘密鍵配布手段

Claims (8)

  1. 固有の識別子を有したデバイスと、固有の識別子を有し少なくとも1台のデバイスが接続されるとともにデバイスとの間で通信が可能な分散認証サーバと、デバイスおよび分散認証サーバとの間で通信が可能であってデバイスおよび分散認証サーバに共通の秘密鍵を配布する認証サーバとを有する通信システムにおいて、認証サーバが秘密鍵を配布する方法であって、認証サーバが分散認証サーバとの間の通信に用いる第1の配布用秘密鍵と認証サーバがデバイスとの間の通信に用いる第2の配布用秘密鍵とを認証サーバが事前秘密鍵を用いてデバイスと分散認証サーバとにそれぞれ配布する第1過程と、分散認証サーバが第1のノンス値を生成してデバイスへ送信する第2過程と、デバイスが第2のノンス値を生成するとともに分散認証サーバから受信した第1のノンス値と第2のノンス値とに基づいて生成したメッセージ認証のデータを第2の配布用秘密鍵で暗号化した値および第2のノンス値をメッセージとして分散認証サーバに送信する第3過程と、分散認証サーバがデバイスからメッセージを受信した場合にデバイスからのメッセージに含まれる第2のノンス値と第1のノンス値とに基づいて生成したメッセージ認証のデータを第1の配布用秘密鍵で暗号化した値と、メッセージ認証のデータを第2の配布用秘密鍵で暗号化した値とを認証サーバへ送信する第4過程と、認証サーバが第1の配布用秘密鍵で分散認証サーバが生成したメッセージ認証のデータを復号しかつ第2の配布用秘密鍵でデバイスが生成したメッセージ認証のデータを復号し、両メッセージ認証のデータが一致した場合に分散認証サーバとデバイスとに共通に与える秘密鍵を生成し、当該秘密鍵を第1の配布用秘密鍵で暗号化した第1のメッセージと当該秘密鍵を第2の配布用秘密鍵で暗号化した第2のメッセージとを分散認証サーバに送信する第5過程と、分散認証サーバが第1のメッセージを第1の配布用秘密鍵で復号化することにより秘密鍵を取得するとともに、第2のメッセージをデバイスに転送する第6過程と、デバイスが第2のメッセージを第2の配布用秘密鍵で復号化することにより秘密鍵を取得する第7過程とを有することを特徴とする秘密鍵配布方法。
  2. 前記デバイスは、前記分散認証サーバと共通の事前秘密鍵を用いて分散認証サーバと通信することにより分散認証サーバとの通信に用いるセッション鍵を分散認証サーバから取得し、前記第2過程と前記第3過程と前記第6過程とにおける分散認証サーバとデバイスとの間の通信は、セッション鍵を用いて暗号化されることを特徴とする請求項1記載の秘密鍵配布方法。
  3. 前記第3過程および前記第4過程で用いるメッセージ認証のデータは、前記セッション鍵による鍵付きのメッセージ認証コードであることを特徴とする請求項2記載の秘密鍵配布方法。
  4. 前記分散認証サーバおよび前記デバイスにおける前記事前秘密鍵は、分散認証サーバおよびデバイスの製造者が管理する鍵発行装置により分散認証サーバおよび各デバイスに登録され、さらに鍵発行装置は、前記認証サーバに分散認証サーバおよび各デバイスの事前秘密鍵と識別子とを関係付けて登録することを特徴とする請求項1〜3のいずれか1項に記載の秘密鍵配布方法。
  5. 前記第3過程および前記第4過程で用いるメッセージ認証のデータは、第1のノンス値および第2のノンス値から求めたハッシュ値を用いることを特徴とする請求項1記載の秘密鍵配布方法。
  6. 前記第3過程および前記第4過程で用いるメッセージ認証のデータは、第1のノンス値および第2のノンス値をそのまま用いることを特徴とする請求項1記載の秘密鍵配布方法。
  7. 固有の識別子を有したデバイスと、固有の識別子を有し少なくとも1台のデバイスが接続されるとともにデバイスとの間で通信が可能な分散認証サーバと、デバイスおよび分散認証サーバとの間で通信が可能であってデバイスおよび分散認証サーバに共通の秘密鍵を配布する認証サーバとを有し、分散認証サーバとデバイスとは、それぞれノンス値を生成するノンス生成手段を備え、デバイスは、分散認証サーバから受信したノンス値と自己のノンス値とのハッシュ値および自己のノンス値を分散認証サーバに送信する第1の認証コード送信手段を備え、分散認証サーバは、デバイスから受信したノンス値と自己のノンス値とのハッシュ値およびデバイスから受信したハッシュ値とを認証サーバに送信する第2の認証コード送信手段を備え、認証サーバは、デバイスと分散認証サーバとに認証サーバとの通信にそれぞれ用いる第1および第2の配布用秘密鍵を配布する第1の秘密鍵配布手段と、分散認証サーバから受信した2つのハッシュ値を比較する比較手段と、比較手段による比較結果が一致しているときに分散認証サーバとデバイスとに共通に与える秘密鍵を生成する秘密鍵生成手段と、秘密鍵を第1の配布用秘密鍵を用いて暗号化して分散認証サーバに配布するとともに秘密鍵を第2の配布用秘密鍵を用いて暗号化して分散認証サーバを介してデバイスに配布する第2の秘密鍵配布手段とを備えることを特徴とする秘密鍵配布システム。
  8. 前記分散認証サーバおよび前記デバイスの製造者が管理し前記事前秘密鍵を発行する鍵発行装置を備え、鍵発行装置は、発行した事前秘密鍵を分散認証サーバおよび各デバイスに登録するとともに、前記認証サーバに分散認証サーバおよび各デバイスの事前秘密鍵と識別子とを関係付けて登録することを特徴とする請求項7記載の秘密鍵配布システム。
JP2008138757A 2008-05-27 2008-05-27 秘密鍵配布方法、秘密鍵配布システム Active JP5102701B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008138757A JP5102701B2 (ja) 2008-05-27 2008-05-27 秘密鍵配布方法、秘密鍵配布システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008138757A JP5102701B2 (ja) 2008-05-27 2008-05-27 秘密鍵配布方法、秘密鍵配布システム

Publications (2)

Publication Number Publication Date
JP2009290378A JP2009290378A (ja) 2009-12-10
JP5102701B2 true JP5102701B2 (ja) 2012-12-19

Family

ID=41459191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008138757A Active JP5102701B2 (ja) 2008-05-27 2008-05-27 秘密鍵配布方法、秘密鍵配布システム

Country Status (1)

Country Link
JP (1) JP5102701B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2386170A2 (en) 2008-12-17 2011-11-16 Interdigital Patent Holdings, Inc. Enhanced security for direct link communications
JP5836188B2 (ja) * 2012-04-27 2015-12-24 株式会社エヌ・ティ・ティ・データ 認証装置、認証方法、認証プログラム
WO2018224945A1 (en) * 2017-06-07 2018-12-13 nChain Holdings Limited Credential generation and distribution method and system for a blockchain network
CN112512038B (zh) * 2020-11-19 2022-11-29 中国建设银行股份有限公司 会话密钥的生成方法、装置、电子设备及可读存储介质
CN115549956A (zh) * 2022-08-17 2022-12-30 青岛海尔科技有限公司 会话建立方法、装置、存储介质及电子装置

Also Published As

Publication number Publication date
JP2009290378A (ja) 2009-12-10

Similar Documents

Publication Publication Date Title
JP5390844B2 (ja) 鍵配布システム、鍵配布方法
US11271730B2 (en) Systems and methods for deployment, management and use of dynamic cipher key systems
JP6226197B2 (ja) 証明書発行システム、クライアント端末、サーバ装置、証明書取得方法、及び証明書発行方法
TWI454112B (zh) 通信網路金鑰管理
JP5432999B2 (ja) 暗号鍵配布システム
CN104158653B (zh) 一种基于商密算法的安全通信方法
CN108683501B (zh) 基于量子通信网络的以时间戳为随机数的多次身份认证系统和方法
CN101605137A (zh) 安全分布式文件系统
CN103763356A (zh) 一种安全套接层连接的建立方法、装置及系统
WO2012139174A1 (en) Qkd key management system
US20170187524A1 (en) Key exchange system, key exchange method, key exchange device, control method thereof, and recording medium for storing control program
EP2923458B1 (en) Method, system and device for securely transferring content between devices within a network
JP5378296B2 (ja) 通信装置および通信方法
CN108964897B (zh) 基于群组通信的身份认证系统和方法
JP5102701B2 (ja) 秘密鍵配布方法、秘密鍵配布システム
US20170019256A1 (en) Method to authenticate two devices to establish a secure channel
CN104125239A (zh) 一种基于数据链路加密传输的网络认证方法和系统
CN113572788A (zh) BACnet/IP协议设备认证安全方法
KR101359789B1 (ko) Scada 통신 네트워크의 보안 시스템 및 방법
CN107659405A (zh) 一种变电站主子站间数据通信的加密解密方法
CN108123797A (zh) 基于量子密钥的网络加密装置
WO2006062345A1 (en) Method of distributing keys over epon
CN111628872A (zh) BACnet协议设备的安全认证方法
JP4976794B2 (ja) 駅務システム及びセキュリティ通信方法
WO2016096554A1 (en) Method for authenticating attributes in a non-traceable manner and without connection to a server

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100810

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110121

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120829

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: 20120904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120928

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5102701

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150