JP5333613B2 - 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム - Google Patents

代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム Download PDF

Info

Publication number
JP5333613B2
JP5333613B2 JP2012013313A JP2012013313A JP5333613B2 JP 5333613 B2 JP5333613 B2 JP 5333613B2 JP 2012013313 A JP2012013313 A JP 2012013313A JP 2012013313 A JP2012013313 A JP 2012013313A JP 5333613 B2 JP5333613 B2 JP 5333613B2
Authority
JP
Japan
Prior art keywords
information
key information
proxy
communication device
storage means
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.)
Expired - Fee Related
Application number
JP2012013313A
Other languages
English (en)
Other versions
JP2013152362A (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2012013313A priority Critical patent/JP5333613B2/ja
Publication of JP2013152362A publication Critical patent/JP2013152362A/ja
Application granted granted Critical
Publication of JP5333613B2 publication Critical patent/JP5333613B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システムに関し、例えば、鍵交換処理、認証処理を、代行装置が通信装置に代わって安全に処理する場合に適用し得るものである。
例えば、防災監視、交通制御、金融といった高い信頼性や品質が必要とされる社会インフラ分野で、センサ等を利用するためには、サービス提供サーバ等の通信装置とセンサ等の通信装置との間の通信の安全性を維持する必要がある。
センサ等の通信装置が、サービス提供サーバ等の通信装置とエンド・エンドの安全な通信路を確保するためには、サービス提供サーバ及びセンサ等が備える2つの通信装置間で、認証、鍵交換といったエンド・エンドの情報交換が必要になる。
ここで、センサ等の通信装置が省電力マルチホップネットワークを形成している場合を考える。省電力マルチホップネットワークとは、センサ等の各通信装置がバケツリレー方式でデータを配送し、自身がデータ配送に関与しないときは、スリープすることにより電力消費を抑えるネットワークである。
例えば、広範囲に膨大な数のセンサ等の通信装置が展開され、それぞれの通信装置とインターネット上のサーバ等の通信装置との間で、エンド・エンドの安全な通信路を確保したい場合、上述のエンド・エンドの情報交換が、省電力マルチホップネットワークの輻輳や、消費電力の増加や、処理時間の増加等の問題を引き起こす可能性がある。
上述の問題に対応できる従来技術として、特許文献1には、IPsec(Security Architecture for Internet Protocol)で必要になるエンド・エンドの鍵交換処理を、小型軽量化が要求される携帯電話機やPDA上へ導入するのは難点があるとして、上位ネットワーク側の装置に処理を代行させて、端末の負荷を軽減する方法が提案されている。
特開2004−128782号公報
しかしながら、上述した特許文献1の記載技術は、上位のネットワーク側の装置に処理を代行してもらうために、自身の認証鍵等の秘密情報を代行装置に預ける必要がある。
例えば、クラウド環境を利用したネットワーク上の代行装置を想定する場合や複数の代行装置を利用する場合には、秘密情報漏洩防止の観点から、代行装置に秘密情報を預けることはあまり好ましくなく、漏洩してもなりすまし等ができないような代行情報を用いる代行技術が重要になる。
そのため、秘密情報漏洩防止の観点から、通信装置間の通信に係る鍵交換処理・認証処理を代行することができる代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システムが求められている。
かかる課題を解決するために、第1の本発明の代行パラメータ情報生成装置は、秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、第2の公開鍵情報を記憶する第3の記憶手段と、秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を求める第1の演算手段とを有する代行パラメータ生成装置において、(1)第1の記憶手段に記憶される秘密鍵情報と、第2の記憶手段に記憶される第1の公開鍵情報とに基づいて、第1の演算手段により得られた情報を第1の共通鍵情報とし、第1の記憶手段に記憶される秘密鍵情報と、第3の記憶手段に記憶される第2の公開鍵情報とに基づいて、第1の演算手段により得られた情報を第2の共通鍵情報として、第1の共通鍵情報と第2の共通鍵情報とに基づいて、鍵共有処理を代行させる代行装置に与える代行パラメータ情報を求める第2の演算手段と、(2)第2の演算手段による演算結果を出力する出力手段とを備えることを特徴とする。
第2の本発明の代行装置は、秘密鍵情報を記憶する第1の記憶手段と、公開鍵情報を入力する入力手段と、第1の公開鍵情報を記憶する第2の記憶手段と、秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を計算する第1の演算手段と、乱数情報を記憶する第3の記憶手段とを有する代行装置において、(1)被代行装置の鍵共有処理に係る代行パラメータ情報を記憶する第4の記憶手段と、(2)第1の記憶手段に記憶される秘密鍵情報と、第2の記憶手段に記憶される第1の公開鍵情報とに基づいて第1の演算手段により得られた第1の共通鍵情報と、第3の記憶手段に記憶されている代行パラメータ情報とに基づいて、第2の共通鍵情報とを求める第2の演算手段と、(3)第2の演算手段による演算結果を出力する出力手段とを備えることを特徴とする。
第3の本発明の通信システムは、第1の通信装置と第2の通信装置とが鍵共有をする場合に、第1の通信装置に代わって代行装置が第2の通信装置との鍵共有処理を代行する通信システムにおいて、(1)代行装置は、予め第2の通信装置との鍵共有処理に係る代行パラメータ情報を記憶しておき、(2)代行装置及び第2の通信装置は、第1の通信装置と第2の通信装置との間で鍵共有の必要が生じた場合には、代行装置と第2の通信装置との間で乱数情報を交換し、(3)第2の通信装置は、乱数情報と、第1の通信装置の公開鍵情報と第2の通信装置の秘密鍵情報とに基づいて共通鍵情報を求め、(4)代行装置は、乱数情報と代行パラメータ情報と第1の通信装置の公開鍵情報と代行装置の秘密鍵情報とに基づいて共通鍵情報を求め、(5)代行装置が、求めた共通鍵情報を第1の通信装置に送信することを特徴とする。
第4の本発明の代行パラメータ情報生成プログラムは、秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、第2の公開鍵情報を記憶する第3の記憶手段とを備え、コンピュータを、(1)秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を求める第1の演算手段、(2)第1の記憶手段に記憶される秘密鍵情報と、第2の記憶手段に記憶される第1の公開鍵情報とに基づいて、第1の演算手段により得られた情報を第1の共通鍵情報とし、第1の記憶手段に記憶される秘密鍵情報と、第3の記憶手段に記憶される第2の公開鍵情報とに基づいて、第1の演算手段により得られた情報を第2の共通鍵情報として、第1の共通鍵情報と第2の共通鍵情報とに基づいて、鍵共有処理を代行させる代行装置に与える代行パラメータ情報を求める第2の演算手段として機能させることを特徴とする。
第5の本発明の代行プログラムは、秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、乱数情報を記憶する第3の記憶手段と、被代行装置の鍵共有処理に係る代行パラメータ情報を記憶する第4の記憶手段とを備え、コンピュータを、(1)秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を計算する第1の演算手段、(2)第1の記憶手段に記憶される秘密鍵情報と、第2の記憶手段に記憶される第1の公開鍵情報とに基づいて第1の演算手段により得られた第1の共通鍵情報と、第3の記憶手段に記憶されている代行パラメータ情報とに基づいて、第2の共通鍵情報とを求める第2の演算手段として機能させることを特徴とする。
本発明によれば、秘密情報の漏洩防止しながら、通信装置間の通信に係る鍵交換処理・認証処理を代行することができる。
第1の実施形態のシステムの全体構成を示す構成図である。 第1の実施形態の第1の通信装置1の内部構成を示す内部構成図である。 第1の実施形態の代行装置の内部構成を示す内部構成図である。 第1の実施形態の第2の通信装置の内部構成を示す内部構成図である。 第1の実施形態の鍵共有・認証処理の動作を示すシーケンス図である。 第2の実施形態の第1の通信装置の内部構成を示す内部構成図である。 第2の実施形態の代行装置の内部構成を示す内部構成図である。 第2の実施形態の第2の通信装置の内部構成を示す内部構成図である。 第2の実施形態の鍵共有・認証処理の動作を示すシーケンス図である。
(A)本発明の基本的概念
本発明に係る通信システム(代行システム)は、代行装置が、第1の通信装置及び第2の通信装置間の通信に係るセキュリティ処理の計算を代行する。
代行システムは、以下の3条件(以下「認証・鍵共有代行の3条件」と呼ぶ)を満たすようにして処理を行う。
[認証・鍵共有代行の3条件]
(1)代行装置は、PKI(Public Key Infrastructure)又はPKG(Private Key Generator)から与えられた秘密鍵情報以外一切の秘密情報を扱うことなく代行処理ができる。
(2)第2の通信装置は、認証・鍵共有の相手が代行装置であるか、第1の通信装置であるかによって処理を変えない。
(3)代行装置は、第1の通信装置が許可した第2の通信装置以外の通信装置との認証・鍵共有を代行することはできない。
(B)第1の実施形態
以下、本発明の代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システムの第1の実施形態について、図面を参照しながら詳細に説明する。
第1の実施形態では、公開鍵証明書を発行する認証局が発行する公開鍵ペアに基づく認証・鍵共有代行方式を採用した場合の実施形態を説明する。
(B−1)第1の実施形態の構成
(B−1−1)システムの全体構成
図1は、第1の実施形態のシステムの全体構成を示す構成図である。図1において、第1の実施形態のシステム1は、第1の通信装置100、第2の通信装置300、代行装置200を少なくとも有して構成される。
第1の通信装置100は、例えばセンサやスマート端末等の端末に搭載される通信装置であり、ネットワーク帯域や消費電力等が限られた通信装置である。
第1の通信装置100は、マルチホップ通信によりデータ通信を行なうものである。図1では、第1の通信装置100が第2の通信装置300に向けてデータ通信する場合、第1の通信装置100は、マルチホップ通信によりネットワーク2に接続する終端装置(第1の通信装置100と同等装置)を介して行うものとする。また、第1の通信装置100と第2の通信装置400との間のセキュリティ処理を行う場合も、第1の通信装置100は、上記終端装置を介して、代行装置200と通信を行なう。
第2の通信装置300は、ネットワーク上に存在するサービス提供サーバ等に搭載される通信装置である。
代行装置200は、第1の通信装置100と第2の通信装置300とが互いに認証をして鍵共有を行う処理を、第1の通信装置100に代わって行う通信装置である。
なお、第1の実施形態の説明において、gは、巡回群<G,・>の生成元であり、システム共通のパラメータである。特に、nは素数であるとする。また、nは巡回群Gの位数である。
整数xは、第1の通信装置100の秘密鍵であり、P_X=g^xは、第1の通信装置100の公開鍵である。
整数vは、第2の通信装置300の秘密鍵であり、P_V=g^vは、第2の通信装置300の公開鍵である。
整数dは、代行装置200の秘密鍵であり、P_D=g^dは、代行装置200の公開鍵である。
巡回群Gにおけるα・β∈Gは、αとβとを被演算子として巡回群Gで定義されている演算を行うことを意味する。また、α^β∈Gは、αを被演算子として巡回群Gで定義されている演算をβ回行うことを意味する。また、α/β∈Gは、αと巡回群で定義されたβの逆元とを被演算子とし、巡回群Gで定義されている演算を行うことを意味する。
例えば、巡回群Gが楕円曲線E上の有理点のなす群であった場合、α・β∈Gは楕円曲線E上でのαとβとの楕円加算を意味し、α^β∈Gはαの楕円スカラーβ倍算を意味し、α/β∈Gはαからβの楕円減算を意味する。
また例えば、巡回群Gが有限体の乗法群であった場合、α・β∈Gはαとβとの乗算を意味し、α^β∈Gはαのβ乗を意味し、α/β∈Gはαのβによる除算を意味する。またX_YはXに対してYを下付き文字表記する場合と同じである。
(B−1−2)第1の通信装置100の内部構成
図2は、第1の実施形態の第1の通信装置100の内部構成を示す内部構成図である。図2において、第1の通信装置100、送受信部101、共通鍵復号部103、秘密鍵情報記憶部102、及び代行パラメータ生成部104、公開鍵証明書取得部105を有する。
送受信部101は、所定の通信プロトコルを用いて任意の通信装置と通信するものである。
秘密鍵情報記憶部102は、公開鍵ペア(秘密鍵x、公開鍵P_X=g^x)のうち、少なくとも秘密鍵xを安全に記憶するものである。なお、秘密鍵情報記憶部102は、秘密鍵情報記憶部102に代行装置200との間で共有する暗号鍵情報を記憶するようにしても良い。
共通鍵復号部103は、送受信部101を介して、代行装置200から、第2の通信装置300との間で鍵共有した結果を受け取り、共通鍵情報Kを復号するものである。ここで、送受信部101により受信される第2の通信装置300との間の鍵共有の結果は、予め第1の通信装置100と代行装置200との間で共有してある暗号鍵と所定の暗号アルゴリズムにより暗号化されたものである。共通鍵復号部103は、上記暗号鍵及び暗号アルゴリズムにより、共通鍵情報Kを復号し、必要に応じて検証を行う。
代行パラメータ生成部104は、代行装置200が第1の通信装置100に代わって処理を行う認証・鍵共有処理に必要な情報(代行パラメータ情報)Tを生成するものである。
代行パラメータ生成部104は、公開鍵証明書取得部105から代行装置200の公開鍵情報P_Dと、第2の通信装置300の公開鍵情報P_Vとを受け取り、公開鍵情報P_D及びP_Vと、秘密鍵情報記憶部102の秘密鍵情報xとを用いて、式(1−1)に従って代行パラメータ情報Tを生成するものである。
Figure 0005333613
ただし、F(X)は、Gの元Xを定義域とし、1<a≦n−1を値域とする変換関数である。具体的には、Xが整数の場合はXをnで割った余りが0または1でない場合は、Xをnで割った余りをaとし、そうでない場合は適当な数を足すとする方法を適用し、Xが楕円曲線上の有理点である場合は、例えば参考文献1(Standards for Efficient Cryptography Group,“Elliptic Curve Cryptography”,SEC 1,May 2009)の記載技術により、Xをビット列に変換して、これを符号無し整数とみなして、nで割った余りが0又は1でない場合はaとし、そうでない場合は適当な数を足すとする方法を適用できる。
例えば、代行パラメータ生成部104は、第1の通信装置100の秘密情報xと、第2の通信装置の公開鍵情報P_Vとに基づいて、P_V^xを求める。このP_V^xを第1の共通鍵情報ともいう。
次に、代行パラメータ生成部104は、第1の通信装置100の秘密情報xと、代行装置200の公開鍵情報P_Dとに基づいて、P_D^xを求める。このP_D^xを第2の共通鍵情報ともいう。
さらに、代行パラメータ生成部104は、第1の共通鍵情報と第2の共通鍵情報とに基づいて、代行パラメータ情報Tを求める。
なお、上記より、代行パラメータ生成部104は、第1の共通鍵情報及び第2の共通鍵情報を求める第1の演算手段と、代行パラメータ情報を求める第2の演算手段として機能を有する。
また、代行パラメータ生成部104は、生成した代行パラメータTを送受信部101に与え、代行装置200に送信する。
公開鍵証明書取得部105は、任意の公開鍵証明書を取得することができ、取得した公開鍵証明書の署名を検証する機能を有する。
ここで、公開鍵証明書は、公開鍵と、その所有者の同定情報(その他に有効期間、発行者、署名アルゴリズムなどの情報も含む)と、それらの情報とに対する公開鍵基盤の認証局の秘密鍵でサインしたディジタル著署名で構成されるものである。公開鍵証明書は、一般的に利用される標準規格としてITU−T(International Telecommunication Union Telecommunication Standardization Sector)のX.509規格があり、これを適用できる。
公開鍵証明書取得部105は、公開鍵基盤の認証局の公開鍵を予め記憶しており、当該ディジタル署名情報を、記憶している公開鍵基盤の認証局の公開鍵を用いて所定の検証アルゴリズムを用いることにより検証することができる。
また、公開鍵証明書の取得方法は、特に限定されるものではなく、例えば送受信部101が公開鍵基盤の認証局から受信して取得してもよいし、また例えば、別の入力インターフェース(例えばUSBメモリデバイス、保守用機器など)を経由して取得しても良い。なお、この実施形態では、公開鍵証明書取得部103が、送受信部101により受信された公開鍵証明書を取得するものとする。
(B−1−3)代行装置200の内部構成
図3は、第1の実施形態の代行装置200の内部構成を示す内部構成図である。図3において、代行装置200は、送受信部201、秘密鍵情報記憶部202、代行パラメータ記憶部203、鍵共有パラメータ生成部204、共通鍵計算部205、チャレンジ情報生成部206、レスポンス検証部207、レスポンス生成部208、公開鍵証明書取得部209を有する。
送受信部201は、所定の通信プロトコルを用いて、第1の通信装置100と第2の通信装置300と通信するものである。
秘密鍵情報記憶部202は、公開鍵ペア(秘密鍵d、公開鍵P_D=g^d)のうち、少なくとも秘密鍵dを安全に記憶するものである。なお、秘密鍵情報記憶部202は、第1の通信装置100との間で共有する暗号鍵情報を記憶するようにしても良い。
代行パラメータ記憶部203は、第1の通信装置100が生成した代行パラメータ情報Tを記憶するものである。第1の実施形態では、第1の通信装置100との間の通信路を経由して代行パラメータ情報Tを受信することとするが、この代行パラメータ情報Tを、別の入力インターフェース(例えばUSBメモリや保守用機器など)を経由して設定してもかまわない。代行パラメータ記憶部203は、代行パラメータ情報を漏洩しないよう安全に管理する必要はない。
鍵共有パラメータ生成部204は、鍵共有パラメータrを生成し、生成した鍵共有パラメータrを共通鍵計算部205及び送受信部201に与えるものである。例えば、鍵共有パラメータ生成部104は、(擬似)乱数生成機能を有し、ランダムに生成した乱数情報をrとする。
なお、鍵共有パラメータは、代行装置200が生成して、代行装置200が第2の通信装置300に送信するものとして説明するが、第2の通信装置300が生成して、第2の通信装置300が代行装置200に送信するようにしてもよい。また、第2の通信装置300及び代行装置200の両装置が生成して交換し、例えばハッシュ関数によって共有パラメータを生成しても良い。
共通鍵計算部205は、代行パラメータ記憶部203から読み出した代行パラメータ情報Tと、秘密鍵情報記憶部202から読み出した秘密鍵情報dと、生成した鍵共有パラメータrと、公開鍵証明書取得部209から読み取った第1の通信装置の公開鍵情報P_Xとを用いて、式(1−2)及び式(1−3)により、共通鍵Kを求めるものである。ただし、a^(−1)は、有限体Fの乗法に関する逆元である。
Figure 0005333613
Figure 0005333613
チャレンジ情報生成部206は、共通鍵に基づくチャレンジ&レスポンス認証におけるチャレンジ情報r_Dを生成し、チャンレンジ情報r_Dをレスポンス検証部207及び送受信部201に与えるものである。チャレンジ情報生成部206は、送受信部201を介して、チャレンジ情報r_Dを第2の通信装置300に送信する。
ここで、共通鍵に基づくチャレンジ&レスポンス認証方式は、種々の方式が存在するが、ここでは例としてランダムビット列をチャレンジ情報とし、共通鍵Kを用いて暗号化した暗号文を正しく作れるかを見る方式を例として説明する。そこでチャレンジ情報生成部206は、ランダムなビット列m_Dを代行装置200のチャレンジ情報r_Dとして第2の通信装置300に送信する。
レスポンス検証部207は、第2の通信装置300から受信したレスポンス情報R_1と、チャレンジ情報生成部206が生成したチャレンジ情報r_Dとに基づいて、当該レスポンス情報の正当性を検証するものである。
レスポンス情報の具体的な検証方法としては、例えば、レスポンス検証部207が、チャレンジ情報r_D(=m_D)を、共通鍵Kを用いて所定の暗号化方式(例えばAES(Advanced Encryption Standards)−128)で暗号化し、その暗号化したものと、第2の通信装置300から送られてきたレスポンス情報R_1とが一致するならば検証成功とし、そうでなければ失敗とする。これは、レスポンス情報R_1が、第2の通信装置300において共通鍵Kを用いて暗号化されているからである。
レスポンス生成部208は、第2の通信装置300からチャレンジ情報r_Vを受信し、レスポンス情報R_2を生成して、生成したレスポンス情報R_2を送受信部201を介して第2の通信装置300に送信する。
具体的には、レスポンス生成部208は、第2の通信装置300から受信したチャレンジ情報m_Vを、共通鍵Kを用いて所定の暗号化方式で暗号化し、その暗号化した結果をレスポンス情報R_2として生成する。
公開鍵証明書取得部209は、任意の公開鍵証明書を取得することができ、取得した公開鍵証明書の署名を検証するものである。
(B−1−4)第2の通信装置300の内部構成
図4は、第1の実施形態の第2の通信装置300の内部構成を示す内部構成図である。図4において、第2の通信装置300は、送受信部301、秘密鍵情報記憶部302、共通鍵計算部303、チャレンジ情報生成部304、レスポンス検証部305、レスポンス生成部306、公開鍵証明書取得部307を有する。
送受信部301は、所定の通信プロトコルを用いて、少なくとも代行装置200と通信するものである。
秘密鍵情報記憶部302は、公開鍵基盤(PKI)の認証届から発行された公開鍵ペアのうち、少なくとも秘密鍵を安全に記憶するものである。
共通鍵計算部303は、公開鍵証明書取得部307から読み取った第1の通信装置の公開鍵情報P_X、秘密鍵情報記憶部302から読み取った秘密鍵情報v、送受信部301から受信した鍵共有パラメータrとを用いて、式(1−4)により共通鍵Kを求めるものである。
Figure 0005333613
チャレンジ情報生成部304は、共通鍵に基づくチャレンジ&レスポンス認証におけるチャレンジ情報r_Vを生成し、生成したチャンレンジ情報r_Vをレスポンス検証部305及び送受信部301に与えるものである。チャレンジ情報生成部304は、送受信部301を介して、チャンレンジ情報r_Vを代行装置200に送信する。
具体的に、チャレンジ情報生成部304は、ランダムなビット列m_Vを第2の通信装置300のチャレンジ情報r_Vとして代行装置200に送信するものとする。
レスポンス検証部305は、代行装置200から受信したレスポンス情報R_2と、チャレンジ情報生成部304が生成したチャレンジ情報r_V(=m_V)から、当該レスポンス情報の正当性を検証する。
レスポンス情報の具体的な検証方法として、例えば、レスポンス検証部305は、チャレンジ情報m_Vを、共通鍵Kを用いて所定の暗号化方式で暗号化し、その暗号化したものと、代行装置200から送られてきたレスポンス情報R_2とが一致するならば検証成功とし、そうでなければ失敗とする。
レスポンス生成部306は、代行装置200からチャレンジ情報r_Dを受信し、レスポンス情報R_1を生成して、生成したレスポンス情報R_1を代行装置200に送信する。
具体的には、レスポンス生成部306は、代行装置200から受信したチャレンジ情報r_Dを、共通鍵Kを用いて所定の暗号化方式で暗号化した結果をレスポンス情報R_1として代行装置に送信する。
公開鍵取得部307は、任意の公開鍵証明書を取得することができ、取得した公開鍵証明書の署名を検証する機能を有する。
(B−2)第1の実施形態の動作
図5は、第1の実施形態の鍵共有・認証処理の動作を示すシーケンス図である。
(B−2−1)準備ステップ
(S100)第1の通信装置100において、代行パラメータ生成部104が代行パラメータ情報Tを生成し、生成した代行パラメータ情報Tを代行装置200に送信する。
ここで、代行パラメータ情報Tの生成方法の一例を説明する。まず、第1の通信装置100において、公開鍵証明書取得部105が、送受信部101を介して、代行装置200の公開鍵証明書CERT_Dと、第2の通信装置300の公開鍵証明書CERT_Vとを受け取り、代行装置200の公開鍵情報P_Dと、第2の通信装置300の公開鍵情報P_Vとを取得して検証する。
次に、代行パラメータ生成部104は、公開鍵証明書取得部105から取得した代行装置200の公開鍵情報P_D及び第2の通信装置300の公開鍵情報P_Vと、秘密鍵情報記憶部102の秘密鍵情報xとを用いて、式(1−1)により代行パラメータ情報Tを求める。また、代行パラメータ生成部104は、生成した代行パラメータ情報Tを送受信部101に与えて、代行装置200に送信させる。
このとき、代行装置200は、第1の通信装置100から受信した代行パラメータ情報Tを、代行パラメータ記憶部203に記憶する。
(B−2−2)鍵共有・認証ステップ
(S101)代行装置200において、鍵共有パラメータ生成部204は、第2の通信装置300との間の鍵共有に必要な整数r(2≦r≦n−1)をランダムに生成する。鍵共有パラメータ生成部204は、生成した整数rを鍵共有パラメータとして送受信部201に与え、鍵共有パラメータrを第2の通信装置300に送信させる。
(S102)代行装置200において、共通鍵計算部205は、代行パラメータ記憶部203から代行パラメータ情報Tを読み取り、秘密鍵情報記憶部202から秘密鍵情報dを読み出し、ステップS101で生成した鍵共有パラメータrと、公開鍵証明書取得部209から読み取った第1の通信装置100の公開鍵情報P_Xとを受け取る。そして、共通鍵計算部205は、代行パラメータ情報T、鍵共有パラメータr、秘密鍵情報d、第1の通信装置100の公開鍵情報P_Xを用いて、式(1−2)及び式(1−3)により、共通鍵情報Kを求める。
(S103)一方、第2の通信装置300には、代行装置200から共通鍵パラメータrが与えられる。共通鍵計算部303は、代行装置200から受信した共通鍵パラメータrと、公開鍵情報証明書取得部307からの第1の通信装置100の公開鍵情報P_Xと、秘密鍵情報記憶部302からの秘密鍵情報vとを用いて、式(1−4)により共通鍵情報Kを求める。
(S104)ここで、第2の通信装置300が、公開鍵P_Vに対応する秘密鍵情報vを正しく持っていれば、代行装置200の共通鍵計算部205で計算した鍵Kと、第2の通信装置300が生成した鍵Kは同じ鍵となっているはずである。
逆に、第2の通信装置300から見れば、鍵共有した相手は第1の通信装置100であり、第1の通信装置100の公開鍵P_Xに対応する秘密鍵情報Xを正しく持っていれば、第2の通信装置300の共通鍵計算部303で計算した鍵Kと、共有相手(実際は代行装置200)が計算した鍵Kとは同じ鍵となっているはずである。
そこで、共通鍵に基づくチャレンジ&レスポンス認証を行うことによって、代行装置200及び第2の通信装置が同じ鍵Kを共有できているかを互いに確認する(S104)。
共通鍵に基づくチャレンジ&レスポンスの方式は、いくつかバリエーションがあり、いずれの方式に限定されるものではなく、種々の方式を広く適用することができる。
第1の実施形態では、次のような方式を例示する。まず、代行装置200が第1のチャレンジ情報としてランダムなビット列r_Dを作成し(S11)、代行装置200がビット列r_Dを第2の通信装置300に送信する(S12)。
第2の通信装置300において、レスポンス生成部306は、代行装置200からビット列r_Dを受信すると、所定の対称鍵暗号アルゴリズムを用いてビット列r_Dを、鍵をKとして暗号化した結果を第1のレスポンス情報R_1とする(S13)。
第2の通信装置300において、チャレンジ情報生成部304は、ランダムに第2のチャレンジ情報r_Vを生成し(S14)、レスポンス情報R_1と第2のチャンレンジ情報r_Vとを代行装置200に送信する(S15)。
代行装置200において、第2の通信装置300から第1のレスポンス情報R_1及び第2のチャレンジ情報r_Vを受信すると、まず、レスポンス検証部207は、チャレンジ情報生成部206が生成した第1のチャレンジ情報r_Dを、鍵Kを用いて所定の対称鍵暗号アルゴリズムで暗号化する。そして、レスポンス検証部207は、暗号化した結果と、第2の通信装置300から受信した第1のレスポンス情報R_1とを比較して一致していれば認証成功とする。そうでなければ認証失敗として処理を中断する(S16)。
認証成功であれば、受信した第2のチャレンジ情報r_Vを、鍵Kを用いて所定の対称鍵暗号アルゴリズムで暗号化した結果を、第2のレスポンス情報R_2として第2の通信装置に送信する(S17)。
第2の通信装置300において、第2のレスポンス情報R_2を受信すると、レスポンス検証部305は、第2のチャレンジ情報r_Vを、鍵Kを用いて所定の対称鍵暗号アルゴリズムで暗号化し、その暗号化した結果と、第2のレスポンス情報R_2とを比較して、一致していれば認証成功とし、そうでなければ認証失敗として鍵Kを破棄して処理を中断する(S18)。
(S105)代行装置200は、鍵情報Kを第1の通信装置100に安全に送信する。安全に送信する方法としては、例えば、代行装置200が、第1の通信装置100との間で予め共有している暗号鍵で鍵情報Kを暗号化して送信する方法等を適用できる。第1の通信装置100において、共通鍵復号部103は鍵Kを安全に取得する。
(S106)なお、任意で第1の通信装置100は、鍵Kの正当性を検証してもよい。すなわち、第2の通信装置200の公開鍵情報P_Vと、自らの秘密鍵情報Xと、鍵共有パラメータrとを用いて、式(1−5)の計算結果と代行装置200から受信した鍵情報Kとが一致するかどうかを評価する。一致すれば検証成功であり、そうでなければ検証失敗である。
Figure 0005333613
(B−3)第1の実施形態の効果
以上のように、第1の実施形態によれば、以下の効果を奏する。
代行装置200が認証・鍵共有代行処理に利用する情報は、式(1−1)の計算結果である代行パラメータ情報Tと自らの秘密情報dと公開鍵情報及び鍵共有パラメータrである。代行パラメータ情報Tから第1の通信装置の秘密鍵xを得るには離散対数問題(巡回群Gが楕円曲線上の有理点がなす巡回群の場合は楕円曲線離散対数問題)を解かなければならないが、現在のところ本問題を効率的に解く方法は見つかっていないため、代行装置200が秘密鍵xを取得することはできない。また代行パラメータ情報Tが第三者に漏洩したとしても、この代行パラメータ情報Tを使って代行処理をするには代行装置200の秘密鍵dが必要であるので、秘密鍵dが漏洩しない限りは、代行装置200以外の装置が代行パラメータTを使って代行処理を行うことはできない。
また、第2の通信装置300が共通鍵計算部303で共通鍵Kを計算する際必要となる情報は、鍵共有パラメータ情報rと、第1の通信装置100の公開鍵情報P_Xと、自らの秘密鍵情報vのみであり、認証・鍵共有時に通信している相手が第1の通信装置100であるか又は代行装置200であるかによって処理内容が代わることはない。
また、第1の通信装置100が第2の通信装置300との間での認証・鍵共有の代行を可能とする代行パラメータ情報Tを、代行装置200が勝手に第1の通信装置100と別の通信装置(第3の通信装置)との間での認証・鍵共有の代行パラメータに変更するためには、第1の通信装置の秘密情報xが必要となるが、代行装置200は第1の通信装置の秘密情報を知ることができないのでこれはできない。
よって、認証・鍵共有の3条件を満たす。
(C)第2の実施形態
次に、本発明の代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システムの第2の実施形態について、図面を参照しながら詳細に説明する。
第2の実施形態では、公開鍵証明書を必要としないID(Identity)情報に基づく公開鍵基盤上での認証・鍵共有代行方式を説明する。このため、公開鍵証明書を取得するのが困難な環境にある場合でも公開鍵を計算して求めることができるようになる。代わりに、秘密鍵生成局がID情報(例えば、メールアドレスなど)とマスター秘密鍵とを用いて、各ユーザの秘密鍵情報を計算し、各ユーザに秘密裏に配送する必要がある。
(C−1)第2の実施形態の構成
第2の実施形態のシステムは、第1の実施形態のシステム1と同じ構成であるため、第2の実施形態においても、図1を用いて説明する。
また、第2の実施形態では、第1の通信装置100に代えて第1の通信装置400と表記し、第2の通信装置300に代えて第2の通信装置600と表記し、代行装置200に代えて代行装置500と表記する。
第2の実施形態の説明において、sは秘密鍵生成局のマスター秘密鍵である。F(ID)はID情報を巡回群G_1の元へ写像するマッピング関数である。e(・,・)は巡回群G_1の2つの元を巡回群G_2の元に写像する双線形写像e:G1XG1→G2である。nは巡回群G_1の位数(素数)である。
P_X=F(ID_X)∈G_1が第1の通信装置400の公開鍵であり、P_X^sが第1の通信装置400の秘密鍵である。
P_D=F(ID_D)∈G_1が代行装置500の公開鍵であり、P_D^sが第2の通信装置の秘密鍵である。
P_V=F(ID_V)∈G_1が第2の通信装置600の公開鍵であり、PV^sが第2の通信装置の秘密鍵である。
なお、関数F(ID)の構成については、群G_1が整数である場合には、例えばIDを適当なハッシュ関数よってビット列に変換し、このビット列を符号なしの整数とみなして、nで割った余りをIDの対応する元とする方法を適用できる。
また、群G_1が楕円曲線上の点である場合には、例えば参考文献2(D.Boneh and F.Franklin,“Identity-Based Encryption from the Weil pairing”,CRYPTO 2001,LNCS2139,Springer-Verlag,pp.213-229,2001)に記載されている一構成法を適用することができる。
(C−1)第2の実施形態の構成
(C−1−1)第1の通信装置400の内部構成
図6は、第2の実施形態の第1の通信装置400の内部構成を示す内部構成図である。図6において、第1の通信装置400は、送受信部401、共通鍵復号部403、秘密鍵情報記憶部402、代行パラメータ生成部404、マッピング関数計算部405を有する。
送受信部401、第1の実施形態の第1の通信装置100の送受信部101と同様に、所定の通信プロトコルを用いて通信処理を行うものである。
秘密鍵情報記憶部402は、秘密鍵情報P_X^sを安全に記憶するものである。なお、秘密鍵情報記憶部402は、代行装置500との間で共有する暗号鍵情報を記憶するようにしても良い。
共通鍵復号部403は、送受信部401を介して、代行装置500から、第2の通信装置600との間で鍵共有した結果を受け取り、共通鍵情報Kを復号するものである。ここで、送受信部401により受信される第2の通信装置600との間の鍵共有の結果は、予め第1の通信装置400と代行装置500との間で共有してある暗号鍵と所定の暗号アルゴリズムにより暗号化されたものである。共通鍵復号部403は、上記暗号鍵及び暗号アルゴリズムにより、共通鍵情報Kを復号し、必要に応じて検証を行う。
代行パラメータ生成部404は、代行装置500が後述する認証・鍵共有処理を第1の通信装置400に代わって処理するのに必要な代行パラメータ情報Tを生成するものである。
代行パラメータ生成部404は、マッピング関数計算部405から、代行装置200の公開鍵情報P_Dと、第2の通信装置600の公開鍵情報P_Vとを受け取り、これら公開鍵情報P_D及びP_Vと、第1の通信装置の秘密鍵情報P_X^sとを用いて、次式(2−1)により、代行パラメータ情報Tを求める。
Figure 0005333613
代行パラメータ生成部404は、生成した代行パラメータ情報Tを、送受信部401を介して、代行装置500に送信する。
マッピング関数計算部405は、マッピング関数F(ID)に、ID情報として「ID」を入力してマッピング関数を計算するものである。マッピング関数計算部405は、マッピング関数を計算して、代行装置200の公開鍵情報P_Dと、第2の通信装置600の公開鍵情報P_Vとを求めて、これらを代行パラメータ生成部404に与える。
(C−1−2)代行装置500の内部構成
図7は、第2の実施形態の代行装置500の内部構成を示す内部構成図である。図7において、代行装置500は、送受信部501、秘密鍵情報記憶部502、代行パラメータ記憶部503、共通鍵計算部504、鍵共有パラメータ生成部505、チャレンジ情報生成部506、レスポンス検証部507、レスポンス生成部508、マッピング関数計算部509を有する。
送受信部501は、チャレンジ情報生成部506、レスポンス検証部507、レスポンス生成部508は、それぞれ第1の実施形態における代行装置200の、送受信部201、チャレンジ情報生成部206、レスポンス検証部207、レスポンス生成部208と同じ機能を有するものであるので、第2の実施形態での詳細な説明は省略する。
秘密鍵情報記憶部502は、秘密鍵P_D^sを安全に記憶するものである。また、秘密鍵情報記憶部502は、第1の通信装置400との間で共有する暗号鍵情報を記憶するようにしても良い。
代行パラメータ記憶部503は、第1の通信装置400により生成された代行パラメータ情報Tを記憶するものである。なお、この実施形態で、送受信部501が、第1の通信装置400との間の通信路を経由して、代行パラメータ情報Tを受信する場合を例示するが、この代行パラメータ情報Tを、別の入力インターフェース(例えばUSBメモリや保守用機器など)を経由して設定してもかまわない。代行パラメータ記憶部503は、代行パラメータ情報を漏洩しないよう安全に管理する必要はない。
鍵共有パラメータ生成部504は、鍵共有パラメータを生成し、生成した鍵共有パラメータを、送受信部501及び共通鍵計算部504に与えるものである。ここで、鍵共有パラメータ生成部504は、例えば(擬似)乱数生成機能を有し、ランダムな整数を鍵共有パラメータとしても良い。なお、鍵共有パラメータは、この実施形態では、代行装置500が生成して第2の通信装置600に通知するが、第2の実施装置600が生成して代行装置400に通知する等としてもよい。
共通鍵計算部505は、代行パラメータ記憶部503から読み取った代行パラメータ情報Tと、秘密鍵情報記憶部502から読み取った秘密鍵情報P_D^sと、生成した鍵共有パラメータrと、マッピング関数計算部509から読み取った第1の通信装置400の公開鍵情報P_Xとを用いて、式(2−2)及び式(2−3)により、共通鍵Kを求めるものである。
Figure 0005333613
Figure 0005333613
マッピング関数計算部509は、マッピング関数F(ID)に、ID情報として「ID」を入力してマッピング関数を計算するものである。マッピング関数計算部509は、マッピング関数により第1の通信装置400の公開鍵情報P_Xを求めて共通鍵計算部504に与える。
(C−1−3)第2の通信装置600の内部構成
図8は、第2の実施形態の第2の通信装置600の内部構成を示す内部構成図である、図8において、第2の通信装置600は、送受信部601、秘密鍵情報記憶部602、共通鍵計算部603、チャレンジ情報生成部604、レスポンス検証部605、レスポンス生成部606、マッピング関数計算部607を有する。
送受信部601は、チャレンジ情報生成部604、レスポンス情報検証部605、レスポンス情報生成部606は、それぞれ第1の実施形態の第2の通信装置300の、送受信部301、チャレンジ情報生成部304、レスポンス情報検証部305、レスポンス情報生成部306と同じ機能を有するものであるため、第2の実施形態での詳細な説明は省略する。
秘密鍵情報記憶部602は、公開鍵基盤(PKI)から発行された公開鍵ペアのうち、少なくとも秘密鍵を安全に記憶するものである。
共通鍵計算部603は、マッピング関数計算部607により計算された第1の通信装置400の公開鍵情報P_Xと、秘密鍵情報記憶部602から読み取った秘密鍵情報P_V^sと、送受信部601により受信された鍵共有パラメータrとを用いて、式(2−4)により共通鍵Kを求めるものである。
Figure 0005333613
マッピング関数計算部607は、マッピング関数F(ID)に、ID情報として「ID」を入力してマッピング関数を計算するものである。マッピング関数計算部607は、マッピング関数により第1の通信装置400の公開鍵情報P_Xを求めて共通鍵計算部603に与える。
(C−2)第2の実施形態の動作
図9は、第2の実施形態の鍵共有・認証処理の動作を示すシーケンス図である。
(C−2−1)準備ステップ
(S200)まず、第1の通信装置500は、代行装置600に与える代行パラメータ情報Tを生成し、生成した代行パラメータ情報Tを代行装置500に送信する。
ここで、代行パラメータ情報Tの生成方法が、第1の実施形態と異なるので、以下では、第2の実施形態における代行パラメータ情報Tの生成方法の一例を説明する。
まず、第1の通信装置400において、マッピング関数計算部405が、マッピング関数F(ID)に、第2の通信装置600及び代行装置500のそれぞれのIDを入力して、代行装置500の公開鍵情報P_D及び第2の通信装置600の公開鍵情報P_Vを計算する。
代行パラメータ生成部404は、マッピング関数計算部405により計算された、代行装置500の公開鍵情報P_D及び第2の通信装置600の公開鍵情報P_Vと、秘密鍵情報記憶部402から読み出した秘密鍵情報P_X^sとを用いて、式(2−1)により代行パラメータ情報Tを求める。そして、代行パラメータ生成部404は、生成した代行パラメータ情報Tを送受信部401を介して代行装置500に送信する。
このとき、代行装置500は、第1の通信装置400から受信された代行パラメータ情報Tを、代行パラメータ記憶部503に記憶する。
(C−2−2)鍵共有・認証ステップ
(S201)代行装置500において、鍵共有パラメータ生成部504は、第2の通信装置600との鍵共有に必要な整数r(2≦r≦n−1)をランダムに生成する。第2の実施形態では、このランダムな整数rを鍵共有パラメータとする。
(S202)代行装置500において、共通鍵計算部505は、代行パラメータ記憶部503から代行パラメータ情報Tを読み取り、秘密鍵情報記憶部502から秘密鍵情報P_D^sを読み出し、ステップS201で生成した鍵共有パラメータと、マッピング関数計算部509から読み取った第1の通信装置の公開鍵情報P_Xとを用いて、式(2−2)及び式(2−3)により共通鍵情報Kを求める。
(S203)一方、第2の通信装置600において、共通鍵計算部603は、代行装置500から受信した共通鍵パラメータと、マッピング関数計算部607により計算された第1の通信装置400の公開鍵情報P_Xと、秘密鍵情報記憶部602から読み出した秘密鍵情報とを用いて、式(2−4)により共通鍵情報Kを求める。
(S204)ここで、第2の通信装置600が、公開鍵P_Vに対応する秘密鍵情報P_V^sを正しく持っていれば、代行装置500の共通鍵計算部505で計算した鍵Kと、第2の通信装置600が生成した鍵Kとは同じ鍵となっているはずである。
逆に、第2の通信装置600から見れば、鍵共有した相手は第1の通信装置400であり、第1の通信装置400の公開鍵P_Xに対応する秘密鍵情報P_X^sを正しく持っていれば、第2の通信装置600の共通鍵計算部603で計算した鍵Kと、共有相手(実は代行装置500)が計算した鍵Kとは同じ鍵となっているはずである。
そこで、共通鍵に基づくチャレンジ&レスポンス認証を行うことによって代行装置500と第2の通信装置が同じ鍵Kを共有できているかを互いに確認する(S204)。この方法は、第1の実施形態で説明したステップS104と同じであるので、第2の実施形態での詳細な説明は省略する。
(S205)代行装置500は、鍵情報Kを第1の通信装置400に安全に送信する。安全に送信する方法としては、例えば、代行装置500が、第1の通信装置400との間で予め共有している暗号鍵で鍵情報Kを暗号化して送信する方法等を適用できる。第1の通信装置400において、共通鍵復号部403は鍵Kを安全に取得する。
(S206)なお、任意で第1の通信装置400は、鍵Kの正当性を検証してもよい。すなわち、第2の通信装置600の公開鍵情報P_Vと、自らの秘密鍵情報P_X^sと、鍵共有パラメータrとを用いて、以下の式(2−5)により計算する。その計算結果と、代行装置500から受信した鍵情報Kとが一致するかどうかを評価する。一致すれば検証成功であり、そうでなければ検証失敗である。
Figure 0005333613
(C−3)第2の実施形態の効果
以上のように、第2の実施形態の認証・鍵共有処理は、第1の実施形態の効果と同様の論理で、認証・鍵共有の3条件を満たす。
また、第2の実施形態によれば、第1の実施形態の効果に加えて、さらにIDに基づく公開鍵基盤を利用したことにより公開鍵証明書を取得する必要が無くなる。このため、例えば第1の通信装置、代行装置、第2の通信装置のいずれかが、公開鍵証明書を取得するのが困難である環境にあっても認証・鍵共有の代行を行うことが可能となる。
(D)他の実施形態
(D−1)
上述した第1及び第2の実施形態において、代行情報Tを第1の通信装置が代行装置に預託するものとして説明したが、第1の通信装置には直接秘密鍵情報を持たせず、第1の通信装置の管理者が第1の通信装置の秘密鍵を用いて直接代行情報Tを計算し、代行装置に渡すようにしても良い。
また、鍵共有や認証と共に、IPsecやTLS等の暗号通信路確立の代行を行っても良い。その際、代行装置が第1の通信装置に送る処理結果には、利用する鍵、や暗号方式等の暗号通信路に関する情報を含んでも良い。
1…システム、
100及び400…第1の通信装置、
101及び401…送受信部、102及び402…秘密鍵情報記憶部、
103及び403…共通鍵復号部、
104及び404…代行パラメータ生成部、
105…公開鍵証明書取得部、405…マッピング関数計算部、
200及び500…代行装置、
201及び501…送受信部、202及び502…秘密鍵情報記憶部、
203及び503…代行パラメータ記憶部、
204及び505…鍵共有パラメータ生成部、
205及び504…共通鍵計算部、
206及び506…チャレンジ情報生成部、
207及び507…レスポンス検証部、
208及び508…レスポンス生成部、
209…公開鍵証明書取得部、509…マッピング関数計算部、
300及び600…第2の通信装置、
301及び601…送受信部、302及び602…秘密鍵情報記憶部、
303及び603…共通鍵計算部、
304及び604…チャレンジ情報生成部、
305及び605…レスポンス検証部、
306及び606…レスポンス生成部、307…公開鍵証明書取得部、
607…マッピング関数計算部。

Claims (13)

  1. 秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、第2の公開鍵情報を記憶する第3の記憶手段と、秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を求める第1の演算手段とを有する代行パラメータ生成装置において、
    上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第2の記憶手段に記憶される上記第1の公開鍵情報とに基づいて、上記第1の演算手段により得られた情報を第1の共通鍵情報とし、上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第3の記憶手段に記憶される上記第2の公開鍵情報とに基づいて、上記第1の演算手段により得られた情報を第2の共通鍵情報として、上記第1の共通鍵情報と上記第2の共通鍵情報とに基づいて、鍵共有処理を代行させる代行装置に与える代行パラメータ情報を求める第2の演算手段と、
    上記第2の演算手段による演算結果を出力する出力手段と
    を備えることを特徴とする代行パラメータ情報生成装置。
  2. 上記第1の演算手段からの上記共通鍵情報を整数に変換する整数変換手段を更に備え、
    上記第1の共通鍵情報は、gを巡回群<G,・>の生成元とし、整数xを上記第1の記憶手段に記憶されている上記秘密鍵情報とし、ある整数vに対してP_V=g^vが上記第2の記憶手段に記憶されている上記第1の公開鍵情報であるとしたとき、P_V^xで表され、
    上記第2の共通鍵情報は、ある整数dに対してP_D=g^dが上記第3の記憶手段に記憶されている上記第2の公開鍵情報であるとしたとき、P_D^xで表され、
    上記第2の演算手段は、上記第1の共通鍵情報と、上記整数変換手段により上記第2の共通鍵情報を整数に変換した結果aとに基づいて、上記代行パラメータ情報Tを(P_V^x)^aとして算出するものである
    ことを特徴とする請求項1に記載の代行パラメータ生成装置。
  3. 上記第1の記憶手段に記憶されている上記秘密鍵情報は、SをIDベース暗号における秘密鍵生成局のマスター秘密鍵とし、F(ID)をID情報を巡回群G_1の元への写像するマッピング関数としたとき、あるID情報ID_Xの写像P_X=F(ID_X)に対してP_X^sで表され、
    上記第1の共通鍵情報は、e(・,・)を巡回群G1の2つの元を巡回群G_2の元に写像する双線形写像e:G1×G1→G2とし、あるID情報ID_Vに対してP_V=F(ID_V)が上記第2の記憶手段に記憶されている上記第1の公開鍵情報であるとしたとき、e(P_X^s,P_V)で表され、
    上記第2の共通鍵情報は、あるID情報ID_Dに対してP_D=F(ID_D)が上記第3の記憶手段に記憶されている上記第2の公開鍵情報であるとしたとき、e(P_X^s,P_D)で表され、
    上記第2の演算手段は、上記代行パラメータ情報をT=e(P_X^s,P_V)^e(P_X^s,P_D)として算出するものである
    ことを特徴とする請求項1に記載の代行パラメータ生成装置。
  4. 秘密鍵情報を記憶する第1の記憶手段と、公開鍵情報を入力する入力手段と、第1の公開鍵情報を記憶する第2の記憶手段と、秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を計算する第1の演算手段と、乱数情報を記憶する第3の記憶手段とを有する代行装置において、
    被代行装置の鍵共有処理に係る代行パラメータ情報を記憶する第4の記憶手段と、
    上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第2の記憶手段に記憶される上記第1の公開鍵情報とに基づいて上記第1の演算手段により得られた第1の共通鍵情報と、上記第3の記憶手段に記憶されている上記代行パラメータ情報とに基づいて、第2の共通鍵情報とを求める第2の演算手段と、
    上記第2の演算手段による演算結果を出力する出力手段と
    を備えることを特徴とする代行装置。
  5. 上記第1の演算手段からの上記共通鍵情報を整数に変換する整数変換手段を更に備え、
    上記第1の共通鍵情報は、gを巡回群<G,・>の生成元とし、整数dを第1の記憶部に記憶されている秘密鍵情報とし、ある整数Xに対してP_X=g^xを上記第2の記憶手段に記憶されている上記第1の公開鍵情報であるとしたとき、P_X^dで表され、
    上記第2の演算手段は、
    上記第3の記憶手段に記憶されている上記乱数情報をrとし、上記第4の記憶手段に記憶されている上記代行パラメータ情報をTとし、a^(−1)を有限体Fの乗法群におけるaの逆元としたとき、上記整数変換手段により上記第1の公開鍵情報を整数に変換した値aと、上記第3の記憶手段に記憶されている上記乱数情報rと、上記第4の記憶手段に記憶されている代行パラメータ情報Tとに基づいて、上記第2の共通鍵情報Kを(T^(a^(−1)))^rとして算出するものである
    ことを特徴とする請求項4に記載の代行装置。
  6. 上記第1の共通鍵情報は、
    sを秘密鍵生成局のマスター秘密鍵とし、F(ID)をID情報を巡回群G_1の元への写像するマッピング関数とし、e(・,・)を巡回群G1の2つの元を巡回群G_2の元に写像する双線形写像e:G1×G1→G2とし、あるID情報ID_Dの写像P_D=F(ID_D)に対してP_D^sを上記第1の記憶手段に記憶されている上記秘密健情報とし、ID情報ID_Xに対してP_X=F(ID_X)が上記第2の記憶手段に記憶されている上記第1の公開鍵情報としたとき、e(P_X,P_D^s)で表され、
    上記第2の演算手段は、
    rを上記第3の記憶手段に記憶されている乱数情報とし、Tを上記第4の記憶手段に記憶されている代行パラメータ情報としたとき、上記第1の共通鍵情報e(P_X,P_D^s)と、上記乱数情報rと、上記代行パラメータ情報Tとに基づいて、上記第2の共通鍵情報Kを(T^(e(P_X,P_D^s)^(1)))^rとして算出するものである
    ことを特徴とする請求項4に記載の代行装置。
  7. データを送受信する送受信手段と、
    上記出力手段により出力された共通鍵情報を用いて共通鍵に基づくチャレンジ・アンド・レスポンス認証を行う認証手段と、
    を更に備えることを特徴とする請求項4〜6のいずれかに記載の代行装置。
  8. 第1の通信装置と第2の通信装置とが鍵共有をする場合に、上記第1の通信装置に代わって代行装置が上記第2の通信装置との鍵共有処理を代行する通信システムにおいて、
    上記代行装置は、予め第2の通信装置との鍵共有処理に係る代行パラメータ情報を記憶しておき、
    上記代行装置及び上記第2の通信装置は、上記第1の通信装置と上記第2の通信装置との間で鍵共有の必要が生じた場合には、上記代行装置と上記第2の通信装置との間で乱数情報を交換し、
    上記第2の通信装置は、上記乱数情報と、上記第1の通信装置の公開鍵情報と上記第2の通信装置の秘密鍵情報とに基づいて共通鍵情報を求め、
    上記代行装置は、上記乱数情報と上記代行パラメータ情報と上記第1の通信装置の公開鍵情報と上記代行装置の秘密鍵情報とに基づいて共通鍵情報を求め、
    上記代行装置が、求めた上記共通鍵情報を上記第1の通信装置に送信する
    ことを特徴とする通信システム。
  9. gを巡回群<G、・>の生成元とし、整数xを上記第1の通信装置の秘密鍵情報とし、P_X=g^xを上記第1の通信装置の公開鍵情報とし、整数vを上記第2の通信装置の秘密鍵情報とし、P_V=g^vを上記第2の通信装置の公開鍵情報とし、整数dを上記代行装置の秘密鍵情報とし、P_D=g^dを上記代行装置の公開鍵情報とするとき、
    上記代行装置及び上記第2の通信装置は、上記共通鍵情報をP_D^xで求め、求めた上記共通鍵情報P_D^xを整数に変換した結果aとしたとき、上記代行パラメータ情報Tを(P_V^x)^aで求め、
    上記代行装置は、上記乱数情報をrとしたとき、上記乱数情報rと、上記代行パラメータ情報Tと、上記第1の通信装置の公開鍵情報P_Xと上記代行装置の秘密鍵情報dとに基づく上記第1の通信装置との共通鍵情報P_X^dを整数に変換した結果aと、に基づいて共通鍵情報Kを(T^(a^(−1)))^rとして求め、
    第2の通信装置は、上記乱数情報rと、上記第1の通信装置の公開鍵情報P_Xと、上記第2の通信装置の秘密鍵情報vとに基づいて上記共通鍵情報KをP_X^vとして求める
    ことを特徴とする請求項8に記載の通信システム。
  10. sを秘密鍵生成局のマスター秘密鍵とし、F(ID)をID情報を第1の巡回群G_1の元への写像するマッピング関数とし、e(・,・)を巡回群G1の2つの元を第2の巡回群G_2の元に写像する双線形写像e:G1×G1→G2とし、P_X=F(ID_X)∈G_1を上記第1の通信装置の公開鍵とし、P_X^sを上記第1の通信装置の秘密鍵とし、P_D=F(ID_D)∈G_1を上記代行装置の公開鍵とし、P_D^sを上記第2の通信装置の秘密鍵とし、P_V=F(ID_V)∈G_1を上記第2の通信装置の公開鍵とし、P_V^sを上記第2の通信装置の秘密鍵としたとき、上記第1の通信装置と上記代行装置との共通鍵情報a=e(P_X^s、P_D)として計算したとき、
    上記代行装置は、上記代行パラメータ情報Tを、e(P_X^s、P_V)^aとして求め、
    上記代行装置は、上記乱数情報をrとしたとき、上記乱数情報rと、上記代行パラメータ情報Tと、上記第1の通信装置の公開鍵情報P_Xと上記代行装置の秘密鍵情報dとに基づく共通鍵情報Kを(T^(e(P_X,P_D^s)^(−1)))^rとして求め、
    上記第2の通信装置は、上記乱数情報rと、上記第1の通信装置の公開鍵情報P_Xと、上記第2の通信装置の秘密鍵情報vとに基づいて、共通鍵情報Kをe(P_V^s,P_X)として求める
    ことを特徴とする請求項8に記載の通信システム。
  11. 上記代行装置及び上記第2の通信装置は、上記代行装置と上記第2の通信装置の間で、上記共通鍵情報Kを用いて共通鍵に基づくチャレンジ・アンド・レスポンス認証を行うことを特徴とする請求項8〜10のいずれかに記載の通信システム。
  12. 秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、第2の公開鍵情報を記憶する第3の記憶手段とを備え、
    コンピュータを、
    秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を求める第1の演算手段、
    上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第2の記憶手段に記憶される上記第1の公開鍵情報とに基づいて、上記第1の演算手段により得られた情報を第1の共通鍵情報とし、上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第3の記憶手段に記憶される上記第2の公開鍵情報とに基づいて、上記第1の演算手段により得られた情報を第2の共通鍵情報として、上記第1の共通鍵情報と上記第2の共通鍵情報とに基づいて、鍵共有処理を代行させる代行装置に与える代行パラメータ情報を求める第2の演算手段
    として機能させることを特徴とする代行パラメータ情報生成プログラム。
  13. 秘密鍵情報を記憶する第1の記憶手段と、第1の公開鍵情報を記憶する第2の記憶手段と、乱数情報を記憶する第3の記憶手段と、被代行装置の鍵共有処理に係る代行パラメータ情報を記憶する第4の記憶手段とを備え、
    コンピュータを、
    秘密鍵情報と公開鍵情報とに基づいて共通鍵情報を計算する第1の演算手段、
    上記第1の記憶手段に記憶される上記秘密鍵情報と、上記第2の記憶手段に記憶される上記第1の公開鍵情報とに基づいて上記第1の演算手段により得られた第1の共通鍵情報と、上記第3の記憶手段に記憶されている上記代行パラメータ情報とに基づいて、第2の共通鍵情報とを求める第2の演算手段、
    として機能させることを特徴とする代行プログラム。
JP2012013313A 2012-01-25 2012-01-25 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム Expired - Fee Related JP5333613B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012013313A JP5333613B2 (ja) 2012-01-25 2012-01-25 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012013313A JP5333613B2 (ja) 2012-01-25 2012-01-25 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム

Publications (2)

Publication Number Publication Date
JP2013152362A JP2013152362A (ja) 2013-08-08
JP5333613B2 true JP5333613B2 (ja) 2013-11-06

Family

ID=49048752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012013313A Expired - Fee Related JP5333613B2 (ja) 2012-01-25 2012-01-25 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム

Country Status (1)

Country Link
JP (1) JP5333613B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5614465B2 (ja) * 2013-01-30 2014-10-29 沖電気工業株式会社 暗号通信装置、代行サーバ、暗号通信装置プログラム及び代行サーバプログラム
JP6236019B2 (ja) * 2015-01-09 2017-11-22 日本電信電話株式会社 鍵装置、鍵交換システム、およびプログラム
JP7020297B2 (ja) * 2018-05-29 2022-02-16 日本電信電話株式会社 鍵共有システム、機器、鍵共有方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3651424B2 (ja) * 2001-08-28 2005-05-25 日本電気株式会社 大規模IPSecVPN構築方法、大規模IPSecVPNシステム、プログラム及び鍵共有情報処理装置
JP2005203846A (ja) * 2004-01-13 2005-07-28 Matsushita Electric Ind Co Ltd マルチホップセルラネットワークに適したセキュリティ機構
JP2005210193A (ja) * 2004-01-20 2005-08-04 Matsushita Electric Works Ltd 共通秘密鍵生成装置
JP5494603B2 (ja) * 2011-09-29 2014-05-21 沖電気工業株式会社 セキュリティ処理代行システム

Also Published As

Publication number Publication date
JP2013152362A (ja) 2013-08-08

Similar Documents

Publication Publication Date Title
Malina et al. On perspective of security and privacy-preserving solutions in the internet of things
CN105743646B (zh) 一种基于身份的加密方法及系统
JP5447544B2 (ja) 委託パラメータ情報生成装置、共有鍵合成装置、署名情報合成装置、通信装置、鍵共有被計算委託装置、署名情報生成被計算委託装置、被計算委託装置、鍵共有システム、署名情報検証システム及び通信システム
CN104270249B (zh) 一种从无证书环境到基于身份环境的签密方法
JP5494603B2 (ja) セキュリティ処理代行システム
US9705683B2 (en) Verifiable implicit certificates
TWI807125B (zh) 用以分配數位簽署資料之份額的電腦實施系統及方法
Wang et al. An efficient privacy‐preserving aggregation and billing protocol for smart grid
CN104301108A (zh) 一种从基于身份环境到无证书环境的签密方法
KR20200108343A (ko) 디지털로 서명된 데이터를 획득하기 위한 컴퓨터 구현된 방법 및 시스템
Obert et al. Recommendations for trust and encryption in DER interoperability standards
CN111264045B (zh) 基于异构身份的交互系统及方法
CN108574571B (zh) 私钥生成方法、设备以及系统
Yin et al. An efficient and secured data storage scheme in cloud computing using ECC-based PKI
Sarwar et al. Lightweight ECC with Fragile Zero-Watermarking for Internet of Things Security
Limkar et al. A mechanism to ensure identity-based anonymity and authentication for IoT infrastructure using cryptography
JP2016220062A (ja) 通信装置、サーバ、署名検証委託システム及び署名検証委託方法
Khasawneh et al. ECS‐CP‐ABE: A lightweight elliptic curve signcryption scheme based on ciphertext‐policy attribute‐based encryption to secure downlink multicast communication in edge envisioned advanced metering infrastructure networks
JP5333613B2 (ja) 代行パラメータ情報生成装置、代行装置、代行パラメータ情報生成プログラム、代行プログラム及び通信システム
Pharkkavi et al. TIME COMPLEXITY ANALYSIS OF RSA AND ECC BASED SECURITY ALGORITHMS IN CLOUD DATA.
GB2421407A (en) Generating a shared symmetric key using identifier based cryptography
Koppl et al. Application of Cryptography Based on Elliptic Curves
Chen et al. Blockchain as a CA: A provably secure signcryption scheme leveraging blockchains
JP6067474B2 (ja) 電子署名検証方法および電子署名検証システム
JP2007208410A (ja) Idベース暗号通信システム

Legal Events

Date Code Title Description
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: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130715

R150 Certificate of patent or registration of utility model

Ref document number: 5333613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees