[go: up one dir, main page]

JP6818220B2 - 鍵共有装置、鍵共有方法及び鍵共有プログラム - Google Patents

鍵共有装置、鍵共有方法及び鍵共有プログラム Download PDF

Info

Publication number
JP6818220B2
JP6818220B2 JP2017202581A JP2017202581A JP6818220B2 JP 6818220 B2 JP6818220 B2 JP 6818220B2 JP 2017202581 A JP2017202581 A JP 2017202581A JP 2017202581 A JP2017202581 A JP 2017202581A JP 6818220 B2 JP6818220 B2 JP 6818220B2
Authority
JP
Japan
Prior art keywords
key
static
public
temporary
shared
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017202581A
Other languages
English (en)
Other versions
JP2019075757A (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.)
Kanagawa University
Mitsubishi Electric Corp
Original Assignee
Kanagawa University
Mitsubishi Electric Corp
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 Kanagawa University, Mitsubishi Electric Corp filed Critical Kanagawa University
Priority to JP2017202581A priority Critical patent/JP6818220B2/ja
Priority to PCT/JP2018/021370 priority patent/WO2019077796A1/ja
Priority to US16/642,782 priority patent/US11171778B2/en
Priority to CN201880066637.7A priority patent/CN111373692B/zh
Publication of JP2019075757A publication Critical patent/JP2019075757A/ja
Application granted granted Critical
Publication of JP6818220B2 publication Critical patent/JP6818220B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Storage Device Security (AREA)
  • Artificial Intelligence (AREA)
  • Computational Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

