Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3283202B2 - 暗号通信方法 - Google Patents
[go: Go Back, main page]

JP3283202B2 - 暗号通信方法 - Google Patents

暗号通信方法

Info

Publication number
JP3283202B2
JP3283202B2 JP00897297A JP897297A JP3283202B2 JP 3283202 B2 JP3283202 B2 JP 3283202B2 JP 00897297 A JP00897297 A JP 00897297A JP 897297 A JP897297 A JP 897297A JP 3283202 B2 JP3283202 B2 JP 3283202B2
Authority
JP
Japan
Prior art keywords
key
entity
secret
function
equation
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
JP00897297A
Other languages
English (en)
Other versions
JPH10210022A (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.)
Murata Machinery Ltd
Original Assignee
Murata Machinery 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 Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP00897297A priority Critical patent/JP3283202B2/ja
Publication of JPH10210022A publication Critical patent/JPH10210022A/ja
Application granted granted Critical
Publication of JP3283202B2 publication Critical patent/JP3283202B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報の内容が当事
者以外にはわからないように情報を暗号化して通信する
安全性が高い暗号通信方法に関する。
【0002】
【従来の技術】高度情報化社会と呼ばれる現代社会で
は、コンピュータネットワークを基盤として、ビジネス
上の重要な文書・画像情報が電子的な情報という形で伝
送通信されて処理される。このような電子情報は、容易
に複写が可能である、複写物とオリジナルとの区別が困
難であるという性質があり、情報保全の問題が重要視さ
れている。特に、「コンピュータリソースの共有」,
「マルチアクセス」,「広域化」の各要素を満たすコン
ピュータネットワークの実現が高度情報化社会の確立に
不可欠であるが、これは当事者間の情報保全の問題とは
矛盾する要素を含んでいる。このような矛盾を解消する
ための有効な手法として、人類の過去の歴史上主として
軍事,外交面で用いられてきた暗号技術が注目されてい
る。
【0003】暗号とは、情報の意味が当事者以外には理
解できないように情報を交換することである。暗号にお
いて、誰でも理解できる元の文(平文)を第三者には意
味がわからない文(暗号文)に変換することが暗号化で
あり、また、暗号文を平文に戻すことが復号であり、こ
の暗号化と復号との全過程をまとめて暗号系と呼ぶ。暗
号化の過程及び復号の過程には、それぞれ暗号化鍵及び
復号鍵と呼ばれる秘密の情報が用いられる。復号時には
秘密の復号鍵が必要であるので、この復号鍵を知ってい
る者のみが暗号文を復号でき、暗号化によって情報の秘
密性が維持され得る。
【0004】暗号化鍵と復号鍵とは、等しくても良い
し、異なっていても良い。両者の鍵が等しい暗号系は、
共通鍵暗号系と呼ばれ、米国商務省標準局が採用したD
ES(Data Encryption Standards)はその典型例であ
る。また、両者の鍵が異なる暗号系の一例として、公開
鍵暗号系と呼ばれる暗号系が提案された。この公開鍵暗
号系は、暗号系を利用する各ユーザ(エンティティ)が
暗号化鍵と復号鍵とを一対ずつ作成し、暗号化鍵を公開
鍵リストにて公開し、復号鍵のみを秘密に保持するとい
う暗号系である。公開鍵暗号系では、この一対となる暗
号化鍵と復号鍵とが異なり、一方向性関数を利用するこ
とによって暗号化鍵から復号鍵を割り出せないという特
徴を持たせている。
【0005】公開鍵暗号系は、暗号化鍵を公開するとい
う画期的な暗号系であって、高度情報化社会の確立に必
要な上述した3つの要素に適合するものであり、情報通
信技術の分野等での利用を図るべく、その研究が活発に
行われ、典型的な公開鍵暗号系としてRSA暗号系が提
案された。このRSA暗号系は、一方向性関数として素
因数分解の困難さを利用して実現されている。また、離
散対数問題を解くことの困難さ(離散対数問題)を利用
した公開鍵暗号系も種々の手法が提案されてきた。
【0006】また、各エンティティの住所,氏名等の個
人を特定するID(Identity)情報を利用する暗号系が
提案された。この暗号系では、ID情報に基づいて送受
信者間で共通の暗号化鍵を生成する。また、このID情
報に基づく暗号技法は、(1)暗号文通信に先立って送
受信者間での予備通信を必要とする方式と、(2)暗号
文通信に先立って送受信者間での予備通信を必要としな
い方式とがある。特に、(2)の手法は予備通信が不要
であるので、エンティティの利便性が高く、将来の暗号
系の中枢をなすものと考えられている。
【0007】この(2)の手法による暗号系は、ID−
NIKS(ID-based non-interactive key sharing sch
eme)と呼ばれており、通信相手のID情報を用いて予備
通信を行うことなく暗号化鍵を共有する方式を採用して
いる。ID−NIKSは、送受信者間で公開鍵,秘密鍵
を交換する必要がなく、また鍵のリスト及び第三者によ
るサービスも必要としない方式であり、任意のエンティ
ティ間で安全に通信を行える。
【0008】図12は、このID−NIKSのシステム
の原理を示す図である。信頼できるセンタの存在を仮定
し、このセンタを中心にして共有鍵生成システムを構成
している。図12において、エンティティXの名前,住
所,電話番号等のID情報は、ハッシュ関数h(・)を
用いてh(IDX )で表す。センタは任意のエンティテ
ィXに対して、センタ公開情報{PCi },センタ秘密
情報{SCi }及びエンティティXのID情報h(ID
X )に基づいて、以下のように秘密情報SXiを計算し、
秘密裏にエンティティXへ配布する。 SXi=Fi ({SCi },{PCi },h(IDX ))
【0009】エンティティXは他の任意のエンティティ
Yとの間で、暗号化,復号のための共有鍵KXYを、エン
ティティX自身の秘密情報{SXi},センタ公開情報
{PCi }及び相手先のエンティティYのID情報h
(IDY )を用いて以下のように生成する。 XY =f({S Xi },{PC i },h(ID Y )) また、エンティティYも同様にエンティティXへの鍵を
共有鍵KYXを生成する。もし常にKXY=KYXの関係が成
立すれば、この鍵KXY,KYXをエンティティX,Y間で
暗号化鍵,復号鍵として使用できる。
【0010】上述した公開鍵暗号系では、例えばRSA
暗号系の場合にその公開鍵の長さは現在の電話番号の十
数倍となり、極めて煩雑である。これに対して、ID−
NIKSでは、各ID情報を名簿という形式で登録して
おけば、この名簿を参照して任意のエンティティとの間
で共有鍵を生成することができる。従って、図12に示
すようなID−NIKSのシステムが安全に実現されれ
ば、多数のエンティティが加入するコンピュータネット
ワーク上で便利な暗号系を構築できる。このような理由
により、ID−NIKSが将来の暗号系の中心となると
期待されている。
【0011】対称行列を利用した分離可能な演算を用い
るID−NIKSは、センタの秘密情報とエンティティ
との公開鍵の演算方法、及び乱数の有無に応じて、以下
の4種類に分類される。 (1)積和型NIKS (2)乱数付加積和型NIKS (3)べき積型NIKS (4)乱数付加乱べき積型NIKS
【0012】これらの各種類のNIKSについて、以下
に簡単に説明するが、その前に演算の定義及びその定義
に基づく諸定理を示す。
【0013】A=(aij),B=(bij),C=
(cij)を適当な大きさの行列とした場合に、以下の演
算(定義1〜3)を定義する。
【0014】
【数3】
【0015】また、上記定義に従うと、以下の諸定理
(定理1〜5)が成立する。但し、tは転置を意味す
る。
【0016】
【数4】
【0017】上記(1)〜(4)の何れの形式において
も、センタは秘密裏に以下に示すような準備,を行
う。 適当なn×nの対称行列Tを生成する。 登録を要求してきたエンティティのIDをn個の成
分を有する適当なベクトルに変換するための公開ハッシ
ュ関数h(・)を生成する。
【0018】(1)積和型NIKS エンティティxに登録を依頼されたセンタは、ハッシュ
関数で示されるエンティティxの公開情報(公開鍵)ベ
クトルvx (=h(IDx ))と、対称行列Tとを用い
て、以下の計算に従って、エンティティxの秘密情報
(秘密鍵)ベクトルsx を求めて、エンティティxへ秘
密裏に送る。
【0019】
【数5】
【0020】以下の計算に従って、エンティティiがエ
ンティティjとの共有鍵Kijを求め、エンティティjが
エンティティiとの共有鍵Kjiを求める。明らかにKij
=K jiとなる。
【0021】
【数6】
【0022】(2)乱数付加積和型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tと乱数ベクトルr
x とを用いて、以下の計算に従って、ベクトルsx を求
めて、エンティティxへ秘密裏に送る。但し、○は適当
な算法を示す。
【0023】
【数7】
【0024】エンティティiがエンティティjとの鍵共
有を行うために、以下の計算を行う。ここで、適当な手
法によって乱数項を消去することにより、共有鍵を共有
できる。
【0025】
【数8】
【0026】(3)べき積型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tとを用いて、以下
の計算に従って、ベクトルsx を求めて、エンティティ
xへ秘密裏に送る。
【0027】
【数9】
【0028】以下の計算に従って、エンティティiがエ
ンティティjとの共有鍵Kijを求め、エンティティjが
エンティティiとの共有鍵Kjiを求める。上述のべき積
演算の定理1より、Kij=Kjiとなる。
【0029】
【数10】
【0030】(4)乱数付加乱べき積型NIKS エンティティxに登録を依頼されたセンタは、ベクトル
x (=h(IDx ))と対称行列Tと乱数ベクトルr
x とを用いて、以下の計算に従って、ベクトルsx を求
めて、エンティティxに秘密裏に送る。但し、○は適当
な算法を示す。
【0031】
【数11】
【0032】エンティティiがエンティティjとの鍵共
有を行うために、以下の計算に行う。ここで、適当な手
法によって乱数項を消去することにより、共有鍵を共有
できる。
【0033】
【数12】
【0034】
【発明が解決しようとする課題】通信相手のID情報を
用いて予備通信を行うことなく暗号化鍵及び復号鍵とな
る共有鍵を互いに共有するようなID−NIKSにあっ
ては、複数のエンティティの結託等の攻撃に対して十分
に安全であることが望まれる。しかしながら、以上のよ
うなID−NIKSにおいては、攻撃法が検討されて、
適当な人数のエンティティが結託すればセンタの秘密パ
ラメータが露呈するという問題を含んでいる。暗号学的
に安全なID−NIKSを構築できるか否かは、高度情
報化社会に重要な問題であり、より理想的な暗号方式の
探究が進められている。
【0035】本発明は斯かる事情に鑑みてなされたもの
であり、エンティティが結託してもセンタの秘密パラメ
ータが露呈することなく暗号文が復号されず、安全性が
極めて高い新規のID−NIKSによる暗号通信方法を
提供することを目的とする。
【0036】
【課題を解決するための手段】請求項1に係る暗号通信
方法は、センタ装置から複数のエンティティ装置夫々
各エンティティ固有の暗号鍵を送付し、一方のエンティ
ティ装置が前記センタ装置から送付された該エンティテ
ィ固有の暗号鍵と公開された他方のエンティティの公開
鍵とを利用して平文を暗号文に暗号化して他方のエンテ
ィティ装置へ伝送し、該他方のエンティティ装置が伝送
された暗号文を前記センタ装置から送付された該エンテ
ィティ固有の暗号鍵と公開された前記一方のエンティテ
ィの公開鍵とを利用して元の平文に復号することによ
り、エンティティ装置間で情報の通信を行う暗号通信方
法において、前記センタ装置にて、公開鍵として公開さ
れた各エンティティ固有の第1の鍵とセンタ装置が管理
する対称行列とから(2)式に基づいて、第1の鍵を変
数とする第1の関数で表される各エンティティ固有の秘
密の第2の鍵を生成し、各エンティティ固有の乱数と第
2の鍵とから(3)式に基づいて第1秘密鍵を生成し、
前記乱数から(4)式に基づいて第2秘密鍵を生成し、
生成した第1秘密鍵及び第2秘密鍵を各エンティティ装
置に送付し、一方のエンティティ装置にて、第1秘密鍵
及び第2秘密鍵と他方のエンティティの第1の鍵とを用
いて、自身の第2の鍵及び相手の第1の鍵2変数とす
第2の関数で表され、平文を暗号文に暗号化する際及
び暗号文を平文に復号する際に用いる両エンティティ間
で共有する第3の鍵を(5),(6)式に基づいて生成
し、第1の鍵、第2の鍵及び第3の鍵を使用して、エン
ティティ装置間で暗号化した情報の通信を行うことと
るが、第2の関数に第1の関数を代入して得られる、自
身及び相手の第1の鍵を変数とする第3の関数を、それ
ぞれの変数について(1)式に定義されるような分離不
可能な関数に設定することを特徴とする。f(x+y)≠f(x)○f(y) …(1) 但し、 適当な可換な算法を○として、関数f(・)が次
式を満たす場合に、関数f(・)は算法○により分離不
可能であると定義する。
【0037】
【数13】
【0038】
【数14】
【0039】
【0040】
【0041】
【0042】
【0043】
【0044】
【0045】
【0046】
【0047】
【0048】
【0049】
【0050】
【0051】以下、本発明の暗号通信方法におけるID
−NIKSの概念について説明する。
【0052】まず、線形の概念を一般化して、関数にお
ける分離可能を次のように定義する。適当な可換な算法
を○として、関数f(・)が次の関係式を満たす場合
に、その関数f(・)は算法○により分離可能であると
定義する。 f(x+y)=f(x)○f(y) 例えば、f(x)=ax,f(x)=ax は、以下に示
すように分離可能である。 f(x+y)=a(x+y)=ax+ay=f(x)+
f(y) f(x+y)=ax+y =ax ・ay =f(x)・f
(y)
【0053】また、行列のべき積演算の定義は、A,
B,Cをそれぞれm×l,l×n,m×nの行列とする
と、前述したように、以下のようになる。
【0054】
【数15】
【0055】また、2×2行列について、右べき積,左
べき積を具体的に例示すると、以下のようになる。
【0056】
【数16】
【0057】次に、NIKSを実現するための条件及び
安全なNIKSであるための条件について考察する。但
しi,j,k,1,y及びzはエンティティを表し、s
i はエンティティiの秘密鍵(特許請求の範囲の第2の
鍵)、vi は多くの場合にIDのハッシュ値であるエン
ティティiの公開鍵(特許請求の範囲の第1の鍵)、K
ijはエンティティiが求めたエンティティjとの共有鍵
(特許請求の範囲の第3の鍵)とする。
【0058】NIKSを実現するためには、以下の3つ
の条件が必要である。 〔条件1(秘密鍵生成条件)〕センタはエンティティi
の公開鍵vi から対応する秘密鍵si を求めることがで
きる。
【0059】
【数17】
【0060】〔条件2(共有鍵生成条件)〕エンティテ
ィiの秘密鍵si とエンティティjの公開鍵vj とから
共有鍵Kijを生成できる。
【0061】〔条件3(鍵共有条件)〕エンティティi
がエンティティjに対して生成する共有鍵Kijと、エン
ティティjがエンティティiに対して生成する共有鍵K
jiとは等しい。Kij=Kji
【0062】また、安全なNIKSには、以下の5つの
条件が必要である。 〔条件4(秘密鍵の安全性)〕 いかなるエンティティiも自身の公開鍵 i から自身の
秘密鍵si を求められない。
【0063】
【数18】
【0064】〔条件5(共有鍵の安全性)〕2人のエン
ティティy,zの公開鍵vy ,vz からエンティティ
y,z間の共有鍵Kyzを求められない。
【0065】
【数19】
【0066】〔条件6(結託に対する秘密鍵の安全
性)〕複数のエンティティi,j,…の結託によって、
公開鍵vi ,vj ,…と秘密鍵si ,sj ,…とをいく
ら集めても、他のいかなるエンティティzの秘密鍵s z
を求められない。
【0067】
【数20】
【0068】〔条件7(結託に対する共有鍵の安全
性)〕複数のエンティティi,j,…の結託によって、
公開鍵vi ,vj ,…と秘密鍵si ,sj ,…とをいく
ら集めても、他のいかなるエンティティy,z間の共有
鍵Kyzを求められない。なお、複数のエンティティi,
j,k,…の結託によって、エンティティi,j,k,
…間の共有鍵Kij,Kik,Kjk,…をいくら集めても、
他のいかなるエンティティy,z間の共有鍵Kyzを求め
られないという条件も含まれる。
【0069】
【数21】
【0070】〔条件8(センタ秘密の安全性)〕いかな
る攻撃によってもセンタ秘密は求められない。
【0071】上述した条件1〜5は、それぞれ条件9〜
13と同値である。 〔条件9〕センタは、秘密鍵を生成するための関数(秘
密鍵生成関数:特許請求の範囲の第1の関数)f(・)
を計算できる。 si =f(vi
【0072】〔条件10〕共有鍵を生成するための関数
(共有鍵生成関数:特許請求の範囲の第2の関数)F
(・)は2変数関数で表せる。 Kij=F(si ,vj ) から対応する秘密鍵si を求めることができる。
【0073】〔条件11〕共有鍵生成関数F(・)に秘
密鍵生成関数f(・)を代入して得られる、公開鍵を変
数とする関数(共有鍵公開関数:特許請求の範囲の第3
の関数))Fp (・)は、対称関数である。 Fp (vi ,vj )=Fp (vj ,vi ) 但し、 Fp (vi ,vj )=F(f(vi ),vj )=F(s
i j
【0074】〔条件12〕各エンティティは、秘密鍵生
成関数f(・)を計算できない。
【0075】〔条件13〕各エンティティは、共有鍵公
開関数Fp (・)を計算できない。
【0076】上記条件6,条件7を満たすためには、線
形攻撃が適用できないか、または、それぞれ以下の条件
14,条件15を満たせば良い。
【0077】〔条件14〕秘密鍵生成関数f(・)は分
離不可能な関数である。 f(x+y)≠f(x)○f(y) もし分離可能な関数であると、エンティティの結託に伴
う秘密鍵による結託攻撃により破られる。例えば、エン
ティティi,jが結託して、vz =vi +vj と表され
る場合には、両エンティティi,jの秘密鍵si ,sj
を用意すれば、以下のようにして、エンティティzの秘
密鍵sz を求めることができる。 sz =f(vz ) =f(vi )○f(vj ) =si ○sj
【0078】〔条件15〕共有鍵公開関数Fp (・)は
分離不可能な関数である。 Fp (a,x+y)≠Fp (a,x)○Fp (a,y) 〔条件11〕より、Fp (・)は対称関数であるので、
次式も成立する。 Fp (x+y,a)≠Fp (x,a)○Fp (y,a) もし分離可能な関数であると、エンティティの結託に伴
う共有鍵による結託攻撃により破られてしまう。エンテ
ィティi,jが結託して、vz =vi +vj と表される
場合には、Kiy(=F(si ,vy )=Fp (vi ,v
y ))及びKjy=(F(sj ,vy )=Fp (vj ,v
y ))を準備しておけば、以下のようにして、エンティ
ティy,z間の共有鍵Kyzを求めることができる。 Kyz=Fp (vy ,vz ) =Fp (vy ,vi +vj ) =Fp (vy ,vi )○Fp (vy ,vj ) =Fp (vi ,vy )○Fp (vj ,vy ) =Kiy○Kjy また、vy =vi +vj ,vz =vk +vl と表される
場合には、Kik,Kil,Kjk及びKjlを準備しておけ
ば、以下のようにして、Kyzを求めることができる。 Kyz=Fp (vy ,vz ) =Fp (vi ,vz )○Fp (vj ,vz ) =Fp (vi ,vk )○Fp (vi ,vl ) ○Fp (vj ,vk )○Fp (vj ,vl ) =Kik○Kil○Kjk○Kjl
【0079】この条件は厳しく、途中の計算によらず、
最後の鍵共有形がべき積型となっているだけで条件15
を満たさない。
【0080】ところで、線形攻撃が適用できないために
は、例えば以下の条件16を満たせば良い。 〔条件16〕 攻撃目標のエンティティの公開鍵が、結託したエン
ティティの公開鍵の線形結合で表せない。 線形結合で表されるが、○の逆算法ができない。即
ち、下記式において、算法○に対するf(y)の逆元が
求められない。 f(x−y)=f(x)○(f(y))-1 エンティティは、自身の秘密鍵を知ることができな
い。
【0081】このような条件16を満たすことにより、
安全なべき型NIKSを実現できる可能性がある。しか
しながら、現状では条件16を満たす方式はなく、条
件16を満たそうとする方式は、ユークリッド攻撃に
より、結託行列の逆行列が求まらなくても破れてしまう
ことが知られている。よって、条件16を満たそうと
するアプローチが有力であると考えられる。
【0082】以上のような考察に基づいて、本発明のI
D−NIKSの暗号方式では、上述の共有鍵公開関数を
分離不可能な関数に設定する(条件15)。また、個人
乱数を導入して各エンティティの秘密鍵を判らなくし、
この乱数も秘密と考えて上述の秘密鍵生成関数を分離不
可能な関数と見なせるようにする(条件14)。更に、
各エンティティは自身の秘密鍵を知ることができないよ
うにする(条件16)。以上のようにすれば、如何な
る人数のエンティティの結託に対しても安全であるID
−NIKSを実現できる。
【0083】
【発明の実施の形態】以下、本発明の実施の形態につい
て具体的に説明する。
【0084】図1は、本発明の暗号通信方法を実施する
ためのシステムの構成を示す模式図である。情報の隠匿
を信頼できるセンタ1が設定されており、このセンタ1
としては、例えば社会の公的機関を該当できる。このセ
ンタ1と、この暗号系システムを利用するユーザとして
の複数の各エンティティa,b,…,zとは秘密通信路
2a,2b,…,2zにより接続されており、この秘密
通信路秘密通信路暗号文を通信し合う2a,2b,…,
2zを介してセンタ1から秘密の鍵情報が各エンティテ
ィa,b,…,zへ伝送されるようになっている。ま
た、2人のエンティティの間には通信路3ab,3az,3
bz,…が設けられており、この通信路3ab,3az,3b
z,…を介して通信情報を暗号化した暗号文が互いのエ
ンティティ間で伝送されるようになっている。
【0085】以下に、本発明のID−NIKSの実施の
形態を説明する。まず、(センタでの準備処理),(エ
ンティティの登録処理),(エンティティ間の共有鍵の
生成処理)の順序で、本発明の暗号系を説明する。
【0086】(センタでの準備処理)センタは以下の公
開鍵及び秘密鍵を準備し、公開鍵を公開する。
【0087】但し、λ(・)はCarmichael関数とする。
また、エンティティのID情報からn次元の公開鍵ベク
トルvを計算するためのハッシュ関数h(・)も同時に
公開する。ハッシュ関数はデータ列を別のデータ列に変
換する関数であり、一般的には長いデータ列を短いデー
タ列に変換する関数である。但し、このハッシュ関数を
用いて公開鍵ベクトルvを計算した場合に、全成分の和
がeとなるようにする。具体的には、公開鍵ベクトルv
が2値ベクトルである場合にはSchalkwijkアルゴリズム
を用いればよいし、一般的には、(n−1)個の成分を
ハッシュ値で求め、最後の1個の成分を全体の和がeと
なるように求めればよい。
【0088】
【数22】
【0089】(エンティティの登録処理)エンティティ
iに登録を依頼されたセンタは、準備した鍵とエンティ
ティiの公開鍵ベクトルvi (=h(IDi ))とを用
いて以下の計算を行って、エンティティiのベクトルx
i (特許請求の範囲の第1秘密鍵)とyi (特許請求の
範囲の第2秘密鍵)とを求め、求めたベクトルxi 及び
i をエンティティiへ秘密裏に送って、登録を完了す
る。この際、直接エンティティiに秘密鍵si を送らな
い。
【0090】
【数23】
【0091】(エンティティ間の共有鍵の生成処理)エ
ンティティiは、エンティティjとの鍵共有を行うため
に、以下の計算を行って、kij及び共有鍵Kijを求め
る。
【0092】
【数24】
【0093】上記kij,Kijを求める際の実際の計算の
手法を、ベクトルvj が多値ベクトルである一般的な
場合、ベクトルvj の各成分が比較的小さい場合、
ベクトルvj が2値ベクトルである特別な場合に分け
て、下記に示す。
【0094】
【数25】
【0095】次に、上述した暗号システムにおけるエン
ティティ間の情報の通信について説明する。図2は、2
人のエンティティa,b間における情報の通信状態を示
す模式図である。図2の例は、エンティティaが平文
(メッセージ)Mを暗号文Cに暗号化してそれをエンテ
ィティbへ伝送し、エンティティbがその暗号文Cを元
の平文(メッセージ)Mに復号する場合を示している。
【0096】エンティティa側には、エンティティbの
個人識別情報IDb を入力し、ハッシュ関数を利用して
ベクトルvb (公開鍵)を得る公開鍵生成器11と、セ
ンタから送られる秘密のベクトルxa 及びya と公開鍵
生成器11からの公開鍵であるベクトルvb とに基づい
てエンティティaが求めるエンティティbとの共有鍵K
abを生成する共有鍵生成器12と、共有鍵Kabを用いて
平文(メッセージ)Mを暗号文Cに暗号化して通信路3
0へ出力する暗号化器13とが備えられている。また、
エンティティb側には、エンティティaの個人識別情報
IDa を入力し、ハッシュ関数を利用してベクトルva
(公開鍵)を得る公開鍵生成器21と、センタから送ら
れる秘密のベクトルxb 及びyb と公開鍵生成器21か
らの公開鍵であるベクトルva とに基づいてエンティテ
ィbが求めるエンティティaとの共有鍵Kbaを生成する
共有鍵生成器22と、共有鍵Kbaを用いて通信路30か
ら入力した暗号文Cを平文(メッセージ)Mに復号して
出力する復号器23とが備えられている。
【0097】図3は、図2の共有鍵生成器12及び22
の内部構成を示す図である。共有鍵生成器12及び22
は、センタから送られるベクトルxを記憶する第1レジ
スタ41と、ベクトルxの各成分を記憶する第2レジス
タ42と、公開鍵生成器11及び21から送られるベク
トルvを記憶する第3レジスタ43と、ベクトルvの各
成分を記憶する第4レジスタ44と、自然数Nを記憶す
る第5レジスタ45と、第2,第4,第5レジスタ4
2,44,45の出力に応じて指数演算を行う第1高速
指数演算器46と、予めセットされてkを記憶する第6
レジスタ47と、第1高速指数演算器46及び第6レジ
スタ47の出力を乗算する乗算器48と、センタから送
られるyを記憶する第7レジスタ49と、自然数Pを記
憶する第8レジスタ50と、第6,第7,第8レジスタ
47,49,50の出力に応じて指数演算を行って共有
鍵Kを出力する第2高速指数演算器51とを有する。
【0098】なお、自然数N及びPには、P=N+1の
関係があるので、第5レジスタ45の最下位のビットを
1にして作成したものを第8レジスタ50として利用す
るようにしても良い。また、ベクトルxの各成分とy、
ベクトルvの各成分とk、mod Nとmod Pのそ
れぞれの入力を切り換えるようにすれば、1個の高速指
数演算器のみを使用する構成も可能である。
【0099】次に、動作について説明する。エンティテ
ィaからエンティティbへ情報を伝送しようとする場
合、まず、エンティティbの個人識別情報IDb が公開
鍵生成器11に入力されてベクトルvb (公開鍵)が得
られ、得られたベクトルvb が共有鍵生成器12へ送ら
れる。また、センタから(B)に従って求められたベク
トルxa 及びya が共有鍵生成器12へ入力される。図
3に示す構成を有する共有鍵生成器12にて、(C)
従って共有鍵Kabが求められ、暗号化器13へ送られ
る。暗号化器13において、この共有鍵Kabを用いて平
文(メッセージ)Mが暗号文Cに暗号化され、暗号文C
が通信路30を介して伝送される。通信路30を伝送さ
れた暗号文Cはエンティティbの復号器23へ入力され
る。エンティティaの個人識別情報IDa が公開鍵生成
器21に入力されてベクトルva (公開鍵)が得られ、
得られたベクトルva が共有鍵生成器22へ送られる。
また、センタから(B)に従って求められたベクトルx
b 及びyb が共有鍵生成器22へ入力される。図3に示
す構成を有する共有鍵生成器22にて、(C)に従って
共有鍵Kbaが求められ、復号器23へ送られる。復号器
23において、この共有鍵Kbaを用いて暗号文Cが平文
(メッセージ)Mに復号される。
【0100】次に、このような本発明の暗号系が、安全
なID−NIKSを実現できていること、即ち、前述し
た条件1〜7を満たすことを検証する。
【0101】(条件1について)秘密鍵生成関数f
(・)は、以下の式で定義され、センタにてエンティテ
ィの公開鍵から対応する秘密鍵を求めることができる。
【0102】
【数26】
【0103】(条件2について)共有鍵生成関数F
(・)は、以下の式で定義され、一方のエンティティの
秘密鍵と他方のエンティティの公開鍵とから共有鍵を生
成できる。
【0104】
【数27】
【0105】(条件3について)共有鍵公開関数F
p (・)は、以下の式で定義され、Tが対称行列である
ので、以下の式で示すように、Fp (・)は対称関数で
あって、互いのエンティティが生成する共有鍵は等しく
なる。
【0106】
【数28】
【0107】(条件4について)各エンティティは、セ
ンタ秘密である対称行列Tを知らない限り、自身の秘密
鍵を計算できない。
【0108】(条件5について)各エンティティは、セ
ンタ秘密である対称行列Tを知らない限り、エンティテ
ィ間の共有鍵を計算できない。
【0109】(条件6について)本発明の暗号方式は、
条件14を直接的には満たさないが、条件16を満た
すので、条件6も満たすことになる。例えば、ベクトル
z ≡ベクトルvi +ベクトルvj である場合に、ベク
トルsz ≡ベクトルsi ・ベクトルsj となるが、エン
ティティの秘密鍵のベクトルsi をエンティティに直接
送付せずに、個人乱数ri を用いてベクトルxi として
から送付するようにしているため、ベクトルxz とベク
トルxi ・ベクトルxj とは等しくならず、個人秘密ベ
クトルxzを求めることができない。なお、エンティテ
ィは自身の個人乱数を知ることはできないが、この個人
乱数は共有鍵を生成する段階で消去される。
【0110】(条件7について)共有鍵公開関数F
p (・)は、以下の式で示されるように、分離不可能な
関数であるので、複数のエンティティの結託によって、
公開鍵と秘密鍵とをいくら集めても、他のいかなるエン
ティティ間の共有鍵を求められない。
【0111】
【数29】
【0112】(条件8について)センタ秘密(p,q,
d,L,ri ,g及びT)は、複数のエンティティが結
託しても露呈しない。センタ秘密の中のp,q,d,
L,ri 及びgが露呈しない根拠は以下の通りである。 p,q:素因数分解の難しさ d,L:RSA暗号系の安全性 ri :離散対数問題の難しさ g :ri 未知による安全性
【0113】次に、結託攻撃に対する対称行列Tの安全
性について説明する。もし、本発明の暗号方式において
個人乱数がない場合、即ち、ベクトルvi ,ベクトルs
i ,ベクトルvj ,ベクトルsj ,…を用いた攻撃が可
能な場合、結託者1人についてn個の式が得られるが、
m人が結託したとしてもmn個の線形独立な式が得られ
るわけではない。
【0114】Tが対称行列であるので、最初の結託者1
人で最大n個の線形独立な式が得られ、2人目が結託す
ることにより最大(n−1)個の新たな線形独立な式が
得られる。以降同様に、新たに1人ずつ結託するエンテ
ィティが増えていくにつれて新たに得られる線形独立な
式が減っていく。従って、n人のエンティティが結託す
る場合には、最大で、n+(n−1)+…+2+1=
{n(n+1)/2}個の線形独立な式が得られる。一
方、センタ秘密変数も{n(n+1)/2}個であるの
で、n人のエンティティの結託によって、対称行列Tが
解けることが考えられる。
【0115】次に、本発明の方式のように個人乱数が付
加されている場合を考えると、センタの秘密行列の{n
(n+1)/2}個のセンタ秘密変数に加えて、更に個
人乱数もセンタ秘密変数となる。よって、m人のエンテ
ィティが結託する場合には、センタ秘密変数は{n(n
+1)/2+m}個となる。この結果、任意の人数のエ
ンティティが結託しても、対称行列Tを解くことは不可
能である。以下、これが不可能である理由を、結託人数
毎に分けて説明する。
【0116】(n人未満のエンティティが結託する場
合)センタ秘密変数の数が、結託によって得られる線形
独立な式の数を上回るので、解くことができない。
【0117】(n人のエンティティが結託する場合)最
初の1人では、上述した乱数を設けない場合と同様に最
大n個の線形独立な式が得られる。次に、2人目が結託
すると、個人秘密乱数に関する項が1つ増えるので、乱
数を設けない場合に比べて1つ多い最大n個の線形独立
な式が得られる。更に、3人目が結託すると、乱数を設
けない場合に比べて1つ多い最大(n−1)個の線形独
立な式が得られる。以降同様に、新たに1人ずつ結託す
るエンティティが増えていくにつれて新たに得られる線
形独立な式が減っていく。従って、n人のエンティティ
が結託する場合には、最大で、n+n+(n−1)+…
+2={n(n+1)/2+(n−1)}個の線形独立
な式が得られる。一方、センタ秘密変数は{n(n+
1)/2+n}個であるので、線形独立な式の数がセン
タ秘密変数の数よりも1つ少なくなり、対称行列Tは解
けない。
【0118】((n+1)人のエンティティが結託する
場合)n人の場合に比べて新たに1つの個人秘密乱数が
加わるが、その他のn項は線形従属であるので、新たな
線形独立な式は1つしか得られない。このように、セン
タ秘密変数が1つ増加し、線形独立な式が1つ増加する
だけであるので、n人の結託で解けなければ、(n+
1)人の結託でも対称行列Tは解けない。
【0119】((n+2)人以上のエンティティが結託
する場合)n人,(n+1)人の結託の場合の関係より
帰納的に、何人結託しても対称行列Tは解けない。
【0120】このように、センタでの秘密行列Tは任意
の人数のエンティティによる結託攻撃に対して安全であ
る。
【0121】ここで、個人乱数を設ける場合と個人乱数
を設けない場合とにおけるセンタの秘密行列Tの安全性
の具体例について説明する。図4は、個人乱数を設け
ず、5人のエンティティが結託した場合を示す。図4に
示すように、5×5の行列Tは対称行列であるので、成
分の未知数は15個である。また、図4に示すように、
線形独立な式の数は5+4+3+2+1=15となる。
よって、未知数の個数と線形独立な式の数とが一致する
ため、解くことができ、センタの秘密行列Tが求められ
てしまうことになる。
【0122】一方、図5は、個人乱数を設け、5人のエ
ンティティが結託した場合を示す。個人乱数もセンタ側
での秘密と考えると、図5に示すように、未知数は行列
T由来の15個と乱数由来の5個との合計20個であ
る。また、図5に示すように、線形独立な式の数は5+
5+4+3+2=19となる。よって、未知数の個数が
線形独立な式の数より多くなるため、解くことができ
ず、センタの秘密が求められない。図6に、この場合の
方程式を示す。
【0123】次に、本発明の暗号通信方法における数値
例について説明する。図7〜図9に第1の数値例(公開
鍵のベクトルvの成分が多値である場合)を示す。ま
ず、センタにて、図7(a)に示すように、公開鍵
(P,N,e)及び秘密鍵(p,q,L,d,g,T,
i ,rj ,rk )を設定する。また、各エンティティ
i,j,kのIDに基づく多値の公開鍵のベクトル
i ,vj ,vk を計算して、図7(b)のように設定
する。このような設定条件に基づいて、各エンティティ
i,j,kのベクトルxi ,xj ,xk を求めると図7
(c)のようになり、ri -1,rj -1,rk -1及び
i ,yj ,yk を求めると図7(d)のようになる。
そして、エンティティi,j間の共有鍵Kij=Kji、エ
ンティティi,k間の共有鍵Kik=Kki、エンティティ
j,k間の共有鍵Kjk=Kkjは、それぞれ、図8
(a),(b),(c)のように求まる。また、この第
1の数値例における結託攻撃に対する安全性を図9に示
す。未知数が9個あって線形独立な式の数が8本である
ので、解くことができず、センタでの秘密は保持され
る。
【0124】図10,図11に第2の数値例(公開鍵の
ベクトルvの成分が2値である場合)を示す。まず、セ
ンタにて、図10(a)に示すように、公開鍵(P,
N,e)及び秘密鍵(p,q,L,d,g,T,ri
j )を設定する。また、各エンティティi,jのID
に基づく2値の公開鍵ベクトルvi ,vj を計算して、
図10(b)のように設定する。このような設定条件に
基づいて、各エンティティi,jのri -1,rj -1及び
ベクトルsi ,sj を求めると図10(c)のようにな
る。更に、エンティティiにおけるベクトルxi ,yi
及び,共有鍵Kijを求めると図11(a)に示すように
なり、同様に、エンティティjにおけるベクトルxj
j 及び,共有鍵Kjiを求めると図11(b)に示すよ
うになる。
【0125】
【発明の効果】以上詳述したように、本発明では、前述
したNIKSを実現するための3つの条件及びその安全
性を確保するための5つの条件を満足するので、如何な
る人数のエンティティが結託しても、センタの秘密パラ
メータは露呈されず暗号文が復号されることがなく、極
めて高い安全性を達成できる。
【図面の簡単な説明】
【図1】本発明の暗号通信方法を実施するためのシステ
ムの構成を示す模式図である。
【図2】2人のエンティティ間における情報の通信状態
を示す模式図である。
【図3】図2の共有鍵生成器の内部構成を示す図であ
る。
【図4】個人乱数を設けない場合のセンタでの秘密の安
全性を説明する図である。
【図5】個人乱数を設けた場合のセンタでの秘密の安全
性を説明する図である。
【図6】本発明の安全性を表す数値例を示す図である。
【図7】本発明の第1の数値例を示す図である。
【図8】本発明の第1の数値例を示す図である。
【図9】本発明の第1の数値例を示す図である。
【図10】本発明の第2の数値例を示す図である。
【図11】本発明の第2の数値例を示す図である。
【図12】ID−NIKSのシステムの原理構成図であ
る。
【符号の説明】
1 センタ 11,21 公開鍵生成器 12,22 共有鍵生成器 13 暗号化器 23 復号器 30 通信路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 笠原 正雄 大阪府箕面市粟生外院4丁目15番3号 (72)発明者 藤川 篤則 東京都町田市中町2−2−8 (72)発明者 村上 恭通 京都府宇治市槙島町本屋敷51−6 村田 機械株式会社社宅B棟602号 (56)参考文献 特開 平8−8972(JP,A) 予備通信不要なID−based暗号 化鍵共有の新方式の提案(第3報),電 子情報通信学会技術研究報告,1991年11 月29日,Vol.91,No.359(IS EC91−39),p.21−24 IDによる共通暗号化鍵生成方式 逐 次加算型乱数項消去法の提案,電子情報 通信学会技術研究報告,1992年12月 7 日,Vol.92,No.355(ISEC 92−60),p.29−38 (58)調査した分野(Int.Cl.7,DB名) H04L 9/08 JICSTファイル(JOIS)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 センタ装置から複数のエンティティ装置
    夫々へ各エンティティ固有の暗号鍵を送付し、一方のエ
    ンティティ装置が前記センタ装置から送付された該エン
    ティティ固有の暗号鍵と公開された他方のエンティティ
    の公開鍵とを利用して平文を暗号文に暗号化して他方の
    エンティティ装置へ伝送し、該他方のエンティティ装置
    が伝送された暗号文を前記センタ装置から送付された該
    エンティティ固有の暗号鍵と公開された前記一方のエン
    ティティの公開鍵とを利用して元の平文に復号すること
    により、エンティティ装置間で情報の通信を行う暗号通
    信方法において、前記センタ装置にて、 公開鍵として公開された各エンテ
    ィティ固有の第1の鍵とセンタ装置が管理する対称行列
    とから(2)式に基づいて、第1の鍵を変数とする第1
    の関数で表される各エンティティ固有の秘密の第2の鍵
    を生成し、各エンティティ固有の乱数と第2の鍵とから
    (3)式に基づいて第1秘密鍵を生成し、前記乱数から
    (4)式に基づいて第2秘密鍵を生成し、生成した第1
    秘密鍵及び第2秘密鍵を各エンティティ装置に送付し、 一方のエンティティ装置にて、第1秘密鍵及び第2秘密
    鍵と他方のエンティティの第1の鍵とを用いて、 自身の
    第2の鍵及び相手の第1の鍵2変数とする第2の関数
    で表され、平文を暗号文に暗号化する際及び暗号文を平
    文に復号する際に用いる両エンティティ間で共有する第
    3の鍵を(5),(6)式に基づいて生成し、 第1の鍵、第2の鍵及び第3の鍵を 使用して、エンティ
    ティ装置間で暗号化した情報の通信を行うこととする
    、第2の関数に第1の関数を代入して得られる、自身
    及び相手の第1の鍵を変数とする第3の関数を、それぞ
    れの変数について(1)式に定義されるような分離不可
    能な関数に設定することを特徴とする暗号通信方法。f(x+y)≠f(x)○f(y) …(1) 但し、 適当な可換な算法を○として、関数f(・)が次
    式を満たす場合に、関数f(・)は算法○により分離不
    可能であると定義する。 【数1】 【数2】
JP00897297A 1997-01-21 1997-01-21 暗号通信方法 Expired - Fee Related JP3283202B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00897297A JP3283202B2 (ja) 1997-01-21 1997-01-21 暗号通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00897297A JP3283202B2 (ja) 1997-01-21 1997-01-21 暗号通信方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002010865A Division JP2002290388A (ja) 2002-01-18 2002-01-18 暗号通信方法、暗号化方法及び鍵作成方法並びに暗号通信システム、センタ装置及びエンティティ装置

Publications (2)

Publication Number Publication Date
JPH10210022A JPH10210022A (ja) 1998-08-07
JP3283202B2 true JP3283202B2 (ja) 2002-05-20

Family

ID=11707611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00897297A Expired - Fee Related JP3283202B2 (ja) 1997-01-21 1997-01-21 暗号通信方法

Country Status (1)

Country Link
JP (1) JP3283202B2 (ja)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IDによる共通暗号化鍵生成方式 逐次加算型乱数項消去法の提案,電子情報通信学会技術研究報告,1992年12月 7日,Vol.92,No.355(ISEC92−60),p.29−38
予備通信不要なID−based暗号化鍵共有の新方式の提案(第3報),電子情報通信学会技術研究報告,1991年11月29日,Vol.91,No.359(ISEC91−39),p.21−24

Also Published As

Publication number Publication date
JPH10210022A (ja) 1998-08-07

Similar Documents

Publication Publication Date Title
Mambo et al. Proxy cryptosystems: Delegation of the power to decrypt ciphertexts
CN114282928B (zh) 基于区块链系统结合钱包管理系统的加密密钥存储和转移
US5812671A (en) Cryptographic communication system
JPH0918469A (ja) 暗号通信装置、システム及び暗号装置
Chang et al. A new generalized group-oriented cryptoscheme without trusted centers
JP4450969B2 (ja) 鍵共有システム,秘密鍵生成装置,共通鍵生成システム,暗号通信方法,暗号通信システム及び記録媒体
Qin et al. Simultaneous authentication and secrecy in identity-based data upload to cloud
CN113378204A (zh) 一种结合混沌和sm9的复合标识密码方法
JP4485122B2 (ja) 公開鍵暗号システム,署名システム,暗号通信システム,秘密鍵生成器,公開鍵生成器及びコンピュータプログラム
JP2000047581A (ja) 暗号化方法,暗号化・復号装置及び暗号通信システム
JP3283202B2 (ja) 暗号通信方法
CN116743358A (zh) 一种可否认的多接收者认证方法及系统
Bultel et al. A posteriori openable public key encryption
JP3622072B2 (ja) 暗号通信方法
JP2002290388A (ja) 暗号通信方法、暗号化方法及び鍵作成方法並びに暗号通信システム、センタ装置及びエンティティ装置
Wang et al. Authorization-limited transformation-free proxy cryptosystems and their security analyses
JP3464153B2 (ja) 暗号通信方法及び暗号通信システム
JPH11317733A (ja) 暗号通信方法及び暗号化方法並びに暗号通信システム
JP2000216768A (ja) 暗号化方法及び暗号通信方法並びに暗号通信システム
JP3587746B2 (ja) 秘密鍵生成器,暗号化装置,暗号通信方法,暗号通信システム及び記録媒体
Venkateswarlu et al. An Expensive Study of Homomorphic Encryption to Secure Cloud Data
JP2001053738A (ja) 秘密鍵生成方法,暗号化方法及び暗号通信方法
JP3657803B2 (ja) 秘密鍵生成装置,暗号化装置,暗号通信方法,暗号通信システム,共通鍵生成装置及び記録媒体
JP2002118544A (ja) 暗号化方法,暗号通信方法,秘密鍵生成方法,共有鍵生成方法,暗号通信システム,秘密鍵生成装置,共有鍵生成装置及び記録媒体
Kuang-Hui et al. A new group key generating model for group sharing

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080301

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090301

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090301

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100301

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees