JP2010530990A - 公開行列に基づき、エラー補正コードのデコーディングを用いて認証を行う方法 - Google Patents

公開行列に基づき、エラー補正コードのデコーディングを用いて認証を行う方法 Download PDF

Info

Publication number
JP2010530990A
JP2010530990A JP2010512742A JP2010512742A JP2010530990A JP 2010530990 A JP2010530990 A JP 2010530990A JP 2010512742 A JP2010512742 A JP 2010512742A JP 2010512742 A JP2010512742 A JP 2010512742A JP 2010530990 A JP2010530990 A JP 2010530990A
Authority
JP
Japan
Prior art keywords
matrix
block
vector
public
cyclic
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.)
Granted
Application number
JP2010512742A
Other languages
English (en)
Other versions
JP2010530990A5 (ja
JP5426540B2 (ja
Inventor
ガボリ,フィリップ
Original Assignee
サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス)
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 サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス) filed Critical サントル ナシオナル ドゥ ラ ルシェルシェサイアンティフィク(セエヌエールエス)
Publication of JP2010530990A publication Critical patent/JP2010530990A/ja
Publication of JP2010530990A5 publication Critical patent/JP2010530990A5/ja
Application granted granted Critical
Publication of JP5426540B2 publication Critical patent/JP5426540B2/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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • 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/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3033Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0202Channel estimation
    • H04L25/024Channel estimation channel estimation algorithms
    • H04L25/0242Channel estimation channel estimation algorithms using matrix methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0202Channel estimation
    • H04L25/024Channel estimation channel estimation algorithms
    • H04L25/0242Channel estimation channel estimation algorithms using matrix methods
    • H04L25/0244Channel estimation channel estimation algorithms using matrix methods with inversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Storage Device Security (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

本発明は、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法に関する。ここで、公開行列は擬似巡回行列である。本発明はまた、暗号化装置の動作によって上記方法を実行するように構成される計算処理手段を備える暗号化装置に関する。本発明は、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法において記憶されるべき公衆データの量を減少させることを可能にする。

Description

本発明は、公開行列(public matrix)に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法に関する。
本発明はまた、暗号化装置の動作によって上記のような認証の方法を実行するように構成される処理手段を備える暗号化装置に関する。
暗号化・認証を行う方法は広く知られている。
最も広く知られている暗号化・認証を行う方法は、現在のところ、リベスト(Rivest)、シャミア(Shamir)およびエーデルマン(Adleman)により開発されたRSAアルゴリズムに基づいている。このRSAアルゴリズムのセキュリティ(security)は、大きな整数を因数分解することに関する数学的な難しさにある。
しかしながら、このような暗号化・認証を行う方法は、幾つかの欠点を有している。これらの欠点の中で特に注目すべき点は、上記のRSAアルゴリズムが、非常に大きな整数を使用した計算能力を必要とし、とりわけ、離散的な指数関数計算を必要とする点である。この種の計算は、特に、スマートカードまたは無線タグ(RFタグ)のような、限られた処理能力を有する低価格の暗号化装置上で実行される際に計算の速度が遅くなる傾向にある。このため、前述のような暗号化・認証を行う方法は、現在のところ、これらの暗号化装置には利用できない。
RSAアルゴリズムに基づいて暗号化・認証を行う方法の代替方法の中で、公開行列を利用し、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法が広く知られている。
より詳しくいえば、本発明は、このようなエラー補正コードのデコーディングを用いて暗号化・認証を行う方法に関するものである。
このような暗号化・認証を行う方法は、NP(non−deterministic polynomial)完全性を有する数学的な問題のソースであって、それゆえに、解くことが非常に難しい数学的な問題のソースであるという利点を有している。この結果、このような暗号化・認証を行う方法は、高度にセキュリティに富んでいる。その上、エラー補正コードをデコーディングするための計算の速度は、RSAアルゴリズムに基づいた計算の速度よりも速い。
暗号化においてエラー補正コードを用いることは、1980年代より公知である。
欧州特許出願公開第0661846号公報(後述の特許文献1に対応する)においては、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法が記述されている。
さらに、この欧州特許出願公開第0661846号公報においては、当該欧州特許出願の出願人による先行技術文献である「シンドローム・デコーディングに基づいた新しい識別スキーム(A new identification scheme based on syndrome decoding)」(ジェイ.スターン(J.Stern)著、1993年発行)(後述の非特許文献1に対応する)と同様に、代表的に100キロビット(kbit)〜1000キロビット(kbit)のオーダーの非常に大きなランダム公開行列を用いたスターン・シンドローム・プロトコル(Stern syndrome protocol)と呼ばれる認証プロトコルが記述されている。
同様に、他の先行技術文献である「エラー補正コードに基づいて改良された識別スキーム(Improved identification scheme based on error−correcting codes)」(ベロン(Veron)著、工学、通信分野およびコンピュータ関連分野に適用可能な代数学、1997年発行(Applicable Algebra in Engineering,Cmmunication and Computing,1997))(後述の非特許文献2に対応する)においても、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法との関連において、シンドローム・プロトコルの変化の様子が記述されている。このようなプロトコルは、ベロン・プロトコル(Veron protocol)と呼ばれている。
これらの認証プロトコルにおいては、大抵の場合、公開行列はランダムである。それゆえに、上記プロトコルを実行するための暗号化装置のメモリ内に公開行列の全ての係数を記憶することが必要である。
しかしながら、低価格の暗号化装置における記憶上の制限によって、上記のようなプロトコルを実行することが不可能になる。このような事態は、特に、スマートカードまたは無線タグを使用する場合に発生し得る。
前述の先行技術文献である「シンドローム・デコーディングに基づいた新しい識別スキーム(A new identification scheme based on syndrome decoding)」(ジェイ.スターン(J.Stern)著、1993年発行)において、この著者は、さらに、初期値および擬似乱数生成器(pseudo−random generator)に基づいて擬似乱数を使用することにより公開行列を生成することを提案している。しかしながら、擬似乱数生成器の仕様は、今日まで未解決のままになっている問題である。さらに、このような擬似乱数生成器を動作させることは、低価格の暗号化装置における限られた容量と両立しない。
2007年6月24日に開始されたISIT 2007コンファレンスにおいて、他の先行技術文献である「SYND:セキュリティの減少を伴う非常に高速のコードに基づいた暗号ストリーム(SYND:a very fast Code−Based Cipher Stream with a security reduction)」(ガボリット他(Gaborit et al.)著)(後述の非特許文献3に対応する)が提示されている。ただし、この先行技術文献は、今日まで公衆によるアクセスが不可能であった。
欧州特許出願公開第0661846号公報
「シンドローム・デコーディングに基づいた新しい識別スキーム(A new identification scheme based on syndrome decoding)」(ジェイ.スターン(J.Stern)著、1993年発行) 「エラー補正コードに基づいて改良された識別スキーム(Improved identification scheme based on error−correcting codes)」(ベロン(Veron)著、工学、通信分野およびコンピュータ関連分野に適用可能な代数学、1997年発行(Applicable Algebra in Engineering,Cmmunication and Computing,1997)) 「SYND:セキュリティの減少を伴う非常に高速のコードに基づいた暗号ストリーム(SYND:a very fast Code−Based Cipher Stream with a security reduction)」(ガボリット他(Gaborit et al.)著、2007年6月24日に開始されたISIT 2007コンファレンスにて提示された資料)
したがって、本発明の1つの目的は、特に、限られた処理能力および/または記憶容量を有する暗号化装置といったような、低価格の暗号化装置にて実行することができるような、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法を提供することにある。
より特定的にいえば、本発明の1つの目的は、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法において記憶されるべき公衆データの量を減少させることにある。
さらに、前述の先行技術文献にて使用されている複数のランダム行列は、暗号化装置における高速の計算にはそれほど適していない。
本発明の他の目的は、高速の計算を可能にするような、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法を提供することにある。
上記目的を達成するために、本発明との関連において、新しいタイプの公開行列が提示されている。
特に、上記目的は、公開行列が擬似巡回行列(quasi−cyclic matrix)であるという事実によって、本発明に従って達成される。
擬似巡回行列は、複数の巡回ブロックの並置(juxtaposition)を有する行列として知られている。この巡回ブロックの並置においては、1つの行から次の行へのシフトが、円順列(circular permutation)によって行われる。
この結果、公開行列における全ての情報を記憶する際に、各々の巡回ブロック内の1つの基本の行を記憶するのみで十分であり、各々の巡回ブロックの他の行は、順列によって基本の行から推定されることになる。これによって、上記のような暗号化・認証を行う方法にて記憶されるべきデータの量が大幅に減少する。
さらに、巡回ブロックの性質のおかげで、ベクトルと擬似巡回行列との乗算が高速にて行われる。さらにまた、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法は、このような乗算を実行する。このことは、本発明に従って暗号化・認証を行う方法が、暗号化計算の速度を向上させるのを可能にすること意味する。
それゆえに、本発明に従って暗号化・認証を行う方法は、暗号化装置が、限られた記憶容量および処理能力を有している場合であっても、この暗号化装置にて容易に実行される。
本発明に従って暗号化・認証を行う方法は、前述の先行技術文献にて記述されているプロトコル(すなわち、スターン・シンドロームを用いたデコーディングのためのプロトコル、および、ベロンにより記述されているようなスターン・シンドロームを用いたデコーディングのためのデュアル・プロトコル)に対して互換性を有する公開行列を提供するといったような付加的な利点を有する。
本発明の第1の実施態様において、擬似巡回行列は、k行および2k列を有し、且つ、k*kのサイズの識別ブロック(identity block)とk*kのサイズの巡回ブロック(circulant block)との並置を有する。
この場合、認証を行う方法にて使用される秘密鍵(private key)は、2kのサイズのワードXである。また一方で、公開鍵(public key)は、kのサイズのシンドロームsと、擬似巡回行列の第1の行の半分の量とを有する。それゆえに、シンドローム・デコーディング・プロトコルは、4kビットから実行され得る。
好ましくは、本発明の第1の実施態様において、巡回ブロックは、kのサイズのランダムベクトル(random vector)により規定(定義)されることが可能である。
この第1の実施態様における公開行列は、スターン・プロトコルまたはベロン・プロトコルにおける公開行列として使用されることが可能である。
本発明の第2の実施態様において、公開行列は、k行および2k列を有する擬似巡回形の中間行列に基づいて構築され、この中間行列は、kのサイズの第1の巡回形正方形ブロックからなるブロックAとkのサイズの第2の巡回形正方形ブロックからなるブロックBとの並置により構成される。この場合に、中間行列は、下記の式
Figure 2010530990
により表される形態を有しており、公開行列は、左方向にて、中間行列とブロックAの逆行列とを乗算することによって構築され、これによって、公開行列は、下記の式
Figure 2010530990
により表される形態を有するようになる。ここで、行列A-1は、ブロックAの逆行列である。
好ましくは、本発明の第2の実施態様において、第1の巡回ブロックおよび第2の巡回ブロックは、それぞれ、第1のベクトルおよび第2のベクトルにより規定され、第1のベクトルおよび第2のベクトルにより形成されるベクトルは、低次(low order)のベクトルである。
この場合、第1のベクトルおよび前記第2のベクトルは、このような次数の制限がある状態でランダムである。
本発明の第2の実施態様において、公開行列は、特に、ベロン・プロトコルにおける公開行列として使用されることが可能である。
この場合、他の特定の実施態様において、ベロン・プロトコルの秘密(secret)は、第1のベクトルおよび第2のベクトルにより構築されるような、行ベクトルから転置された列ベクトルからなる。
このようなベクトルは、2kのサイズの秘密鍵に対応している。また一方で、公開鍵は、kのサイズ分の秘密鍵により誘導される巡回ブロックに基づいて決定され得る。それゆえに、デコーディング・プロトコルは、3kビットから実行され得る。
本発明はまた、コンピュータ・プログラムの動作によって前述のような認証の方法を実行するように取り決められた複数の命令を有するコンピュータ・プログラムに関するものである。
本発明はまた、前述のような認証の方法を実行するように構成される処理手段を有する暗号化装置に関するものである。
本発明はまた、このような暗号化装置を具備するスマートカードに関するものである。
以下、非限定的な例に基づいて、添付の図面を参照しながら本発明の様々な実施形態(実施例)を説明する。
擬似巡回行列の一般的な表示を示す図である。 本発明の第1の実施例に従って認証を行う方法において使用されるべき公開行列を示す図である。 図2に示されている行列を構成する行列ブロックの一例を示す図である。 本発明の第2の実施例に従って認証を行う方法において使用されるべき公開行列を構築するために用いられるような低次のワードからなる中間行列を示す図である。 図4に示されている中間行列を形成する行列ブロックの一例を示す図である。
本発明に従って、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法は、スターン・シンドローム・デコーディング・プロトコルの助けを借りて実行され得る。
このようなプロトコルは、前述の特許文献1の欧州特許出願公開第0661846号公報、および、前述の非特許文献1の「シンドローム・デコーディングに基づいた新しい識別スキーム(A new identification scheme based on syndrome decoding)」(ジェイ.スターン(J.Stern)著、1993年発行)にて申し分なく記述されている。さらに、上記のようなプロトコルは、エラー補正コードを用いた暗号学の分野における当業者によく知られている。
これらの先行技術文献は、上記のようなプロトコルを実行する際に参考にされるであろう。
スターン・プロトコルの主要なステップに関する注意事項を以下に示す。スターン・シンドローム・デコーディング・プロトコルにおいて、2つのエンティティ(entities)は、バイナリ・コードにより構成される公開行列Hを含む。さらに、秘密コードは、低次のワードであり、公開鍵は、上記公開行列と上記ワードとの積である。
スターン・プロトコルを用いて認証を実行するに際して、本出願人は、ベリファイア(verifier)Vによってそれ自身を認証することを必要とするエンティティP、すなわち、プローバ(prover)を考慮に入れる。一連の回転(turn)が実行される場合、各々の回転を正しく実行することによって、プローバPが真(true)であるというアイデンティティ(identity)の可能性が増加していく。各々の回転は、プローバPがベリファイアVにエンゲイジメント(engagement)を送るという第1のステップからなる。次に、第2のステップにおいて、ベリファイアVは、プローバPにチャレンジ(challenge)を返送する。さらに、第3のステップにおいて、プローバPは、ベリファイアVに応答を送る。ここで、ベリファイアVは、プローバPの応答が、そのプローバPの公開鍵に一致していることを検証する。
プローバPの公開鍵とプローバPの秘密鍵との間のリンクは、シンドローム・デコーディングの問題に基づいている。前述のスターン・プロトコルの動作に関する処理の詳細は、当業者によく知られている。この当業者は、必要に応じて前述の先行技術文献を参考にするかもしれない。
同様に、当業者は、ベロン・プロトコルもよく知っており、このベロン・プロトコルを実行する際に、必要に応じて、前述の先行技術文献(非特許文献2)の「エラー補正コードに基づいて改良された識別スキーム(Improved identification scheme based on error−correcting codes)」(ベロン(Veron)著、工学、通信分野およびコンピュータ関連分野に適用可能な代数学、1997年発行(Applicable Algebra in Engineering,Cmmunication and Computing,1997))を参照するかもしれない。
ベロン・プロトコルの主要なステップは以下のように要約される。
ベロン・プロトコルを用いた認証を実行するに際して、このベロン・プロトコルの大部分のステップは、前述のスターン・プロトコルの場合と同じである。各々のステップにおいて実行される計算に違いが見られるが、この違いは、ほんのわずかである。より特定的にいえば、公開鍵と秘密鍵との間のリンクは、ある特定の行列またはエラー補正コードに関連している低次のワードを見つけ出すことに基づいている。
前述の先行技術文献においては、公開鍵が記述されている。本発明によれば、前述の先行技術文献と同様にプロトコルが実行される。ただし、本発明では、前述の先行技術文献にて記述されている公開行列を、以下に述べるような複数の公開行列に置き換えている。前述のようなプロトコルの各々にて使用可能であるタイプの公開行列を以下に述べる。
本発明の第1の実施例にて以下に述べるような公開行列Hは、スターン・プロトコルまたはベロン・プロトコルにおける公開行列として同等に使用されることが可能である。さらに、本発明の第2の実施例にて以下に述べるような公開行列Gは、ベロン・プロトコルにて使用されることが可能である。
本発明によれば、公開行列は擬似巡回行列であり、この擬似巡回行列は、複数の巡回ブロックの並置を有することを意味するものである。図1は、このような擬似巡回行列(公開行列H)の一般的な表示を含む。このような擬似巡回行列は、複数の巡回形正方形ブロックA1,A2,...,Anにより構成される。これらの巡回形正方形ブロックの1つは、基本のベクトルに基づいて順列により規定される。
図2に示すように、本発明の第1の実施例によれば、公開行列Hは、図1に関連して既述された行列と同じタイプであり、k行および2k列を有する。この公開行列Hは、kのサイズの正方形の識別行列(識別ブロック)I、および、kのサイズの正方形の巡回行列(巡回ブロック)Cからなる。この正方形の巡回行列Cは、複数の“0”および複数の“1”により構成される。それゆえに、公開行列Hは、下記の式
Figure 2010530990
により表される形態を有する。
ここで、図3を参照しながら、巡回行列Cをより詳細に説明する。この巡回行列Cは、ランダムベクトル〔c1,c2,...,ck−1,c〕からなる第1の行を有する。ここで、c1は、“0”または“1”である。次に続く複数の行は、第1の行の連続的な順列によって決定される。これによって、巡回行列Cは、完全に第1の行によって決定されることになる。
上記の公開行列Hは、前述のスターン・プロトコルおよびベロン・プロトコルにて使用されることが可能である。
本発明の第2の実施例において、k行および2k列を有する擬似巡回形の中間ブロックG′が規定される。この中間ブロックG′は、kのサイズの第1の巡回形正方形ブロックからなるブロックA、および、kのサイズの第2の巡回形正方形ブロックからなるブロックBにより構成される。この中間ブロックG′は、図4に図示されている。この中間ブロックG′は、下記の式
Figure 2010530990
により表される形態を有する。
さらに、公開行列Gは、下記の式
Figure 2010530990
により表される形態を有しており、第1の巡回ブロックおよび第2の巡回ブロックにより構成することによって構築される。この第2の巡回ブロックは、左方向にて、行列BとA-1の記号が付与されたブロックAの逆行列とを乗算することによって構成される。その後、積A-1.Bの結果として生成される行列に対して、Dの記号が付与されるであろう。
上記のような公開行列Gは、ベロン・プロトコルにおける公開行列として使用されることが可能である。
複数の行列(ブロック)A、Bが、図5に図示されている。これらの行列A、Bは、それぞれの第1の行a=〔a1,a2,...,ak−1,a〕、b=〔b1,b2,...,bk−1,b〕に基づいて規定される。ここで、a1およびb1は、“0”または“1”の値を有する。これらの2つの第1の行はランダムベクトルであり、ベクトル〔a,b〕が、ベロン・プロトコルにおける次数の条件を満たすように選択される。
この場合、ベロン・プロトコルにおける秘密データは、2kのサイズのベクトルt〔a,b〕、すなわち、行ベクトル〔a,b〕から転置された列ベクトルである。また一方で、公開データは、kのサイズの行列Dを記述するベクトル、すなわち、行列Dの第1の行である。
本発明の第2の実施例の利点は、低次の秘密データ(ベクトル)t〔a,b〕が、公開行列にて直接的に記述されるという点である。
本発明によれば、本発明の第1の実施例に関してベロン・プロトコルまたはスターン・プロトコルにて既述された複数の行列の使用、特に、本発明の第2の実施例に関してベロン・プロトコルにて既述された複数の行列の使用は、暗号化プロトコルに課せられたセキュリティの制約を維持することを可能にする。
特に、コードのパラメータがギルバート・バルシャモフ限界(Gilbert−Varshanov limit)より低い値を有する場合に、通常の攻撃に対してコードが保護されることは広く知られている。
本発明の第1の実施例において、次数wの秘密Xに関していえば、次数wが、ギルバート・バルシャモフ限界よりもちょっと低い値になるように選択されている場合には、パラメータ〔2k,k〕のコード内に次数wのワード(秘密)Xを見つけ出すために必要なコストが少なくとも280になるように、kが選択される。
本発明の第1の実施例に関して上記のような条件を満たすパラメータの一例は、k=317、および、w=69である。これらのパラメータの値によって、シンドロームsに対応する634のサイズの公開データが提供されると共に、2kのサイズの秘密および行列Cの第1の行に対応する951のサイズの秘密データが付与される。この場合、公開行列Hは、HX=sによって決定される。ここで、sはシンドローム、Xは秘密鍵(secret key)、そして、Hは公開行列である。
本発明の第2の実施例においては、例えば、k=347、w=76といったように、ギルバート・バルシャモフ限界よりも低い次数wを有するベクトルx(x=〔a,b〕)が選択される。これによって、下記の式
Figure 2010530990
により表されるような694ビットのサイズの秘密データが提供される。また一方で、行列Dの第1の行により規定されるような347ビットのサイズの公開データが提供される。
かくして、本発明に従って複数の擬似巡回行列を使用することは、スターン・プロトコルまたはベロン・プロトコルにて通常使用されるサイズに比べて,複数の行列のサイズを減少させることを可能にする。代表的には、複数の行列のサイズを数100キロビットから約300ビットに減少させることが可能になる。
本発明に従って、公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法は、スターン・プロトコルまたはベロン・プロトコルを使用することにより、暗号化装置にて容易に実行され得る。
特に、本発明の第1の実施例で記述されている公開行列Hは、スターン・プロトコルまたはベロン・プロトコルにて同等に使用されることが可能であり、本発明の第2の実施例で記述されている公開行列Gは、ベロン・プロトコルにて使用されることが可能である。
本発明に従って暗号化・認証を行う方法を実行するために、プロセッサは、前述のような単一または複数の擬似巡回行列を用いて上記のプロトコルを実行するようにプログラミングされる。暗号化装置はまた、暗号化計算の期間中にデータを記憶するためのメモリを備えている。
本発明に従って暗号化・認証を行う方法が、エラー補正コードのデコーディングを行う際に使用される複数の行列のサイズを減少させることを可能にするという事実によって、上記の暗号化装置は、例えば、スマートカードのチップにより構成され得る。

Claims (15)

  1. 公開行列に基づき、エラー補正コードのデコーディングを用いて暗号化・認証を行う方法であって、前記公開行列は擬似巡回行列であることを特徴とする、暗号化・認証を行う方法。
  2. 前記公開行列(H)は、k行および2k列を有し、且つ、k*kのサイズの識別ブロックとk*kのサイズの巡回ブロックとの並置を有する請求項1記載の方法。
  3. 前記公開行列(H)は、下記の式
    Figure 2010530990
    により表されるタイプの公開行列であり、ここで、Iは、k*kのサイズの識別ブロックであり、Cは、k*kのサイズの巡回ブロックである請求項1記載の方法。
  4. 前記巡回ブロックは、kのサイズのランダムベクトルにより規定される請求項2または3記載の方法。
  5. 前記巡回ブロックは、バイナリ・データにより構成される請求項2から4のいずれか一項に記載の方法。
  6. サイズを表すkの数は、317に等しい請求項2から5のいずれか一項に記載の方法。
  7. 前記擬似巡回行列は、スターン・プロトコルまたはベロン・プロトコルにて使用される請求項2から5のいずれか一項に記載の方法。
  8. 前記公開行列は、k行および2k列を有する擬似巡回形の中間行列(G′)に基づいて構築され、前記中間行列(G′)は、kのサイズの第1の巡回形正方形ブロックからなるブロックAとkのサイズの第2の巡回形正方形ブロックからなるブロックBとの並置により構成され、この場合に、前記中間行列(G′)は、下記の式
    Figure 2010530990
    により表される形態を有しており、
    前記公開行列は、左方向にて、前記中間行列と前記ブロックAの逆行列とを乗算することによって構築され、これによって、前記公開行列は、下記の式
    Figure 2010530990
    により表される形態を有するようになり、ここで、行列A-1は、前記ブロックAの逆行列である請求項1記載の方法。
  9. 前記第1の巡回ブロックおよび前記第2の巡回ブロックは、それぞれ、第1のベクトルおよび第2のベクトルにより規定され、前記第1のベクトルおよび前記第2のベクトルにより形成されるベクトルは、低次のベクトルである請求項8記載の方法。
  10. 前記第1のベクトルおよび前記第2のベクトルがランダムである請求項9記載の方法。
  11. 前記公開行列は、ベロン・プロトコルにおける公開行列として使用される請求項8から10のいずれか一項に記載の方法。
  12. 前記ベロン・プロトコルの秘密は、前記第1のベクトルおよび前記第2のベクトルにより構築されるような、行ベクトルから転置された列ベクトルからなる請求項11記載の方法。
  13. コンピュータ・プログラムの動作によって請求項11記載の方法を実行するための複数の命令を有することを特徴とするコンピュータ・プログラム。
  14. 請求項1から12のいずれか一項に記載の方法を実行するように構成される処理手段を備えることを特徴とする暗号化装置。
  15. 請求項14に記載の暗号化装置を具備することを特徴とするスマートカード。
JP2010512742A 2007-06-22 2008-06-20 公開行列に基づき、誤り訂正符号の復号を用いて認証を行う方法 Active JP5426540B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0704518 2007-06-22
FR0704518A FR2917920B1 (fr) 2007-06-22 2007-06-22 Procede d'authentification utilisant un decodage de code correcteur d'erreurs a partir d'une matrice publique
PCT/FR2008/000871 WO2009016272A1 (fr) 2007-06-22 2008-06-20 Procédé d'authentification utilisant un décodage de code correcteur d'erreurs à partir d'une matrice publique

Publications (3)

Publication Number Publication Date
JP2010530990A true JP2010530990A (ja) 2010-09-16
JP2010530990A5 JP2010530990A5 (ja) 2011-08-04
JP5426540B2 JP5426540B2 (ja) 2014-02-26

Family

ID=39027648

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010512742A Active JP5426540B2 (ja) 2007-06-22 2008-06-20 公開行列に基づき、誤り訂正符号の復号を用いて認証を行う方法

Country Status (5)

Country Link
US (1) US8817972B2 (ja)
EP (1) EP2158720B1 (ja)
JP (1) JP5426540B2 (ja)
FR (1) FR2917920B1 (ja)
WO (1) WO2009016272A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101913644B1 (ko) 2017-03-13 2018-10-31 동국대학교 산학협력단 메시지 인증이 가능한 부호 기반 암호화 장치 및 방법
JP2022520675A (ja) * 2018-12-21 2022-04-01 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5564434B2 (ja) * 2008-01-11 2014-07-30 オランジュ 確率的対称暗号化のための方法およびエンティティ
FR2956541B1 (fr) * 2010-02-18 2012-03-23 Centre Nat Rech Scient Procede cryptographique de communication d'une information confidentielle.
GB2522836A (en) * 2013-12-02 2015-08-12 Neul Ltd Interference mitigation
US20160028419A1 (en) * 2014-07-22 2016-01-28 Lsi Corporation Systems and Methods for Rank Independent Cyclic Data Encoding
WO2020146284A1 (en) * 2019-01-07 2020-07-16 Cryptography Research, Inc. Efficient squaring with loop equalization in arithmetic logic units
US11475170B2 (en) * 2019-05-28 2022-10-18 Nuvoton Technology Corporation System and method for correction of memory errors
US11342044B2 (en) 2019-05-28 2022-05-24 Nuvoton Technology Corporation System and method for prioritization of bit error correction attempts

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07235922A (ja) * 1993-12-30 1995-09-05 Jacques Stern 照合器により少なくとも一の証明器を認証するシステム
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
JP2006133380A (ja) * 2004-11-04 2006-05-25 Murata Mach Ltd 復号装置と復号プログラム及び暗号通信システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567465B2 (en) * 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
WO2003065591A2 (en) * 2002-01-29 2003-08-07 Seagate Technology Llc A method and decoding apparatus using linear code with parity check matrices composed from circulants
US20040258240A1 (en) * 2003-05-02 2004-12-23 Singh Mukesh K. Cryptosystems
US7805652B1 (en) * 2006-02-10 2010-09-28 Marvell International Ltd. Methods for generating and implementing quasi-cyclic irregular low-density parity check codes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07235922A (ja) * 1993-12-30 1995-09-05 Jacques Stern 照合器により少なくとも一の証明器を認証するシステム
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
JP2006133380A (ja) * 2004-11-04 2006-05-25 Murata Mach Ltd 復号装置と復号プログラム及び暗号通信システム

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
CSNG199901478001; 畑雅恭,橋本和憲,武田成史: '"高次元対称符号の形成とトポロジーに関する考察 -誤り訂正同時暗号符号化について-"' 電子情報通信学会技術研究報告 Vol.91,No.225, 19910919, p.1-11, 社団法人電子情報通信学会 *
CSNG200900347057; 山川 茂紀,崔 洋,萩原 学,古原 和邦,今井 秀樹: '"LDPC符号を用いたMcEliece署名方式"' 電子情報通信学会技術研究報告 Vol.108,No.473, 20090302, p.537-543, 社団法人電子情報通信学会 *
JPN6013002844; 畑雅恭,橋本和憲,武田成史: '"高次元対称符号の形成とトポロジーに関する考察 -誤り訂正同時暗号符号化について-"' 電子情報通信学会技術研究報告 Vol.91,No.225, 19910919, p.1-11, 社団法人電子情報通信学会 *
JPN6013002848; 笠原正雄: '"代数的誤り訂正符号とランダム符号化に基づく拡大体上の公開鍵暗号"' 電子情報通信学会技術研究報告 Vol.104,No.421, 20041101, p.21-26, 社団法人電子情報通信学会[オンライン] *
JPN6013002851; 笠原正雄: '"ランダム符号化に基づくK行列PKC -新しいSE(g)-PKCの提案と合わせて-"' 電子情報通信学会技術研究報告 Vol.105,No.664, 20060310, p.113-118, 社団法人電子情報通信学会[オンライン] *
JPN6013002854; Philippe Gaborit, Cedric Lauradoux, Nicolas Sendrier: '"SYND: a Fast Code-Based Stream Ciper with a Security Reduction"' IEEE International Symposium on Information Theory (ISIT 2007) , 20070624, p.186-190, [online] *
JPN6013052571; 山川 茂紀,崔 洋,萩原 学,古原 和邦,今井 秀樹: '"LDPC符号を用いたMcEliece署名方式"' 電子情報通信学会技術研究報告 Vol.108,No.473, 20090302, p.537-543, 社団法人電子情報通信学会 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101913644B1 (ko) 2017-03-13 2018-10-31 동국대학교 산학협력단 메시지 인증이 가능한 부호 기반 암호화 장치 및 방법
JP2022520675A (ja) * 2018-12-21 2022-04-01 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法
JP7328969B2 (ja) 2018-12-21 2023-08-17 01 コミュニーク ラボラトリー インコーポレイテッド 暗号システムおよび方法

Also Published As

Publication number Publication date
EP2158720A1 (fr) 2010-03-03
FR2917920B1 (fr) 2009-10-09
FR2917920A1 (fr) 2008-12-26
US8817972B2 (en) 2014-08-26
US20110019815A1 (en) 2011-01-27
WO2009016272A1 (fr) 2009-02-05
JP5426540B2 (ja) 2014-02-26
EP2158720B1 (fr) 2018-11-28

Similar Documents

Publication Publication Date Title
CN110363030B (zh) 用于执行基于格的密码操作的方法和处理设备
JP5426540B2 (ja) 公開行列に基づき、誤り訂正符号の復号を用いて認証を行う方法
JP2010530990A5 (ja)
Bertoni et al. Farfalle: parallel permutation-based cryptography
JP7019730B2 (ja) キー交換デバイス及び方法
Banegas et al. DAGS: Key encapsulation using dyadic GS codes
US20100208885A1 (en) Cryptographic processing and processors
EP3732822B1 (en) Whitebox computation of keyed message authentication codes
US10419207B2 (en) Cryptographic apparatuses and methods for encrypting and decrypting data using automata
Tao et al. Simple matrix–a multivariate public key cryptosystem (MPKC) for encryption
Samardjiska et al. A reaction attack against cryptosystems based on LRPC codes
US11902432B2 (en) System and method to optimize generation of coprime numbers in cryptographic applications
US20220085999A1 (en) System and method to optimize decryption operations in cryptographic applications
CN113498591A (zh) 一种密码系统和方法
US20110311041A1 (en) Crytographically transforming data text
US9363073B2 (en) Cryptographic countermeasure method by deriving a secret data
Bardet et al. Improvement of algebraic attacks for solving superdetermined MinRank instances
US20220085998A1 (en) System and method to generate prime numbers in cryptographic applications
Lau et al. On the security of the modified Dual-ouroboros PKE using Gabidulin codes
Biryukov et al. Cryptanalysis of the Atmel cipher in SecureMemory, CryptoMemory and CryptoRF
US20230153070A1 (en) Parallel generation of a random matrix
US20220382521A1 (en) System and method for encryption and decryption using logic synthesis
US11070358B2 (en) Computation device and method
Beullens et al. Practical attacks against the Walnut digital signature scheme
CN113475034B (zh) 电路编译设备和电路评估设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130426

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130522

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131128

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5426540

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250