この発明は、2者間で鍵を共有する技術に関する。
量子計算機の開発が、世界的に進められている。量子計算機の出現に対しても安全性を維持できる暗号方式として、同種写像を用いた暗号の提案が行われている。
非特許文献1には、1ラウンドのDiffie−Hellman(以下、DH)鍵共有方式を、認証機能付きの方式に変換するBiclique変換法が記載されている。
Fujioka, A.: Characterization of strongly secure authenticated key exchanges without NAXOS technique. IEICE Transactions 96−A(6), 1088−1099 (2013), a preliminary version of this paper appeared in IWSEC 2011 (2011) De Feo, L., Jao, D., Plut, J.: Towards quantum−resistant cryptosystems from supersingular elliptic curve isogenies. J. Math. Crypt. 8(3), 209−247 (2014)
DH鍵共有方式は、耐量子性を持たない。これまでは、耐量子性を持つ、1ラウンドの認証機能付きの鍵共有方式がなかった。
耐量子性を持つ、1ラウンドの認証機能付きの鍵共有方式を構成するための候補となる技術として、超特異同種写像DH(以下、SIDH)鍵共有方式(非特許文献2参照)がある。SIDH鍵共有方式は、最近になって活発に研究されるようになっているものの、SIDH鍵共有方式の非対称性から認証機能付きの鍵共有方式への変換法が知られていない。
この発明は、非対称性を持つ鍵共有方式を認証機能付きの鍵共有方式に変換可能にすることを目的とする。
この発明に係る鍵共有装置は、
2つの静的鍵から1つの静的鍵を選択する鍵選択部と、
前記鍵選択部によって選択された静的鍵を用いて、相手側と共有する共有鍵を生成する鍵生成部と
を備える。
この発明では、2つの静的鍵から選択された1つの静的鍵を用いて共有鍵を生成する。これにより、非対称性を持つ鍵共有方式を認証機能付きの鍵共有方式に変換することが可能になる。
SIDH鍵共有方式の説明図。 SIDH鍵共有方式のアルゴリズムを示す図。 記法の説明図。 SIDH鍵共有方式のアルゴリズムを簡潔化して示す図。 実施の形態1に係る鍵共有システム1の構成図。 実施の形態1に係る鍵共有装置10の構成図。 実施の形態1に係る事前処理のフローチャート。 実施の形態1に係る鍵共有処理のフローチャート。 実施の形態1に係る鍵共有処理のアルゴリズムを示す図。 変形例2に係る鍵共有装置10の構成図。
実施の形態1.
実施の形態1では、非対称性を持つ鍵共有方式として、SIDH鍵共有方式を例として説明する。
***記法の説明***
以下で用いられる記法を説明する。ここでは、SIDH鍵共有方式を説明した上で、記法を説明する。
なお、文中での下付き文字及び上付き文字の記載に制限がある。そのため、以下の文中では、“_”を下付き文字を表すための記号とし、“^”を上付き文字を表す記号として用い、文中では表現できない下付き文字及び上付き文字をこられの記号を用いて表す。例えば、N_iはNを表し、N^iはNを表すものとする。
<SIDH鍵共有方式>
図1及び図2を参照して、SIDH鍵共有方式を説明する。ここでは、AliceとBobが鍵共有を行うとする。
2つの小素数L,L(例えば、L=2,L=3)と、小さい値fとに対して、数11になるように大きい素数pが選択される。
Figure 0006818220
ここで、値e,eは、数11における式(2)が成立するように選択される。また、数11における記号Θは、ランダウの記号であり、漸近的に上下からおさえられることを意味する。また、λは、セキュリティパラメータである。
位数pの有限体F_{p}上に定義された超特異楕円曲線Eであって、数12に示す有理点群を持つ超特異楕円曲線Eが選択される。
Figure 0006818220
位数L^{e}の核を持つ同種写像φと、位数L^{e}の核を持つ同種写像φが用いられる。同種写像φに対して、その核をKer(φ)=<R>とし、同種写像φに対して、その核をKer(φ)=<R>とする。φ(R)を核とする同種写像をφBAとし、φ(R)核とする同種写像をφABとする。
すると、図1に示す関係が成立する。つまり、超特異楕円曲線Eから同種写像φにより超特異楕円曲線E=E/<R>が得られ、超特異楕円曲線Eから同種写像φABにより超特異楕円曲線E/<R,R>が得られる(ルート1)。また、超特異楕円曲線Eから同種写像φにより超特異楕円曲線E=E/<R>が得られ、超特異楕円曲線Eから同種写像φBAにより超特異楕円曲線E/<R,R>が得られる(ルート2)。
数13に示す超特異楕円曲線E上の点P,Q,P,Qが生成元として選択される。超特異楕円曲線Eと、生成元P,Q,P,Qと、値L,L,e,eとが公開パラメータとされる。
Figure 0006818220
また、AliceとBobの秘密鍵空間が、それぞれ、数14に示すSK,SKとされる。
Figure 0006818220
図2に示すように、Aliceは、秘密鍵空間SKからランダムに選択された秘密鍵(m,n)を用いて、R=m+nを計算する。Aliceは、Rを用いて超特異楕円曲線Eと、同種写像φとを計算する。そして、Aliceは、超特異楕円曲線Eと、同種写像φを用いて計算されたφ(P)及びφ(Q)とをBobに送信する。
同様に、Bobは、秘密鍵空間SKからランダムに選択された秘密鍵(m,n)を用いて、R=m+nを計算する。Bobは、Rを用いて超特異楕円曲線Eと、同種写像φとを計算する。そして、Bobは、超特異楕円曲線Eと、同種写像φを用いて計算されたφ(P)及びφ(Q)とをAliceに送信する。
Aliceは、秘密鍵(m,n)と、Bobによって送信されたφ(P)及びφ(Q)とを用いて、RBA=mφ(P)+nφ(Q)を計算する。Aliceは、RBAと、Bobによって送信された超特異楕円曲線Eとから、共有鍵KAlice=j(E/<RBA>)を計算する。ここで、jは、j−不変量である。
同様に、Bobは、秘密鍵(m,n)と、Aliceによって送信されたφ(P)及びφ(Q)とを用いて、RAB=mφ(P)+nφ(Q)を計算する。Bobは、RABと、Aliceによって送信された超特異楕円曲線Eとから、共有鍵KBob=j(E/<RAB>)を計算する。
つまり、鍵共有を行う一方(ここではBob)が図1のルート1の計算を行い、他方(ここではAlice)が図1のルート2の計算を行う。
ここで、<mφ(P)+nφ(Q)>=<φ(R)>=kerφBAであり、<mφ(P)+nφ(Q)>=<φ(R)>=kerφABである。そのため、j−不変量の間の等式KAlice=j(E/kerφBA)=j(E/<R,R>)=j(E/kerφAB)=KBobが成立する。したがって、K=KAlice=KBobが共有鍵となる。
ここで、Aliceが用いる公開パラメータP,Q及び秘密鍵空間SKはLのべき乗に基づく要素であり、Bobが用いる公開パラメータP,Q及び秘密鍵空間SKはLのべき乗に基づく要素である。したがって、公開パラメータP,Q及び秘密鍵空間SKと、公開パラメータP,Q及び秘密鍵空間SKとは、異なる分類の要素である。AliceとBobとは、必ず異なる分類の要素を用いる必要があり、同じ分類の要素を用いて鍵共有を行うことはできない。
このように、鍵共有を行う二者間で用いる情報が異なることを、非対称性と呼ぶ。つまり、SIDH鍵共有方式は非対称性を持つ。
<記法>
図3を参照して、SIDH鍵共有方式を簡潔に記載するための記法を説明する。
公開パラメータに含まれる超特異楕円曲線E及び生成元P,Q,P,Qが“g”と記述される。Aliceの秘密鍵(m,n)が“a”と記述され、Bobの秘密鍵(m,n)が“b”と記述される。
上述した超特異楕円曲線Eの集合がSSECと記述される。補助ねじれ点基底を有する上述した超特異楕円曲線Eの集合が、SSECp,A及びSSECp,Bと記述される。SSECp,AはAliceがBobに送信する情報の集合であり、SSECp,BはBobがAliceに送信する情報の集合である。
そして、“g”と“g”と“(g”と“(g”とが以下のように定義される。
:=(E:φ(P),φ(Q))∈SSECp,A,where R=m+n,φ:E→E=E/<R
:=(E:φ(P),φ(Q))∈SSECp,B,where R=m+n,φ:E→E=E/<R
(g:=j(EBA),where RBA=mφ(P)+nφ(Q),φBA:E→EBA=E/<RBA
(g:=j(EAB),where RAB=mφ(P)+nφ(Q),φAB:E→EAB=E/<RAB
以上の記法を用いて、SIDH鍵共有方式を記述すると、図4に示すようになる。
ここで、公開パラメータは、g=(E;P,Q,P,Q)と、e=(L,L,e,e)である。
Aliceは、秘密鍵空間SKからランダムに選択された秘密鍵aを用いて、gを計算する。そして、Aliceは、gをBobに送信する。同様に、Bobは、秘密鍵空間SKからランダムに選択された秘密鍵bを用いて、gを計算する。そして、Bobは、gをAliceに送信する。
Aliceは、秘密鍵aと、Bobによって送信されたgとを用いて、共有鍵KAlice=(gを計算する。同様に、Bobは、秘密鍵bと、Aliceによって送信されたgとを用いて、共有鍵KBob=(gを計算する。共有鍵KAlice=(g=(g=共有鍵KBobである。
***構成の説明***
図5を参照して、実施の形態1に係る鍵共有システム1の構成を説明する。
鍵共有システム1は、複数の鍵共有装置10を備える。図5では、鍵共有システム1は、鍵共有装置10A〜鍵共有装置10Dの鍵共有装置10を備える。鍵共有装置10は、PC(Personal Computer)及びスマートフォンといったコンピュータである。鍵共有装置10間は、伝送路30を介して接続されている。伝送路30は、インターネット、LAN(Local Area Network)等である。
図6を参照して、実施の形態1に係る鍵共有装置10の構成を説明する。
鍵共有装置10は、プロセッサ11と、メモリ12と、ストレージ13と、通信インタフェース14とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
プロセッサ11は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ11は、具体例としては、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
メモリ12は、データを一時的に記憶する記憶装置である。メモリ12は、具体例としては、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)である。
ストレージ13は、データを保管する記憶装置である。ストレージ13は、具体例としては、HDD(Hard Disk Drive)である。また、ストレージ13は、SD(登録商標,Secure Digital)メモリカード、CF(CompactFlash,登録商標)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disk)といった可搬記録媒体であってもよい。
通信インタフェース14は、外部の装置と通信するためのインタフェースである。通信インタフェース14は、具体例としては、Ethernet(登録商標)、USB(Universal Serial Bus)、HDMI(登録商標,High−Definition Multimedia Interface)のポートである。
鍵共有装置10は、機能構成要素として、受信部21と、鍵選択部22と、鍵生成部23と、送信部24とを備える。鍵生成部23は、静的鍵生成部25と、一時鍵生成部26と、共有鍵生成部27とを備える。鍵共有装置10の各機能構成要素の機能はソフトウェアにより実現される。
ストレージ13には、鍵共有装置10の各機能構成要素の機能を実現するプログラムが格納されている。このプログラムは、プロセッサ11によりメモリ12に読み込まれ、プロセッサ11によって実行される。これにより、鍵共有装置10の各機能構成要素の機能が実現される。
図6では、プロセッサ11は、1つだけ示されていた。しかし、プロセッサ11は、複数であってもよく、複数のプロセッサ11が、各機能を実現するプログラムを連携して実行してもよい。
***動作の説明***
図7から図9を参照して、実施の形態1に係る鍵共有システム1の動作を説明する。
実施の形態1に係る鍵共有システム1の動作は、実施の形態1に係る鍵共有方法に相当する。また、実施の形態1に係る鍵共有システム1の動作は、実施の形態1に係る鍵共有プログラムの処理に相当する。
鍵共有システム1は、公開パラメータとして、g=(E;P,Q,P,Q)と、e=(L,L,e,e)とを用いる。なお、ここでは、添え字が、図4で説明したSIDH鍵共有方式における“A”及び“B”から“1”及び“2”に変更されている。公開パラメータには、Lのe乗に基づく(P,Q)とLのe乗に基づく(P,Q)との2つの分類のパラメータが含まれている。
また、鍵共有システム1は、数15に示す(P,Q)と同じ分類である、Lのe乗に基づく秘密鍵空間SKと、(P,Q)と同じ分類である、Lのe乗に基づく秘密鍵空間SKとを用いる。
Figure 0006818220
図7を参照して、実施の形態1に係る事前処理を説明する。
事前処理は、鍵共有システム1が備える各鍵共有装置10により、後述する鍵共有処理が行われる前に実行される。ここでは、鍵共有装置10Aと鍵共有装置10Bとが鍵共有を行う場合を例として説明する。
(ステップS11:公開パラメータ取得処理)
受信部21は、公開パラメータを取得する。
具体的には、受信部21は、公開用のサーバから、公開パラメータであるg=(E;P,Q,P,Q)と、e=(L,L,e,e)とを受信して、メモリ12に書き込む。公開パラメータは、鍵共有システム1の管理装置によって生成され、公開用のサーバに記憶されている。
(ステップS12:静的鍵生成処理)
静的鍵生成部25は、ステップS11で取得された公開パラメータに基づき、静的鍵を生成する。
具体的には、鍵共有装置10Aでは、静的鍵生成部25は、メモリ12から公開パラメータを読み出す。静的鍵生成部25は、秘密鍵空間SKからランダムに要素を選択して静的秘密鍵a=(mA,1,nA,1)を生成する。静的鍵生成部25は、秘密鍵空間SKからランダムに要素を選択して静的秘密鍵a=(mA,2,nA,2)を生成する。また、静的鍵生成部25は、静的秘密鍵aを用いて、静的公開鍵A=g^aを生成する。静的鍵生成部25は、静的秘密鍵aを用いて、静的公開鍵A=g^aを生成する。静的鍵生成部25は、静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵a及び静的公開鍵Aの組とをメモリ12に書き込む。
同様に、鍵共有装置10Bでは、静的鍵生成部25は、メモリ12から公開パラメータを読み出す。静的鍵生成部25は、秘密鍵空間SKからランダムに要素を選択して静的秘密鍵b=(mB,1,nB,1)を生成する。静的鍵生成部25は、秘密鍵空間SKからランダムに要素を選択して静的秘密鍵b=(mB,2,nB,2)を生成する。また、静的鍵生成部25は、静的秘密鍵bを用いて、静的公開鍵B=g^bを生成する。静的鍵生成部25は、静的秘密鍵bを用いて、静的公開鍵B=g^bを生成する。静的鍵生成部25は、静的秘密鍵b及び静的公開鍵Bの組と、静的秘密鍵b及び静的公開鍵Bの組とをメモリ12に書き込む。
ここで、静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵b及び静的公開鍵Bの組と、静的秘密鍵b及び静的公開鍵Bの組とをそれぞれ静的鍵と呼ぶ。静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵b及び静的公開鍵Bの組とは、Lのべき乗に基づく要素であり、(P,Q)と同じ分類である。静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵b及び静的公開鍵Bの組とは、Lのべき乗に基づく要素であり、(P,Q)と同じ分類である。
(ステップS13:鍵公開処理)
送信部24は、ステップS12で生成された静的公開鍵をメモリ12から読み出す。そして、送信部24は、読み出された静的公開鍵を公開用のサーバに送信して、鍵共有システム1が備える各鍵共有装置10に公開する。
鍵共有装置10Aであれば、送信部24は、静的公開鍵A及び静的公開鍵Aをメモリ12から読み出し、読み出された静的公開鍵A及び静的公開鍵Aを公開用のサーバに送信する。鍵共有装置10Bであれば、送信部24は、静的公開鍵B及び静的公開鍵Bをメモリ12から読み出し、読み出された静的公開鍵B及び静的公開鍵Bを公開用のサーバに送信する。
図8及び図9を参照して、実施の形態1に係る鍵共有処理を説明する。
前提として、鍵共有装置10は、鍵共有を行う相手側の静的公開鍵を公開用のサーバから取得して、メモリ12に記憶しているものとする。
(ステップS21:鍵選択処理)
鍵選択部22は、分類の異なる2つの静的鍵から、1つの静的鍵を選択する。
具体的には、鍵選択部22は、分類の異なる2つの静的鍵から、相手側と異なる分類の静的鍵を選択する。つまり、鍵共有装置10Aでは、鍵選択部22は、静的秘密鍵a及び静的公開鍵Aの組と、静的秘密鍵a及び静的公開鍵Aの組とのうち、鍵共有を行う相手側である鍵共有装置10Bと異なる組を選択する。同様に、鍵共有装置10Bでは、鍵選択部22は、静的秘密鍵b及び静的公開鍵Bの組と、静的秘密鍵b及び静的公開鍵Bの組とのうち、鍵共有を行う相手側である鍵共有装置10Aと異なる組を選択する。
具体例としては、鍵選択部22は、鍵の共有を開始する開始側か否かに応じて、2つの静的鍵のうち、一方を選択する。これに限らず、予め定められたルールに従い、互いに異なる組が選択されるようにしておけばよい。鍵選択部22は、選択された静的鍵をメモリ12に書き込む。
ここでは、鍵選択部22は、鍵の共有を開始する開始側の鍵共有装置10(ここでは、鍵共有装置10Aとする)である場合には、(P,Q)と同じ分類である、静的秘密鍵a及び静的公開鍵Aの組を選択する。一方、鍵選択部22は、開始側に応答して鍵の共有を行う応答側の鍵共有装置10(ここでは、鍵共有装置10Bとする)である場合には、(P,Q)と同じ分類である、静的秘密鍵b及び静的公開鍵Bの組を選択する。例えば、鍵共有開始前の事前通信でどちらが開始側であるかを特定することが可能である。
(ステップS22:一時鍵生成処理)
一時鍵生成部26は、ステップS21で選択された静的鍵と同じ分類の一時鍵を生成する。
具体的には、一時鍵生成部26は、ステップS21で選択された静的鍵と同じ分類の秘密鍵空間からランダムに要素を選択して一時秘密鍵を生成する。開始側の鍵共有装置10Aの一時鍵生成部26は、静的秘密鍵a及び静的公開鍵Aの組と同じ分類の秘密鍵空間SKからランダムに要素を選択して一時秘密鍵x=(m,n)を生成する。また、応答側の鍵共有装置10Bの一時鍵生成部26は、静的秘密鍵b及び静的公開鍵Bの組と同じ分類の秘密鍵空間SKからランダムに要素を選択して一時秘密鍵y=(m,n)を生成する。
また、一時鍵生成部26は、一時秘密鍵を用いて、一時公開鍵を生成する。開始側の鍵共有装置10Aの一時鍵生成部26は、一時秘密鍵xを用いて、一時公開鍵X=gを生成する。また、応答側の鍵共有装置10Bの一時鍵生成部26は、一時秘密鍵yを用いて、一時公開鍵Y=gを生成する。
一時秘密鍵と一時公開鍵とを総称して一時鍵と呼ぶ。一時鍵生成部26は、生成された一時鍵をメモリ12に書き込む。
(ステップS23:一時公開鍵送信処理)
送信部24は、ステップS22で生成された一時公開鍵を、鍵共有の相手側の鍵共有装置10に送信する。
具体的には、送信部24は、メモリ12から一時公開鍵を読み出す。送信部24は、読み出された一時公開鍵を、通信インタフェース14を介して相手側の鍵共有装置10に送信する。すると、一時公開鍵は、伝送路30を通って、相手側の鍵共有装置10に送信され、相手側の鍵共有装置10の受信部21によって受信される。
開始側の鍵共有装置10Aの送信部24は、一時公開鍵Xを応答側の鍵共有装置10Bに送信する。鍵共有装置10Bの受信部21は、一時公開鍵Xを受信してメモリ12に書き込む。また、応答側の鍵共有装置10Bは、一時公開鍵Yを開始側の鍵共有装置10Aに送信する。鍵共有装置10Aの受信部21は、一時公開鍵Yを受信してメモリ12に書き込む。
(ステップS24:共有鍵生成処理)
共有鍵生成部27は、ステップS21で選択された静的鍵と、ステップS22で生成された一時秘密鍵と、ステップS23で相手側によって生成された一時公開鍵と、相手側の静的公開鍵とを用いて、共有鍵を生成する。
具体的には、共有鍵生成部27は、ステップS21で選択された静的鍵と、ステップS22で生成された一時秘密鍵と、ステップS23で受信された相手側の一時公開鍵と、相手側の静的公開鍵とを、メモリ12から読み出す。そして、共有鍵生成部27は、以下のように、値Zと値Zと値Zと値Zとを計算し、メモリ12に書き込む。
開始側の鍵共有装置10Aの共有鍵生成部27は、値Z=Y^a、値Z=B 、値Z=B^a、値Z=Yのように、値Zと値Zと値Zと値Zとを計算する。応答側の鍵共有装置10Bの共有鍵生成部27は、値Z=A 、値Z=X^b、値Z=A^b、値Z=Xのように、値Zと値Zと値Zと値Zとを計算する。
ここで、値Z=Y^a=(g)^a=(g^a=A である。値Z=B =(g^b=(g)^b=X^bである。値Z=B^a=(g^b)^a=(g^a)^b=A^bである。値Z=Y=(g=(g=Xである。したがって、開始側の鍵共有装置10Aで計算される値Zと値Zと値Zと値Zと、応答側の鍵共有装置10Bで計算される値Zと値Zと値Zと値Zとは、いずれも等しい。
共有鍵生成部27は、計算された値Zと値Zと値Zと値Zとを用いて、共通鍵Kを生成する。
具体例としては、共有鍵生成部27は、値Zと値Zと値Zと値Zとを入力としてハッシュ関数Hを計算して、共通鍵Kを生成する。この際、共有鍵生成部27は、値Zと値Zと値Zと値Zとに加え、プロトコルの識別子であるΠと、開始側の鍵共有装置10Aの識別子Aと、応答側の鍵共有装置10Bの識別子Bと、開始側の鍵共有装置10Aの一時公開鍵Xと、応答側の鍵共有装置10Bの一時公開鍵Yとも入力としてもよい。つまり、共有鍵生成部27は、K=H(Π,Z,Z,Z,Z,A,B,X,Y)を計算して、共通鍵Kを計算してもよい。
なお、値Zと値Zと値Zと値Zとの一部を1つの値にまとめるといった修正を加えてもよい。
***実施の形態1の効果***
以上のように、実施の形態1に係る鍵共有システム1は、2つの分類の静的鍵を用意しておき、鍵共有の相手側と異なる静的鍵を用いるようにする。これにより、非対称性を持つ鍵共有方式を認証機能付きの鍵共有方式に変換することが可能になる。
認証機能付きの鍵共有について説明する。
認証機能付きの鍵共有のプロトコルでは、鍵共有を行う二者は、自身の静的な公開鍵を持ち、一時公開鍵を交換する。そして、鍵共有を行う二者は、相手側の静的な公開鍵と、相手側から受け取った一時公開鍵と、自身の静的な公開鍵に対応する静的な秘密鍵と、自身の一時公開鍵に対応する一時秘密鍵とに基づき共有鍵を計算する。
静的な公開鍵及び静的な秘密鍵を総称して静的鍵と呼ぶ。静的鍵は、長期間変更されない鍵である。一時公開鍵及び一時秘密鍵を総称して一時鍵と呼ぶ。一時鍵は、共有鍵を生成する際に一時的に用いられる鍵である。共有鍵は、二者間で共有される鍵である。
認証機能付きの鍵共有プロトコルでは、相手側の静的な公開鍵を用いて共有鍵が計算される。静的な公開鍵は、長期間変更されない鍵である。そのため、共有鍵を共有する相手を特定可能である。
また、実施の形態1に係る鍵共有システム1は、SIDH鍵共有方式を変換することにより、1ラウンドの認証機能付きの鍵共有方式を実現することが可能である。
1ラウンドについて説明する。
1ラウンドは、鍵共有を行う二者がメッセージを独立かつ同時に送ることが可能であることを意味する。つまり、1ラウンドは、二者のうち一方から他方へメッセージを送り、このメッセージを受けて他方から一方へメッセージを返すという往復通信が不要であることを意味する。この往復通信が必要であることは2passと呼ばれる。1ラウンドの認証機能付きの鍵共有方式を実現することにより、鍵共有装置10は、鍵共有の開始前に一時鍵を計算しておくことが可能である。そして、鍵共有を行う鍵共有装置10同士で、同時に一時鍵の交換を行うことが可能である。したがって、効率的に鍵共有を行うことが可能である。
なお、文献“Fujioka, A., Suzuki, K., Xagawa, K., Yoneyama, K.: Strongly secure authenticated key exchange from factoring, codes, and lattices. Des. Codes Cryptography 76(3),469−504 (2015), a preliminary version appeared in PKC 2012 (2012)”に記載された方法で実現される認証機能付きの鍵共有方式は、往復通信が必要であり、1ラウンドの認証機能付きの鍵共有方式ではない。
また、実施の形態1に係る鍵共有システム1で実現される認証機能付きの鍵共有方式は、単一の楕円曲線において実現される方式である。そのため、上記文献に記載された鍵共有方式に比べ、通信するデータサイズを小さくすることができる。つまり、効率的な鍵共有方式を実現することができる。
また、実施の形態1に係る鍵共有システム1は、2つの分類の静的鍵を用意しておき、開始側か応答側かによって静的鍵を選択する。そのため、実施の形態1に係る鍵共有システム1で実現される認証機能付きの鍵共有方式は、認証システムを攻撃する方法である反射攻撃に対する耐性がある。反射攻撃については、文献“Tanenbaum, A.S.: Computer Networks. Pearson (2002)”に記載がある。
また、実施の形態1に係る鍵共有システム1で実現される認証機能付きの鍵共有方式は、量子計算機に対して安全性を担保できるだけでなく、量子ランダムオラクルモデルにおける安全性についても証明可能である。
***他の構成***
<変形例1>
実施の形態1では、非対称性を持つ鍵共有方式として、SIDH鍵共有方式を例として説明した。しかし、SIDH鍵共有方式に限らず、他の鍵共有方式に対して2つの静的鍵を用意しておき、鍵共有の相手側と異なる静的鍵を用いるようにするという技術を適用して、その鍵共有方式を認証機能付きの鍵共有方式に変換することも可能である。適用対象の鍵共有方式が耐量子性を持つ方式であれば、変換して得られた認証機能付きの鍵共有方式も耐量子性を持つ方式である可能性がある。
<変形例2>
実施の形態1では、各機能構成要素がソフトウェアで実現された。しかし、変形例2として、各機能構成要素はハードウェアで実現されてもよい。この変形例2について、実施の形態1と異なる点を説明する。
図10を参照して、変形例2に係る鍵共有装置10の構成を説明する。
各機能構成要素がハードウェアで実現される場合には、鍵共有装置10は、プロセッサ11とメモリ12とストレージ13とに代えて、電子回路15を備える。電子回路15は、各機能構成要素と、メモリ12と、ストレージ13との機能とを実現する専用の回路である。
電子回路15としては、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)が想定される。
各機能構成要素を1つの電子回路15で実現してもよいし、各機能構成要素を複数の電子回路15に分散させて実現してもよい。
<変形例3>
変形例3として、一部の各機能構成要素がハードウェアで実現され、他の各機能構成要素がソフトウェアで実現されてもよい。
プロセッサ11とメモリ12とストレージ13と電子回路15とを処理回路という。つまり、各機能構成要素の機能は、処理回路により実現される。
10 鍵共有装置、11 プロセッサ、12 メモリ、13 ストレージ、14 通信インタフェース、15 電子回路、21 受信部、22 鍵選択部、23 鍵生成部、24 送信部、25 静的鍵生成部、26 一時鍵生成部、27 共有鍵生成部、30 伝送路。

Claims (4)

  1. 事前に記憶装置に記憶された静的秘密鍵及び静的公開鍵のである静的鍵であって、数1に示す公開鍵A1及び秘密鍵a1の組と、公開鍵A2及び秘密鍵a2の組とである、異なる素数に基づき生成された分類の異なる2つの静的鍵から、鍵の共有を開始する開始側か否かに応じて静的鍵を選択することにより、相手側によって選択される静的鍵と異なる分類の静的鍵を選択する鍵選択部と、
    前記鍵選択部によって選択された静的鍵を用いて、前記相手側と共有する共有鍵を生成する鍵生成部と
    を備え
    前記鍵生成部は、
    前記鍵選択部によって選択された静的鍵と同じ分類の一時鍵Xであって、数2に示す一時鍵Xを生成する一時鍵生成部と、
    前記鍵選択部によって選択された静的鍵と、前記相手側によって生成された一時鍵とを用いて、前記共有鍵を生成する共有鍵生成部と
    を備える鍵共有装置。
    Figure 0006818220
    Figure 0006818220
  2. 前記共有鍵生成部は、数3に示す一時鍵Yを用いて、数4に示す値Z1と値Z2と値Z3と値Z4とに基づき共有鍵を生成する
    請求項に記載の鍵共有装置。
    Figure 0006818220
    Figure 0006818220
  3. コンピュータが、事前に記憶装置に記憶された静的秘密鍵及び静的公開鍵のである静的鍵であって、数5に示す公開鍵A1及び秘密鍵a1の組と、公開鍵A2及び秘密鍵a2の組とである、異なる素数に基づき生成された分類の異なる2つの静的鍵から、鍵の共有を開始する開始側か否かに応じて静的鍵を選択することにより、相手側によって選択される静的鍵と異なる分類の静的鍵を選択し、
    コンピュータが、選択された静的鍵と同じ分類の一時鍵Xであって、数6に示す一時鍵Xを生成し、選択された静的鍵と、前記相手側によって生成された一時鍵とを用いて、相手側と共有する共有鍵を生成する鍵共有方法。
    Figure 0006818220
    Figure 0006818220
  4. 事前に記憶装置に記憶された静的秘密鍵及び静的公開鍵のである静的鍵であって、数7に示す公開鍵A1及び秘密鍵a1の組と、公開鍵A2及び秘密鍵a2の組とである、異なる素数に基づき生成された分類の異なる2つの静的鍵から、鍵の共有を開始する開始側か否かに応じて静的鍵を選択することにより、相手側によって選択される静的鍵と異なる分類の静的鍵を選択する鍵選択処理と、
    前記鍵選択処理によって選択された静的鍵を用いて、相手側と共有する共有鍵を生成する鍵生成処理と
    をコンピュータに実行させ
    前記鍵生成処理では、
    前記鍵選択処理によって選択された静的鍵と同じ分類の一時鍵Xであって、数8に示す一時鍵Xを生成する一時鍵生成処理と、
    前記鍵選択処理によって選択された静的鍵と、前記相手側によって生成された一時鍵とを用いて、前記共有鍵を生成する共有鍵生成処理と
    をコンピュータに実行させる鍵共有プログラム。
    Figure 0006818220
    Figure 0006818220
JP2017202581A 2017-10-19 2017-10-19 鍵共有装置、鍵共有方法及び鍵共有プログラム Active JP6818220B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017202581A JP6818220B2 (ja) 2017-10-19 2017-10-19 鍵共有装置、鍵共有方法及び鍵共有プログラム
PCT/JP2018/021370 WO2019077796A1 (ja) 2017-10-19 2018-06-04 鍵共有装置、鍵共有方法、鍵共有プログラム及び鍵共有システム
US16/642,782 US11171778B2 (en) 2017-10-19 2018-06-04 Key sharing device, key sharing method, and computer readable medium
CN201880066637.7A CN111373692B (zh) 2017-10-19 2018-06-04 密钥共享装置、密钥共享方法和计算机能读取的存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017202581A JP6818220B2 (ja) 2017-10-19 2017-10-19 鍵共有装置、鍵共有方法及び鍵共有プログラム

Publications (2)

Publication Number Publication Date
JP2019075757A JP2019075757A (ja) 2019-05-16
JP6818220B2 true JP6818220B2 (ja) 2021-01-20

Family

ID=66173243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017202581A Active JP6818220B2 (ja) 2017-10-19 2017-10-19 鍵共有装置、鍵共有方法及び鍵共有プログラム

Country Status (4)

Country Link
US (1) US11171778B2 (ja)
JP (1) JP6818220B2 (ja)
CN (1) CN111373692B (ja)
WO (1) WO2019077796A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11496447B1 (en) * 2021-04-16 2022-11-08 Umm AI-Qura University Cryptosystem and method with efficient elliptic curve operators for an extraction of EiSi coordinate system
WO2023228408A1 (ja) * 2022-05-27 2023-11-30 三菱電機株式会社 パラメータ生成システム、パラメータ生成方法、及びパラメータ生成プログラム
JP7771003B2 (ja) * 2022-07-01 2025-11-17 株式会社東芝 同種写像計算装置、同種写像計算方法及びプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7353395B2 (en) * 2002-03-21 2008-04-01 Ntt Docomo Inc. Authenticated ID-based cryptosystem with no key escrow
CN1455543A (zh) * 2003-05-30 2003-11-12 武汉理工大学 一种密钥的协定方法
US7630736B2 (en) * 2005-10-11 2009-12-08 Mobitrum Corporation Method and system for spatial data input, manipulation and distribution via an adaptive wireless transceiver
US20080263363A1 (en) * 2007-01-22 2008-10-23 Spyrus, Inc. Portable Data Encryption Device with Configurable Security Functionality and Method for File Encryption
CA2746830C (en) * 2008-12-16 2016-06-07 Daniel R. L. Brown Acceleration of key agreement protocols
US8850203B2 (en) * 2009-08-28 2014-09-30 Alcatel Lucent Secure key management in multimedia communication system
US8301883B2 (en) * 2009-08-28 2012-10-30 Alcatel Lucent Secure key management in conferencing system
CN101702804B (zh) * 2009-11-23 2012-03-28 西安电子科技大学 基于自认证公钥的两方密钥协商方法
JP6000188B2 (ja) * 2013-05-16 2016-09-28 日本電信電話株式会社 鍵交換装置、鍵交換システム、鍵交換方法、およびプログラム
US9350550B2 (en) * 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US9100175B2 (en) * 2013-11-19 2015-08-04 M2M And Iot Technologies, Llc Embedded universal integrated circuit card supporting two-factor authentication
JP6187251B2 (ja) * 2013-12-27 2017-08-30 富士通株式会社 データ通信方法、およびデータ通信装置
EP3860041B1 (en) * 2014-06-18 2023-03-15 Visa International Service Association Efficient methods for authenticated communication
JP6320943B2 (ja) * 2015-01-19 2018-05-09 日本電信電話株式会社 鍵共有装置、鍵共有システム、鍵共有方法、プログラム
CN107210914B (zh) * 2015-01-27 2020-11-03 维萨国际服务协会 用于安全凭证供应的方法
US10516543B2 (en) * 2017-05-08 2019-12-24 Amazon Technologies, Inc. Communication protocol using implicit certificates

Also Published As

Publication number Publication date
CN111373692A (zh) 2020-07-03
CN111373692B (zh) 2023-03-24
US20210083854A1 (en) 2021-03-18
US11171778B2 (en) 2021-11-09
WO2019077796A1 (ja) 2019-04-25
JP2019075757A (ja) 2019-05-16

Similar Documents

Publication Publication Date Title
CN111066285B (zh) 基于sm2签名恢复公钥的方法
CN109493020B (zh) 基于区块链的安全交易方法和装置
TW202029693A (zh) 用以分配數位簽署資料之份額的電腦實施系統及方法
EP2228942A1 (en) Securing communications sent by a first user to a second user
CN110391900A (zh) 基于sm2算法的私钥处理方法、终端及密钥中心
US20120323981A1 (en) Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor
AU2019381522A1 (en) Encryption system and method employing permutation group-based encryption technology
CN109861828A (zh) 一种基于边缘计算的节点接入和节点认证方法
JP6818220B2 (ja) 鍵共有装置、鍵共有方法及び鍵共有プログラム
CN116681141A (zh) 隐私保护的联邦学习方法、终端及存储介质
US12132838B2 (en) Secret code verification protocol
CN110716724B (zh) 基于fpga实现隐私区块链的方法及装置
US11811741B2 (en) Information processing system and information processing method
JP2016157055A (ja) 暗号化システム、認証システム、暗号化装置、復号装置、認証子生成装置、検証装置、暗号化方法、認証方法
Gohel et al. A new data integrity checking protocol with public verifiability in cloud storage
JP5314449B2 (ja) 電子署名検証システム、電子署名装置、検証装置、電子署名検証方法、電子署名方法、検証方法、電子署名プログラム、検証プログラム
JP2015135380A (ja) シェア変換システム、シェア変換方法、プログラム
JP2014225770A (ja) 鍵交換装置、鍵生成装置、鍵交換システム、鍵交換方法、およびプログラム
CN116094708A (zh) Dbscan算法的隐私保护方法、终端及存储介质
TWI734087B (zh) 基於同態加密的簽章系統及其方法
CN107277054A (zh) 一种数据完整性验证的方法及系统
JP5227764B2 (ja) 電子署名検証システム、電子署名装置、検証装置、電子署名検証方法、電子署名方法、検証方法、電子署名プログラム、検証プログラム
JP6267657B2 (ja) 安全性強化方法、安全性強化システム、安全性強化装置、検証装置、およびプログラム
JP5427156B2 (ja) 鍵交換装置、鍵交換システム、鍵交換方法、鍵交換プログラム
JP6059160B2 (ja) シェア変換システム、シェア変換方法、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200401

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201027

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201208

R150 Certificate of patent or registration of utility model

Ref document number: 6818220

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250