JP3953235B2 - Cryptographic communication method and cryptographic communication system - Google Patents

Cryptographic communication method and cryptographic communication system Download PDF

Info

Publication number
JP3953235B2
JP3953235B2 JP20390399A JP20390399A JP3953235B2 JP 3953235 B2 JP3953235 B2 JP 3953235B2 JP 20390399 A JP20390399 A JP 20390399A JP 20390399 A JP20390399 A JP 20390399A JP 3953235 B2 JP3953235 B2 JP 3953235B2
Authority
JP
Japan
Prior art keywords
entity
key
secret
unique
vector
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
JP20390399A
Other languages
Japanese (ja)
Other versions
JP2001036516A (en
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 JP20390399A priority Critical patent/JP3953235B2/en
Publication of JP2001036516A publication Critical patent/JP2001036516A/en
Application granted granted Critical
Publication of JP3953235B2 publication Critical patent/JP3953235B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、暗号文にて通信を行う暗号通信方法及び暗号通信システムに関する。
【0002】
【従来の技術】
高度情報化社会と呼ばれる現代社会では、コンピュータネットワークを基盤として、ビジネス上の重要な文書・画像情報が電子的な情報という形で伝送通信されて処理される。このような電子情報は、容易に複写が可能である、複写物とオリジナルとの区別が困難であるという性質があり、情報保全の問題が重要視されている。特に、「コンピュータリソースの共有」,「マルチアクセス」,「広域化」の各要素を満たすコンピュータネットワークの実現が高度情報化社会の確立に不可欠であるが、これは当事者間の情報保全の問題とは矛盾する要素を含んでいる。このような矛盾を解消するための有効な手法として、人類の過去の歴史上主として軍事,外交面で用いられてきた暗号技術が注目されている。
【0003】
暗号とは、情報の意味が当事者以外には理解できないように情報を交換することである。暗号において、誰でも理解できる元の文(平文)を第三者には意味がわからない文(暗号文)に変換することが暗号化であり、また、暗号文を平文に戻すことが復号であり、この暗号化と復号との全過程をまとめて暗号系と呼ぶ。暗号化の過程及び復号の過程には、それぞれ暗号化鍵及び復号鍵と呼ばれる秘密の情報が用いられる。復号時には秘密の復号鍵が必要であるので、この復号鍵を知っている者のみが暗号文を復号でき、暗号化によって情報の秘密性が維持され得る。
【0004】
暗号化鍵と復号鍵とは、等しくても良いし、異なっていても良い。両者の鍵が等しい暗号系は、共通鍵暗号系と呼ばれ、米国商務省標準局が採用したDES(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 scheme)と呼ばれており、通信相手のID情報を用いて予備通信を行うことなく暗号化鍵を共有する方式を採用している。ID−NIKSは、送受信者間で公開鍵,秘密鍵を交換する必要がなく、また鍵のリスト及び第三者によるサービスも必要としない方式であり、任意のエンティティ間で安全に通信を行える。
【0008】
図4は、このID−NIKSのシステムの原理を示す図である。信頼できるセンタの存在を仮定し、このセンタを中心にして共有鍵生成システムを構成している。図4において、エンティティXの特定情報であるエンティティXの名前,住所,電話番号等のID情報は、ハッシュ関数h(・)を用いてh(IDX )で表す。センタは任意のエンティティXに対して、センタ公開情報{PCi },センタ秘密情報{SCi }及びエンティティXのID情報h(IDX )に基づいて、以下のように秘密情報SXiを計算し、秘密裏にエンティティXへ配布する。
Xi=Fi ({SCi },{PCi },h(IDX ))
【0009】
エンティティXは他の任意のエンティティYとの間で、暗号化,復号のための共有鍵KXYを、エンティティX自身の秘密情報{SXi},センタ公開情報{PCi }及び相手先のエンティティYのID情報h(IDY )を用いて以下のように生成する。
XY=f({SXi},{PCi },h(IDY ))
また、エンティティYも同様にエンティティXに対する共有鍵KYXを生成する。もし常にKXY=KYXの関係が成立すれば、この鍵KXY,KYXをエンティティX,Y間で暗号化鍵,復号鍵として使用できる。
【0010】
上述した公開鍵暗号系では、例えばRSA暗号系の場合にその公開鍵の長さは現在の電話番号の十数倍となり、極めて煩雑である。これに対して、ID−NIKSでは、各ID情報を名簿という形式で登録しておけば、この名簿を参照して任意のエンティティとの間で共有鍵を生成することができる。従って、図4に示すようなID−NIKSのシステムが安全に実現されれば、多数のエンティティが加入するコンピュータネットワーク上で便利な暗号系を構築できる。このような理由により、ID−NIKSが将来の暗号系の中心になると期待されている。
【0011】
【発明が解決しようとする課題】
通信相手のID情報を用いて予備通信を行うことなく暗号化鍵及び復号鍵となる共有鍵を互いに共有するようなID−NIKSにあっては、複数のエンティティの結託等の攻撃に対して十分に安全であることが望まれる。しかしながら、以上のようなID−NIKSにおいては、攻撃法が検討されて、適当な人数のエンティティが結託すればセンタの秘密パラメータが露呈するという問題を含んでいる。暗号学的に安全なID−NIKSを構築できるか否かは、高度情報化社会に重要な問題であり、より理想的な暗号方式の探究が進められている。
【0012】
上述したような結託攻撃に対して安全性を高めるために、センタから各エンティティへ配布される秘密鍵に予め乱数成分を加えておき、鍵共有の際の非線形操作によってこの乱数成分を除去して共有鍵を得るようにした方式(以下、先行例1という),2つの有限体上での演算により各エンティティ毎に乱数成分を含む複数個1組の秘密鍵を生成し、鍵共有の際に整数環上でこれらの秘密鍵を加算することにより乱数成分を除去して共有鍵を得るようにした方式(特願平10−262035号,特願平10−338190号等、以下、先行例2という)等が、本発明者等によって考案されている。
【0013】
このような先行例1,先行例2は何れも、秘密鍵生成関数及び鍵共有関数が分離不可能であり、鍵共有が十分に高い確率で成功するという特徴があり、従来のID−NIKSに比較して結託攻撃に対して強い。しかしながら、IDベクトルの次元が比較的小さい場合には、LLL(Lenstra-Lenstra-Lovasz)アルゴリズムの適用によって、第三者の秘密鍵を偽造する攻撃ばかりでなく、センタの秘密行列を導く攻撃も行える可能性があるということが解明された。
【0014】
本発明は斯かる事情に鑑みてなされたものであり、LLLアルゴリズムに基づく攻撃に対して安全性が高い暗号通信方法及び暗号通信システムを提供することを目的とする。
【0015】
【課題を解決するための手段】
請求項1に係る暗号通信方法は、センタ装置から各エンティティ装置へ各エンティティ固有の秘密鍵を送付し、一方のエンティティ装置が前記センタ装置から送付された該エンティティ固有の秘密鍵と公開された他方のエンティティの公開鍵とから求めた共有鍵を利用して平文を暗号文に暗号化して他方のエンティティ装置へ伝送し、該他方のエンティティ装置が伝送された暗号文を、前記センタ装置から送付された該エンティティ固有の秘密鍵と公開された前記一方のエンティティの公開鍵とから求めた、前記共有鍵と同一の共有鍵を利用して元の平文に復号することにより、暗号文通信に先立ってエンティティ装置間での予備通信を必要としない方式にて、エンティティ装置間で情報の通信を行う暗号通信方法において、前記センタ装置は、前記各エンティティ毎に固有の法を設定し、前記各エンティティ毎に設定した固有の法により前記各エンティティ固有の秘密鍵を生成し、前記一方及び他方のエンティティ装置は、前記各エンティティ毎に設定した固有の法に基づいて共通の法を求め、求めた共通の法により前記共有鍵を生成することを特徴とする。
【0017】
請求項2に係る暗号通信方法は、請求項1において、前記センタ装置は、各エンティティの公開鍵を用いて各エンティティの秘密ベクトルを求め、求めた各エンティティの秘密ベクトルと各エンティティ固有の個人秘密乱数ベクトルとを用いて、前記各エンティティ毎に設定した固有の法により前記各エンティティ固有の秘密鍵を生成することを特徴とする。
請求項3に係る暗号通信方法は、請求項1又は請求項2において、前記センタ装置は、前記各エンティティの公開鍵、各エンティティの特定情報に基づいて求めることを特徴とする。
請求項4に係る暗号通信システムは、送信すべき情報である平文を暗号文に暗号化する処理、及び、送信された暗号文を元の平文に復号する処理を、暗号文通信に先立って複数のエンティティ装置間での予備通信を必要としない方式にて、複数のエンティティ装置間で相互に行う暗号通信システムにおいて、各エンティティ毎に固有の法を設定する手段、設定した法により各エンティティ固有の秘密鍵を生成する手段、及び、生成した秘密鍵を各エンティティ装置へ送付する手段を備えるセンタ装置と、各エンティティ毎に設定した固有の法に基づいて共通の法を求める手段、及び、求めた共通の法により、前記センタ装置から送付された自身固有の秘密鍵と通信対象のエンティティの公開鍵とを用いて、前記暗号化する処理及び復号する処理を行うための共有鍵を生成する手段を備える複数のエンティティ装置とを有することを特徴とする。
【0018】
本発明では、、各エンティティ毎に各エンティティ固有の法を設定し、設定した法により各エンティティ固有の秘密鍵を生成する。よって、先行例1,2も含めた従来のID−NIKSのように、秘密鍵を生成する際に全エンティティで共通の法を用いることがないので、LLLアルゴリズムを用いた攻撃に対して強力となる。
【0019】
【発明の実施の形態】
以下、本発明の実施の形態について具体的に説明する。
図1は、本発明の暗号通信システムの構成を示す模式図である。情報の隠匿を信頼できる1個の統括センタ1とdg 個の分割センタ10とが設定されている。これらの統括センタ1及び分割センタ10としては、例えば社会の公的機関を該当できる。この統括センタ1と、この暗号系システムを利用するユーザとしての複数の各エンティティa,b,…,zとは秘密通信路2a,2b,…,2zにより接続されており、この秘密通信路2a,2b,…,2zを介してセンタ1から秘密の鍵情報が各エンティティa,b,…,zへ伝送されるようになっている。また、2人のエンティティの間には通信路3ab,3az,3bz,…が設けられており、この通信路3ab,3az,3bz,…を介して通信情報を暗号化した暗号文が互いのエンティティ間で伝送されるようになっている。
【0020】
本発明は、先行例1の手法を基本とした方式及び先行例2の手法を基本とした方式の何れにも適用可能であるが、以下の例では先行例1の手法を基本とした方式に本発明を適用した場合について説明する。
【0021】
(統括センタ1での準備処理)
▲1▼ 第1IDベクトル(df 次元,各成分はLf ビット)を生成するための一方向性関数f(・)を公開する。
▲2▼ 第2IDベクトル(dg 次元,各成分はGF(2)の元)を生成するための一方向性関数g(・)を公開する。
▲3▼ エンティティiの固有の乱数ベクトルri (dr 次元,各成分はLr ビット)を生成する。
【0022】
但し、エンティティiの第1IDベクトル,第2IDベクトルは夫々、下記(1),(2)で表すものとし、第2IDベクトルwi に対して成分が1となるインデックスの集合をWi ={j|wij=1}とする。
【0023】
【数1】

Figure 0003953235
【0024】
(j番目(j=1,2,・・・,dg )の分割センタ10での準備処理)
▲1▼ 素数P(j) を生成して、これを公開する。
▲2▼ 秘密対称行列T(j) を生成する。
【0025】
(エンティティの登録処理)
エンティティiに登録を依頼された統括センタ1及び各分割センタ10は、以下のような処理を行う。
▲1▼ 統括センタ1は、j∈Wi なるj番目の分割センタ10に対して、エンティティi用の秘密ベクトルxi の計算を依頼する。
▲2▼ j番目の分割センタ10は、ベクトルvi を用いて、エンティティi用の秘密ベクトルxi (j) を下記(3)に従って計算し、これを統括センタ1へ送付する。
ベクトルxi (j) ≡T(j) ベクトルvi (mod P(j) ) …(3)
▲3▼ 統括センタ1は、エンティティiに固有の法Pi を下記(4)に従って求めた後、中国人の剰余定理を用いて秘密ベクトルxi を下記(5)に従って計算する。ここで、秘密ベクトルxi はPi を法として一意に定まる。
【0026】
【数2】
Figure 0003953235
【0027】
▲4▼ 統括センタ1は、更に、個人秘密乱数ベクトルri を用いてエンティティiの秘密鍵si を下記(6)に従って計算し、これをエンティティiへ秘密裏に送る。
【0028】
【数3】
Figure 0003953235
【0029】
(エンティティ間の共有鍵の生成処理)
エンティティiは、以下のような計算手順によって、通信対象のエンティティmとの共有鍵Kimを求める。
▲1▼ エンティティiとエンティティmとの間での共通の法Pimを下記(7)に従って求める。
【0030】
【数4】
Figure 0003953235
【0031】
▲2▼ 下記(8)に従ってKim′を計算する。
【0032】
【数5】
Figure 0003953235
【0033】
▲3▼ 下記(9)に従って共有鍵Kimを計算する。但し、Dは統括センタ1が予め公開している自然数であり、下記(10)の条件を満たす。
【0034】
【数6】
Figure 0003953235
【0035】
次に、上述した暗号システムにおけるエンティティ間の情報の通信について説明する。図2は、2人のエンティティi,m間における情報の通信状態を示す模式図である。図2の例は、エンティティiが平文(メッセージ)Mを暗号文Cに暗号化してそれをエンティティmへ伝送し、エンティティmがその暗号文Cを元の平文(メッセージ)Mに復号する場合を示している。
【0036】
エンティティi側には、エンティティmの個人識別情報IDm を入力し、関数h(・)を利用してベクトルvm (公開鍵)を得る公開鍵生成器11と、統括センタ1から送られる秘密鍵ベクトルsi と公開鍵生成器11からの公開鍵であるベクトルvm と公開された自然数Dとに基づいてエンティティiが求めるエンティティmとの共有鍵Kimを生成する共有鍵生成器12と、共有鍵Kimを用いて平文(メッセージ)Mを暗号文Cに暗号化して通信路30へ出力する暗号化器13とが備えられている。
【0037】
また、エンティティm側には、エンティティiの個人識別情報IDi を入力し、関数h(・)を利用してベクトルvi (公開鍵)を得る公開鍵生成器21と、統括センタ1から送られる秘密のベクトルsm と公開鍵生成器21からの公開鍵であるベクトルvi と公開された自然数Dとに基づいてエンティティmが求めるエンティティiとの共有鍵Kmiを生成する共有鍵生成器22と、共有鍵Kmiを用いて通信路30から入力した暗号文Cを平文(メッセージ)Mに復号して出力する復号器23とが備えられている。
【0038】
次に、動作について説明する。エンティティiからエンティティmへ情報を伝送しようとする場合、まず、エンティティmの個人識別情報IDm が公開鍵生成器11に入力されてベクトルvm (公開鍵)が得られ、得られたベクトルvm が共有鍵生成器12へ送られる。また、統括センタ1及び分割センタ10にて上記(3)〜(6)に従って求められたベクトルsi が共有鍵生成器12へ入力される。そして、上記式(7)〜(9)に従って共有鍵Kimが求められ、暗号化器13へ送られる。暗号化器13において、この共有鍵Kimを用いて平文(メッセージ)Mが暗号文Cに暗号化され、暗号文Cが通信路30を介して伝送される。
【0039】
通信路30を伝送された暗号文Cはエンティティmの復号器23へ入力される。エンティティiの個人識別情報IDi が公開鍵生成器21に入力されてベクトルvi (公開鍵)が得られ、得られたベクトルvi が共有鍵生成器22へ送られる。また、統括センタ1及び分割センタ10にて上記(3)〜(6)に従って求められたベクトルsm が共有鍵生成器22へ入力される。そして、上記式(7)〜(9)に従って共有鍵Kmiが求められ、復号器23へ送られる。復号器23において、この共有鍵Kmiを用いて暗号文Cが平文(メッセージ)Mに復号される。
【0040】
なお、先行例1の手法を基本とした方式に本発明を適用した場合について説明したが、本発明は先行例2の手法を基本とした方式にも適用できる。この場合には、例えば、上記(6)に加えて下記(11)のような秘密鍵ベクトルsi ′を用いて、鍵共有を行うようにすれば良い。但し、Qi はエンティティi固有の法である。この場合には、鍵共有の段階で個人秘密乱数ベクトルri が消去されるので、そのベクトルri の成分を大きく設定することが可能である。
【0041】
【数7】
Figure 0003953235
【0042】
以下、本発明の方式におけるエンティティ間での鍵共有に必要な諸条件について説明する。
【0043】
(各要素のビット数)
十分に高い確率で鍵共有を成功させるためには、エンティティiに固有の秘密乱数ベクトルri の各成分の大きさLr を log 2(Pim),Dよりも十分小さく設定する必要がある。即ち、下記(12)とし、更に下記(13)となるようにすれば良い。また、LLL法による結託攻撃に対してより安全にするためには、下記(14)を満たすようにLr を設定する。なお、eは桁上がりのための余裕、kは設計値である。
【0044】
【数8】
Figure 0003953235
【0045】
(関数g)
関数gにより、第2IDベクトルwi が定まるが、ベクトルwi は、秘密鍵ベクトルxi の法Pi 及び鍵共有の際に用いる法Pimの設定に用いられる。従って、法Pi 及び法Pimがある程度以上の大きさになるように、ベクトルwi の成分が1となる個数(ベクトルwi の重み=#Wi )及び#{Wi ∩Wm }の大きさを適切に与える必要がある。
【0046】
#Wi 及び#{Wi ∩Wm }がある一定の大きさよりも必ず大きくなるようなベクトルwi ,ベクトルwm を生成するためには、例えばID情報をある一方向性関数h(・)に通したデータをM系列符号のような定重み符号で符号化すれば良い。符号長nビット,重み2dの定重み符号語を第2IDベクトルとした場合、異なる2つの符号語の1の位置はd箇所で必ず一致する。従って、この定重み2dの符号語を用いることにより、法Pimの大きさをある大きさ以上にすることが可能である。
【0047】
例えば、3ビットの情報記号に対して、符号長n=23 −1=7,重み2d=2k-1 =4となる定重み符号を考える。この場合、情報記号は(0,0,0)を除いて3ビットで表せるので、7種類存在する。エンティティiの第2IDベクトルが符号語(1,1,1,0,0,1,0)、エンティティmの第2IDベクトルが符号語(1,0,0,1,0,1,1)で与えられた場合、Pim=P(1) (6) となる。
【0048】
(定重み符号による第2IDベクトルの生成)
後述するように、第2IDベクトルの0の成分の割合が高ければ高い程、LLL法を用いた結託攻撃に対する安全性は高くなるが、0の成分の割合を高くすれば、#{Wi ∩Wm }をある値以上に保つことは容易でない。これを実現するために、以下のような定重み符号を階層的に適用する。
【0049】
▲1▼ h(・)を一方向性関数として、エンティティのID情報から生成した値をb=2k −1進数で表記する。即ち、下記(15)のように定義する。
【0050】
【数9】
Figure 0003953235
【0051】
▲2▼ wij′を符号化し、この符号語をcijとする。但し、符号化は、M系列(例:k=3の場合に(1001011))をwij′ビットだけ左巡回シフトすることによって行う。
▲3▼ ci0の0の位置をbビットの0に置き換え、1の位置を左から順に下記(16)に示すbビットの符号語で置き換える。これにより、符号長b2 ,重み(2k-1 2 の符号語に拡大することができる。
【0052】
【数10】
Figure 0003953235
【0053】
▲4▼ 以上の処理をt回階層的に繰り返すことにより、符号長bt ,重み(2k-1 t の符号語に拡大することができる。なお、異なる第2IDベクトルのビットANDをとった場合の1の個数、即ち#Wimは必ず(2k-2 t 以上となる。
【0054】
上記▲1▼〜▲4▼を簡単な例で説明する。k=3,b=2k −1=7,t=2とした場合、以下のようになる。
h(IDA )=14761 =6+3・7+0・72 +1・73 +2・74
ベクトルwA ′=(6,3,0,1,2)
ベクトルwA ′の符号化:
(6,3,0,1,2)→(1100101, 1011100, 1001011, 0010111, 0101110) この場合、g(IDA )の計算結果は、下記(17)で与えられる。
【0055】
【数11】
Figure 0003953235
【0056】
次に、本発明のID−NIKSに対するLLLアルゴリズムを用いた攻撃手法について考察する。
【0057】
(第三者の秘密ベクトルの偽造攻撃)
LLLアルゴリズムを用いて犠牲エンティティvの秘密鍵ベクトルsv の近似値を求める手法について検討する。犠牲エンティティvの秘密鍵ベクトルsv の近似値を求めるためには、犠牲エンティティvと同じ法Pv またはそれを因数に含む法で生成された結託エンティティの秘密鍵ベクトルが必要である。即ち、第2IDベクトルが犠牲エンティティvのそれと同じか、それを含むような第2IDベクトルを有する結託エンティティが必要であり、第2IDベクトルの構成を工夫することにより、この攻撃法を不可能とすることができる。
【0058】
また、犠牲エンティティvの法Pv の因数を部分的に含む法を有する結託エンティティによる攻撃法も考えられるが、もし各P(j) における法で攻撃を行おうとしても、ベクトルri の成分がP(j) よりも大きくなり、攻撃は不可能である。また、先行例2の手法に基づく方式では、ベクトルri の成分がより大きく設定可能であり、この攻撃法はより困難となる。更に、攻撃の最終段階で中国人の剰余定理を適用する必要があり、そのときに各結託エンティティ固有の小さな乱数項に大きな値が乗じられるので、このような攻撃手法も成功する確率は十分低い。
【0059】
(センタ秘密行列を求める結託攻撃法)
LLLアルゴリズムを適用して、直接センタの秘密対称行列Tを導く攻撃に関して検討する。ここで、tp,j は対称行列Tの第p行第j列の成分であり、対称行列Tは、T≡T(j) (mod P(j) )(j=1,2,・・・,dg )を満たす。
【0060】
結託エンティティiの秘密鍵ベクトルsi の第1成分は、下記(18)で表せる。これをri1について解くと、下記(19)となる。式(19)における既知項は下記(20)であり、未知項は下記(21)である。
【0061】
【数12】
Figure 0003953235
【0062】
ここで、n人の結託エンティティ(i=1,2,・・・,n)の上記式(19)における既知項と未知項とから、下記(22)の行列方程式を構成する。
【0063】
【数13】
Figure 0003953235
【0064】
上記(22)の右辺の[−r11,−r12,・・・,−r1n]は小さなベクトルであるため、これを格子の最小基底ベクトルと見なしてLLLアルゴリズムを適用した場合には、下記(23)に示す未知項が求まる可能性がある。
【0065】
【数14】
Figure 0003953235
【0066】
下記(24)に示す未知項は、下記(25)に示す法のもとに一意に定まり、それらの桁数は下記(26)に示すものの桁数にほぼ等しくなる。
【0067】
【数15】
Figure 0003953235
【0068】
一方、エンティティiが保有する秘密成分は、法Pi を用いて導出されており、未知項tp,j と結託エンティティiが保有する秘密成分との桁数の大きさの比は、関数g(・)の次元数dg とその成分が1である個数との比にほぼ等しくなる。この比をRとした場合、このような結託攻撃が成功するためには、少なくともdf Rの結託エンティティが必要となる。
【0069】
従って、結託攻撃に対してより安全な方式にするためには、この比Rを大きくすれば良い。例えば、前述したようなM系列定重み符号を階層的に用いてg(・)を構成する場合、各パラメータをk=3,t=4としたとき、その次元dg は74 =2401となるのに対して、その重みは44 =256 であり、比Rは約9.38となる。この場合、鍵共有の際に用いる法Piwの大きさを規定するパラメータ#Wimは24 =16となる。更に、P(j) を20ビット程度の素数とした場合、 log 2(Pim)は約320 であり、結託攻撃に用いる共通の法の大きさは、下記(27)となる。
【0070】
【数16】
Figure 0003953235
【0071】
この場合の本発明の方式に対する結託攻撃では、結託エンティティ数を9df 以上必要とし、LLLアルゴリズムを用いた攻撃の際の計算は48020 ビット程度の演算になって、膨大な計算量を必要とする。
【0072】
このように本発明の方式は、結託閾値と個々の乗除算の計算量との二点に関して、先行例1,2に比べて、LLLアルゴリズムを用いた結託攻撃に対してより安全な方式となっている。また、上述した暗号通信システムでは、1つの統括センタと複数の分割センタとが設けられ、各分割センタがエンティティの秘密ベクトルを求めるようにしたので、全てのエンティティの秘密を1つのセンタが握るようなことはなく、 Big Brother 問題を解決できている。
【0073】
図3は、本発明の記録媒体の実施の形態の構成を示す図である。以下に説明する記録媒体に記録されており、上記(4)に示す各エンティティ固有の法を求める処理と、上記(5),(6)に示す各エンティティ固有の秘密鍵を計算する処理とを含むプログラムがロードされるコンピュータ40は、統括センタ1側に設けられている。また、以下に説明する記録媒体に記録されており、上記(7)に示すエンティティ間での共通の法を求める処理と、上記(8),(9)に示すエンティティ間の共有鍵を計算する処理とを含むプログラムがロードされるコンピュータ40は、各エンティティ側に設けられている。
【0074】
図3において、コンピュータ40とオンライン接続する記録媒体41は、コンピュータ40の設置場所から隔たって設置される例えばWWW(World Wide Web)のサーバコンピュータを用いてなり、記録媒体41には前述の如きプログラム41a が記録されている。記録媒体41から読み出されたプログラム41a がコンピュータ40を制御することにより、統括センタ1において各エンティティ固有の秘密鍵を生成し、各エンティティにおいて通信対象のエンティティに対する共有鍵を生成する。
【0075】
コンピュータ40の内部に設けられた記録媒体42は、内蔵設置される例えばハードディスクドライブまたはROMなどを用いてなり、記録媒体42には前述の如きプログラム42a が記録されている。記録媒体42から読み出されたプログラム42a がコンピュータ40を制御することにより、統括センタ1において各エンティティ固有の秘密鍵を生成し、各エンティティにおいて通信対象のエンティティに対する共有鍵を生成する。
【0076】
コンピュータ40に設けられたディスクドライブ40aに装填して使用される記録媒体43は、運搬可能な例えば光磁気ディスク,CD−ROMまたはフレキシブルディスクなどを用いてなり、記録媒体43には前述の如きプログラム43a が記録されている。記録媒体43から読み出されたプログラム43a がコンピュータ40を制御することにより、統括センタ1において各エンティティ固有の秘密鍵を生成し、各エンティティにおいて通信対象のエンティティに対する共有鍵を生成する。
【0077】
【発明の効果】
以上詳述したように、本発明では、各エンティティ毎に各エンティティ固有の法を設定し、設定した法により各エンティティ固有の秘密鍵を生成するようにしたので、LLLアルゴリズムに基づく攻撃に対して安全性を高くすることが可能となる。
【図面の簡単な説明】
【図1】本発明の暗号通信システムの構成を示す模式図である。
【図2】2人のエンティティ間における情報の通信状態を示す模式図である。
【図3】記録媒体の実施の形態の構成を示す図である。
【図4】ID−NIKSのシステムの原理構成図である。
【符号の説明】
1 統括センタ
10 分割センタ
11,21 公開鍵生成器
12,22 共有鍵生成器
13 暗号化器
23 復号器
30 通信路
40 コンピュータ
41,42,43 記録媒体[0001]
BACKGROUND OF THE INVENTION
  The present inventionIs darkENCRYPTION COMMUNICATION METHOD AND ENCRYPTION COMMUNICATION SYSTEMToRelated.
[0002]
[Prior art]
In a modern society called an advanced information society, important business documents and image information are transmitted, communicated and processed in the form of electronic information based on a computer network. Such electronic information has the property that it can be easily copied, and it is difficult to distinguish between a copy and the original, and the problem of information maintenance is regarded as important. In particular, the realization of a computer network that satisfies the elements of "computer resource sharing", "multi-access", and "broadening" is essential for establishing an advanced information society. Contains conflicting elements. As an effective technique for resolving such contradiction, attention has been paid to cryptographic techniques that have been used mainly in the military and diplomatic aspects of human history.
[0003]
Cryptography is the exchange of information so that the meaning of the information cannot be understood by anyone other than the parties. In cryptography, encryption is the conversion of an original sentence (plain text) that anyone can understand into a sentence (cipher text) whose meaning is unknown to a third party, and decryption is to convert the cipher text back to plain text. The entire process of encryption and decryption is collectively called an encryption system. In the encryption process and the decryption process, secret information called an encryption key and a decryption key is used, respectively. Since a secret decryption key is required at the time of decryption, only a person who knows the decryption key can decrypt the ciphertext, and the confidentiality of information can be maintained by the encryption.
[0004]
The encryption key and the decryption key may be the same or different. An encryption system in which both keys are equal is called a common key encryption system, and DES (Data Encryption Standards) adopted by the US Bureau of Commerce Standards is a typical example. In addition, as an example of an encryption system in which both keys are different, an encryption system called a public key encryption system has been proposed. In this public key cryptosystem, each user (entity) using the cryptosystem creates a pair of encryption key and decryption key, publishes the encryption key in the public key list, and keeps only the decryption key secret It is a cryptographic system that does. In the public key cryptosystem, the pair of encryption key and decryption key are different, and the decryption key cannot be calculated from the encryption key by using a one-way function.
[0005]
The public key cryptosystem is an epoch-making cryptosystem that publishes an encryption key, and conforms to the above three elements necessary for establishing an advanced information society. In order to make use of the RSA cryptosystem, the research is actively conducted, and the RSA cryptosystem is proposed as a typical public key cryptosystem. This RSA cryptosystem is realized using the difficulty of prime factorization as a one-way function. In addition, public-key encryption system that uses the difficulty of solving the discrete logarithm problem (discrete logarithm problem) have also been proposed various methods.
[0006]
In addition, an encryption system using ID (Identity) information for identifying an individual such as an address and a name of each entity has been proposed. In this encryption system, a common encryption key is generated between the sender and the receiver based on the ID information. In addition, the encryption technique based on this ID information includes (1) a method that requires preliminary communication between the sender and receiver prior to ciphertext communication, and (2) a backup between the sender and receiver prior to ciphertext communication. There are methods that do not require communication. In particular, since the method (2) does not require preliminary communication, the convenience of the entity is high, and it is considered to be the center of the future encryption system.
[0007]
The encryption system using the method (2) is called ID-NIKS (ID-based non-interactive key sharing scheme), and the encryption key is shared without performing preliminary communication using the ID information of the communication partner. The method to do is adopted. ID-NIKS is a method that does not require the exchange of a public key and a secret key between senders and receivers, and does not require a list of keys or a service by a third party, and allows secure communication between arbitrary entities.
[0008]
FIG. 4 is a diagram showing the principle of the ID-NIKS system. Assuming the existence of a reliable center, the shared key generation system is configured around this center. In FIG. 4, ID information such as the name, address, and telephone number of the entity X, which is the specific information of the entity X, is represented by h (ID) using a hash function h (•).X). The center makes center public information {PC for any entity Xi}, Center secret information {SCi} And ID information h (ID of entity XX) Based on the secret information SXiAnd secretly distribute to entity X.
SXi= Fi({SCi}, {PCi}, H (IDX))
[0009]
Entity X is shared with any other entity Y for shared key K for encryption and decryptionXY, Secret information of entity X itself {SXi}, Center disclosure information {PCi} And ID information h (ID of the entity Y of the other partyY) To generate as follows.
KXY= F ({SXi}, {PCi}, H (IDY))
Similarly, entity Y is also entity XAgainstShared key KYXIs generated. If always KXY= KYXIf this relationship is established, this key KXY, KYXCan be used as an encryption key and a decryption key between entities X and Y.
[0010]
In the above-described public-key cryptosystem, for example, the length of the public key for RSA cryptosystem becomes ten times the current phone number is extremely complicated. On the other hand, in ID-NIKS, if each ID information is registered in the form of a name list, a shared key can be generated with an arbitrary entity by referring to the name list. Therefore, if the ID-NIKS system as shown in FIG. 4 is implemented safely, a convenient cryptosystem can be constructed on a computer network to which many entities join. For these reasons, ID-NIKS is expected to become the center of future cryptographic systems.
[0011]
[Problems to be solved by the invention]
ID-NIKS that shares the encryption key and the shared key that is the decryption key without performing preliminary communication using the ID information of the communication partner is sufficient against attacks such as collusion of multiple entities. It is desirable to be safe. However, in the ID-NIKS as described above, an attack method is studied, and if an appropriate number of entities collide, the secret parameter of the center is exposed. Whether or not a cryptographically secure ID-NIKS can be constructed is an important issue in the advanced information society, and the search for more ideal cryptosystems is underway.
[0012]
In order to increase the security against the collusion attack as described above, a random number component is added in advance to the secret key distributed from the center to each entity, and this random component is removed by a non-linear operation at the time of key sharing. A method in which a shared key is obtained (hereinafter referred to as preceding example 1), a set of a plurality of secret keys including a random number component for each entity is generated by operations on two finite fields, and at the time of key sharing A method in which a random key component is removed by adding these secret keys on an integer ring to obtain a shared key (Japanese Patent Application No. 10-262035, Japanese Patent Application No. 10-338190, etc. Have been devised by the present inventors.
[0013]
Both of the preceding example 1 and the preceding example 2 are characterized in that the secret key generation function and the key sharing function cannot be separated, and the key sharing succeeds with a sufficiently high probability. Compared to collusion attacks. However, when the dimension of the ID vector is relatively small, the application of the LLL (Lenstra-Lenstra-Lovasz) algorithm can be used not only to forge a third-party secret key but also to attack the center secret matrix. It was clarified that there was a possibility.
[0014]
  The present invention has been made in view of such circumstances, and is highly safe against attacks based on the LLL algorithm.DarkNo. communication methodas well asCryptographic communication systemTheThe purpose is to provide.
[0015]
[Means for Solving the Problems]
  In the cryptographic communication method according to claim 1, a secret key unique to each entity is sent from the center apparatus to each entity apparatus, and one entity apparatus is disclosed with the secret key unique to the entity sent from the center apparatus. The plaintext is encrypted into ciphertext using the shared key obtained from the public key of the entity and transmitted to the other entity device, and the ciphertext transmitted by the other entity device is sent from the center device. By decrypting the original plaintext using the same shared key as the shared key, which is obtained from the private key unique to the entity and the public key of the one entity that has been made public,In a method that does not require preliminary communication between entity devices prior to ciphertext communication,In an encryption communication method for communicating information between entity devices,The center device isSet a unique law for each entity,Set for each entityGenerating a secret key unique to each entity according to a specific law;The one and other entity devices are set for each entity.A common method is obtained based on a unique method, and the shared key is generated by the obtained common method.
[0017]
  The encryption communication method according to claim 2 is the method of claim 1,The center device isFind each entity's secret vector using each entity's public key,For each entitySecret vector and each entity specificPersonal secret random vectorAndSet for each entityBy its own lawGenerate a secret key unique to each entityIt is characterized by that.
  The cryptographic communication method according to claim 3 is the method according to claim 1 or 2,The center device isPublic key of each entityThe, Based on the specific information of each entity.
  ClaimItem 4The cryptographic communication system according to the present invention includes a process for encrypting plaintext, which is information to be transmitted, into ciphertext, and a process for decrypting the transmitted ciphertext into the original plaintext,In a method that does not require preliminary communication between multiple entity devices prior to ciphertext communication,In a cryptographic communication system that mutually performs between a plurality of entity devices, means for setting a unique method for each entity, means for generating a secret key unique to each entity by the set method, and the generated secret key for each entity A center device comprising means for sending to the device;Set for each entitySeeking common law based on specific lawMeans, andAccording to the obtained common law, the own private key sent from the center device and the communication target entityNoUsing the public keyDoProcessing and decryptionDoGenerate a shared key for processingWith meansAnd a plurality of entity devices.
[0018]
In the present invention, a method unique to each entity is set for each entity, and a secret key unique to each entity is generated by the set method. Therefore, unlike the conventional ID-NIKS including the preceding examples 1 and 2, since a common method is not used for all entities when generating a secret key, it is powerful against attacks using the LLL algorithm. Become.
[0019]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be specifically described.
FIG. 1 is a schematic diagram showing a configuration of a cryptographic communication system according to the present invention. One central center 1 and d that can trust the concealment of informationgOne division center 10 is set. These central center 1 and division center 10 can correspond to, for example, public organizations of society. The central center 1 and a plurality of entities a, b,..., Z as users who use this cryptographic system are connected by secret communication paths 2a, 2b,. , 2b,..., 2z, secret key information is transmitted from the center 1 to the entities a, b,. Further, communication paths 3ab, 3az, 3bz,... Are provided between the two entities, and ciphertexts obtained by encrypting communication information via the communication paths 3ab, 3az, 3bz,. Are transmitted between each other.
[0020]
The present invention can be applied to both the method based on the method of the first example and the method based on the method of the second example. However, in the following example, the method is based on the method of the first example. A case where the present invention is applied will be described.
[0021]
(Preparation process at the general center 1)
(1) First ID vector (dfDimension, each component is LfA one-way function f (•) for generating (bit) is disclosed.
(2) Second ID vector (dgA one-way function g (•) for generating dimensions, each component is an element of GF (2) is disclosed.
(3) Unique random vector r of entity ii(DrDimension, each component is LrBit).
[0022]
However, the first ID vector and the second ID vector of the entity i are represented by the following (1) and (2), respectively, and the second ID vector wiA set of indices whose components are 1 for Wi= {J | wij= 1}.
[0023]
[Expression 1]
Figure 0003953235
[0024]
(Jth (j = 1, 2,..., Dg) Preparatory processing at division center 10)
▲ 1 ▼ Prime number P(j)Generate and publish this.
(2) Secret symmetric matrix T(j)Is generated.
[0025]
(Entity registration process)
The central center 1 and each division center 10 requested to register with the entity i perform the following processing.
(1) The control center 1 has j∈WiThe secret vector x for entity iiRequest the calculation.
(2) The j-th division center 10 is a vector vi, The secret vector x for entity ii (j)Is calculated according to the following (3), and is sent to the general center 1.
Vector xi (j)≡T(j)Vector vi(Mod P(j)(3)
(3) The headquarters center 1 determines the law P specific to the entity i.iIs obtained according to (4) below, and the secret vector x is calculated using the Chinese remainder theorem.iIs calculated according to the following (5). Where secret vector xiIs PiIs uniquely determined by the law.
[0026]
[Expression 2]
Figure 0003953235
[0027]
(4) The general center 1 further determines the personal secret random number vector riEntity i's private key siIs secretly sent to entity i in accordance with (6) below.
[0028]
[Equation 3]
Figure 0003953235
[0029]
(Common key generation process between entities)
The entity i uses the following calculation procedure to share the shared key K with the entity m to be communicated.imAsk for.
(1) Common law P between entity i and entity mimIs obtained according to the following (7).
[0030]
[Expression 4]
Figure 0003953235
[0031]
(2) K according to (8) belowim′ Is calculated.
[0032]
[Equation 5]
Figure 0003953235
[0033]
(3) Shared key K according to (9) belowimCalculate However, D is a natural number publicly disclosed by the general center 1 and satisfies the following condition (10).
[0034]
[Formula 6]
Figure 0003953235
[0035]
Next, communication of information between entities in the above-described encryption system will be described. FIG. 2 is a schematic diagram showing a communication state of information between two entities i and m. In the example of FIG. 2, entity i encrypts plaintext (message) M into ciphertext C and transmits it to entity m, and entity m decrypts ciphertext C into original plaintext (message) M. Show.
[0036]
On the entity i side, the personal identification information ID of the entity mmAnd using the function h (•), the vector vmA public key generator 11 for obtaining (public key) and a secret key vector s sent from the central center 1iAnd the vector v which is the public key from the public key generator 11mAnd the shared key K with the entity m that the entity i obtains based on the published natural number DimA shared key generator 12 for generating a shared key KimAnd an encryptor 13 that encrypts plaintext (message) M into ciphertext C and outputs it to the communication path 30.
[0037]
Further, on the entity m side, the personal identification information ID of the entity iiAnd using the function h (•), the vector viA public key generator 21 for obtaining (public key) and a secret vector s sent from the central center 1mAnd the vector v which is the public key from the public key generator 21iAnd the shared key K with the entity i that the entity m obtains based on the published natural number DmiA shared key generator 22 for generating a shared key and a shared key KmiAnd a decryptor 23 that decrypts the ciphertext C input from the communication path 30 into a plaintext (message) M and outputs it.
[0038]
Next, the operation will be described. When transmitting information from entity i to entity m, first, the personal identification information ID of entity mmIs input to the public key generator 11 and the vector vm(Public key) is obtained, and the obtained vector vmIs sent to the shared key generator 12. Further, the vector s obtained in accordance with the above (3) to (6) at the general center 1 and the division center 10.iIs input to the shared key generator 12. And the shared key K according to the above formulas (7) to (9)imIs sent to the encryptor 13. In the encryptor 13, the shared key KimIs used to encrypt the plaintext (message) M into the ciphertext C, and the ciphertext C is transmitted via the communication path 30.
[0039]
The ciphertext C transmitted through the communication path 30 is input to the decryptor 23 of the entity m. Personal identification information ID of entity iiIs input to the public key generator 21 and the vector vi(Public key) is obtained, and the obtained vector viIs sent to the shared key generator 22. Further, the vector s obtained in accordance with the above (3) to (6) at the general center 1 and the division center 10.mIs input to the shared key generator 22. And the shared key K according to the above formulas (7) to (9)miIs sent to the decoder 23. In the decryptor 23, this shared key KmiIs used to decrypt the ciphertext C into plaintext (message) M.
[0040]
In addition, although the case where this invention was applied to the system based on the method of the prior example 1 was demonstrated, this invention is applicable also to the system based on the method of the prior example 2. FIG. In this case, for example, in addition to the above (6), a secret key vector s as shown in (11) below.iIt is sufficient to perform key sharing using ′. However, QiIs a law specific to entity i. In this case, the private secret random vector r at the key sharing stagei, The vector riIt is possible to set a large component.
[0041]
[Expression 7]
Figure 0003953235
[0042]
Hereinafter, various conditions necessary for key sharing between entities in the method of the present invention will be described.
[0043]
(Number of bits for each element)
In order to succeed in key sharing with a sufficiently high probability, a secret random vector r unique to entity iiThe size L of each component ofrLog2(Pim), D must be set sufficiently smaller than D. That is, the following (12) may be set, and the following (13) may be set. In order to make it safer against collusion attacks by the LLL method,rSet. Note that e is a margin for carry and k is a design value.
[0044]
[Equation 8]
Figure 0003953235
[0045]
(Function g)
By function g, the second ID vector wiIs determined, but the vector wiIs the secret key vector xiLaw PiAnd method P used for key sharingimUsed for setting. Therefore, the law PiAnd law PimThe vector w so that is larger than a certain sizeiThe number of components of 1 (vector wiWeight = # Wi) And # {Wi∩Wm} Needs to be given an appropriate size.
[0046]
#WiAnd # {Wi∩Wm} Is a vector w that must be greater than a certain sizei, Vector wmFor example, data obtained by passing ID information through a certain one-way function h (•) may be encoded by a constant weight code such as an M-sequence code. When a constant-weight codeword having a code length of n bits and a weight of 2d is used as the second ID vector, the position of 1 of two different codewords always matches at d locations. Therefore, by using the code word of this constant weight 2d, the modulus PimIt is possible to make the size of a larger than a certain size.
[0047]
For example, for a 3-bit information symbol, the code length n = 2Three-1 = 7, weight 2d = 2k-1Consider a constant weight code such that = 4. In this case, there are seven kinds of information symbols because they can be expressed by 3 bits except for (0, 0, 0). The second ID vector of entity i is a code word (1, 1, 1, 0, 0, 1, 0), and the second ID vector of entity m is a code word (1, 0, 0, 1, 0, 1, 1). P, if givenim= P(1)P(6)It becomes.
[0048]
(Generation of second ID vector by constant weight code)
As will be described later, the higher the proportion of the zero component of the second ID vector, the higher the security against collusion attacks using the LLL method. However, if the proportion of the zero component is increased, # {Wi∩Wm} Is not easy to keep above a certain value. In order to realize this, the following constant weight codes are applied hierarchically.
[0049]
(1) Using h (•) as a one-way function, the value generated from the entity ID information is b = 2.kExpressed in -1 decimal number. That is, it is defined as (15) below.
[0050]
[Equation 9]
Figure 0003953235
[0051]
▲ 2 ▼ wij′ Is encoded and this code word is expressed as cijAnd However, encoding is performed using an M sequence (eg, (1001011) when k = 3).ijThis is done by performing a left cyclic shift by 'bits.
(3) ci0The 0 position is replaced with b bit 0, and the 1 position is replaced with the b bit code word shown in the following (16) from the left. Thereby, the code length b2, Weight (2k-1)2Can be expanded to
[0052]
[Expression 10]
Figure 0003953235
[0053]
(4) By repeating the above processing hierarchically t times, the code length bt, Weight (2k-1)tCan be expanded to Note that the number of 1s when the bit AND of different second ID vectors is taken, that is, #WimIs always (2k-2)tThat's it.
[0054]
The above (1) to (4) will be described with a simple example. k = 3, b = 2kWhen −1 = 7 and t = 2, it is as follows.
h (IDA) = 14761 = 6 + 3 ・ 7 + 0 ・ 72+ 1 · 7Three+2.7Four
Vector wA′ = (6, 3, 0, 1, 2)
Vector wA′ Encoding:
(6, 3, 0, 1, 2) → (1100101, 1011100, 1001011, 0010111, 0101110) In this case, g (IDA) Is given by (17) below.
[0055]
## EQU11 ##
Figure 0003953235
[0056]
Next, an attack technique using the LLL algorithm for ID-NIKS of the present invention will be considered.
[0057]
(Third-party secret vector forgery attacks)
The secret key vector s of the victim entity v using the LLL algorithmvA method for obtaining an approximate value of is considered. The secret key vector s of the victim entity vvTo obtain an approximate value of the same method P as the sacrificial entity vvOr, the secret key vector of the collusion entity generated by the method including it as a factor is necessary. In other words, a collusion entity having a second ID vector whose second ID vector is the same as or including that of the victim entity v is necessary, and this attack method is made impossible by devising the configuration of the second ID vector. be able to.
[0058]
Also, the law P of the sacrificial entity vvAn attack method with a collusion entity having a method that partially includes the factors of(j)If you try to attack with the law iniThe component of P(j)It is bigger than it can be attacked. In the method based on the method of the preceding example 2, the vector riThis attack method becomes more difficult. Furthermore, it is necessary to apply the Chinese remainder theorem at the final stage of the attack, and at that time, a small random number term unique to each collusion entity is multiplied by a large value, so the probability that such an attack technique will also succeed is sufficiently low .
[0059]
(Collusion attack method for finding the center secret matrix)
Consider an attack that directly applies the secret symmetric matrix T of the center by applying the LLL algorithm. Where tp, jIs a component of the pth row and jth column of the symmetric matrix T, and the symmetric matrix T is expressed as T≡T(j)(Mod P(j)) (J = 1, 2,..., DgIs satisfied.
[0060]
Secret key vector s of collusion entity iiThe first component can be expressed by the following (18). Ri1Solving for, it becomes (19) below. The known term in the equation (19) is the following (20), and the unknown term is the following (21).
[0061]
[Expression 12]
Figure 0003953235
[0062]
Here, the matrix equation of the following (22) is formed from the known term and the unknown term in the above equation (19) of n collusion entities (i = 1, 2,..., N).
[0063]
[Formula 13]
Figure 0003953235
[0064]
[-R on the right side of (22) above11, -R12, ..., -r1n] Is a small vector, and when this is regarded as the minimum basis vector of the lattice and the LLL algorithm is applied, an unknown term shown in (23) below may be obtained.
[0065]
[Expression 14]
Figure 0003953235
[0066]
The unknown terms shown in (24) below are uniquely determined based on the method shown in (25) below, and the number of digits is almost equal to the number of digits shown in (26) below.
[0067]
[Expression 15]
Figure 0003953235
[0068]
On the other hand, the secret component possessed by entity i isiAnd the unknown term tp, jAnd the secret component of the collusion entity i, the ratio of the number of digits is the dimension number d of the function g (·)gAnd the ratio of the number of components to 1 is almost equal. When this ratio is R, in order for such a collusion attack to succeed, at least dfR collusion entities are required.
[0069]
Therefore, this ratio R may be increased in order to make the system safer against collusion attacks. For example, when g (·) is configured using the above-described M-sequence constant weight code hierarchically, when each parameter is set to k = 3, t = 4, the dimension dgIs 7Four= 2401, whereas its weight is 4Four= 256, and the ratio R is about 9.38. In this case, the method P used for key sharingiw#W that defines the size ofimIs 2Four= 16. Furthermore, P(j)Log is a prime number of about 20 bits, log2(Pim) Is about 320, and the size of the common law used for collusion attacks is as follows (27).
[0070]
[Expression 16]
Figure 0003953235
[0071]
In this case, in the collusion attack for the method of the present invention, the number of collusion entities is set to 9d.fAs described above, calculation in the case of an attack using the LLL algorithm is an operation of about 48,020 bits and requires a huge amount of calculation.
[0072]
  As described above, the method of the present invention is a safer method against collusion attacks using the LLL algorithm than the preceding examples 1 and 2 with respect to the collusion threshold value and the amount of calculation of each multiplication and division. ing.Further, in the above-described cryptographic communication system, one central center and a plurality of division centers are provided, and each division center obtains the secret vector of the entity, so that one center holds the secret of all the entities. There is nothing, Big brother The problem has been solved.
[0073]
FIG. 3 is a diagram showing the configuration of the embodiment of the recording medium of the present invention. Processes for obtaining a method specific to each entity shown in the above (4) and processes for calculating a secret key specific to each entity shown in the above (5) and (6). The computer 40 on which the program to be loaded is loaded is provided on the management center 1 side. In addition, it is recorded on the recording medium described below, and a process for obtaining a common method between entities shown in (7) above and a shared key between entities shown in (8) and (9) above are calculated. A computer 40 loaded with a program including processing is provided on each entity side.
[0074]
In FIG. 3, the recording medium 41 connected online with the computer 40 is a WWW (World Wide Web) server computer installed at a distance from the installation location of the computer 40. The recording medium 41 includes the above-described program. 41a is recorded. The program 41a read from the recording medium 41 controls the computer 40, thereby generating a secret key unique to each entity in the overall center 1, and generating a shared key for the entity to be communicated in each entity.
[0075]
The recording medium 42 provided in the computer 40 is a built-in hard disk drive or ROM, for example, and the recording medium 42 stores the program 42a as described above. The program 42a read from the recording medium 42 controls the computer 40, thereby generating a secret key unique to each entity in the overall center 1, and generating a shared key for the entity to be communicated in each entity.
[0076]
The recording medium 43 loaded and used in a disk drive 40a provided in the computer 40 is a portable medium such as a magneto-optical disk, a CD-ROM, or a flexible disk. 43a is recorded. The program 43a read from the recording medium 43 controls the computer 40, thereby generating a secret key unique to each entity in the overall center 1, and generating a shared key for the entity to be communicated in each entity.
[0077]
【The invention's effect】
As described above in detail, in the present invention, a method unique to each entity is set for each entity, and a secret key unique to each entity is generated by the set method. It becomes possible to increase safety.
[Brief description of the drawings]
FIG. 1 is a schematic diagram showing a configuration of a cryptographic communication system according to the present invention.
FIG. 2 is a schematic diagram showing a communication state of information between two entities.
FIG. 3 is a diagram illustrating a configuration of an embodiment of a recording medium.
FIG. 4 is a principle configuration diagram of an ID-NIKS system.
[Explanation of symbols]
1 Control Center
10 split center
11, 21 public key generator
12, 22 Shared key generator
13 Encryptor
23 Decoder
30 communication path
40 computers
41, 42, 43 Recording media

Claims (4)

センタ装置から各エンティティ装置へ各エンティティ固有の秘密鍵を送付し、一方のエンティティ装置が前記センタ装置から送付された該エンティティ固有の秘密鍵と公開された他方のエンティティの公開鍵とから求めた共有鍵を利用して平文を暗号文に暗号化して他方のエンティティ装置へ伝送し、該他方のエンティティ装置が伝送された暗号文を、前記センタ装置から送付された該エンティティ固有の秘密鍵と公開された前記一方のエンティティの公開鍵とから求めた、前記共有鍵と同一の共有鍵を利用して元の平文に復号することにより、暗号文通信に先立ってエンティティ装置間での予備通信を必要としない方式にて、エンティティ装置間で情報の通信を行う暗号通信方法において、前記センタ装置は、前記各エンティティ毎に固有の法を設定し、前記各エンティティ毎に設定した固有の法により前記各エンティティ固有の秘密鍵を生成し、前記一方及び他方のエンティティ装置は、前記各エンティティ毎に設定した固有の法に基づいて共通の法を求め、求めた共通の法により前記共有鍵を生成することを特徴とする暗号通信方法。A secret key unique to each entity is sent from the center device to each entity device, and one entity device shares the entity-specific secret key sent from the center device and the public key of the other entity that has been made public The plaintext is encrypted into ciphertext using the key and transmitted to the other entity device, and the ciphertext transmitted by the other entity device is disclosed as the private key unique to the entity sent from the center device. In addition, by using the same shared key as the shared key obtained from the public key of the one entity, decryption into the original plaintext requires preliminary communication between entity devices prior to ciphertext communication. specific at non scheme, the encryption communication method for communicating information between entity device, the center device, each of said entity Set law, the generating the respective entity-specific secret key by specific laws set for each entity, the one and the other entity device, commonly based on the unique law set for each of said entity A cryptographic communication method characterized in that the shared key is generated by the common method obtained. 前記センタ装置は、各エンティティの公開鍵を用いて各エンティティの秘密ベクトルを求め、求めた各エンティティの秘密ベクトルと各エンティティ固有の個人秘密乱数ベクトルとを用いて、前記各エンティティ毎に設定した固有の法により前記各エンティティ固有の秘密鍵を生成する請求項1記載の暗号通信方法。Specific the center apparatus, which obtains a secret vector for each entity using the public key of each entity, by using the secret vector of each was determined entity and each entity unique personal secret random number vector was set for each of the respective entities The cryptographic communication method according to claim 1, wherein a secret key unique to each entity is generated by the method of (1). 前記センタ装置は、前記各エンティティの公開鍵、各エンティティの特定情報に基づいて求める請求項1又は2記載の暗号通信方法。The encryption communication method according to claim 1 , wherein the center device obtains a public key of each entity based on specific information of each entity. 送信すべき情報である平文を暗号文に暗号化する処理、及び、送信された暗号文を元の平文に復号する処理を、暗号文通信に先立って複数のエンティティ装置間での予備通信を必要としない方式にて、複数のエンティティ装置間で相互に行う暗号通信システムにおいて、各エンティティ毎に固有の法を設定する手段、設定した法により各エンティティ固有の秘密鍵を生成する手段、及び、生成した秘密鍵を各エンティティ装置へ送付する手段を備えるセンタ装置と、各エンティティ毎に設定した固有の法に基づいて共通の法を求める手段、及び、求めた共通の法により、前記センタ装置から送付された自身固有の秘密鍵と通信対象のエンティティの公開鍵とを用いて、前記暗号化する処理及び復号する処理を行うための共有鍵を生成する手段を備える複数のエンティティ装置とを有することを特徴とする暗号通信システム。 Preliminary communication between multiple entity devices is required prior to ciphertext communication for the process of encrypting plaintext, which is information to be transmitted, into ciphertext and the process of decrypting the transmitted ciphertext into the original plaintext In a cryptographic communication system that mutually performs between a plurality of entity devices in a scheme that does not, and means for setting a unique method for each entity, means for generating a secret key unique to each entity by the set method, and generation a center device comprising means for sending the private key to each entity apparatus, means asking you to common law based on the unique law set for each entity, and, by a common law determined, from the center device using the the sent its own unique private key and public key Entite I to be communicated, means for generating a shared key of a process for processing and decoding said encrypted Cryptographic communication system characterized by having a plurality of entity devices having.
JP20390399A 1999-07-16 1999-07-16 Cryptographic communication method and cryptographic communication system Expired - Fee Related JP3953235B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20390399A JP3953235B2 (en) 1999-07-16 1999-07-16 Cryptographic communication method and cryptographic communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20390399A JP3953235B2 (en) 1999-07-16 1999-07-16 Cryptographic communication method and cryptographic communication system

Publications (2)

Publication Number Publication Date
JP2001036516A JP2001036516A (en) 2001-02-09
JP3953235B2 true JP3953235B2 (en) 2007-08-08

Family

ID=16481624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20390399A Expired - Fee Related JP3953235B2 (en) 1999-07-16 1999-07-16 Cryptographic communication method and cryptographic communication system

Country Status (1)

Country Link
JP (1) JP3953235B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213004B2 (en) * 2001-04-12 2007-05-01 Koninklijke Philips Electronics N.V. Apparatus and methods for attacking a screening algorithm based on partitioning of content

Also Published As

Publication number Publication date
JP2001036516A (en) 2001-02-09

Similar Documents

Publication Publication Date Title
JP7164580B2 (en) Secure multi-party loss-tolerant storage and transfer of cryptographic keys for blockchain-based systems in conjunction with wallet management systems
Mambo et al. Proxy cryptosystems: Delegation of the power to decrypt ciphertexts
US7239701B1 (en) Key sharing method, secret key generating method, common key generating method and cryptographic communication method in ID-NIKS cryptosystem
JP2010161826A (en) Certificate-based encryption, and public key infrastructure
JP2001211153A (en) Secret key generating method
Son et al. Conditional proxy re-encryption for secure big data group sharing in cloud environment
JP4450969B2 (en) Key sharing system, secret key generation device, common key generation system, encryption communication method, encryption communication system, and recording medium
CN116830523A (en) threshold key exchange
JP2001211154A (en) Secret key generating method, ciphering method, and cipher communication method
CN108599941A (en) Random asymmetries expand byte encryption of communicated data method
JP4758110B2 (en) Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method
JP4485122B2 (en) Public key cryptosystem, signature system, cryptographic communication system, secret key generator, public key generator, and computer program
JP3953235B2 (en) Cryptographic communication method and cryptographic communication system
Son et al. On secure data sharing in cloud environment
Srinadh et al. Data security and recovery approach using elliptic curve cryptography
Mathur et al. A Modified RSA Approach for Encrypting and Decrypting Text and Images Using Multi-Power, Multi Public Keys, Multi Prime Numbers and K-nearest Neighbor Algorithm
JP3622072B2 (en) Encryption communication method
JP7254296B2 (en) Key exchange system, information processing device, key exchange method and program
US11824979B1 (en) System and method of securing a server using elliptic curve cryptography
CN113141249B (en) Threshold decryption method, system and readable storage medium
Wall et al. Cryptographically enforced orthogonal access control at scale
JP2007325318A (en) Signature system
JP2005321719A (en) Communication system, decrypting device, restoration device, key generation device, and communication method
JP3587746B2 (en) Secret key generator, encryption device, encryption communication method, encryption communication system, and recording medium
JP3592118B2 (en) Encryption device, encryption communication method, encryption communication system, and recording medium

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040817

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041015

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20041021

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070323

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070424

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees