JPH06348202A - 確認装置によって少なくとも1つの識別装置を認証する方法および装置 - Google Patents

確認装置によって少なくとも1つの識別装置を認証する方法および装置

Info

Publication number
JPH06348202A
JPH06348202A JP6011296A JP1129694A JPH06348202A JP H06348202 A JPH06348202 A JP H06348202A JP 6011296 A JP6011296 A JP 6011296A JP 1129694 A JP1129694 A JP 1129694A JP H06348202 A JPH06348202 A JP H06348202A
Authority
JP
Japan
Prior art keywords
xor
vector
random
discriminator
identification device
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
JP6011296A
Other languages
English (en)
Other versions
JP3675494B2 (ja
Inventor
Jacques Stern
スターン ジャック
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of JPH06348202A publication Critical patent/JPH06348202A/ja
Application granted granted Critical
Publication of JP3675494B2 publication Critical patent/JP3675494B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • 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
    • 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/3236Cryptographic 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 cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)
  • Coin-Freed Apparatuses For Hiring Articles (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

(57)【要約】 【目的】 シンドロームによるデコード化の問題に基づ
く解読を無効にするプロトコルで認証を行う、確認装置
による少なくとも1つの識別装置の認証方法。 【構成】 ハミング重みdの秘密ベクトルsとサイズn
×kの公知マトリックスMとK=Ms等のパブリックベ
クトルKとを設定し、識別装置側でランダムなベクトル
yと、ランダムな順列pとを生成し、暗号刻み関数Hと
マトリックスMとを用いてy及び/またはp及び/また
はsに依存するパラメータを発散させ、直接的にも間接
的にも確認装置にsを明らかにしないで、確認装置が提
起した問題に応えることが可能なy、p、sに関する情
報を交換し、K及び/または前に転送した情報を用いて
刻まれた発散の有効性を確認する。 【効果】 特に有料テレビに応用される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は確認装置によって少なく
とも1つの識別装置を認証(authentifier)する方法に関
するものであり、特にシンドロームによるデコード化
(decodage parsyndrome)の問題に基づいて解読を無効に
するプロトコル(protocole a apportnul de connaissan
ce)で行われる認証方法に関するものである。本発明
は、さらに、上記方法を実施するための識別装置および
確認装置にも関するものである。本発明は特に安全性が
疑わしいチャネルを介して2つの装置間でデータを交換
する場合いわゆるセキュリティー(安全)通信に適用さ
れる。
【0002】
【従来の技術】セキュリティー通信では相互認識手段す
なわち確認装置にユーザを認証させてユーザがデータま
たはサービスにアクセスできるようにする手段が必要で
ある。セキュリティー通信の必要は多数あり、特に、銀
行のコンピュータで命令を転送する場合等を挙げること
ができる。この場合には、2つのコンピュータは正しく
通信でき且つ不正者とは通信しないということが確実で
なければならない。この他に、切符の自動販売機、有料
テレビのデコーダー、カード公衆電話等を挙げることが
できる。これらのシステムでは識別装置がチップカード
(ICカードともいう)や電子キー等の携帯装置で構成
され、販売機やデコーダに収容された確認装置でチップ
カードや電子キーのような各種のアクセス手段の有効性
を管理しなければならない。
【0003】こうした場合に多く用いられる方法は秘密
キーを用いた暗号化法を基礎とした認証方法であり、こ
れまではこの方法が最も容易に実行できる方法であっ
た。この方法では、チップカード等の識別装置と確認装
置(例えば、端末装置、カード読取機、デコーダー、カ
ード公衆電話等)とが同じ秘密キーを持ち、対称的アル
ゴリズムすなわち1方向機能によって識別が行われる。
この方法の欠点は両者すなわち確認装置と識別装置とが
互いに秘密を共有しなければならず、しかも、この条件
が常に確認されていない点にある。すなわち、同じ秘密
キーがネットワークの両方の端末すなわち確認装置と識
別装置とに存在するため、海賊行為者が確認装置を購入
してそれを分析すれば、確認装置の内部構造は知ること
ができるので、分析結果に基づいて海賊行為者が高性能
な識別装置を作ることが技術的に可能であるという欠点
がある。
【0004】従来法のこの欠点から保護するための種々
の方法の中で、解読を無効にするプロトコルが今日まで
のところより高い安全性を保証している。この解読を無
効にするプロトコルの機能上の特徴は、限定された回数
だけ識別装置と相互に情報交換し且つ確認装置の構造を
完全に分析しただけでは識別装置を再構成することはで
きないという点にある。この解読を無効にするプロトコ
ルはフィアット(FIAT)の米国特許第 4,748,668号やギロ
ー(GUILLOU) 達の欧州特許出願第A-0,311,470号等に記
載されている。しかし、この解読を無効にするプロトコ
ルは識別問題の理想的な解決方法ではあるが、大きな欠
点もある。すなわち、この方法を行うためには極めて多
くの演算が必要であるためエレクトロニクス的には実施
が難しい。
【0005】そのために、エレクトロニクス的に容易に
実施可能な識別方法を開発する試みが種々行われてき
た。その1つの方法がシャミール(SHAMIR)の米国特許第
4,932,056 号に記載されている。この特許に記載の方法
はPKP法として呼ばれ、多数の数を扱う他のアルゴリ
ズムに比べれば、エレクトロニクス的に比較的容易に実
行できる。しかし、確認装置と識別装置間との間の交換
速度が遅いという欠点がある。
【0006】
【発明が解決しようとする課題】本発明の目的は上記欠
点を解消したエレクトロニクス的に容易に実行可能な確
認装置による識別装置の迅速な認証方法を提供すること
にある。
【0007】
【課題を解決するための手段】本発明は「モジュラーナ
ップザック(Modular Knapsack)」として知られた問題す
なわちシンドロームによるデコード化の問題に基づく解
読を無効にするプロトコルによって認証を実施する、確
認装置によって少なくとも1つの識別装置を認証する認
証方法を提供する。本発明の認証方法の特徴は下記段階
にある: (1) 識別装置と確認装置との間の対話を可能にするため
の、サイズがnでハミング重み(poids de Hamming)がd
(d<n)である少なくとも1つのベクトルsi で構成
された秘密キーと、係数がランダムに選択されるサイズ
n×kのマトリックスMとKi =Msi 等の少なくとも
1つのベクトルKi とで構成されるパブリックキーとを
設定し、(2) 識別装置側で、サイズがnのランダムなベ
クトルyとランダムな順列 (unepermutation)pとを生
成し、y、p、s、Mの関数パラメータに暗号刻み関数
(une fonction de hachage) Hを適用して、得られた発
散(engagement)を確認装置へ送り、(3) 確認装置が取っ
て識別装置へ送った任意の数の関数で、si を明らかに
しないでy、p、si のある関数要素を識別装置で明ら
かにし、(4) 受けた要素とパブリックキーとを用いて確
認装置側で上記の数の関数で発散が正確であることをテ
ストし、(5) 所望の安全レベルに応じた回数で上記の動
作を反復する。この安全レベルは回数と共に指数的に大
きくなる。
【0008】
【作用】上記認証方法ではサイズn×kのマトリックス
Mを用いる。このマトリックスMは全てのユーザに共通
でランダムに構成される。各ユーザは予め書き込まれた
数dの1でnビットのワードの秘密キーを受ける。この
場合、システムはパブリックキーKを例えばK=MSの
ように計算する。あるいは、各ユーザに複数の秘密キー
s[1],・・・, s[w] を与え、この各々にパブリックキ
ーK[i] =Ms[i]を組み合せることもできる。これらの
ベクトルs[1], ・・・, s[w]は展開した単位コードを
形成するのが好ましい。
【0009】上記の識別方法は原理的に発散法(techniq
ue d'engagement)の概念に基づいている。今、Uを2進
数要素のシーケンスとすると、Uに対する発散は一定の
暗号刻み関数を介したUの画像である。この発散は一方
向関数として使用される。
【0010】本発明認証方法の第1実施例では、第1段
階で、 (a) 各プロセスに共通して、識別装置がその識別子およ
び/またはこの識別子がベルトルKi に対応することを
確認する確認装置に割り当てられた1つまたは複数のキ
ーを明らかにする。次いで、ランダムなベクトルyとラ
ンダムな順列pとを選択した後に、 (b) 識別装置が下記: h1 =H (p、My)、h2 =H (yp ) 、h3 =H
(y xor s)p ) を計算して確認装置へ順列{h1 、h2 、h3 }を送
る。(ここで、xp はpで置換されたベクトルxを表
し、xorは排他OR関数を表す) (c) 次いで、確認装置がランダムに0<q<4の数を取
り、この数を識別装置へ送る。 (d) そして、識別装置が下記で定義される応答rを計算
し、確認装置へ送る: q=1ならば、r={y、p} q=2ならば、r={y xor s、p} q=3ならば、r={yp 、sp } (e) 確認装置はr={U、V}を受けて下記であること
を調べる: q=1ならば、h1 =H(V、MU)で、h2 =H(U
v ) q=2ならば、h1 =H(V、(MU)xor K)で、h
3 =H(Uv ) q=3ならば、h2 =H(U)、h3 =H(U xorV)
且つVのハミング重み(poids de Hamming)がdである。 (f) このqに対応するテストが正しいこと確認された時
に、確認装置がプロトコルは成功裏に終了したと見な
す。
【0011】本発明の別の実施例では、ベクトルsがw
個のベクトルs[1], s[2],・・・s[W] で置換され
て、重みdの単体コードを形成する。この実施例では、
ランダムなベクトルyとランダムな順列pとを選択した
後に、 (b) 識別装置がh1 =H(My , p) 、h2 =H(yp , s
[1]p , ・・・, s[w]p )を計算して、発散{h1
2 }を識別装置へ送る。 (c) 確認装置はランダムに2進数ベクトルb[1] 、・・
・、b[w] を取ってそれを識別装置に送る。 (d) 識別装置は下記の式で定義される応答zを計算して
確認装置へ送る: z=yp xor r s[1]p b[1] xor s[2]p b[2] xor s
[3]p b[3] ・・xor s[w]p b[w] (e) 確認装置はビットqをランダムに取って識別装置に
送る。 (f) 識別装置は下記の式で定義される回答rを送る: q=0ならば、r={yp 、s[1]p , ・・・, s[w]p } q=1ならば、r={p} (g) 確認装置はq=0ならば、応答r={r[0]、r[1],
・・・, r[w]}を受け、q=1ならばr={r[0] }を
受ける。 (h) 確認装置は下記のことを調べる:q=0ならば、h
2 =H(r)、z=r[0] xor r[1]b[1] xor r[2]b[2]xo
r r[3]b[3]・・・ xor r[w]b[w] で、{r[1], r[2], ・
・・r[w]}は単体コードを形成。q=1ならば、H(M
(順列(z,r[0])) xor (K[1]b[1] xor K[2]b[2]xor
K[3]b[3] ・・・xor K[w]b[w])、r[0])=h1(ここ
で、K[i] =Ms[i]) (i) qに対応するテストが正確であることが明らかな時
に、確認装置はプロトコルが成功裏に終了したとみな
す。 本発明の上記以外の利点は添付図面を参照した以下の本
発明方法の各種実施例から明らかになろう。
【0012】
【実施例】本発明は、解読を無効にするプロトコルによ
って実施される新規な認証方法に関するものである。本
発明方法の安全性はシンドロームによるデコード(DS)の
問題に基づくものである。シンドロームによるデコード
(DS)の問題は以下のように説明できよう。すなわち、2
進数マトリックスMの場合でも、2進数ベクトルKの場
合でも、Ms=Kのように重みsが比較的大きいか、小
さい2進数ベクトルsを見つけることである。重みとは
そのベクトル中の1のビット数を意味する。この問題は
マトリックスMのサイズとsのハミング重み(poid de H
amming) dとを正しく選択すると、現在公知の計算手段
で解くのは極めて難しい。シンドロームによるデコート
化の問題を解決するための公知のアルゴリズム、例え
ば、レオン(J. S. Leon)の論文「大きなエラー補正コー
ドの最小重みを計算するための確率アルゴリズム (A pr
obabilistic algorithm for computing minimum wei
ghts of large error-correcting codes) 」(IEEE
TIT 34(5) 第1354〜1359頁) やスターン(J. Ster
n)の論文「小さい重みのコードワードを見つける方法
(A method forfinding codewords of small weight) 」
(Coding Theory & Applications,notes de lecture
en Computer Science 388(1989) 、第 106〜113 頁)
に記載のアルゴリズムは、計算時間がマトリックスのサ
イズに比例して指数関数的に長くなる。
【0013】実際の計算手段では、Mのサイズが約 500
×250 となり、dの値が50に近くなると、sを計算する
ことができない。しかし、s(偶然ではあるが、正しい
重みが付いた)がわかると、Kは計算することができ
る。本発明では、この1方向特性を使用して、Kを知っ
ている確認装置が相互作用中にその値を知らせずに識別
装置がsを有しているか否かをテストすることができ
る。
【0014】本発明の認証方法を実施する際には、正当
権限者(autorite、アクセスが許された正当な使用者)
が係数aijで構成されたマトリックスMをランダムに選
択して公表(ubliier) する。実際には、マトリックスM
全体を記憶するのを避けるために、f(i、j)によっ
て各係数aijを生成させることができる(ここで、fは
公表された任意の擬似ランダム関数である)。また、正
当権限者はハミング重みが比較的小さい2進数ベクトル
の組sj すなわちs1,s2,・・・, sn を選択して、そ
れを各識別装置に配分する。従って、識別装置iはsi
を受ける。一方、パブリックキーKi (但し、Ki =M
i )を公表する。
【0015】別の実施例では正当権限者がKi に署名を
付けて、パブリックキーを有効化するめには正当権限者
との相互通信を必要とする閉じた暗証システムを構成す
る秘密キーsi の保持者の同定システムを用いる。以
下、本発明方法の特殊な2つの実施態様を説明する。
【0016】第1の方法を図1を参照して説明する。図
1は認証のために識別装置と確認装置との間で実行され
る通信プロトコルの概念図である。識別装置は例えばチ
ップカードや電子キーで構成される物理的に侵入不可能
なものである。チップカードの場合には内部メモリにア
クセスすることは不可能であるが、確認装置の環境に関
しては何も仮定していない。図3、図4に概念的に示し
た識別装置および確認装置では、識別装置が不揮発性メ
モリ内にその秘密キーsi とマトリックスMとを有して
いる。同様に、確認装置は不揮発性メモリ内にパブリッ
クキーの組Ki とマトリックスMとを有している。識別
装置が確認装置とコンタクトをとる場合に2つの装置が
実行するプロトコルは下記の通りである: (a) 先ず、識別装置はその識別子および/またはそのキ
ーKi を確認装置に提示して、その識別子がベクトルK
i に対応することを確認する。 (b) 次に、識別装置はランダムな2進数ベクトルyとラ
ンダムな順列pとを選択する。次いで、識別装置は下記
要素: h1 =H(p、My)、h2 =H(yp ) 、h3 =H
(yxors)p ) を計算し、確認装置に発散{h1 、h2 、h3 }を送
る。(ここで、xp はpで順列化されたベクトルxを示
し、xorは排他的ORを表す) (c) 次に、確認装置はランダムな数0<q<4を取っ
て、その数を識別装置へ送る。 (d) 次に、識別装置は下記で定義される回答を計算して
確認装置へ送る: q=1ならば、r={y、p} q=2ならば、r={y xor s, p} q=3ならば、r={yp 、sp } (e) 確認装置はr={U、V}を受けて下記をテストす
る: q=1ならば、h1 =H(V、MU)かつh2 =H(U
v ) q=2ならば、h1 =H(V、(MU)xor K)かつh
3 =H(Uv ) q=3ならば、h2 =H(U)、h3 =H(U xorV)
かつVのハミング重みがdである。 (f) qに対応するテストが正解な場合には、確認装置は
プロトコルを成功裏に終了する。テストが正解でない場
合には識別装置は拒絶される。 識別装置が受入れられた時には、保護システムの入力/
出力インターフェースに制御インパルスが送られてその
後のトランザクションが開始される。上記の各操作全体
は図1に示されており、その左側部分は識別装置側で実
施された各操作であり、右側部分は確認装置側で実施さ
れた各操作である。矢印は一方の装置から他方の装置へ
情報が送られることを示している。
【0017】上記プロセスの安全性を大きくするために
は、識別装置と確認装置の2つの装置が上記の段階を複
数回すなわちt回繰り返して、全ての回数でプロトコル
が成功した時のみしか確認装置が識別装置を認証しない
ようにするのが好ましい。好ましくは0<t<60のよう
なtを選択する。
【0018】上記の基本的方法は、エレクトロニクス的
に実行を単純化したり、計算時間を短くするために種々
変更することができる。すなわち、ベクトルMyをキー
で転送し、対応するテストを変更してH1 =H(p)を
再定義することができる。別の実施例では、確認装置お
よび/または識別装置がベクトル座標の二次的な組に部
分的なテストを実施してより迅速に計算を実施する。こ
れらの場合に、プロセス上の幾つかの段階を下記のよう
に変更する:すなわち、ランダムなベクトルyとランダ
ムな順列pとを選択した後に、 (b) 識別装置が下記式: h1 =H(p)、h2 =H(yp ) 、h3 =H(y xor
s) p ) を計算し、確認装置に発散{h1 、h2 、h3 }を送
り、 (c) 次に、確認装置は互いに分離した数のリストG=
{g1 、・・・gf }(但し、1<gi <k)をランダ
ムに取ってそれを識別装置へ送り、 (d) 識別装置は、置換がGによって示されたMyのfビ
ットだけを計算し、得られたベクトルZを確認装置へ送
る。
【0019】この場合、段階(e) も下記のように変更さ
れる: (e) 確認装置はr={U、V}を受けて下記のように制
御する:q=1ならば、h1 =H(V)、h2 =H(U
v ) かつエキス(Extrait)(MU、G) xor Z=0 (こ
こで、エキス (MU、G)はx中でGによって表された
ビットだけを選択することによって、得られた射影ベク
トルを表す)、q=2ならば、h1 =H(V)、h3
H(Uv ) かつエキス (MU xorK、G) xor Z=
0、q=3ならば、h2 =H(U)、h3 ==H(U x
or V)かつVのハミング重みはdである。
【0020】本発明の方法の別の実施例では(b) 段階を
下記のように変更する: (b) ランダムなベクトルyとランダムな順列pとを選択
した後に、識別装置は下記式: h1 =H(p)、h2 =H(yp ) 、h3 =H(y xor
s) p ) を計算し、確認装置に発散{h1 、h2 、h3 }を送
り、 (c) 識別装置はQ=My を計算し、得られたベクトルQ
を確認装置に送り、 (d) 確認装置は互いに分離した数のリストG={g1
・・・gf }(ここで、1<gi <k)をランダムに取
ってベクトルZ=エキス (Q、G)を計算する。この場
案には段階(e) を下記のように変更する: (e) 確認装置はr={U、V}を受けて下記のように制
御する:q=1ならば、h1 =H(V)、h2 =H(U
v ) かつエキス (MU、G)xor Z=0)、q=2なら
ば、h1 =H(V)、h3 =H(Uv ) かつエキス (M
U xorK、G) xor Z=0、q=3ならば、h2 =H
(U)、h3 ==H(U xorV)かつVのハミング重み
はdである。
【0021】次に、本発明の認証方法の別の実施例を図
2を参照して説明する。この第2の実施例は上記の実施
例より多くの計算を必要とするが、不法者の成功の確率
はより急速に減少する。この場合には、ベクトルsi
拡張された単体コードを形成するベクトルs[1],・・・
s[w] の組に代える。また、ベクトルKi はM(s[i])=
K[i] のようなベクトルK[1],・・・K[w] の組に代え
る。この実施例は図1で使用した記号と同様な記号で示
した図2の下記の段階を有している: (a) 識別装置がランダムなベクトルyとランダムな順列
pとを選択した後に、 h1 =H(My、p)、h2 =H(yp 、s[1]p , ・・
・, s[w]p ) を計算して確認装置へ発散{h1 、h2 }を送り、 (b) 確認装置はランダムに2進数ベクトル b[1],・・
・, b[w]を取って識別装置へそれを送り、 (c) 識別装置は下記の式で定義される応答zを計算して
確認装置へ送る: z=yp xor s[1]p b[1] xor s[2]p b[2] xor s[3]pb
[3]・・・xors[w]p b[w] (d) 確認装置はビットqをランダムに取って識別装置へ
送り、 (e) 識別装置は下記の式で定義される応答rを送る: q=0ならば、r={yp 、s[1]p , ・・・, s[w]p } q=1ならば、r={p} (f) 確認装置は、q=0ならば応答r={r[0] 、r
[1] 、・・・、r[w]}を受け、q=1ならばr={r
[0] }を受ける、 (g) 確認装置は下記のテストを行う:q=0ならば、h
2 =H(r)、z=r[0] xor r[1]b[1] xor r[2]b[2]x
or r[3]b[3]・・・xor r[w]b[w]かつ{r[1] 、r[2]、
・・・r[w] }が単体コードを形成する、q=1なら
ば、H(M(順列 (z、r[0])) xor(K[1]b[1] xor K
[2]b[2]xor K[3]b[3] ・・・ xor K[w]b[w] 、r
[0])=h1 (h) qに対応するテストが正確であることが分かった時
に、確認装置はプロトコルが成功裏に終了したとみな
す。
【0022】この方法はベクトルzの脱順列(de:ermuta
tion) を避けるために、上記のようなベクトルの座標の
二次的な組について単純化された確認を実施するように
変更することができる。この場合には例えば下記の段階
を有する: (a) 識別装置はランダムなベクトルyとランダムな順列
pとを選択した後に、h1 =H(p)、h2 =H
(yp 、s[1]p , ・・・, s[w]p ) を計算し、確認装置
に発散{h1 、h2 }とベクトルh0 =My を送り、 (b) 確認装置はランダムに2進数ベクトル b[1],・・
・, b[w]を取って識別装置にそれを送り、 (c) 識別装置は下記の式で定義される応答zを計算して
確認装置へ送る: z=yp xor s[1]p b[1] xor s[2]p b[2] xor s[3]p
b[3]・・・xor s[w]p b[w] (d) 確認装置はビットqをランダムに取って識別装置へ
送り、 (e) 識別装置は下記の式で定義される応答rを送る: q=0ならば、r={yp 、s[1]p、・・・、s
[w]p } q=1ならば、r={p} (f) 確認装置は、q=0ならば応答r={r[0] 、r
[1] 、・・・、r[w]}を受け、q=1ならばr={r
[0] }を受ける、 (g) 確認装置は下記をテストする:q=0ならば、h2
=H(r)、z=r[0] xor r[1]b[1] xor r[2]b[2]xor
r[3]b[3] ・・・ xor r[w]b[w]かつ{r[1]、r[2]、
・・・、r[w] }は単体コードを形成する。q=1なら
ば、h1 =H(r[0]) かつ(h0)r [0] xor (K[1]b
[1] xorK[2]b[2] xor K[3]b[3] ・・・xor K[w]b
[w])r[0] =z 対応するテストが正確であることが分かった時に、確認
装置はプロトコルが成功裏に終了したとみなす。第1の
実施例の場合と同様に、上記のプロトコルもt回繰り返
してプロトコルの全回が成功した時にのみ確認装置が識
別装置を認証することもできる。
【0023】また、上記2つの方法の安全性は各種パラ
メータ、特にd、n、k及びtのサイズに依存する。互
いに交信する2つの装置のレベルで作動中にtの選択を
容易に変更できるということは当業者には明らかであ
る。パラメータd、n及びkはシステムパラメータであ
り、これらの選択は最初に決定されており、変更は困難
である。これらのパラメータd、n、kは、ランダムな
コード(n、K)の最小重みに対して理論限界値を与え
るワルシャモフ−ギルバート(Warshamov-Gilbert) 限界
で選択するのが好ましい。すなわち、d=nH2 (k/
n)(ここで、H2(x)はエントロピー関数H2 (x)
=−x log2 (x)−(1−x)log2(1−x)であ
る) 。この場合、dは下記のように選択する: d=(k−n)log2(1−(k/n))−klog2(k/
n)またはd=(n−(k−n)log2(1−(k/
n))+klog2(k/n)
【0024】また、ワルシャモフ−ギルバート限界の制
限下ではnとkとの値を結ぶ2k=nのような関係式を
加えるのが便利である。上記の関係式、好ましくは、d
=0.11nまたはd=0.89nを用いると、nとkの組は下
記の値の1つをとることができる: {n=384 、k=196 }または{n=512 、k=256 }
または{n=1024、k=512 }または{n=768 、k=
384 }
【0025】上記の全ての方法で使用できる変形実施例
では、暗号刻み関数を暗号化関数(fonction de chiffre
ment) に代えて、刻まれるメッセージ(message a hache
r)がキーおよび/または暗号化すべきメッセージの役割
を果たし且つ刻まれたメッセージの真実性の制御が刻ま
れたメッセージおよび/または暗号化キーを明らかにす
る。この問題に関しては下記刊行物を参照することがで
きる: (1) ヴァン ダムガード(Ivan Damgaard) 、クリプト(C
rypto)'89 『刻み関数の設計原理(Design principles f
or hash-functions)』 (2) ナオール(Naor)達の『1方向刻み関数とその暗号へ
の応用 (One-way hashfunctions and their cryptogra
phic applications) 』(Proceedings ofthe 21st ann
ual ACM symposium on theory of computing、Seat
tle 、Washington、May 15〜17、1989、33〜43頁) (3) マティアス(Matyas)の『暗号法アルゴリズムを用い
た強い1方向関数の生成(Generating strong one-way f
unctions with cryptographic algorithm)』(IBM Tech
nical disclosure bulletin 、第27巻、第10A号、1985
年3月、5685〜5695頁)。
【0026】「モジュラーナップザック(Modular Knaps
ack)」を基礎とする方法の場合のベクトルyの選択と全
ての計算はモジュロ(modulo)mで実施され、xor演算
はモジュロmの加算または減算で置換される。重みのテ
ストは、ベクトルの全座標が0であるか1であるかの確
認と、このベクトルの重みが一定であることの確認で置
換され、n、k及びmの間の関係式はn−kIn(m)/
In2かつn−k>64である。従って、mは数2、3、
5、7または2c (ここで、cは小さい整数である)の
中から選択され、組{n、k、m}は下記の1つをとる
ことができる: {196 、128 、3}または{384 、256 、3 }または
{128 、64、5 }または{192 、96、5 }
【0027】大抵の場合、識別装置の保持者の識別子I
Dからsを演繹する手段を有することが重要である。そ
れによって、例えば確認装置でのパブリックキーKi
バックアップを防ぎ、新しいユーザがシステムに参加し
てパブリックキーの辞書を変えるのを防ぐことができ
る。このために、正当権限者は全ての共通パラメータに
対して一度に拡張した単体コードσ1 、・・・、σu
選択する。識別子がIDであるユーザを記録するには、
パプリックの1方向関数(例えば刻み関数)によってI
Dの値を刻み、2進数ベクトルe1 ・・・eu を作っ
て、下記〔式2〕を計算する:
【0028】
【式2】
【0029】K1 =M(σ1 )、・・・、Ku =M
(σ)u を公表し、ユーザIDにSIDを与える。確認装
置は下記〔式3〕を計算して識別装置がsIDを有するこ
とを確認することができる:
【0030】
【式3】 (ここで、ベクトルe1 、・・・、eu はIDの刻みに
よって与えられる)
【0031】十分な安全度に達するには、u>40である
ことが不可欠であり、そのためには経験的にかなり大き
なサイズの単体コードが必要である。実際には、サイズ
の小さいL個の単体コードの組(例えばd=64、dim
=7、n=580 、k=290,L=8)を選択し、各ユーザ
に対して下記のようにして得られたL個の秘密キーs
[1] ID、s[2] ID、・・・、s[L] IDを計算することに
よって、適切なサイズにすることが容易にできる。全て
の単体コードLについて一度にサイズdim を選択し、 σ[1]1、・・・σ[1] dim σ[2]1、・・・σ[2] dim σ[L]1、・・・σ[L] dim 各識別装置でパブリックキーの完全な組K[i] j =M
(σ[i] j )を与える (ここで、i=1、・・・L、j
=1、・・・dim)
【0032】各ユーザに対して、(1) H(ID)=
1 、・・・eu を計算し、(2) ベクトルを各々dim
ビットのL個のセグメントe[1] 、・・・e[L] に分割
し、(3) i=1〜Lに対して下記〔式4〕を計算する
【0033】
【式4】
【0034】(4) ユーザにs[1]ID、s[2]ID、・・・、
s[I]IDを与える。
【0035】各s[i] IDは、下記プロトコルに示すよう
に、直列(s[i] IDを順番に連続して使用する)または
並行で使用する: (a) 識別装置は確認装置にその識別子IDを明らかに
し、 (b) 確認装置はK[1] ID、K[2] ID、・・・K[L] ID
計算し、 (c) 識別装置はL個のベクトルy[1] 、・・・y[L] と
L個の順列p[1] 、・・p[L] を選択し、h1 =H
〔{p[1] }, {My[i] }〕、h2 =H({y[i]
p[i]})、h3 =H〔{y[i] xor s[i] p[i]})
を計算して確認装置へ発散{h1、h2、h3}を送り、 (d) 確認装置はランダムな数0<q<4を取って識別装
置にそれを送り、 (e) 識別装置は下記で定義される応答rを確認装置に送
る: q=1ならば、r={{y[i] }、{p[i] }} q=2ならば、r={{y[i] xor s[i] }、{p
[i] }} q=3ならば、r={{y[i] p[i]}、{s[i]
p[i]}} (f) 確認装置はr={U、V}を受けて下記をテストす
る: q=1ならば、h1 =H〔{V[i] }、{MU[i] }〕
かつh2 =H({U[i] V [i]}) q=2ならば、h1 =H〔{V[i] }、{MU[i] xo
r K[i] })かつh3 =H({U[i] v[i]}) q=3ならば、h2 =H({U[i] }、h3 =H({U
[i] xor V[i] })で且つV[i] の重みはdである (g) qに対応するテストが正確であることが分かった時
に、確認装置はプロトコルが成功裏に終了したとみな
す。 (h) 両者の装置の間で上記(a) 〜(f) の段階をt回反復
する。
【0036】並行の場合のプロトコルは下記の通り: (a) 識別装置は確認装置にその識別子IDを明らかに
し、 (b) 確認装置はK[1]ID、K[2]ID、・・・K[L]IDを計
算し、 (c) 識別装置はL個のベクトルy[1] 、・・・y[L]
と、L個の順列p[1] 、・・p[L] を選択し、h1 =H
〔{p[1] }、{My[i] }〕、h2 =H({y[i]
p[i]})、h3 =H〔{y[i] xor s[i] p[i]})
を計算して確認装置に発散{h1、h2、h3}を送り、 (d) 確認装置はランダムにL個の数q[1] 、・・・q
[L] (但し、0<q<4)を取って識別装置にそれを送
り、 (e) 識別装置は下記で定義される応答r[1] を計算して
確認装置へ送る: q[i] =1ならば、r[i] ={y[i] 、p[i] } q[i] =2ならば、r[i] ={y[i] xor s[i] 、
p[i] } q[i] =3ならば、r[i] ={y[i] p[i]s[i] p[i]} (f) 確認装置は{r[i] }を受け、当業者に自明な方法
で発散を制御する。
【0037】IDをsに関連づけるその他の方法は下記
の通りである:1のビットが2atの位置に分割された
t個の秘密の重みを導入する。すなわちs[1] 、s[2]、
・・・、s[t]であり、i=1、・・・、tについてMs
[i] を公表する。この場合、キーは下記の手順で作られ
る。下記〔式5〕のようなワードを見つけることは、部
分的な三角測量(tiangulation partielle)で容易にでき
る:
【0038】
【式5】 sの重みは約ta−t/2である。
【0039】この系でのサイズの選択は通常次の関係
式:0.11n=ta−t/2、2k=nかつ2atδ>56
(但し、2a−2aH2(δ) −1)で支配される。t=
56の時の場合、一般には、d=95、n=863 、k=432
である。当業者には他の組み合わせが可能であることが
明らかである。
【0040】次に、図3を参照して識別装置の概念的実
施例を説明する。識別装置は例えばチップカードにする
ことができる。この識別装置は制御装置1と、不揮発性
メモリ2 (この不揮発性メモリ2は、例えば上記マトリ
ックスMまたはこのマトリックスMの係数を得ることが
可能な関数と、識別装置自身の秘密キーsi とを収容し
たリードオンリーメモリにすることができる) と、ラン
ダムアクセスメモリ3と、ベクトル−マトリックス乗算
器 (その機能は図5を参照して後で説明する) と、2進
数排他的OR実施手段5と、ランダム数発生器6と、刻
み機能7と、順列発生器8とを有し、これら全ての要素
は物理的に保護されている。さらに、識別装置には確認
装置と識別装置の制御装置との間でデータを交換するた
めの通信インターフェースが備えられている。ランダム
数発生器6は例えばいわゆる「クード(coude) 」区域を
逆に分極したツェナーダイオード(zenerdiode)が生成す
るデジタル白色ノイズ源で形成するか、グンター(GUNTE
R)の米国特許第 4,817,145号またはアラゴン(ARAGON)の
米国特許第 4,649,419号に記載の擬似ランダム数発生器
で構成することができる。順列発生器8は、例えばナッ
カシュ(David Naccache)の『順列の生成について (Onth
e generation of permutation)』(South African Compu
ter Journal 第2号、1990年、12〜16頁) に記載の方法
を用いた2進数ベクトル順列化装置にすることができ
る。
【0041】刻み関数(fonction de hachage) はクリプ
ト90で Rivest が発表した刻み関数MD4、ヨーロクリ
プト92で Schnor が発表した適当に反復されるFFT−
HashIIまたは暗号化アルゴリズムDESによって作るこ
とができる。
【0042】図4は確認装置を示している。この確認装
置は制御装置10を有し、この制御装置10にはマトリック
スMおよびパブリックキーKを収容したROM型の不揮
発性メモリ11と、ハミング(Hamming) 重み計算器12と、
比較器13と、マトリックス−ベクトル乗算器14と、ラン
ダムアクセスメモリ15と、識別装置の手段5と同じ2進
数排他的OR実施手段16と、ランダム数発生器17と、刻
み関数17と同じ刻み関数18と、順列生成器19とが接続さ
れている。また、この制御装置10には確認装置と各識別
装置との間の通信を管理する通信インターフェースが接
続されている。
【0043】次に、図5を参照してベクトルによるマト
リックスの乗算関数の一実施例を説明する。この実施例
は8ビットのベクトルyを用いた単純化した方法であ
る。図5に示したマトリックス乗算器Mは8ビットのベ
クトルyを対応するサイズのマトリックスで乗算でき、
8個のANDゲート 11, 12, 13, 14, 15, 16, 17, 18
で構成されている。各ANDゲートの入力にはベクトル
yの1ビットとマトリックスの現在の行の1ビットが入
る。ANDゲートの出力は排他的ORゲートの三角網(r
eseau triangulaire) 21, 22, 23, 24, 31, 32, 4に入
って、回路の出力側でマトリックスMの現在の行による
yのスカラー積に対応したビットが得られる。特に、ゲ
ート 11, 12 の出力は排他的ORゲート21 の入力へ送
られ、ゲート 13, 14 の出力は排他的ORゲート22
入力へ送られ、これらの2つの排他的ORゲートの出力
は排他的ORゲート 31 の入力へ送られる。同様に、ゲ
ート15, 16 の出力は排他的ORゲート23 の入力へ送
られ、ゲート 17, 18 の出力は排他的ORゲート24
入力へ送られ、これらの2つの排他的ORゲートの出力
は排他的ORゲート 32 の入力へ送られる。排他的OR
ゲート 31, 32 の出力は排他的ORゲート4の入力に送
られる。このゲート4の出力SはマトリックスMの現在
の行によるyのスカラー積に対応する。
【図面の簡単な説明】
【図1】 本発明の認証方法の第1の実施例を説明する
ための概念図。
【図2】 本発明方法の第2の実施例を説明するための
概念図。
【図3】 本発明の識別装置のブロック図。
【図4】 本発明の確認装置のブッロク図。
【図5】 本発明のマトリックス/ベクトル乗算器の実
施例の電気概念図。
【符号の説明】
1 制御装置 2 不揮発性メモ
リ 3 ランダムアクセスメモリ 4 ベクトル−マ
トリックス乗算器 5 排他的ORゲート 6 ランダム数発
生器 7 刻み機能 8 置換発生器 10 制御装置 11 不揮発性メモ
リ 12 ハミング重み計算器 13 比較器 14 ベクトル−マトリックス乗算器 15 ランダムアク
セスメモリ 16 2進数排他的OR形成手段 17 ランダム数発
生器 18 刻み機能 19 置換発生器 20 通信インターフェース
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 G07F 17/12 9028−3E H04L 9/00 9/10 9/12

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】 モジュラーナップザックとして知られた
    問題すなわちシンドロームによるデコード化の問題に基
    づく解読を無効にするプロトコルによって認証が実施さ
    れる、確認装置によって少なくとも1つの識別装置を認
    証する認証方法において、下記段階を特徴とする方法: (1) 識別装置と確認装置との間の対話を可能にするため
    のサイズがnでハミング重みがd(d<n)である少な
    くとも1つのベクトルsi で構成された秘密キーと、係
    数がランダムに選択されるサイズがn×kのマトリック
    スMと少なくとも1つのベクトルKi (Ki =Msi )
    とで構成されるパブリックキーとを設定し、(2) 識別装
    置側で、サイズがnのランダムなベクトルyとランダム
    な順列pとを生成し、y、p、s、Mの関数パラメータ
    に暗号刻み関数Hを適用して得られた発散を確認装置へ
    送り、(3) 確認装置が取った任意の数を識別装置へ送
    り、識別装置でsi を明らかにしないで上記の数の関数
    でy、p、si のある関数要素を明らかにし、(4) 受け
    た要素とパブリックキーとを用いて確認装置側で上記の
    数の関数で発散が正確であることをテストし、(5) 所望
    の安全レベルに応じた回数で上記の動作を反復する。
  2. 【請求項2】 上記ベクトルsi が2進数ベクトルであ
    る請求項1に記載の方法。
  3. 【請求項3】 ランダムなベクトルyとランダムな順列
    pを選択した後に識別装置が下記の式: h1 =H(p、My)、h2 =H(yp ) 、h3 =H(y
    xor s) p ) を計算して確認装置に発散{h1 、h2 、h3 }を送り
    (ここで、xp はpで順列化されたベクトルxを表し、
    xorは排他的OR関数を表す)、次に、確認装置はラ
    ンダムな数0<q<4を取り、その数を識別装置へ送
    り、次に、識別装置は、下記のように: q=1ならば、r={y、p} q=2ならば、r={y xor s、p} q=3ならば、r={yp 、sp } によって定義される応答を計算して確認装置に送り、確
    認装置はr={U、V}を受けて下記: q=1ならば、h1 =H(V、MU)かつh2 =H(U
    v ) q=2ならば、h1 =H(V、(MU)xor K)かつh
    3 =H(Uv ) q=3ならば、h2 =H(U)、h3 =H(U xor
    V)かつVのハミング重みはdである ことをテストし、 qに対応するテストが正確であること分かった時に、確
    認装置はプロトコルが成功裏に終了したとみなす請求項
    1または2に記載の方法。
  4. 【請求項4】 ランダムなベクトルyとランダムな順列
    pとを選択した後、識別装置が下記の式: h1 =H(p)、h2 =H(yp ) 、h3 =H(y xor
    s)p ) を計算して確認装置に発散{h1 、h2 、h3 }を送
    り、 確認装置は互いに分離した数のリストG={g1 、・・
    ・gf }(ここで、1<gi <k)をランダムに取って
    それを識別装置に送り、 識別装置は置換がGによって示されたMyのfビットの
    みを計算し、この計算で得られたベクトルZを確認装置
    へ送り、 確認装置はランダムな数0<q<4を取り、その数を識
    別装置へ送り、 識別装置は下記: q=1ならば、r={y、p} q=2ならば、r={y xor s、p} q=3ならば、r={yp 、sp } で定義される応答rを計算して確認装置に送り、 確認装置はr={U、V}を受けて下記のように制御
    し: q=1ならば、h1 =H(V)、h2 =H(Uv ) かつ
    エキス (MU、G)xor Z=0(ここで、エキス (M
    U、G)はx中でGによって表されたビットだけを選択
    することによって得られた射影ベクトルを表す)、 q=2ならば、h1 =H(V)、h3 =H(Uv ) かつ
    エキス (MU xorK、G)xor Z=0、 q=3ならば、h2 =H(U)、h3 ==H(U xor
    V)かつVのハミング重みはdである、 qに対応するテストが正確であること分かった時に、確
    認装置はプロトコルが成功裏に終了したとみなす請求項
    1または2に記載の方法。
  5. 【請求項5】 ランダムなベクトルyとランダムな順列
    pとを選択した後に、識別装置が下記の式: h1 =H(p)、h2 =H(yp ) 、h3 =H(y xor
    s)p ) を計算して確認装置に発散{h1 、h2 、h3 }を送
    り、 識別装置はQ=My を計算し、得られたベクトルQを確
    認装置へ送り、 確認装置は互いに分離した数のリストG={g1 、・・
    ・gf }(ここで、1<gi <k)をランダムに取って
    ベクトルZ=エキス (Q、G)を計算し、 確認装置はランダムな数0<q<4を取ってその数を識
    別装置へ送り、 次に、識別装置は下記: q=1ならば、r={y、p} q=2ならば、r={y xor s、p} q=3ならば、r={yp 、sp } で定義される応答rを計算して確認装置へ送り、 確認装置はr={U、V}を受けて下記の制御をし: q=1ならば、h1 =H(V)、h2 =H(Uv ) かつ
    エキス (MU、G)xor Z=0)、 q=2ならば、h1 =H(V)、h3 =H(Uv ) かつ
    エキス (MU xorK、G)xor Z=0、 q=3ならば、h2 =H(U)、h3 =H(U xor
    V)かつVのハミング重みはdである、 qに対応するテストが正確であることが分かった時に、
    確認装置がプロトコルが成功裏に終了したとみなす請求
    項5に記載の1または2に記載の方法。
  6. 【請求項6】 ベクトルsi が長い単体コードを形成す
    るベクトルの組s[1],・・・s[w] によって置換されて
    いる請求項1に記載の方法。
  7. 【請求項7】 ベクトルKi がベクトルの組K[1] 、・
    ・・K[w] によって置換されて、M(s[i])=K[i] で
    ある請求項6に記載の方法。
  8. 【請求項8】 識別装置がランダムなベクトルyとラン
    ダムな順列pとを選択した後に、h1 =H(My
    p)、h2 =H(yp 、s[1]p , ・・・, s[w]p )を計
    算し、発散{h1 、h2 }を識別装置へ送り、 確認装置はランダムに2進数ベクトルb[1] 、・・・、
    b[w] を取ってそれを識別装置へ送り、 識別装置は下記の式: z=yp xor s[1]p b[1] xor s[2]p b[2] xor s[3] p
    b[3]・・・ xors[w] p b[w] で定義される応答zを計算して確認装置へ送り、 確認装置はビットqをランダムに取って識別装置へ送
    り、 識別装置は下記の式: q=0ならば、r={yp 、s[1]p , ・・・, s[w]p } q=1ならば、r={p} で定義される応答rを送り、 確認装置は下記回答r: q=0ならば、r={r[0] 、r[1] 、・・・、r[w]} q=1ならばr={r[0] } を受けて下記をテストする: q=0ならば、h2 =H(r)、z=r[0] xor r[1]b
    [1] xor r[2]b[2]xor r[3]b[3]・・・ xor r[w]b[w]
    且つ{ r[1], r[2],・・・, r[w]}が単体コードを形成
    する、 q=1ならば、H(M(順列 (z、r[0])) xor(K[1]b
    [1] xor K[2]b[2]xor K[3]b[3] ・・・ xor K[w]b
    [w], r[0])=h1 、 qに対応するテストが正確であることが分かった時に、
    確認装置はプロトコルが成功裏に終了したとみなす請求
    項6または7に記載の方法。
  9. 【請求項9】 識別装置がランダムなベクトルyとラン
    ダムな順列pとを選択した後に、h1 =H(p)、h2
    =H(yp , s[1]p , ・・・, s[w]p ) を計算して確認装
    置へ発散{h1 、h2 }とベクトルh0 =My とを送
    り、 確認装置はランダムに2進数ベクトル b[1],・・・, b
    [w]を取って識別装置へそれを送り、 識別装置は下記の式: z=yp xor s[1]p b[1] xor s[2]p b[2] xor s[3]p
    b[3]・・・ xors[w]p b[w] で定義される応答zを計算して確認装置に送り、 確認装置はビットqをランダムに取って識別装置へ送
    り、 識別装置は下記の式: q=0ならば、r={yp 、s[1]p , ・・・, s[w]p } q=1ならば、r={p} で定義される応答rを送り、 確認装置は、 q=0ならば応答r={r[0] 、r[1] 、・・・、r
    [w]}、 q=1ならばr={r[0] } を受けて下記をテストし: q=0ならば、h2 =H(r) 、z=r[0] xor r[1]b[1]
    xor r[2]b[2] xorr[3]b[3] ・・・xor r[w]b[w]かつ
    {r[1], r[2], ・・・, r[w]}は単体コードを形成す
    る、 q=1ならば、h1 =H(r[0]) かつ (h0)r [0] xor
    (K[1]b[1] xorK[2]b[2] xor K[3]b[3] ・・・ xor
    K[w]b[w])r[0] =z、 対応するテストが正確であると分かった時に、確認装置
    はプロトコルが成功裏に終了したとみなす請求項6また
    は7に記載の方法。
  10. 【請求項10】 プロトコルがt回反復され、その全て
    のプロトコルが成功した時にのみ確認装置が識別装置を
    認証する請求項1〜9のいずれか一項に記載の方法。
  11. 【請求項11】 tを0<t<60の範囲で選択する請求
    項10に記載の方法。
  12. 【請求項12】 ハミング重みdを下記の式: d=(k−n)log2(1−(k/n))−klog2(k/
    n) に選択し、好ましくはこの値よりかなり小さくする請求
    項1〜11のいずれか一項に記載の方法。
  13. 【請求項13】 ハミング重みdを下記の式: d=(n−(k−n)log2(1−(k/n))+klog2
    (k/n) に選択し、好ましくはこの値よりかなり大きくする請求
    項1〜11のいずれか一項に記載の方法。
  14. 【請求項14】 n=2kである請求項12または13に記
    載の方法。
  15. 【請求項15】 d=0.11nまたはd=0.89nである請
    求項12〜14のいずれか一項に記載の方法。
  16. 【請求項16】 nとkとが下記の値の組の1つを取る
    請求項1〜15のいずれか一項に記載の方法: {n=384 、k=196 }、{n=512 、k=256 }、
    {n=1024、k=512 }または{n=768 、k=384
    }。
  17. 【請求項17】 暗号刻み関数を暗号化関数で置換し
    て、刻まれるメッセージが上記のキーおよび/または暗
    号化すべきメッセージの役目をし且つ刻まれたメッセー
    ジの真実性の制御で刻まれたメッセージおよび/または
    暗号化キーを明らかにする請求項1〜16のいずれか一項
    に記載の方法。
  18. 【請求項18】 ベクトルyの選択と全ての計算をモジ
    ュロmで実施し、xor演算をモジュロmの加算または減
    算に代え、重みについてのテストをベクトルの全座標が
    0または1であり且つこのベクトルの重みが一定である
    ことを確認することに代え、n、kおよびmの間の関係
    がn−kIn(m)/In2かつn−k>64である請求項1
    〜17のいずれか一項に記載のモジュラーナップザックを
    基礎とする方法。
  19. 【請求項19】 mを数2、3、5、7または2c (こ
    こで、cは小さい整数である)の中から選択する請求項
    18に記載の方法。
  20. 【請求項20】 {n、k、m}が下記の値の1つをと
    る請求項18または19に記載の方法: {196 、128 、3}、{384 、256 、3 }、{128 、6
    4、5 }または{192 、96 、5 }
  21. 【請求項21】 H(p) の計算をH(ep )(ここで、e
    は一定の擬似ランダムベクトルである)の計算で行う請
    求項1〜21のいずれか1項に記載の方法。
  22. 【請求項22】 各ユーザの識別子IDをキー{si
    i }と組み合わせるために正当権限者が主な秘密キー
    の組{KPi }を選択し、KPi の関数としてsi を計
    算するための2進数ベクトルI=H(ID)にIDを刻
    み、正当権限者は主パプリックキーの組{PPi }また
    は{PPi }=f(KPi )を公表する請求項1〜21の
    いずれか一項に記載の方法。
  23. 【請求項23】 KPi がsの計算プロセス中に入った
    か否かを決める選択インジケータとして正当権限者が1
    のビットを用いる請求項22に記載の方法。
  24. 【請求項24】 組{KPi }が1つまたは複数の拡大
    した単体コードを形成する請求項23に記載の方法。
  25. 【請求項25】 Iが56ビットの数である請求項24に記
    載の方法。
  26. 【請求項26】 sがKPi の一次の組み合わせ、すな
    わち、 s=l[1] KP1 +I[2] KP2 +・・・I〔Iのサイ
    ズ〕Kp I のサイズ( ここで、PPi =(KPi )) として計算する請求項22〜25に記載の方法。
  27. 【請求項27】 下記の計算を実行することを特徴とす
    る請求項22、23または25に記載の方法によってIDをs
    に関連付ける方法:正当権限者が1のビットが2atの位
    置に分配された重みatのt個の秘密KPiを計算し、P
    i =(MPi )の組を公表し且つ下記〔式1〕の部分
    三角測量によってキーsを生成する: 【式1】 sの重み=ta−t/2であり、 サイズは、下記の関係式で選択: 0.11 n=ta−t/2、2k=nかつ2atδ>56 (ここで、2a−2aH2 (δ)−1)
  28. 【請求項28】 t=56、d=95、n=864 、k=432
    である請求項27に記載の方法。
  29. 【請求項29】 少なくとも1つの識別装置と確認装置
    を備た請求項1〜28のいずれか1項に記載の方法を実施
    するための装置であって、 識別装置がサイズn×kのマトリックスMをnビットの
    ベクトルによって乗算するための少なくとも1つの手段
    と、ハミング重みdの秘密ベクトルsi を記憶するため
    の手段と、ランダムなベクトルyとランダムな順列yと
    を生成する手段と、暗号刻みHを実施するための手段H
    と、確認装置との通信手段とを有することを特徴とする
    装置。
  30. 【請求項30】 サイズn×kのマトリックスMをnビ
    ットのベクトルによって乗算するための少なくとも1つ
    の手段と、少なくとも1つのパブリックベクトルKi
    (Ki =Ms i ) を貯蔵するための手段と、整数をラン
    ダムに生成する手段と、暗号法刻みHを実施する手段
    と、識別装置との通信装置とを有する請求項29に記載の
    装置。
  31. 【請求項31】 マトリックスMが擬似ランダム数の決
    定発生器によって生成される請求項29または30に記載の
    装置。
  32. 【請求項32】 マトリックス乗算器MがANDゲート
    の列によって形成されており、その各入力にベクトルy
    とマトリックスMの現在の行のビットとが入力され、A
    NDゲートの出力は「XOR」ゲートの三角網を供給し
    て、回路の出力でマトリックスの現在の行によるyのス
    カラー積に対応するビットが得られる請求項29〜31のい
    ずれか一項に記載の装置。
JP01129694A 1992-12-30 1994-01-04 確認装置によって少なくとも1つの識別装置を認証する方法および装置 Expired - Fee Related JP3675494B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9215915 1992-12-30
FR9215915A FR2700430B1 (fr) 1992-12-30 1992-12-30 Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre.

Publications (2)

Publication Number Publication Date
JPH06348202A true JPH06348202A (ja) 1994-12-22
JP3675494B2 JP3675494B2 (ja) 2005-07-27

Family

ID=9437278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01129694A Expired - Fee Related JP3675494B2 (ja) 1992-12-30 1994-01-04 確認装置によって少なくとも1つの識別装置を認証する方法および装置

Country Status (8)

Country Link
US (1) US5483597A (ja)
EP (1) EP0605289B1 (ja)
JP (1) JP3675494B2 (ja)
BR (1) BR9305279A (ja)
CA (1) CA2112518C (ja)
DE (1) DE69331183T2 (ja)
ES (1) ES2168270T3 (ja)
FR (1) FR2700430B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006523065A (ja) * 2003-04-11 2006-10-05 インテル・コーポレーション 身元を明らかにすることのない信頼の確立

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
US5668878A (en) * 1994-02-28 1997-09-16 Brands; Stefanus Alfonsus Secure cryptographic methods for electronic transfer of information
US6011848A (en) * 1994-03-07 2000-01-04 Nippon Telegraph And Telephone Corporation Method and system for message delivery utilizing zero knowledge interactive proof protocol
KR0144086B1 (ko) * 1994-03-31 1998-08-17 조백제 인증교환과 전자서명 방법
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
KR0146438B1 (ko) * 1995-05-17 1998-09-15 조백제 인증교환 방법과 복원형 전자서명 방법 및 부가형 전자서명 방법
FR2736485B1 (fr) * 1995-07-03 1997-08-14 Thomson Multimedia Sa Procede de traitement d'un signal numerique tel que le signal numerique en sortie ne peut se deduire du signal numerique en entree et utilisation de ce procede pour le controle d'acces et/ou la signature binaire
US5757916A (en) * 1995-10-06 1998-05-26 International Series Research, Inc. Method and apparatus for authenticating the location of remote users of networked computing systems
EP0792044B1 (en) * 1996-02-23 2001-05-02 Fuji Xerox Co., Ltd. Device and method for authenticating user's access rights to resources according to the Challenge-Response principle
US6459791B1 (en) * 1996-06-05 2002-10-01 Gemplus Public key cryptography method
US6266771B1 (en) 1997-02-10 2001-07-24 The Regents Of The University Of California Probabilistic signature scheme
IL120720A (en) * 1997-04-24 1999-10-28 Israel Atomic Energy Comm Apparatus and method for signing and authenticating digital signatures
US6134597A (en) * 1997-05-28 2000-10-17 International Business Machines Corporation CRC hash compressed server object identifier
FR2780177B1 (fr) * 1998-06-17 2001-10-05 Schlumberger Ind Sa Systeme de protection d'un logiciel
US7006999B1 (en) * 1999-05-13 2006-02-28 Xerox Corporation Method for enabling privacy and trust in electronic communities
JP3735521B2 (ja) * 1999-09-30 2006-01-18 株式会社東芝 埋め込み符号生成方法及び装置、埋め込み符号検出方法及び装置並びに電子透かし埋め込み装置
FR2810481B1 (fr) * 2000-06-20 2003-04-04 Gemplus Card Int Controle d'acces a un moyen de traitement de donnees
KR100445574B1 (ko) * 2001-12-19 2004-08-25 한국전자통신연구원 대화형 영 지식 증명을 이용한 패스워드 기반의 인증 및키 교환 프로토콜 설계 방법
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7305705B2 (en) * 2003-06-30 2007-12-04 Microsoft Corporation Reducing network configuration complexity with transparent virtual private networks
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US20070067643A1 (en) * 2005-09-21 2007-03-22 Widevine Technologies, Inc. System and method for software tamper detection
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
FR2916594A1 (fr) * 2007-05-23 2008-11-28 France Telecom Procede d'authentification d'une entite par une entite verificatrice
CA2591280A1 (en) * 2007-06-12 2008-12-12 Nikolajs Volkova A new digital signature scheme
WO2010067820A1 (ja) * 2008-12-11 2010-06-17 日本電気株式会社 ゼロ知識証明システム、ゼロ知識証明装置、ゼロ知識検証装置、ゼロ知識証明方法およびそのプログラム
US8549299B2 (en) * 2011-02-28 2013-10-01 Certicom Corp. Accelerated key agreement with assisted computations
US10180829B2 (en) * 2015-12-15 2019-01-15 Nxp Usa, Inc. System and method for modulo addressing vectorization with invariant code motion
SG10201703532PA (en) * 2017-04-28 2018-11-29 Huawei Int Pte Ltd Method and System for Symmetric Swarm Authentication
CN117061128B (zh) * 2023-10-11 2023-12-22 北京天润基业科技发展股份有限公司 数据置换的验证方法、装置、存储介质及电子设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
US4471164A (en) * 1981-10-13 1984-09-11 At&T Bell Laboratories Stream cipher operation using public key cryptosystem
US4723284A (en) * 1983-02-14 1988-02-02 Prime Computer, Inc. Authentication system
US4633036A (en) * 1984-05-31 1986-12-30 Martin E. Hellman Method and apparatus for use in public-key data encryption system
US5054066A (en) * 1988-11-16 1991-10-01 Grumman Corporation Error correcting public key cryptographic method and program
US4932056A (en) * 1989-03-16 1990-06-05 Yeda Research And Development Company Limited Method and apparatus for user identification based on permuted kernels
US5142579A (en) * 1991-01-29 1992-08-25 Anderson Walter M Public key cryptographic system and method
US5295188A (en) * 1991-04-04 1994-03-15 Wilson William J Public key encryption and decryption circuitry and method
US5220606A (en) * 1992-02-10 1993-06-15 Harold Greenberg Cryptographic system and method
US5297206A (en) * 1992-03-19 1994-03-22 Orton Glenn A Cryptographic method for communication and electronic signatures

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006523065A (ja) * 2003-04-11 2006-10-05 インテル・コーポレーション 身元を明らかにすることのない信頼の確立
JP4673840B2 (ja) * 2003-04-11 2011-04-20 インテル・コーポレーション 身元を明らかにすることのない信頼の確立

Also Published As

Publication number Publication date
FR2700430B1 (fr) 1995-02-10
JP3675494B2 (ja) 2005-07-27
FR2700430A1 (fr) 1994-07-13
CA2112518A1 (fr) 1994-07-01
EP0605289A1 (fr) 1994-07-06
US5483597A (en) 1996-01-09
CA2112518C (fr) 2003-12-02
DE69331183D1 (de) 2002-01-03
DE69331183T2 (de) 2002-07-04
EP0605289B1 (fr) 2001-11-21
ES2168270T3 (es) 2002-06-16
BR9305279A (pt) 1994-07-05

Similar Documents

Publication Publication Date Title
JP3675494B2 (ja) 確認装置によって少なくとも1つの識別装置を認証する方法および装置
KR100346084B1 (ko) 검증기에의해적어도하나의프로버를검증하는방법
Simmons A survey of information authentication
US6199053B1 (en) Digital signature purpose encoding
US8667287B2 (en) Transaction auditing for data security devices
US8583928B2 (en) Portable security transaction protocol
EP0881559B1 (en) Computer system for protecting software and a method for protecting software
US4995081A (en) Method and system for personal identification using proofs of legitimacy
US8654975B2 (en) Joint encryption of data
US9882890B2 (en) Reissue of cryptographic credentials
US9832018B2 (en) Method of generating a public key for an electronic device and electronic device
US10089627B2 (en) Cryptographic authentication and identification method using real-time encryption
US11784825B2 (en) Lattice based signatures with uniform secrets
WO2008056613A1 (fr) Authentificateur
US20030070074A1 (en) Method and system for authentication
CN109818752B (zh) 信用评分生成方法、装置、计算机设备和存储介质
CN109918888B (zh) 基于公钥池的抗量子证书颁发方法及颁发系统
JPH06504626A (ja) アクセスコントロールおよび/または識別方法および装置
JP2002208925A (ja) 可変認証情報を用いる資格認証方法
JP2004512570A (ja) 非安全な暗号加速器を用いる方法と装置
JP2003152716A (ja) 可変認証情報を用いる資格認証方法
KR100971038B1 (ko) 다수의 엔티티와 그에 따른 장치에 부하를 분배하는암호화 방법
Zhan Anti-fake technology of commodity by using QR code
CN1666458B (zh) 在交易中促进计算的加密方法和设备
JP3746919B2 (ja) 可変認証情報を用いる資格認証方法

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040128

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050426

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees