JP4166696B2 - 組紐群を主体とする公開鍵での暗号通信方法 - Google Patents

組紐群を主体とする公開鍵での暗号通信方法 Download PDF

Info

Publication number
JP4166696B2
JP4166696B2 JP2003539229A JP2003539229A JP4166696B2 JP 4166696 B2 JP4166696 B2 JP 4166696B2 JP 2003539229 A JP2003539229 A JP 2003539229A JP 2003539229 A JP2003539229 A JP 2003539229A JP 4166696 B2 JP4166696 B2 JP 4166696B2
Authority
JP
Japan
Prior art keywords
braid
side device
verifier
symbol
prover
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
JP2003539229A
Other languages
English (en)
Other versions
JP2005506585A (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.)
Centre National de la Recherche Scientifique CNRS
Original Assignee
Centre National de la Recherche Scientifique CNRS
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 Centre National de la Recherche Scientifique CNRS filed Critical Centre National de la Recherche Scientifique CNRS
Publication of JP2005506585A publication Critical patent/JP2005506585A/ja
Application granted granted Critical
Publication of JP4166696B2 publication Critical patent/JP4166696B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Analogue/Digital Conversion (AREA)
  • Lock And Its Accessories (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、組紐群を主体とする公開鍵での暗号通信方法に関するものである。
本発明は、接触型または非接触型の標準的マイクロプロセッサー・カードのような資源に余り恵まれない環境においてこそ、実行速度の速い公開鍵での暗号通信方法の分野において、特に好適に応用されるものである。
公開鍵での暗号通信の分野においては、各ユーザーが所定の用途のための一対の鍵を保持するのであるが、前記一対の鍵というのは、秘密鍵と、結合された公開鍵とで構成されたものである。例えば、秘密保持専用の鍵が一対ある場合には、公開鍵はデータを暗号化するために用いられ、その一方で、秘密鍵は、その暗号化されたデータを復号するため、つまり、平文のデータに戻すために用いられる。逆に、認証専用の鍵が一対ある場合には、秘密鍵は認証の値を計算するために用いられるのであり、その一方で、公開鍵はそのような認証の値を検証するために用いられる。他の用途としては、電子署名や鍵のやりとりなどもまた可能である。
公開鍵での暗号通信法は、秘密鍵での暗号通信法とは逆に、相手と同じ秘密を共有していなくても安全な通信を行えるという点で、大いに役立つものである。しかしながら、安全性でのそのような利点は、性能面での短所も伴うものである、というのは、(「公開鍵方式」とも呼ばれる)公開鍵での暗号通信方法は、(「秘密鍵方式」とも呼ばれる)いわゆる秘密鍵での暗号通信方法よりも百倍ないし千倍も遅いということがよくあるからである。そういうわけで、実行速度の速い公開鍵での暗号通信方法を見いだし、それにより、マイクロプロセッサー・カードのような、上記に述べた資源の乏しい環境で、そのような方法を活用できるようにするということは、非常に重要な課題である。
実際に既にある公開鍵方式の大部分は、計算の分野に由来する数学的な諸問題の困難さ、つまり「数論」に基づくものである。そういうわけで、(著者の名前であるRivest,ShamirおよびAdlemanの頭文字を取った)RSAという名称で知られる暗号化と電子署名との方式での安全性が基づくのは、整数の因数分解の問題が解きにくいということなのであって、比較の対象となりうる大きさの、二つまたは幾つかの素因数の積に等しい(1000ビットを越える)大きな整数が与えられた場合、そのような素因数を効率的に捜し出す方法は存在しないのである。
公開鍵方式には、他にも、仏国特許発明第2716058号明細書に記載された電子署名方式のように、離散対数問題の困難さに基づいて安全性を行うものもある。そのような方式はすべて、係数の乗法:ab(mod n)、係数の割り算:a/b(mod n)、あるいは更に係数の累乗:ab(mod n)但しaとbは整数というような、整数についての演算を、基礎演算として用いるというところが共通している。
既に存在する公開鍵方式の大部分は、計算方法を基礎とするものであるが、それには少なくとも二つの短所がある。
第一の短所は、対象となる整数の長さが数百ビットの場合には、因数分解の問題を解くのに効率的なアルゴリズムと離散対数とが存在し、そのことから、非常に大きな、つまり、現時点では1000ビット以上の、整数の長さ(特に鍵の長さ)を取り出すことが想定されるということである。その結果、保存に困難が生じ、特に計算時間そのものが非常に長くなってしまう。更に、そのようなアルゴリズムの効率は時とともにかなり急速に高まり、それに従って鍵の長さももっと長くしなければならない。
第二の短所は、安全な応用は多々あるのに、その大多数の安全な応用の安全性の基礎を、二つの数学の問題の難しさのみに置くという危険性である。それは、そのような二つの問題が互いに近いものである場合には尚更のことであるし、その一つについて効率的なアルゴリズムを見いだせば、それに伴って、もう一つを解くのに効率的なアルゴリズムも見つかるというのも全く当然のことである。
そういうわけで、15年程前から、上記の二つとは別の問題及び/または整数とは別の数学的対象に基礎を置く、公開鍵での暗号通信方式を構築するために、多大の努力が費やされてきた。特に、整数についての演算の代わりに所謂「楕円」曲線上の諸点についての演算を用いることが提案されている。そのような考えに至った動機は、離散対数の問題が楕円曲線においては依然として更に解決が難しいように思われるということであり、それにより、対象となる方式の安全性を危険にさらすことなく鍵の長さを減じることが可能になるということである。
しかしながら、楕円曲線を用いることで解決できるのは、上記に提起した二つの問題の一部に過ぎない。事実、たとえ楕円曲線が数学的対象として異なっており、整数の集合よりも更に複雑ではあっても、そのようなものを説明する理論が、数論と密接な関係を有するものであるという意味において、そこから比較的近いものであるということに変わりはないからである。このような近似性から明白な効果としては、楕円曲線について計算を実行すると、それは結局のところ、整数についての一連の演算を行うことになるということであり、該整数はたとえ大きさが小さくなっていても、上記に規定したものと似通ったものである。その結果、計算時間が依然として余りにも掛かりすぎることになる。
仏国特許発明第2716058号明細書
それゆえ、数論や、それに近い理論の数々から得られるものとは大いに異なる数学的対象を、暗号通信のために利用し、それにより、一方では、上記の諸理論において見いだされた問題を解決するのに効率的なアルゴリズムが発見された場合の代替的解決法を活用したり、他方では、性能面で、そしてとりわけ計算時間の面で極めて効率的な解決法を活用したりすることは依然として必要である。
この方向での幾つかの試みがなされた。そのうちの一つ(2000年8月のK.H.Ko, S.J.Lee, J.H.Cheon, J.W.Han, J.Kang およびC.ParkによるNew Public−Key Cryptosystem Using Braid Groups, Advances in Cryptology, LNCS 1880, p.166−183, Springer Verlag参照)は、「組紐群」と呼ばれる数学的対象を用いるということである。
組紐というのは、その用語の数学的な意味では、その用語の形状に関しておよび通常の使用の意味での組紐というものの基本的なあり方を概念形成して一般化したものである。組紐理論の詳細に関しては、P.DehornoyのL’art de tresser,Pour la Science,Dossierの記事で、シリーズとは別冊の≪La science des noeuds≫、p.68−75, 1997を参照されたい。
「n本の糸からなる組紐」の集合が構成する群Gには、積と呼ばれる内部組成の法則があり、その法則により、二本の組紐XとYについては、組紐Xの下に組紐Yを「付着」させるという演算の結果として、XYという記号で示される一つの組紐を結合させることになる。一般的には、組紐の積は、可換演算ではない。更に、n本の糸の組紐のいずれにも、集合{1,2,...,n}の置換を、一意的に結合させることが可能である。(1からnの整数のいずれも自分の上に送る)置換が恒等置換である組紐は、純粋組紐と呼ばれる。
n本の糸の組紐群Gにある単位元Eは、組紐になっていないn本の糸で表され、どのような組紐Xについても積EX及びXEがどちらもXに等しいというような単位元である。更に、どのような組紐Xにも、それとは逆の、X-1という記号で示されるものがあり、積XX-1とX-1XとがどちらもEに等しくなるようになっている。
群Gのn本の糸の組紐は幾つもの方法でコード化されることができ、該方法は表現と呼ばれる。一つの組紐を所定の表現でコード化するについては、それに一つまたは複数の「表現記号」を結びつける。Xが一つの組紐である場合には、下にある表現でのXの表現記号にxという記号を付ける。本発明で用いられるような通常の表現においては、組紐Xと組紐Yのそれぞれの表現記号がxとyである場合には、xとyについての単純な演算が存在し、その結果にxyという記号が付けられて、組紐XYの表現記号ということになり、同様に、xについての単純な演算が存在し、その結果にx-1という記号が付けられて、組紐X-1の表現記号となる。
最も広く普及した表現は「標準」と呼ばれるもので、その基礎となる事実は、どのような組紐も、それぞれアルファベットの文字一つで示すn−1個の基本的組紐と、それらを逆にしたものとの積に分解できるということである。そのような基本的組紐の表現記号を小文字で記すことにする。例えば、4本の糸の組紐の場合には、3つの基本的組紐にA、B、およびCという記号を付け、その結果、その群のいずれの組紐Xも、組紐A、B、Cとそれらを逆にしたA-1、B-1、C-1に応じて表現することができ、しかもそれは一意的ではない。例えば、組紐ABAとBABは等しい。abaとbabは同値の組紐の表現記号であり、つまりは同一の組紐を示していると言えることになる。同様に、組紐Bは組紐BBB-1に等しく、その結果、表現記号bとbbb-1は同値であることになる。
群Gについて他の表現を用いられることができ、そのようなものを「代わりの選択肢」と言うことにする。そういうわけで、n本の糸からなる一つの組紐は、{1,2,...,n}の置換で表される「単純な」あるいは「規準にかなった」組紐と、それらを逆にしたものとの積としてコード化されることができる。また改めてGの表現について触れると、それは「Birman−Ko−Lee表現」と呼ばれるものであり、そこでのコード化にはまた置換を用いたり、あるいは、すべて1からnの間に含まれるn個の数の幾つかの表を用いたりするのだが、もう一つ他の、Dynnikov表現と呼ばれるものでは、コード化には整数を用いる。そこでもまた、一つの組紐には幾つもの表現記号があり得るし、同一の組紐の幾つかの表現記号が同値であると言われる。
「標準」と言われる表現では、一つの組紐は幾つかの単語でコード化され、「同値である」という意味の「〜」という表記が導入される。組紐UとVが同等である場合、uを組紐Uの表現記号とし、vを組紐Vの表現記号として、「u〜v」と記すことになる。以下の同値関係式により、確実に、二つの単語が同一の組紐を表現しているかどうかを決定することが可能になる:
−aa-1〜a-1a〜e、
−aとcとが連続しない文字である場合は、ac〜ca、
−aとbとが連続する文字である場合には、aba〜bab。
上記の組紐を用いる公開鍵での暗号通信方法は、もっぱら、データの秘密保持専用のものであり、該データは伝送前に暗号化され、それから受信者によって復号化される。
本発明の対象により解決されるべき技術的課題は、組紐群を主体とする公開鍵での暗号通信方法を提案することであって、該方法により、一方では、データの秘密保持だけでなく、エンティティ及び/またはデータの認証もまた確実に行うことが可能になるのであり、他方では、それと同時に、マイクロプロセッサー・カードのように、潜在的に資源が限られたシステムを用いる方法を応用するのと両立するような、高いレベルの安全性と速い計算時間とを得ることが可能になる。
技術的課題を解決するには、本発明によると、前記の方法で以下のものを活用することである:
−組紐群Gの中の所定の組紐Sの表現記号sによって規定された秘密鍵、
−とりわけ、演算子Tにより組紐Sから変換した組紐T(S)の表現記号vによって規定された公開鍵、
−二つの組紐が同等であること、つまり、そのような二つの組紐の表現記号が同値であることを検証する、少なくとも一回の演算。
そういうわけで、本発明による暗号通信方法の安全性の基礎となるのは、公開鍵の中に含まれているT(S)の表現記号vから秘密組紐Sを再構成するのは難しいということなのであって、そのような再構成を行おうとすると、それにつれて累積するような形で益々、組紐の同等性、ひいては表現記号の同値性の問題と、演算子Tの逆転の問題とに直面することになる。その意味では、本発明の対象である方法を活用するのに都合よくできるように、演算子Tについての二つの例が提案されている。
−演算子TはT(S)=SWS-1によって規定され、但しWは群Gの組紐であり、その表現記号wは、V=T(S)の表現記号vと共に、前記公開鍵を形成し、そしてS-1は、群GのSを逆転した組紐である。
−演算子Tは、2以上の正の整数pのデータによって、そしてT(S)=Sp=S...S、Sをp回かけた積によって規定される。
第一の演算子が扱う共役の問題は、極めて難解なものと考えられている。組紐SWS-1の表現記号が分かった上で、組紐Sの表現記号を見いだすということが重要である。特に、組紐の表現記号の中でも特に優先されるべきものである、被約形を用いることにより、この問題は特に錯綜したものになる。それは、第二の演算子で活用される根の問題についても同様であって、表現記号Spが分かった上でSの表現記号を見いだすというのは、実際には、実現不可能な演算である。
また、組紐の表現記号の同値性を検証する演算は、前記組紐の表現記号の被約形、あるいは前記組紐に基づいて計算された組紐の表現記号の被約形を用いて行えば、それだけ早くできることになる。そのような被約形は、一つの組紐の表現記号を、その同一の組紐の(場合によっては同じになるかも知れない)もう一つの他の表現記号に変換する関数なのであるが、その利点は、該被約形から実際に、二つの組紐が同等なのかどうかという、あながち自明とも決めつけられない問題を、前記組紐の表現記号に基づいて解くのに効率的な方法が得られるということである。
被約形FRを特徴づける事実は、単位元組紐Eの表現記号が何であれ、それを自明の(つまりは中身のない)eという記号で示される表現記号に、該被約形が変換するということである。しかしながら、同一の組紐の二つの表現記号が必ずしも同一の被約形を有するとは限らない。それは、P.Dehornoy,A Fast Method for Comparing Braids, Advances in Mathematics,n°125,pp.200−235,1997で展開される被約形についても言えることである。組紐UとVの二つの表現記号uとvが同値であるかどうかを知るためには、組紐UV-1の表現記号であるuv-1の被約形を計算する。事実、それは結局のところ、uとvが同値である、あるいはuv-1が自明の組紐Eを表現すると言うのと同じことになる。そういうわけで、FR(uv-1)=eであれば、しかも、そうでさえあれば、uとvは同値である。それに代わるものとしては、uv-1の代わりにu-1vを用いてもよい。
被約形の特殊なケースは、正規形から成る。正規形FNは、同一の組紐の任意の二つの表現記号に、その組紐の同一の表現記号を関連づける被約形である。言葉を換えていうと、組紐の二つの表現記号uとvは、それらが同一の正規形FN(u)=FN(v)を持っていれば、そして、持ってさえいれば、同値である。そのような正規形FNを規定する方法は幾つもあるが、それは現行技術において記述されているところであり、特にD.Epstein et al., Word Processing in Groups, Jones and Barlett Publishers,Boston,1988に述べられている。特に上記に述べられた組紐群の表現が「代わりの選択肢」である場合には、効率的に計算可能な正規形も幾つかある。その場合には、組紐の表現記号は正規形の計算に特に適している。
しかしながら、「標準的な」表現の場合には、被約形を用いることにより、より効率的なアルゴリズムの入手が可能になるが、これは、一つの被約形について必要とされる条件が正規形についてよりはきつくなくて、二つの同値の表現記号の被約形が必ずしも同一ではない一方で、正規形は必ず同一だという事実によるものである。そういうわけで、上記の被約形を計算するアルゴリズムは、「標準的な」表現の場合に正規形の計算を行う既知のアルゴリズムのどれよりも早い。そこで分かるのは、どのような表現を選ぶかに応じて、ある時は(典型的には「標準的な」表現での)FRという記号で示される必ずしも正規ではないの被約形で、ある時は(特に「代わりの選択肢」としての表現における)FNという記号で示される正規の被約形で、本発明による暗号通信方法を活用するのが好適になるということである。
申し添えることは、所定の組紐についての被約形が場合によっては同じものは二つとないようにならないことがあったとしても、その決定を左右するのが、例えば「通信相手のエンティティが真正なものであるかどうか」というような、二つの単語が同値かどうかということだけである場合には、それが短所にはならないということである。
本発明による暗号通信方法の応用例四つをこれから詳細にわたって説明するが、それは限定的なものではなく、すべて認証プロトコールについてのものである。
同様に、必ずしも不可欠というわけではないが、既に上記で見たように、必ずしも正規形ではない被約形FRを、該被約形が本発明のより望ましい実施態様であることを踏まえた上で、体系的に使用していく。
第一の認証プロトコールは、n=p+q本の糸の組紐の群G1と共役問題とを作用させるものである。更に詳細に言うと、ある特殊なタイプの二つの組紐を想定しているのである。二つの組紐のうちの一つには、左の糸がp本しか使われておらず、「標準的な」表現でコード化が可能であるが、その際に用いるのはn=p+q文字のアルファベットの中の最初のp−1個の文字とそれらを逆さまにしたものとであり、二つの組紐のうちの他のもう一つには、右の糸がq本しか使われておらず、そしてそれゆえに、「標準的な」表現でコード化が可能であるが、その際に用いるのはそのアルファベットの中の終わりからq−1個の文字とそれらを逆さまにしたものとである。そのような二つの組紐の特徴は、一般の場合とは逆に、互いに入れ替わるということである。
証明者Aの秘密鍵は、左の糸がp本の組紐Sの表現記号sである。検証者Bにより用いられる証明者Aの公開鍵は、群G1の中から選ばれた組紐Wの表現記号wと、組紐V=T(S)=SWS-1の表現記号vとから成る一つのペア(v,w)である。
検証者Bによって証明者Aの認証を行うのは、以下のように、二つのやりとりで進められていく:
1.表現記号zを選ぶことにより、右の糸がq本の組紐ZをBが選ぶ。その場合、Bが保
持する表現記号は組紐C=ZWZ-1の表現記号であり、zwz-1という記号が付けられる。BはCの表現記号c=F1(zwz-1)を計算し、cをAに送る。
2.Aは組紐SCS-1の表現記号y=F2(scs-1)を計算し、yをBに送る。Bは、(場合によっては正規にもなる)被約形FRを用いて、y〜zvz-1の同値性を検証する。
yがzvz-1と同値であるという事実は、SとZが互いに入れ替わるということに由来するものである。事実、yは組紐SCS-1を表現しており、それはつまり、
S(ZWZ-1)S-1=(SZ)W(Z-1-1)=(ZS)W(S-1-1)=Z(SWS-1)Z-1=ZVZ-1であり、zvz-1によっても表現されるということである。
手順2において公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(yzv-1-1)=eを、あるいは、正規形を用いる場合はFN(y)=FN(zvz-1)を検証することにより、行うことが可能である。
関数F1とF2は、一つの組紐の一つの表現記号に、その同一の組紐の一つの表現記号を結合させる関数である。「標準的な」表現の場合には、F1とF2は被約形となりうるが、必ずしもそうでなければならないということもない。それらは典型的には、被約形となるが、一般的には、同値性の検証に用いられるものとは別のものである。代わりの選択肢としての表現においては、F1とF2について正規形FNを取る。
また、Wについては純粋組紐を選ぶのが望ましい。
このプロトコールの変化形は、容易に特定されることができる。特に、vについては組紐T’(S)=S-1WSの表現記号を選ぶことができ、そして、その結果、プロトコールの残りを変更することができる。あるいは更に、Sについては、右のq本の糸について一つの組紐を、そしてZについては左のp本の糸について一つの組紐を選ぶことができる。
第二の認証プロトコールは、n本の糸の組紐群G2と共役問題とを作用させるものである。それは、やりとりが3つある基礎プロトコールをk回、繰り返すというものであり、Aの秘密を知らないけれども、Aとして認識されようと試みる詐称者がもし発生しても、そのプロトコールは、それ単独に属するものとしては、そのような詐称者、つまりエンティティCを検出する機会を二回のうち一回しか提供しないというものである。k回の繰り返しの後、詐称者が検出されずにいられる機会は2kのうちの一回だけしかない。このプロトコールはゼロ知識(≪zero−knowledge≫)プロトコールの範疇に属するものである。
証明者Aの秘密鍵は、群G2の組紐Sの表現記号sである。検証者Bによって用いられる証明者Aの公開鍵は、群G2の中から選ばれた組紐Wの表現記号wと、組紐V=T(S)=SWS-1の表現記号vとから成る一つのペア(v,w)である。
検証者Bによって証明者Aの認証を行うのは、以下のように、k回繰り返される三つのやりとりで進められていく:
1.Aは、表現記号rを選ぶことにより、組紐Rを選ぶ。それゆえ、Aが保持する表現記号rwr-1は組紐X=RWR-1の表現記号である。AはXの表現記号x=F1(rwr-1)を計算し、xをBに送る。
2.Bは一つのビットcを無作為に抽出して、cをAに送る。
3a.c=0の場合には、Aはy=rを設定し、yをBに送る。Bは、(場合によっては正規にもなる)被約形FRを用いて、y〜ywy-1の同値性を検証する。
3b.c=1の場合には、Aは組紐RS-1の表現記号y=F2(rs-1)を計算し、yをBに送る。Bはそこで、(場合によっては正規にもなる)被約形FRを用いて、x〜yvy-1の同値性を検証する。
事実、c=1の場合に、xとyvy-1とが同値になるのは、yvy-1が組紐(RS-1)SWS-1(SR-1)=R(S-1S)W(S-1S)R-1=RWR-1を表現していて、そのxは表現記号だからである。
手順3aにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(xyw-1-1)=eを、あるいは、正規形を用いる場合はFN(x)=FN(ywy-1)とを検証することにより、行うことが可能である。
手順3bにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(xyv-1-1)=eの、あるいは、正規形を用いる場合はFN(x)=FN(yvy-1)を検証することにより、行うことが可能である。
関数F1とF2は、一つの組紐の一つの表現記号に、その同一の組紐の一つの表現記号を結合させる関数である。「標準的な」表現の場合には、F1とF2は被約形となりうるが、必ずしもそうでなければならないということもない。それらは典型的には、被約形となるが、一般的には、同値性の検証に用いられるものとは別のものである。代わりの選択肢としての表現においては、F1とF2については正規形FNを取るのが望ましい。
このプロトコールの変化形は、容易に特定されることができる。特に、vについては組紐T’(S)=S-1WSの表現記号を選ぶことができ、そして、その結果、プロトコールの残りを変更することができる。
第三の認証プロトコールは、n本の糸の組紐群G3と共役問題とを作用させるものである。前述のもののように、このプロトコールはゼロ知識プロトコールの範疇に属するものであり、三つのやりとりをk回繰り返す。
証明者Aの秘密鍵は、群G3の組紐Sの表現記号sである。検証者Bによって用いられる証明者Aの公開鍵は、群G3の中から選ばれた組紐Wの表現記号wと、組紐V=T(S)=SWS-1の表現記号vとから成る一つのペア(v,w)である。
検証者Bによって証明者Aの認証を行うのは、以下のように、k回繰り返される三つのやりとりで進められていく。
1.Aは、表現記号rを選ぶことにより、組紐Rを選ぶ。それゆえ、Aが保持する表現記号は、組紐X=RWR-1の表現記号rwr-1並びに組紐X’=RVR-1の表現記号rvr-1である。AはXの表現記号x=F1(rwr-1)、X’の表現記号x’=F’1(rvr-1)を計算し、xとx’をBに送る。
2.Bは一つのビットcを無作為に抽出して、cをAに送る。
3a.c=0の場合には、Aはy=rを設定し、yをBに送る。Bは、(場合によっては正規にもなる)被約形FRを用いて、x〜ywy-1とx’〜yvy-1の同値性を検証する。
3b.c=1の場合には、Aは組紐RSR-1の表現記号y=F2(rsr-1)を計算し、yをBに送る。Bはそこで、(場合によっては正規にもなる)被約形FRを用いて、x’〜yxy-1の同値性を検証する。
事実、c=1の場合に、x’とyxy-1とが同値になるのは、yxy-1が組紐(RSR-1)RWR-1(RS-1-1)=RS(R-1R)W(R-1R)S-1-1=R(SWS-1)R-1=RVR-1を表現していて、そのx’は表現記号だからである。
手順3aにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(xyw-1-1)=eとFR(x’yv-1-1)=eの、あるいは、正規形を用いる場合はFN(x)=FN(ywy-1)とFN(x)=FN(yvy-1)とを検証することにより、行うことが可能である。
手順3bにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(x’yx-1-1)=eの、あるいは、正規形を用いる場合はFN(x’)=FN(yxy-1)を検証することにより、行うことが可能である。
関数F1、F’1とF2は、一つの組紐の一つの表現記号に、その同一の組紐の一つの表現記号を結合させる関数である。「標準的な」表現の場合には、F1、F’1とF2は被約形となりうるが、必ずしもそうでなければならないということもない。それらは典型的には、被約形となるが、一般的には、同値性の検証に用いられるものとは別のものである。代わりの選択肢としての表現においては、F1とF’1、そしてF2についてはできれば正規形FNを取るのが望ましい。
注目すべきは、検証で用いられる特性は、その共役が自己分配的なものだという事実である。ここで思い出されるのは、u*(v*w)=(u*v)*(u*w)という関係がある場合には、演算*は自己分配的なものだと言われるということである。そういうわけで、このプロトコールでは、共役演算の代わりに、もう一つ別の自己分配演算を行うことも可能である。
第四の認証プロトコールは、n本の糸の組紐群G4と、同時に、p乗根の問題と共役問題とを作用させるものである。前述の二つのものの意味で、このプロトコールはゼロ知識のプロトコールの範疇に属するものである。
証明者Aの秘密鍵は、群G4の組紐Sの表現記号sである。検証者Bによって用いられる証明者Aの公開鍵は、組紐V=Sp=S...S、p回反復したSの積の表現記号vであるが、但し、pは2以上の小さな整数である。
検証者Bによって証明者Aの認証を行うのは、以下のように、k回繰り返される三つのやりとりで進められていく。
1.Aは、表現記号rを選ぶことにより、組紐Rを選ぶ。それゆえ、Aが保持する表現記号は、組紐X=RVR-1の表現記号rvr-1である。AはXの表現記号x=F1(rvr-1)を計算し、xをBに送る。
2.Bは一つのビットcを無作為に抽出して、cをAに送る。
3a.c=0の場合には、Aはy=rを設定し、yをBに送る。Bは、(場合によっては正規にもなる)被約形FRを用いて、x〜yvy-1の同値性を検証する。
3b.c=1の場合には、Aは組紐RSR-1の表現記号y=F2(rsr-1)を計算し、yをBに送る。Bはそこで、(場合によっては正規にもなる)被約形FRを用いて、x〜ypの同値性を検証する。
事実、c=1の場合に、xとypとが同値になるのは、ypが組紐(RSR-1p=RSp-1=RVR-1を表現していて、そのxは表現記号だからである。
手順3aにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、等式FR(xyv-1-1)=e、あるいは、正規形を用いる場合はFN(x)=FN(yvy-1)を検証することにより、行うことが可能である。
手順3bにおいて公式化された同値性の検証は、他の方法ではできないというわけではないが、(y-1をp回反復する)等式FR(vy-1...y-1)=eの、あるいは、正規形を用いる場合は(yをp回反復する)FN(v)=FN(y...y)を検証することにより、行うことが可能である。
関数F1とF2は、一つの組紐の一つの表現記号に、その同一の組紐の一つの表現記号を結合させる関数である。「標準的な」表現の場合には、F1とF2は被約形となりうるが、必ずしもそうでなければならないということもない。それらは典型的には、被約形となるが、一般的には、同値性の検証に用いられるものとは別のものである。代わりの選択肢としての表現においては、F1とF2については、正規形FNを取るのが望ましい。

Claims (13)

  1. 組紐群に基づいた公開鍵での暗号通信方法であって、
    該方法は、秘密鍵及び公開鍵を用いるものであり、
    前記秘密鍵は、組紐群Gの中の所定の組紐Sの表現記号sによって規定され、
    前記公開鍵は、演算子Tにより組紐Sから変換した組紐T(S)の表現記号vによって規定され、
    該方法が少なくとも以下のステップを含むことを特徴とする、暗号通信方法。
    −証明者A側装置が少なくとも一つの、第一の表現記号を検証者B側装置に送信するステップであって、
    ここで、前記第一の表現記号は、
    ・証明者A側装置の秘密鍵を規定する表現記号sと、
    ・証明者A側装置の公開鍵を規定する表現記号vと、
    ・証明者A側装置および/または検証者B側装置によって事前に決定された第一の値とからなる集合の一部を形成する、少なくとも一つの要素によって規定されるものである、第一の表現記号を検証者B側装置に送信するステップ、
    −検証者B側装置が、上記ステップで受信した前記少なくとも一つの第一の表現記号と、第二の表現記号との間の同値性を検証するステップであって、
    ここで、前記第二の表現記号は、
    証明者A側装置の公開鍵を規定する表現記号vと、
    証明者A側装置及び/又は検証者B側装置によって事前に決定された第二の値とからなる集合の一部を形成する、少なくとも一つの要素から規定されるものである、第一の表現記号と第二の表現記号との間の同値性を検証するステップ、および、
    −検証者B側装置が、前記同値性が確認された場合に、証明者A側装置を認証する、認証ステップ。
  2. 表現記号vが、組紐T(S)の表現記号の被約形FRであることを特徴とする、請求項1に記載の暗号通信方法。
  3. 二つの組紐の表現記号が同値であることを検証する前記演算が、そのような二つの組紐の表現記号の被約形FR、あるいは前記組紐に基づいて計算された組紐の表現記号の被約形を用いて実現されることを特徴とする、請求項1または請求項2に記載の暗号通信方法。
  4. 前記被約形FRは、正規形FNであることを特徴とする、請求項2または請求項3に記載の暗号通信方法。
  5. 前記被約形FRは、非正規の被約形であることを特徴とする、請求項2または請求項3に記載の暗号通信方法。
  6. 演算子TがT(S)=SWS−1によって規定され、但しWは群Gの組紐であり、その表現記号wが、組紐Vの表現記号vと共に、前記公開鍵を形成し、そしてS−1が、群Gの組紐Sを逆転した組紐であることを特徴とする、請求項1から請求項5のいずれか一つに記載の暗号通信方法。
  7. 演算子Tが、2以上の正の整数pのデータによって、そしてT(S)=S=S...S、Sをp回かけた積によって規定されることを特徴とする、請求項1から請求項5のいずれか一つに記載の暗号通信方法。
  8. 検証者B側装置によって証明者A側装置の認証を行うにつき、
    −n=p+q本の糸の組紐群G1の中から選ばれた、左の糸がp本の組紐Sの表現記号sからなる秘密鍵を、証明者A側装置に割り当て、
    −群G1の中から選ばれた組紐Wの表現記号wと、組紐V=T(S)=SWS−1の表現記号vとで構成され、検証者B側装置により用いられる公開鍵を、証明者A側装置に割り当て、
    −検証者B側装置が、表現記号zを選ぶことで、群G1の中から右の糸がq本の組紐Zを選び、組紐C=ZWZ−1の表現記号cを計算し、そしてcを証明者A側装置に送り、
    −証明者A側装置が、組紐Y=SCS−1の表現記号yを計算し、yを検証者B側装置に送り、
    −検証者B側装置が、表現記号yとzvz−1との同値性を検証する
    ことを特徴とする、請求項6に記載の暗号通信方法。
  9. 検証者B側装置によって証明者A側装置の認証を行うにつき、
    −n本の糸の組紐群G2の中から選ばれた組紐Sの表現記号sからなる秘密鍵を、証明者A側装置に割り当て、
    −群G2の中から選ばれた組紐Wの表現記号wと、組紐SWS−1の表現記号vとで構成され、検証者B側装置により用いられる公開鍵を、証明者A側装置に割り当て、
    −証明者A側装置が、表現記号rを選ぶことで、群G2の中から組紐Rを選び、組紐X=RWR−1の表現記号xを計算し、xを検証者B側装置に送り、
    −検証者B側装置が、一つのビットcを選んで、cを証明者A側装置に送り、
    ・c=0の場合には、証明者A側装置がy=rを設定し、yを検証者B側装置に送り、該検証者B側装置が表現記号xとywy−1との同値性を検証し、
    ・c=1の場合には、証明者A側装置が、組紐RS−1の表現記号yを計算し、yを検証者B側装置に送り、該検証者B側装置が表現記号xとyvy−1との同値性を検証し、
    上記の三つのやりとりをk回繰り返すことを特徴とする、請求項6に記載の暗号通信方法。
  10. 検証者B側装置によって証明者A側装置の認証を行うにつき、
    −n本の糸の組紐群G3の中から選ばれた組紐Sの表現記号sからなる秘密鍵を、証明者A側装置に割り当て、
    −群G3の中から選ばれた組紐Wの表現記号wと、組紐SWS−1の表現記号vとで構成され、検証者B側装置により用いられる公開鍵を、証明者A側装置に割り当て、
    −証明者A側装置が、表現記号rを選ぶことで、群G3の中から組紐Rを選び、組紐X=RWR−1の表現記号xと、組紐X’=RVR−1の表現記号x’とを計算し、xおよびx’を検証者B側装置に送り、
    −検証者B側装置が、一つのビットcを選んで、cを証明者A側装置に送り、
    ・c=0の場合には、証明者A側装置がy=rを設定し、yを検証者B側装置に送り、該検証者B側装置が表現記号xとywy−1、並びに表現記号x’とyvy−1との同値性を検証し、
    ・c=1の場合には、証明者A側装置が組紐RSR−1の表現記号yを計算し、yを検証者B側装置に送り、該検証者B側装置が表現記号x’とyxy−1との同値性を検証し、
    上記の三つのやりとりをk回繰り返すことを特徴とする、請求項6に記載の暗号通信方法。
  11. 検証者B側装置によって証明者A側装置の認証を行うにつき、
    −n本の糸の組紐群G4の中から選ばれた組紐Sの表現記号sからなる秘密鍵を、証明者A側装置に割り当て、
    −pは2以上の整数で、組紐V=S=S...S、Sをp回かけた積の表現記号vからなり、検証者B側装置により用いられる公開鍵を、証明者A側装置に割り当て、
    −証明者A側装置が、表現記号rを選ぶことで、群G3の中から組紐Rを選び、組紐X=RVR−1の表現記号xを計算し、xを検証者B側装置に送り、
    −検証者B側装置が、一つのビットcを選んで、cを証明者A側装置に送り、
    ・c=0の場合には、証明者A側装置がy=rを設定し、yを検証者B側装置に送り、該検証者B側装置が表現記号xとyvy−1との同値性を検証し、
    ・c=1の場合には、証明者A側装置が組紐RSR−1の表現記号yを計算し、yを検証者B側装置に送り、該検証者B側装置が表現記号xと、yに基づいて得られた組紐Yを表現するy=y...yとの同値性を検証し、
    上記の三つのやりとりをk回繰り返すことを特徴とする、請求項7に記載の暗号通信方法。
  12. 演算子Tの代わりに自己分配演算を行うことを特徴とする、請求項6に記載の暗号通信方法。
  13. 前記組紐Wが純粋であることを特徴とする、請求項8に記載の暗号通信方法。
JP2003539229A 2001-10-25 2002-10-24 組紐群を主体とする公開鍵での暗号通信方法 Expired - Fee Related JP4166696B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0113787A FR2831738B1 (fr) 2001-10-25 2001-10-25 Procede cryptographique a cle publique base sur les groupes de tresses
PCT/FR2002/003665 WO2003036863A1 (fr) 2001-10-25 2002-10-24 Procede cryptographique a cle publique base sur les groupes de tresses

Publications (2)

Publication Number Publication Date
JP2005506585A JP2005506585A (ja) 2005-03-03
JP4166696B2 true JP4166696B2 (ja) 2008-10-15

Family

ID=8868699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003539229A Expired - Fee Related JP4166696B2 (ja) 2001-10-25 2002-10-24 組紐群を主体とする公開鍵での暗号通信方法

Country Status (9)

Country Link
US (1) US7401226B2 (ja)
EP (1) EP1438804B1 (ja)
JP (1) JP4166696B2 (ja)
KR (1) KR100944290B1 (ja)
AT (1) ATE322112T1 (ja)
DE (1) DE60210331T2 (ja)
ES (1) ES2261770T3 (ja)
FR (1) FR2831738B1 (ja)
WO (1) WO2003036863A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7133523B2 (en) * 2002-12-20 2006-11-07 Pitney Bowes Inc. Method and system for solving the word problem in braid group cryptosystems
CN1545242A (zh) * 2003-11-13 2004-11-10 ����ͨѶ�ɷ����޹�˾ 一种基于辫群共轭问题的数字签名方法
US8625784B2 (en) * 2006-12-22 2014-01-07 Samsung Electronics Co., Ltd. Broadcast encryption method and broadcast decryption method thereof
US8284938B2 (en) * 2009-10-23 2012-10-09 Novell, Inc. Techniques for data encryption and decryption
CN103414569B (zh) * 2013-08-21 2016-08-10 王威鉴 一种建立抗攻击的公钥密码的方法
US10367640B2 (en) * 2016-05-04 2019-07-30 Securerf Corporation Shared secret data production system
US20190215148A1 (en) * 2018-01-11 2019-07-11 Shenzhen University Method of establishing anti-attack public key cryptogram
WO2021223090A1 (zh) * 2020-05-06 2021-11-11 深圳大学 建立共享密钥的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2716058B1 (fr) 1994-02-04 1996-04-12 France Telecom Procédé de signature numérique et d'authentification de messages utilisant un logarithme discret.

Also Published As

Publication number Publication date
KR20040053209A (ko) 2004-06-23
KR100944290B1 (ko) 2010-02-24
US7401226B2 (en) 2008-07-15
FR2831738A1 (fr) 2003-05-02
WO2003036863A1 (fr) 2003-05-01
FR2831738B1 (fr) 2003-12-19
ES2261770T3 (es) 2006-11-16
DE60210331T2 (de) 2006-12-28
EP1438804B1 (fr) 2006-03-29
DE60210331D1 (de) 2006-05-18
US20040240672A1 (en) 2004-12-02
JP2005506585A (ja) 2005-03-03
EP1438804A1 (fr) 2004-07-21
ATE322112T1 (de) 2006-04-15

Similar Documents

Publication Publication Date Title
US8184803B2 (en) Hash functions using elliptic curve cryptography
US8189775B2 (en) Method of performing cipher block chaining using elliptic polynomial cryptography
JP5412626B2 (ja) 暗号化装置、復号化装置、署名装置、検証装置、暗号化方法、復号化方法、署名方法、検証方法、暗号化プログラム、復号化プログラム、認証プログラム及び検証プログラム
US8331558B2 (en) Method of cipher block chaining using elliptic curve cryptography
US20100169658A1 (en) Elliptic curve-based message authentication code
US8705740B2 (en) Elliptic curve-based message authentication code system and method
JP4166696B2 (ja) 組紐群を主体とする公開鍵での暗号通信方法
Karu et al. Practical comparison of fast public-key cryptosystems
Jia et al. A remote user authentication scheme using bilinear pairings and ECC
Koç et al. Development of Cryptography since Shannon
Schaefer An introduction to cryptography and Cryptanalysis
Gajbhiye et al. Paradigm shift from classical cryptography to quantum cryptography
Wei et al. Ensuring file authenticity in private DFA evaluation on encrypted files in the cloud
Ashraf et al. Message transmission for GH-public key cryptosystem
Vahedi et al. An Overview of Cryptography
US20120140921A1 (en) Rsa-analogous xz-elliptic curve cryptography system and method
Akleylek et al. New methods for public key cryptosystems based on XTR
Sujatha et al. Renowned information security algorithms: a comparative study
Sadiq et al. Enhanced Menezes-Vanestone elliptic curves cryptosystem
CN117478308A (zh) 一种基于安全判等的多方门限隐私集合求交方法与系统
Amalarethinam et al. A survey on secured communication with high speed using public key cryptography
Meleshko et al. Elliptic curve cryptography
Pandya Advanced data encryption
Wanambisi et al. A probabilistic data encryption scheme (PDES)
Tudor ZERO-KNOWLEDGE PROTOCOLS IMPLEMENTED WITH ELLIPTIC CURVES

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070731

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071029

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20071119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071129

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20071207

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071227

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080130

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080730

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees