JP3704162B2 - 反復認証を行う2個のマイクロコンピュータ間に2つの証明を交換するシークレットの転送方法 - Google Patents

反復認証を行う2個のマイクロコンピュータ間に2つの証明を交換するシークレットの転送方法 Download PDF

Info

Publication number
JP3704162B2
JP3704162B2 JP16523491A JP16523491A JP3704162B2 JP 3704162 B2 JP3704162 B2 JP 3704162B2 JP 16523491 A JP16523491 A JP 16523491A JP 16523491 A JP16523491 A JP 16523491A JP 3704162 B2 JP3704162 B2 JP 3704162B2
Authority
JP
Japan
Prior art keywords
microcomputer
card
security module
mod
credit
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 - Lifetime
Application number
JP16523491A
Other languages
English (en)
Other versions
JPH0684026A (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.)
Etat Francais
Telediffusion de France ets Public de Diffusion
Koninklijke Philips NV
Original Assignee
Etat Francais
Telediffusion de France ets Public de Diffusion
Koninklijke Philips Electronics NV
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 Etat Francais, Telediffusion de France ets Public de Diffusion, Koninklijke Philips Electronics NV filed Critical Etat Francais
Publication of JPH0684026A publication Critical patent/JPH0684026A/ja
Application granted granted Critical
Publication of JP3704162B2 publication Critical patent/JP3704162B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/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/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/302Public 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 involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • 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/3247Cryptographic 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 involving digital signatures
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/3271Cryptographic 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 challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • G06F7/725Finite field arithmetic over elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction

Description

【0001】
【産業上の利用分野】
本発明は、2つのマイクロコンピュータ間でシークレット(secret)を転送する方法を提供することを、その目的として有する。
本発明は、一般に「チップ・カード(chip cards)」と呼ばれ、多数の適用範囲(いわゆる「多用途」又は「多目的」カード)に分解できるようなマイクロコンピュータ・カードの、実現とその利用のために用いられる。
【0002】
【従来の技術】
これらのカードが抱えている問題の1つは、端末機とも呼ばれるマイクロプロセッサの具えるセキュリティ・モデュールから、シークレットすなわち命令(command) を、マイクロコンピュータ・カードに転送することである。
【0003】
今日この問題を解決するのに用いられる技術は、シークレット鍵(secret key)の階層(hierarchy) を持つシークレット鍵の暗号記法演算方式(cryptographic algorithms)を使用することである。これらのカードの発行者は、カード毎に異なるデータ(例えばチップの一連番号又はカード所持者の口座番号等)の関数としてカードに第2番目の鍵(secondary keys)としての多様性が与えられているマスター・キイの管理権(disposal)を持つ。
【0004】
従って今日発行されているチップ(特定個人用としたB0モードのマスクM4)をもつ各銀行カードは、多様化されたキイを具えている。各セキュリティ・モデュールはマスター・キイの管理権を持つ。内部的には、各セキュリティ・モデュールは、自分自身でアドレスするカードの多様化されたキイを改作して、然る後にこのキイを受信した結果を確認し且つそれが制御する行動を防護するために利用する。
【0005】
もっと最近のマスクでは、各カード中に暗号記法的鍵(cryptographic keys)の組が1つ(又は複数)ある。データの起原を保証するのに用いられる鍵(無欠陥キイ -integrity keys) は、データの秘密性を防護するのに使われる鍵(機密保持キイ -confidentiality keys) とは異なるものである。これは、多数の用途に共用されている BULL CP8 及びPHILIPS の開発したPC2, MP 及び TB100というマスクの場合である。
【0006】
いくつかの応用の間で共用できるカードでは、1つのマスター・ファイル(master file -略してMF) がデディケイテッド・ファイル(dedicated files -略してDF) を造り出すことができる。多用途カードを有効なものとするには、カードを発行したオーソリティ(authority) は、カードのリソーセズ(resources) の一部分をデディケイテッド・ファイルへの権限の一部分に割り当てることによって、デディケイテッド・ファイルへの権限の一部分を委任する必要がある。従っていくつかのデディケイテッド・ファイルは、そのうちの1つのセキュリティが他のもののセキュリティに影響することなく、同一のカードの中に共存することが可能でなければならない。
【0007】
現在の処、発行者のマスター・キイは、チップ・カードの新用途を開放するためにセキュリティ・モデュール中で作用するように、作られなければならない。そうすると、サービス提供者の第1のキイは、カードの発行者に属するキイの防護の下に、カードに送達される。
【0008】
比較的無名のセキュリティのモデュールで寧ろ不十分にしか制御されていない環境中に多数ばらまかれているものの中にマスター・キイを入れ込むことは、或いは第三者の、たとえそれがカードの発行者であっても、のシークレットの制御の下に実際のシークレットをばらまくことは、寧ろ危険である。
【0009】
【発明が解決しようとする課題】
本発明は、かようなシークレット鍵の階層とデディケイトする行動に起因する束縛とを避ける方法を提供する。そうするとセキュリティ・モデュールは、カードと全く同様に特定個人用とされる。しかし、この構造はチップ・カードのセキュリティ・アーキテクチュアにとって極めて重要なマスター・ファイル及びデディケイテッド・ファイル(MF及びDF)を侵害しない。
【0010】
本発明を詳述する前に、この種の技術で習慣的に実行されている既知のツールがどんなものであるかを簡単に想起して置こう。更に詳しい情報については、本出願人に与えられたフランス国特許第FR-A-2 620 248号明細書 “Procedes d'authentification d'accreditations ou de messages a apport nul de connaissance et de signature de messages" 及びこれに相当する1990年2月22日に出願された米国特許出願第 488,371号、並びに其処に記載の多数の引用文献を参照されたい、なおそれらはすべて本出願の引用文献とされる。
【0011】
現在フランスでは、チップ・カードの認証(authentification)を完全なものとするのに、身元の確認(identity)及び公開キイ技術(public key technique)に基づく方法が使われる。その精確な説明は “Specifications et normes de la carte a memoire bancaire"と題する文献に記述されている。該文献(1984年1月発行、第1版)はパリー(29, rue de Lisbonne, Paris,16eme)所在の “Groupement des Cartes Bancaires"から入手できる。
【0012】
各チップ・カードは、身元確認値(identification value)を含んでいる。それはビット列の形で書かれた整数である。この整数は、それをチェックする確認器(verifier)で、銀行当局(bank authority)により公開されたキイを利用して読み取られる。この整数を3乗し、銀行当局により公開された数nで割り算した剰余を付けると、前半と後半とが同一のビット列を見出さなければならない筈である。前半、後半の各々には、カードの他の場所で読み取ることの出来るいくつかの情報コンポネント、すなわち所持者の銀行口座番号、チップ・カードの一連番号、有効期間、利用者コード等が存在する。これらの情報コンポネントを符号化するビット列が、用語の広い意味における身元の確認を構成する。
【0013】
利用できるチップは関連の算術計算を実行するのに十分な容量を持たないので、認証値の点検はカードの外部で実行される。
【0014】
しかし現在、チップ・カードの新しいコンポネントの開発は、その最終段階にまで来ている。このコンポネントと共に、公開キイ数字に基づくいくつかの技術が実用に適するまでになっている、更に特定すれば、
─それらをキイの中に入れ込むことを許容する有限体での指数化、
─信用供与の計算を許容するディジタル署名、
─信用供与のお蔭で認証と署名とを許容するゼロ知識技術
等の技術である。
【0015】
1.有限集合での指数化(exponentiation in finite sets)
有限集合での指数化は、2つのセキュリティ・マイクロコンピュータにとって、その無欠陥性は保証されているが機密保持性は保証されていないリンクを経由して、共通のシークレット鍵を確立することを可能にさせる。この手順が最初に記述されたのは、“IEEE Transactions on Information Theory" 誌1976年11月号,Vol.IT-22,644-654ページ所載のWhitfield DIFFIE及びMartin HELLMANによる“New Directions in Cryptography"という論文においてである。この方法では、2つのセキュリティ・マイクロコンピュータは、掛け算の交換律を持つ大きな有限集合の使用について公に合意が得られている。この集合は:
─ 500ビット以上の素数pを特徴として持つ有限体、指数化の底(base)は体の素元(primitive element)aである(すなわちpを法とする逐次冪乗が体のすべての元を表す)、該素数は、(p-1)/2 もまた素数であり且つbを少なくとも20ビットとするとき2512 ±b の形であることを好適とし、底aはバイト(byte)で表されることを好適とする;
─1000番目の拡大(extension) 以上の2による拡大体、指数化の底は原始多項式の根である;
─有限体上の楕円曲線の点集合;
であろう。
【0016】
説明のために、第1の実例について以下に考察する。発呼者は、この利用について標準値がないであろう場合に対して選ばれたパラメータa及びpを被呼側に指示できることに注意されたい。
【0017】
各セキュリティ・マイクロコンピュータは、指数として使用されるであろうpより小さい正の整数を、無作為に且つ秘密に選定する。x及びyはこうして選定された2つの指数であることに注意されたい。各マイクロコンピュータは対応する指数関数、すなわちそれぞれ
X=ax mod p
Y=ay mod p
を計算する。
【0018】
その次に、マイクロコンピュータはそれぞれの結果を交換し、各々が受け取った値を自身の秘密指数で冪乗する。指数関数は交換律が成り立つから、2つのセキュリティ・マイクロコンピュータは、共通のシークレット鍵Kに到達する。
K=Xy mod p =axy mod p
K=Yx mod p =ayx mod p
【0019】
3番目のマイクロプロセッサが、交換値X及びYに気付いても鍵Kを見出すことには成功しないだろう、と云うのは、今考えている大きな有限集合では、指数関数がどのように変換されなければならないかが分からないからである。離散的な対数の計算のためのすべての既知のアルゴリズムは、有限集合の次数が増加すると急速に役に立たなくなる。
【0020】
兎も角リンクに挿入された3番目のマイクロコンピュータが、一方では鍵K′を、また他方では鍵K″を、セキュリティ・マイクロコンピュータには気付かれることなく構成できるということに注意しなければならない。使用に適するようにするためには、プロトコルは認証手続(authentification procedure)又は署名(signature) により完成されなければならない。
【0021】
2.公開キイ・ディジタル署名図式(public-key digital signature diagrams) 情報の電子交換におけるディジタル署名は、在来の郵便における手書きの署名と等価である。
【0022】
すべての公開キイ・ディジタル署名組織では、シークレット鍵は通信文(messages)にサインするために「署名動作 (signature operation)」中に有効とされ、公開キイは署名を確認するために「確認動作(verification operation)」中に有効とされる。結果として1対の鍵が、「シークレット署名キイ」と「公開確認キイ」とによって構成される。
【0023】
2つの型式のディジタル署名組織が明確に定義され、同一であることが確認される:
─確認動作がその入力エレメントとして通信文を必要とする時は、図式は「付録付署名組織(signature with appendix organization)」である、付録の計算は圧縮関数(compression function)を利用する、
─確認動作が通信文とその特定の冗長度、時に「通信文の影(message shadow)」と呼ばれるもの、とを同時に明らかにする時は、組織は「通信文再構築署名組織(signature organization re-establishing the message)」である。
【0024】
後者の場合には通信文は、時に「通信文の刻印(imprint of a message)」と呼ばれる別のもっと長い通信文を圧縮した結果であるかも知れない。通信文に 128ビットの刻印を与える圧縮関数を適用し、然る後に刻印に通信文を再構築する署名組織を適用することにより、「刻印付署名(signature with imprint)」組織を実現することが好適に可能であって、これは付録付署名組織の特別の場合である。研究の過程で作られたいくつかの配列は、2つの動作を明瞭に区別することをその目的として持つ:該2つの動作というのは、通信文にサインすることと通信文の刻印にサインすることとの2つである。
【0025】
現在、国際標準化機関(ISO) は、通信文再構築署名組織(ISO/CEI DIS 9796)と、ディジタル署名用圧縮関数(ISO/CEI DP 10118)とを定義(define)している。この両者について以下に詳述する。
【0026】
2.1 署名図式(signature diagram) ISO/CEI DIS 9796
サインをすべき主体(entity)は、密かに且つ機密保護の下に1対のキイを具えている。これらのキイは、国際規格ISO/CEI DIS 9796 “Schema de signature numerique retablissant le message"の規定するところに従って選定するのを好適とする。これはアルゴリズムRSA(発明者 RIVEST,SHAMIR及びADLEMAN の名前を取ってこう名付けた) から導かれる。それは偶数の羃指数に適用され、nを法とする整数環の n/2より小さい元に作用する。この集合は加法律及び乗法律を具えた環状の構造である。この環の中の演算は“mod* n"と記すことにする。
【0027】
算術的モデュールnは、無作為に選出され秘密に保たれている2つの奇素数の積である。もし確認の羃指数が偶数ならば、2つの素数のうちの一方は8を法として3と合同であり、もう一方は8を法として7と合同である。その算術的モデュールは2の(k−1)乗とk乗との間に含まれるような唯一つの整数kが存在する。従って算術的モデュールは最上位ビット(most significant bit)が1で且つ最下位ビット(least significant bit) が1であるようなkビットの数字列により符号化される。公開確認キイは算術的モデュールnと確認羃指数vとを含む。シークレット署名キイは署名羃指数sを含む。
【0028】
サインされるべき通信文は長さの限定されたビット列である。7つの最上位ゼロ(most significant zero) に0を埋め込むことにより、zバイト(bytes) 数字列が得られる。サインされるべき通信文の最大長は算術的モデュールの長さの関数である:16zは k+2 より小さいか等しいに違いない。
【0029】
tという数が、2tバイトの数字列が(k−2)ビットより長いか等しくなるような最小の整数として定義される。通信文の正確な限界をマークしながら、tバイトを得るためにzバイトを繰り返してたまたま拡大することにより、また長さを2倍にするためにt個の冗長度バイトを挿入して導入することにより、「冗長度のある通信文」を符号化する2tバイトの数字列が得られる。
【0030】
然る後に、冗長度のある通信文の、最下位の4ビット単位(least significant quartet) を強制的に6にするために置き換えた最下位バイトとは別に、最上位ビット1とこれに続く(k−2)個の最下位ビットを持つ(k−1)ビットの数字列を構築する。これらの予防策(最上位ビットの1と最下位の4ビット単位の6)は、アルゴリズムRSA に対するいくつかの既知の攻撃に対抗することを可能とする。この(k−1)ビットの数字列は「冗長度のある整数」を符号化する。
【0031】
代表元(representative element)は、vが偶数で且つ整数のヤコービの記号(Jacobi symbol) が算術的モデュールnに関して -1 であるときを除いて、整数に等しい。この場合には、それは整数を2で割ったものに等しい。従って、指数vが偶数のときには、代表元の算術的モデュールnに関するヤコービの記号は、因数のうちの一方が8を法として3と合同であり、もう一方が8を法として7と合同であるという束縛を考慮に入れて、強制的に +1 とする。これらの予防策は、以前の予防策が偶数の羃指数の使用を許容することを完全なものとする。
【0032】
代表元を mod* n でs乗することによって、オーソリティは通信文の署名を得る。
【0033】
署名を確認するためには、それを mod* n でv乗することが必要である。然る後に、最上位ビットの1と最下位の4ビット単位の6を持つ(k−1)ビットの数字列により符号化された冗長度のある整数を再確立する必要がある。更にその後で、冗長度のある整数の(k−2)個の最下位ビットを持ち且つ15の最上位ゼロを0にする 2t バイトの数字列を再確立する必要がある。最後に、署名が許容された時に再確立された通信文がそこから抽出される前に、これらの 2t バイトの冗長度を試験する必要がある。
【0034】
2.2 圧縮関数(compression functions)
無欠陥性(認証及び署名)を防護することを意図した多くのメカニズムでは、任意のビット列を所与の長さの限定されたビット列に変換する疑似ランダム関数(pseudo-random functions) を必要とする。そのような関数は
─通信文をその刻印(print) がサインされる前に刻印に戻す(例えば、規準ISO/CEI DIS 9796に従って)
─データ・エレメント列を刻印又は疑似ランダム関数による疑似チャレンジ(pseudo-challenge)に戻す
─無作為選択を装い、底の値を種々に変化させ、又はそれを漏らすことなくある1つの値に係わる
のに利用されることができる。
【0035】
これらの圧縮関数は衝突の生起に影響されてはならない。このことは、出力点で同じ結果を与えるような2つのビット列を入力点で見出すことは実際上不可能に違いないことを意味する。
【0036】
ある種の命題(certain propositions)、例えばマサチューセッツ工科大学のRon RIVESTが設計したアルゴリズムMD4 (“RSA Security Incorporated"社発行の “Message Digest Algorithm")は特に魅力的で、これは 128ビット又は 256ビットで結果を与えるものである。
【0037】
3.ゼロ知識技術(Zero-knowledge techniques)
「ゼロ知識技術」なる概念は、1985年5月に“Proceedings of the 17th STOC,ACM Symposium on Theory of Computing"291-304ページ所載のShafi GOLDWASSER,Silvio MICALI及びCharlie RACKOFF による“The Knowledge Complexity of Interactive Proof" という文献で導入されている。
【0038】
これらの技術は、フランスで使用され、各種チップ・カードの認証を完全なものとするその方法(認証値及び証明付身元確認)の自然の展開を許容する。
【0039】
今日、銀行カードの認証値及び電話カードの証明付身元確認は、バンク・オーソリティ又はフランス・テレコムの公開キイのお蔭でそれらを制御する確認器で読み取られる。
【0040】
将来は、各応用例に対して、セキュリティ・マイクロコンピュータは、公開「信用状」(public “credential")Cr 及び秘密の信用供与Bをそれに割り当ててあるだろう。信用供与の量はいくつかのデータ・エレメント:すなわち名前(所持者、カード発行オーソリティ)、有効期間、利用できるサービス、及びマイクロコンピュータの一連番号等を含む有限長のビット列である。信用供与は信用状の署名によって得られる。
【0041】
ゼロ知識技術は、セキュリティ・マイクロコンピュータにとっては、答えを漏らすことなく複雑な問題を解いていると他のマイクロコンピュータに信じさせることを可能にする。従ってその答え(実際には信用状の署名によって得られた信用供与)は、秘密を公表することなく必要な回数だけ用いることができる。
【0042】
以上を要約すると、あるオーソリティがセキュリティ・マイクロコンピュータに与信し、該セキュリティ・マイクロコンピュータはその後で、それらの身元確認及び実際には屡々他のセキュリティ・マイクロコンピュータである確認器へのそれらの権利を証明する。
【0043】
オーソリティは公開確認キイで特徴付けられる。該オーソリティは対応する署名キイを使用し且つその秘密を維持しなければならない。
【0044】
セキュリティ・マイクロコンピュータはその信用状で特徴付けられる。該セキュリティ・マイクロコンピュータは対応する信用状を使用し且つその秘密を維持しなければならない。
【0045】
確認器は無名(anonymous) である。それはデータの公開されたエレメント:すなわちオーソリティにより公開された確認キイ及びセキュリティ・マイクロコンピュータにより出力された信用供与、を知り且つこれを使用することをのみ要する。
【0046】
この技術を更に詳細に説明するには、
─オーソリティがシークレット・マイクロコンピュータに与信するのに用いる信用供与動作(accredition operation),
─その過程で確認器がセキュリティ・マイクロコンピュータを認証するところの相互に作用し合う認証(interactive authentification),
─サインする動作と確認する動作とを含む付録を用いてのディジタル署名図式(organization for digital signation),
を逐次記述しなければならない。
【0047】
3.1 信用供与動作(accredition operation)
与信を行うオーソリティは密かに且つ秘密裡に1対のキイを、規格ISO/CEI DIS 9796 “Schema de signature numerique retablissant le message"に従って与えられる。公開キイは算術的モデュールnと確認指数vとを含み、シークレット鍵は署名指数sを含む。算術的モデュールnはkビットの連鎖(string)として上述のように符号化される。
【0048】
オーソリティは密かに且つ秘密裡に、ISO/CEI DIS 9796の規定に従って、但しシークレット指数sを -s に置き換えて、(規格9796でサインされる通信文に対応する)与信量から信用供与を計算する。代表値J(規格9796中の代表元に対応する)を mod* n で -s 乗することにより、オーソリティは与信Bを得る。記号 mod* n はその意味として、nで割り算した剰余を取り、然る後にこの剰余又はそのnに対する補数のうちのいずれか小さい方を保存する、という意味を持つ。
【0049】
信用供与B、代表値J及び信用状Crは、以下に示す方程式を確認する。該方程式中で関数“Red" は、規格ISO/CEI DIS 9796に所定の規約であって、信用状からの代表値(それぞれ規格DIS 9796で「代表元(representative element)」及び「割当てられた通信文(assigned message)」とされるもの)を構築するための規約を要約したものである。その結果として、信用供与Bは、その他のすべてのパラメータは公開であるような、すなわちJは信用状Crから得られる代表値、v及びnは発行するオーソリティの公開キイであるような方程式の秘密の解と考えることができる。その方程式とは、
J=Red(Cr) 及び JBv mod* n =1
である。
【0050】
オーソリティは密かに且つ秘密裡に信用状Cr及び信用供与Bをマイクロコンピュータに投入する。この動作は、刻文(inscription) がマスター・ファイル(MF)中に実行されたときは「エミッション(emission)」と呼ばれ、デディケイテッド・ファイル(DF)中に実行されたときは「デレゲーション(delegation)」と呼ばれる。信用供与は、オーソリティ及び関係のセキュリティ・マイクロコンピュータ以外のすべてのファイルに対して秘密が保持されなければならない。従ってセキュリティ・マイクロコンピュータは、信用状Crを出力することにより、対応の信用供与Bを知ることを主張(claim) する。
【0051】
先に引用したフランス国特許第FR-A-2 620 248号明細書は、かような信用供与が、いかにしてセキュリティ・マイクロコンピュータを認証し、また、いかにしてこのセキュリティ・マイクロコンピュータが受け取り又は送達するサイン又は通信文を認証するかを示している。この認証は発明者の名前を取ってGUILLOU-QUISQUATER又はGQと名付けられ、以下に詳述するように、4つの段階(stages)及び3つの交換点(exchanges) で実行される。
【0052】
3.2 4つの段階及び3つの交換点での認証GQ
─信用状Crを発行するセキュリティ・マイクロコンピュータは、 mod* n の整数の集合から1つの元rを無作為に選出する、それから元rのv乗を mod* n で計算する。その結果は初期証拠(initial evidence)Tb である;マイクロコンピュータは初期証拠Tb を確認器(verifier)に転送する,
─然る後に確認器はチャレンジ(challenge) dを0ないし v−1 から無作為に選出し、これをマイクロコンピュータに転送する,
─セキュリティ・マイクロコンピュータは、元rと秘密信用供与Bのd乗との積を mod* n で計算する;その結果は答Dである;マイクロコンピュータは答Dを確認器に転送する,
─確認器は、信用状Crに対応する答Dのv乗と代表値Jのd乗との積を mod* n で計算する;その結果は最終証拠(final evidence)Tf である;最終証拠Tf が初期証拠Tb'と等しいときは認証は成功(successful)である.
【0053】
結果として次の関係式が得られる:
Tb =rV mod* n
D=rBd mod* n
J= Red(Cr)
Tf =Dv d mod* n
【0054】
3.3 付録付ディジタル署名の図式(scheme)GQ
図式GQはまた付録付ディジタル署名のためにも用いることができる。すべての署名図式は署名動作と確認動作とから成る:
【0055】
署名の動作:
─信用状Crを持つセキュリティ・マイクロコンピュータは、 mod* n の整数の集合から1つの元rを無作為に選出する、それから元のv乗を mod* n で計算する;その結果は初期証拠Tb である,
─然る後にマイクロコンピュータは、確認器に転送されるべき通信文Mと初期証拠Tb とを含むビット列に圧縮関数“Hash"を適用する;この圧縮の結果に基づいて、マイクロコンピュータは、例えば最下位ビットを選ぶことにより、0から v−1 までの間の値を持つ初期疑似チャレンジ(initial pseudo-challenge)dbを造り出す;最後にマイクロコンピュータは元rと秘密信用供与Bのdb乗との積を
mod* n で計算する;その結果は答Dである。
【0056】
従って次の関係式が成り立つ:
Tb =rV mod* n ;db=select(Hash(M, Tb)) ;
D=rBdb mod* n
【0057】
通信文Mにサインする付録(appendix)は、信用状Crと初期疑似チャレンジdbと答Dとから成る。
【0058】
確認動作:
─確認器は信用状Crに対応する答Dのv乗と代表値Jのdb乗との積を mod* n で計算する;その結果は最終証拠Tf である,
─然る後に確認器は、受け取った通信文Mと最終証拠Tf とを含むビット列に圧縮関数“Hash"を適用する;確認器は、マイクロコンピュータがやったのと同じやり方でビットを選ぶことにより、最終疑似チャレンジdfを造り出す。
【0059】
結果的に次の関係式が成り立つ:
J= Red(Cr);Tf =Dv db mod* n
df=select(Hash(M, Tf))
【0060】
署名は、最終疑似チャレンジdfが初期疑似チャレンジdbに等しいとき、そしてそのときに限り、受け入れられる。
【0061】
図式GQはいくつかの刊行物に既に掲げられている:
─ Springer Verlag発行の“Proceedings of Eurocript '88,Lecture Notes in Computer Sciences",Vol.330, 123-128ページ所載 L.GUILLOU及びJ.J.QUISQUATERによる“A practical zero-knowledge protocol fitted to security microprocessor minimizing both transmission and memory".
─ Springer Verlag発行の“Proceedings of Crypto'88,Lecture Notes in Computer Sciences",Vol.403, 216-231ページ所載 L.GUILLOU及びJ.J.QUISQUATERによる“A paradoxical identity-based signature scheme resulting from zero-knowledge".
─“Proceedings de Securicom'89,Paris",1989年3月,149-158ページ所載J.J.QUISQUATER及びL.GUILLOU による“Des procedes d'authentification bases sur une publication de problemes complexes dont les solutions maintenues secretes constituent autant d'accreditations".等の諸文献がそれである。
【0062】
これら先行技術の引用資料に拠って、本発明により解決する問題は、前述したように、シークレットを転送する問題及び前以て共有した秘密なしに且つ共通のクリプトグラフィック・アルゴリズム(cryptographic algorithm) なしに相互認証を樹立した2つのマイクロコンピュータ間の行動を制御する問題、のいずれか一方又は双方である、と理解して、以下に本発明を説明する。
【0063】
本発明による方法は、チップ・カードに属する第1マイクロコンピュータに対して、セキュリティ・モジュールに属する第2マイクロコンピュータ内のシークレット (S) を転送する方法であって、これら第1及び第2マイクロコンピュータが相互に反復認証を行い、
a)第1法(n)、第1確認指数(v)及び第1署名指数(s)から構成された第1公開・キィを有するカードの発行資格を持つ第1当局によって、前記チップ・カードが与えられ、各カードが、信用状(Crc)のサインによって得られる信用供与(Bc)によって規定され、そのサイン、前記第1公開・キィによって検証することができるものであり
b)第2法(n’)、第2確認指数(v’)及び第2署名指数(s’)から構成された第2公開・キィを有するカードの発行資格を持つ第2当局によって、前記セキュリティ・モジュールが与えられ、前記セキュリティ・モジュールが、が、信用状(Crm)のサインによって得られる信用供与(Bm)によって規定され、そのサイン、前記第2公開・キィによって検証することができるものであり
c)前記第1及び第2マイクロコンピュータが、共通の過渡的キィを形成するに適した有限集合の指数の使用に予めパブリック的に合意した方法において、
A)前記カードのマイクロコンピュータによって実現され、このマイクロコンピュータが、指数関数(X)、オプション・メッセージ(M)並びに(X) 及び (M) のサインを計算し、このサインは、前記第1公開・キィによって検証することができるものである、第1計算段階と、
B)前記カードのマイクロコンピュータが、前記セキュリティ・モジュールのマイクロコンピュータに対して第1証明を転送し、その第1証明が、前記カードの信用状(Crc)と、前記指数関数(X)と、前記オプション・メッセージ(M)と、(X)及び(M)のサインとを具える、第1データ転送動作と、
C)前記セキュリティ・モジュールのマイクロコンピュータによって実現され、このマイクロコンピュータが、前記第1公開・キィの助けにより証明が受信されたか否か及び前記カードによって正しくサインされたか否かを確認し、サインがなされている場合、受信した指数関数(X)及び前記セキュリティ・モジュールの指数(y)から共通の過渡的キィ(K)を計算し、次いで、オプション・メッセージ(M’)及び指数(y)の自身の指数関数(Y)を計算し、その後、前記共通の過渡的キィ(K)及び前記シークレット(S)から、転送すべきクリプトグラム(暗号:C)を生成するとともに、(M’),(Y)及び(C)に対するサインを生成する第2計算段階と、
D)前記セキュリティモジュールのマイクロコンピュータが、前記カードのマイクロコンピュータに対して第2証明を転送し、その第2証明が、前記モジュールの信用状(Crm)と、(Y),(M’)及び(C)と、(Y),(M’)及び(C)に対するサインとを具える、第2データ転送動作と、
E)前記カードのマイクロコンピュータによって実現され、このマイクロコンピュータが、前記第2公開・キィの助けにより証明が受信されたか否か及び前記マイクロコンピュータによって正しくサインされたか否かを確認し、サインがなされている場合、受信した前記指数関数(Y)の指数を計算して、前記共通の過渡的キィ(K)を付与し、これによって前記クリプトグラム(暗号:C)から前記シークレット(S)を取り出すことができるようにする第3計算段階とを具え
カードのマイクロコンピュータにより実行される第1計算段階では、
a)カードのマイクロコンピュータは、指数xを任意に選択し、選ばれた有限集合での自分自身の指数関数 (X) を計算することと、
b)カードのマイクロコンピュータは、値X及びセキュリティ・モジュールのマイクロコンピュータに送達するべきメッセージMに署名し、これを実行するために、 mod * n の整数の集合から1つの元rを選定し、この元のv乗を mod * n で計算し、その結果は初期証拠T b (T b =r v mod * n )とすることと、
c)カードのマイクロコンピュータは、指数関数 (X) とオプショナル・メッセージ (M) と初期証拠 ( b) とを含むビット列に、圧縮関数 ("Hash") を適用することと、
d)その結果から、カードのマイクロコンピュータは、圧縮の結果のビットを選択することにより0から v 1 までの間の値を持つ初期疑似チャレンジ db Hash(X,M,Tb) db select(Hash(X,M,Tb)) )を造り出すことと、
e)カードのマイクロコンピュータは、元rに信用供与 (Bc) db 乗を掛けた積を mod * n で計算し、その結果は答D(D=r Bc db mod * n )とすることとが行われ、
カードとセキュリティ・モジュールとの間の第1のデータ転送では、送達された第1の証明は、カードの信用状 (Crc), 指数関数 (X), オプショナル・メッセージ (M), 初期疑似チャレンジ (db) 及び答 (D) を含むビット列であり、初期擬似チャレンジ (db) 及び答 (D) (X) 及び (M) のサインを形成することを特徴とする。
【0064】
明らかに、第1および第2のオーソリティが1つで同じである場合には、このオーソリティは単一のパブリック キーを使用しうるのみで、この場合、第1および第2のキーは混合(amalgamate)される。
【0065】
2つのマイクロコンピュータ用として使用される有限集合上の指数は、その特性に対して体の原始エレメントであるベース(基数)aと整数pを有する有限体上の指数であることが好ましく、この場合、カードのマイクロコンピュータは、第1計算ステージAにおいて、pより小さい正の指数Xを無作為に選定して、対応する指数(X=ax mod p)を計算し、その後セキュリティ モジュールのマイクロコンピュータは第2計算ステージCにおいて、pより小さい正の整数yを選定して、対応する指数(X=ay mod p)を計算し、かつ指数Xのy乗、すなわち(ax y mod pを生成して共通変換キー(common transitory key )を構成させる。ついで、カードのマイクロコンピュータは、第3計算ステージEにおいて、指数YのX乗、すなわち(ay x mod pを生成して、共通キーを与える。
【0066】
また、セキュリティ モジュールのマイクロコンピュータは排他的論理和オペレーションによるシークレットおよび共通変換キーをベースにして暗号を計算し、カードのマイクロコンピュータは同じ排他的論理和オペレーションによる共通変換キーをベースにして受信した暗号からシークレットを抽出することが好ましい。
【0067】
以下非限定実施例により本発明の特徴につき説明する。
【0068】
チップ カードのインターフェースは国際標準シリーズ ISO/CEI 7816,“Cartes a circuit(s) integre(s) a contacts ”、特に、1989年9月発行の国際標準 ISO/CEI 7816-3 “Cartes a circuit(s) integre(s) a contacts, Section 3:Signaux electroniques et protocoles de transmission ”により標準化されている。
【0069】
この標準には、5バイトの見出し(ヘッダ)を有するイクステリア(exterior)からコマンドが得られる旨規定されている。カードは手続上のバイトにより反応し、その後、単一の方向において若干数のデータ バイトが変換され、最後に、カードはコマンドの終りにおいてその状態を与える2つのバイトによりコマンドを終了する。
【0070】
その結果、データがカード内に入る操作を行っている間の“エンタリング(entoring)”コマンドとデータがカードから離れる操作を行っている間の“リービング(leaving )”コマンドとは異なるコマンドとなる。
【0071】
したがって、前記標準のわく組のなかで本発明方法を実現するため、カードは始めにリービング コマンドの制御のもと、セキュリティ モジュールに向かってサーティフィケート(certificate )を発出し、その後、エンタリング コマンドの制御のもとセキュリティ モジュールにより発出されるサーティフィケートを受信する。実際上には、セキュリティ モジュールもチップ カードの形状で実現される。次に、セキュリティ モジュールはエンタリング コマンドの制御のもと、カードにより発出されるサーティフィケートを受信した後、リービング コマンドの制御のもと、その行先に対するカードを有するサーティフィケートを発出する。この場合、カードおよびセキュリティ モジュールを受信するマシンのセキュリティ(機密性)にも、これらのマシン間で使用される接続のセキュリティにも危ぶむ理由は存在しない。
【0072】
かくして、例のついでに選定した特定ケースの場合、本発明手順の種々のステージは以下のように表わすことができる。
A)チップ カードにより行われる第1ステージ
チップ カードはp(有限集合の最初の数)より小さい正の指数Xを無作為に選定し、対応する指数Xを計算する。
X=ax mod p
【0073】
その後、カードはセキュリティ モジュールに伝送すべきメッセージMおよび値Xをサインする。これがため、カードは整数の集合 mod* nから無作動にエレメントrを選定し、このエレメントrのV乗の mod* nを計算する。その結果を初期証拠(initial evidence)Tb とする。その後、カードは指数X、任意選択メッセージMおよび初期証拠Tb を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。次に、この結果から、カードは例えばその最下位ビットを選定することにより、0ないしV−1の値を有する初期擬似チャレンジ(initial pseudo-challenge)dbを生成し、最後に、カードはエレメントrとそのシークレット 信用供与(secret accredition)Bc のdb乗との積の mod* n を計算する。その結果をアンサーDとする。
【0074】
したがって、以下の関係式が成立する。
b =rV mod* n ;
db=select(Hash(X, M, Tb ));
D=rBc db mod*
【0075】
B)第1データ トランスファ
チップ カードは信用状(credential)Cre, 値X,任意選択メッセージM、初期擬似チャレンジdbおよびアンサーDを含むビット列であるサーティフィケートをセキュリティ モジュールに対して伝送し、次に2つのデータ エレメントdbおよびDはXおよびMをサインする。
【0076】
C)セキュリティ モジュールにより行われる第2計算ステージ
セキュリティ モジュールは信用状Crcに対応する表示(リプレゼンタティブ)Jc のdb乗とアンサーDのV乗との積 mod* nを計算する。その結果を最終証拠(final evidence)Tf とする。その後、セキュリティ モジュールは指数X、任意選択メッセージMおよび最終証拠Tf を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。最終模擬チャレンジdf はカードにより行われたと同じ方法でビットを選定することにより得られる。
【0077】
かくして、次の関係式が成立する。
c =Red (Crc);
f =Dv c db mod* n ;
f =select(Hash(X, M, Tf ))
【0078】
セキュリティ モジュールは、最終擬似チャレンジdf が実際上初期擬似チレレンジdb に等しい場合のみ処理操作を続けることに同意する。この場合にはチップ カードは適正にXおよびMをサインし、それが発出したサーティフィケートは正しい。
【0079】
次に、セキュリティ モジュールはPより小さい正の指数yを無作為に選定し、対応する指数Yを計算した後、メンバー内で指数Xをy乗して共通変換キーKを得る。前記変換キーKはHash(K,1)、Hash(K,2)、Hash(K,3)、……による圧縮ファクションの結果としての多様化(ダイバージフィケーション)により拡張することができる。その後、セキュリティ モジュールはそのときカードに伝送される暗号を計算する。例えば暗号Cは共通変換キーKおよびシークレットSの排他的論理和から得られる。
【0080】
かくして、次の関係式が成立する。
Y=ay mod p;
K=Xy mod p=axy mod p;
C=(SとKとの排他的論理和)
【0081】
次に、セキュリティ モジュールは有用なデータ、すなわち指数Y、カードに伝送すべき他の任意選択メッセージM′および信号Cをサインする。これがため、セキュリティ モジュールは整数の集合 mod* nから無作為にエレメントr′を選定し、このエレメントのV乗の mod* n′を計算する。その結果として初期証拠Tb ′を得る。
【0082】
次に、セキュリティ モジュールは指数y、任意選択メッセージM′、暗号Cおよび初期証拠Tb ′を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。この圧縮の結果、セキュリティ モジュールは、例えば最下位ビットを選定することにより0ないしV′−1の値を有する初期擬似チャレンジdb′を生成する。最後に、セキュリティ モジュールはエレメントr′とそのシークレット 信用供与Bm のdb′乗との積の mod* n′を計算し、その結果としてアンサーD′を得る。
【0083】
かくして、次の関係式が成立する。
b ′=r′v' mod* n′;
db′=select(Hash(X,M′,C,Tb ′))
D′=r′Bm db' mod *
【0084】
D)第2データ トランスファ
セキュリティ モジュールは信用状Trm、指数Y、任意選択メッセージM′、暗号C、初期擬似チャレンジdb′およびアンサーD′を含むビット列であるサーティフィケートをカードに対し伝送する。次に、2つのデータ エレメントdb′およびD′は値Y,M′およびCをサインする。この場合、カードは指数Xを知るのみであり、したがってシークレットSのみを初期構成することができる。
【0085】
E)カードにより行われる第3計算ステージ
カードはアンサーD′のV′乗と信用状Crmに対応する表示(リプレゼンタティブ)Jm のdb′乗との積の mod* n′を計算し、その結果として最終証拠Tf ′を得る。
【0086】
その後、カードは値Y,M′,Cおよび最終証拠Tf ′を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。最終擬似チャレンジdf ′はセキュリティ モジュールにより行われたと同じ方法でビットを選定することにより得られる。
【0087】
かくして、次の関係式が成立する。
m =Red (Crm);
f ′=D′v'm db' mod* n′;
f ′=select(Hash(Y,M′,C,Tf ′))
【0088】
カードは最終擬似チャレンジdf ′が初期擬似チャレンジdb′に等しい場合のみ処理操作を続けることに同意する。そうである場合には、セキュリティ モジュールは実際上、Y,M′およびCをサインし、それが発出したサーティフィケートは正確である。
【0089】
カードは選定された体においては指数YをX乗して共通の変換シークレット
キーKを得る。前記変換キーKはセキュリティ モジュールにおけると同じ方法で任意選択的に拡張される。その後、カードは暗号Cおよび共通変換キーKの排他的論理和オペレーションによりシークレットSを再構成する。
【0090】
最後に、カードはモジュールにより制御される作動、例えば爾後における計算を目的としたシークレットSの新しいキーとしてのメモリへの書込み操作を行う。
【0091】
かくして、次の関係式が成立する。
K=Y* mod p=axy mod p;
S=(CとKとの排他的論理和)
【0092】
上述の手順にディレクトリ(登録簿)の使用により相互作用なしにセキュリティ モジュールからチップ カードへのシークレットの転送(トランスファ)を可能にするため僅かに修正することができる。実際上、ラジオ包装においては、セキュリティ モジュールをカード間の相互作用は不可能である。さらに、加入者を管理する構成要素(エンティティ)は随意にユーザのカードに影響する上方ファイル、一種のディレクトリを有する。したがって、ディレクトリへの書込みが第1ステージ(A)および第1データ トランスファ(B)に対応し、ディレクトリの使用が第2計算ステージ(C)、第2データ トランスファ(D)および第3計算ステージ(E)に対応するという条件で上述の方法を使用できることは好都合である。
【0093】
これらの変形は特に放送分野での利用に好都合であるが、支払いシステムや電子メールの分野でも等しく有用であることが証明されている。
【0094】
放送分野での利用方法およびタイトル マネジング メッセージの受信に関しては、米国特許第4,947,428 号に対応する文書FR−A−2,632,148 号を参照されたい。
【0095】
第1変形においては、各カードはそれ独自のサーティフィケートをディレクトリ内に記入する。
【0096】
第2変形においては、セキュリティ モジュールを管理するオーソリティは共同のサーティフィケートをディレクトリ内に記入し、各カードにグループ内のランクを割当て、共通の指数Xを固定させることにより、グループのカードを1つづつオーソライズする。放送中に、実際上グループ当り数百または数千のカード集団を有するカード群内に延在する共有のコモンキーを利用することができる。この場合には、グループの各カードはグループのアドレス、グループの指数およびグループ内のランキングを有する。また、セキュリティ モジュールにより生成されるサーティフィケートを表象するメッセージM′には、
−グールプのカードが実行しなければならない作動(例えば、加入の更新);
−サーティフィケートをアドレスする(グループのアドレス)カード グループの標識;
−およびグループに割当てられた最大のランクに等しいかそれより高いビット数を有する索引付け体
が列挙される。
【0097】
次に、ノンインタラクティブ トランスファ法(non-interactive transfer method )に戻ること、その主要ステージは以下のようになる。
【0098】
共同のサーティフィケートを形成するためオーソリティはグループの指数として前もって指数Xを固定させた他のセキュリティ モジュールを使用する。この場合には、任意選択メッセージMはグループを構成する種々のカードを描写する情報成分を含む。グループに新しいカードを付加する場合には、新しい共同サーティフィケートを生成して管理センターのファイルを更新することで充分である。
【0099】
セキュリティ モジュールから発出する共同サーティフィケートを受信するカードは、このサーティフィケートがそれが属するグループにアドレスされ、かつそのランクに対応するビットが実際に索引付き(indexing)体内で活性状態にある場合に、意図する行動がそれにより既に行われたかどうかをチェックされ、その場合にはそれのみがサーティフィケートを使用する。
【0100】
次に、ノンインタラクティブ トランスファ法は以下のような主要ステージを含む。
A)グループを創設したオーソリティまたはチップ カードによるディレクトリ(登録簿)への書込み
【0101】
サーティフィケートの生成は前述の第1ステージA)に対応する。ここで、カードによる個別サーティフィケートの形成に関するこれらの計算を要約して復習する。
− チップ カードはpより小さい正の指数Xを無作為に選定し、対応する指数X=mod pを計算する。
− チップ カードは値Xおよびセキュリティ モジュールに伝送すべき任意のメッセージMをサインする。これがため、それは整数の集合 mod* nから無作為にエレメントrを選定し、このエレメントのV乗の mod* nを計算し、その結果初期証拠Tb を得る。
− カードは指数X、任意選択メッセージMおよび初期証拠Tb を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。
− その結果からカードは、例えば、最下位ビットを選定することにより初期擬似チャレンジdbを生成する。
− カードはエレメントrとそのシークレット 信用供与Bc のdb乗との積の
mod* nを計算し、その結果としてアンサーDを得る。
− チップ カードは信用状Crc、値X、任意選択メッセージM、初期擬似チャレンジdbおよびアンサーDを含むビット列であるサーティフィケートをディレクトリに記入し、次に、2つのエレメントdbおよびDにXおよびMをサイ
ンする。
【0102】
チップ カードは明らかに、例えば限定された妥当な日付や使用に課せられる制限のような任意選択メッセージM内に表象(figuring)されるいくつかの情報成分ならびにシークレット指数Xをそのメモリ内に記憶させなければならない。
【0103】
かくして、ディレクトリは任意の瞬時に検証可能な個別および共同のサーティフィケートの集合により構成される。
【0104】
B)その機密性(シークレット)分配のためのセキュリティ モジュールによる
ディレクトリの使用
ディレクトリの使用は2つのステージで行われる。まず始めに、ディレクトリ内に存在するサーティフィケートの検証があり、その後で、1つのカードまたはカード群に作用を及ぼすサーティフィケートの生成を行う。第1ステージは条件付であり、ディレクトリのサーティフィケートはこれが必要な場合のみ検証される。
【0105】
この場合、行われ種々のオペレーションは以下のとおりである。
a)セキュリティ モジュールによるディレクトリのサーティフィケートの検証
− セキュリティ モジュールは信用状Crcに対応する表示(リプレゼンタティブ)Jc のdb乗とアンサーDのV乗との積の mod* nを計算し、その結果と
して最終証拠Tf を得る。
− セキュリティ モジュールは指数X、任意選択メッセージMおよび最終証拠Tf を含むビット列に圧縮ファンクション“ハッシュ(Hash)”を供給する。最終擬似チャレンジdbはカードの場合と同じような方法でビットを選定することにより得られる。
− セキュリティ モジュールは最終擬似チャレンジdfが実際上初期擬似チャレンジdbに等しい場合のみ継続に同意する。チップ カードは適正にXおよびMをサインし、ディレクトリのサーティフィケートは正確である。
【0106】
b)チップ カードまたはカード群に作用を及ぼすためのサーティフィケートの準備
− セキュリティ モジュールはpより小さい正の指数yを無作為に選定して、対応する指数Yを計算し、その後メンバー内でXをy乗して共通変換キーKを得る。前記変換キーKはハッシュ(K,1)、ハッシュ(K,2)、ハッシュ(K,3)、……による圧縮ファンクションの結果としての多様化(ダイバージフィケーション)により拡張することができる。
− セキュリティ モジュールはカードに伝送される暗号を計算する。(例えば、暗号Cはは共通変換キーKおよびシークレットSの排他的論理和オペレーションから得られる。
− 最後に、セキュリティ モジュールは有用なデータ、すなわち指数Y、カードに伝送すべき他の任意選択メッセージM′および暗号Cをサインする。これがため、セキュリティ モジュールは整数の集合 mod* n′から無作為にエレメントr′を選定し、このエレメントのV乗の mod* n′を計算し、その結果として初期証拠Tb ′を得る。
− セキュリティ モジュールは指数y、任意選択メッセージM′、信号Cならびに例えば最下位ビットを選定することにより0ないしV′−1の値を有する初期証拠db′を含むビット列に“ハッシュ(Hash)”圧縮ファンクションを供給する。
− セキュリティ モジュールはエレメントr′とそのシークレット 信用供与Bm のdb′乗との積の mod* n′を計算し、その結果としてアンサーD′を得る。
【0107】
c)セキュリティ モジュールからチップ カードまたはカード群へのサーティフィケートの伝送
− セキュリティ モジュールは信用状Crm、指数Y、任意選択メッセージM′、暗号C、初期擬似チャレンジdb′およびアンサーD′を含むビット列であるサーティフィケートを発出する。2つのエレメントdb′およびD′は値Y,M′およびCをサインする。シークレットSを回復するため利用可能な指数Xを有することが必要である。
【0108】
d)チップ カードによるサーティフィケートの使用
− サーティフィケートを共同的に使用する場合は、サーティフィケートが1つのグループに関係する場合およびグループ内のそのランクに対応するインデックスが活性状態にある場合、カードはコマンドされたアクションがまだ実行されていないものと考える。
− 次に、カードはレスポンス(右管)D′のV′乗と信用状Crmに対応する表示(リプレゼンタティブ)Jm のdb′乗との積の mod* n′を計算し、その結果として最終証拠Tf ′を得る。
− カードは値Y,M′,Cおよび最終証拠Tf ′を含むビット列に圧縮ファクション“ハッシュ(Hash)”を供給する。最終擬似チャレンジdf ′はセキュリティ モジュールにより行われたと同じ方法でビットを選定することにより得られる。
− カードは最終擬似チャレンジdf ′が初期擬似チャレンジdb′に等しい場合のみ、処理操作を続けることに同意する。この場合は、セキュリティ モジュールは実際上Y,M′およびCをサインし、それが発出したサーティフィケートは正確である。
− カードは体において指数YをX乗して共通変換キーKを得る。前記変換キーKはセキュリティ モジュールにより行われたと同じ方法で任意選択的に拡張される。
− カードはセキュリティ モジュールにより行われたと同じように、暗号Cおよび共通変換キーKの排他的論理和オペレーションによりシークレットSを再構成する。
− 最後に、カードはモジュールによりコマンドされる作動、例えば、爾後における計算を目的としたシークレットSの新しいキーとしてのメモリへの書込み操作を行う。
【0109】
このように限定されたディレクトリはその権利を管理するためセキュリティモジュールにより使用可能である。実際上、放送分野において、きわめて頻繁に起る情報管理の問題はカードにおける権利の管理に関するものであるが、ここではこれらの権利の管理のためシークレットを伝送するを要しない。この後者のメカニズムは前述のメカニズムを単純化したものと考えることができる。それは記号(キグネーシャ)GQの直接適用であり、前述のメカニズムを完成させるものである。
【0110】
カードは公共確認キー(public verficiation key )を発行したオーソリティにより認可され、かつ目的(objective )および妥当性周期(validity period )の見地から所望の信任状(credential)を提供するセキュリティ モジュールにより発出されるサーティフィケートを受容する。
【0111】
カードにグループ内で組織化され、各カードはグループ内のランクを有する。セキュリティ モジュールにより発行されるサーティフィケート内にあるメッセージM′は、少なくともグループ内に割当てられた最大ランク数のビット 体およびグループのアドレスをカウントとする。かくして、各カードは、メッセージがそのグループに関係する場合およびメッセージがグループ内のそれに関係する場合は、そのランクに対応するビットのステージに応じて認識することができる。
【0112】
さらに、メッセージM′は、例えば、記述の更新、信用状の銘記、後刻使用すべきチケットの準備いい等、カードにおいて引受けるべき行動を規定する。セキュリティ モジュールの信用状の場合は、モジュールが引受ける権利を与えれた行動をオーソリティが明確に定義している。

Claims (8)

  1. チップ・カードに属する第1マイクロコンピュータに対して、セキュリティ・モジュールに属する第2マイクロコンピュータ内のシークレット (S) を転送する方法であって、これら第1及び第2マイクロコンピュータが相互に反復認証を行い、
    a)第1法(n)、第1確認指数(v)及び第1署名指数(s)から構成された第1公開・キィを有するカードの発行資格を持つ第1当局によって、前記チップ・カードが与えられ、各カードが、信用状(Crc)のサインによって得られる信用供与(Bc)によって規定され、そのサイン、前記第1公開・キィによって検証することができるものであり
    b)第2法(n’)、第2確認指数(v’)及び第2署名指数(s’)から構成された第2公開・キィを有するカードの発行資格を持つ第2当局によって、前記セキュリティ・モジュールが与えられ、前記セキュリティ・モジュールが、が、信用状(Crm)のサインによって得られる信用供与(Bm)によって規定され、そのサイン、前記第2公開・キィによって検証することができるものであり
    c)前記第1及び第2マイクロコンピュータが、共通の過渡的キィを形成するに適した有限集合の指数の使用に予めパブリック的に合意した方法において、
    A)前記カードのマイクロコンピュータによって実現され、このマイクロコンピュータが、指数関数(X)、オプション・メッセージ(M)並びに(X) 及び (M) のサインを計算し、このサインは、前記第1公開・キィによって検証することができるものである、第1計算段階と、
    B)前記カードのマイクロコンピュータが、前記セキュリティ・モジュールのマイクロコンピュータに対して第1証明を転送し、その第1証明が、前記カードの信用状(Crc)と、前記指数関数(X)と、前記オプション・メッセージ(M)と、(X)及び(M)のサインとを具える、第1データ転送動作と、
    C)前記セキュリティ・モジュールのマイクロコンピュータによって実現され、このマイクロコンピュータが、前記第1公開・キィの助けにより証明が受信されたか否か及び前記カードによって正しくサインされたか否かを確認し、サインがなされている場合、受信した指数関数(X)及び前記セキュリティ・モジュールの指数(y)から共通の過渡的キィ(K)を計算し、次いで、オプション・メッセージ(M’)及び指数(y)の自身の指数関数(Y)を計算し、その後、前記共通の過渡的キィ(K)及び前記シークレット(S)から、転送すべきクリプトグラム(暗号:C)を生成するとともに、(M’),(Y)及び(C)に対するサインを生成する第2計算段階と、
    D)前記セキュリティモジュールのマイクロコンピュータが、前記カードのマイクロコンピュータに対して第2証明を転送し、その第2証明が、前記モジュールの信用状(Crm)と、(Y),(M’)及び(C)と、(Y),(M’)及び(C)に対するサインとを具える、第2データ転送動作と、
    E)前記カードのマイクロコンピュータによって実現され、このマイクロコンピュータが、前記第2公開・キィの助けにより証明が受信されたか否か及び前記マイクロコンピュータによって正しくサインされたか否かを確認し、サインがなされている場合、受信した前記指数関数(Y)及び前記カードの指数 (x) から前記共通の過渡的キィ (K) を計算し、これによって前記クリプトグラム(暗号:C)から前記シークレット(S)を取り出すことができるようにする第3計算段階とを具え
    カードのマイクロコンピュータにより実行される第1計算段階では、
    a)カードのマイクロコンピュータは、指数xを任意に選択し、選ばれた有限集合での自分自身の指数関数 (X) を計算することと、
    b)カードのマイクロコンピュータは、値X及びセキュリティ・モジュールのマイクロコンピュータに送達するべきメッセージMに署名し、これを実行するために、 mod * n の整数の集合から1つの元rを選定し、この元のv乗を mod * n で計算し、その結果は初期証拠T b (T b =r v mod * n )とすることと、
    c)カードのマイクロコンピュータは、指数関数 (X) とオプショナル・メッセージ (M) と初期証拠 ( b) とを含むビット列に、圧縮関数 ("Hash") を適用することと、
    d)その結果から、カードのマイクロコンピュータは、圧縮の結果のビットを選択することにより0から v 1 までの間の値を持つ初期疑似チャレンジ db db select(Hash(X,M,Tb)) )を造り出すことと、
    e)カードのマイクロコンピュータは、元rに信用供与 (Bc) db 乗を掛けた積を mod * n で計算し、その結果は答D(D=r Bc db mod * n )とすることとが行われ、
    カードとセキュリティ・モジュールとの間の第1のデータ転送では、送達された第1の証明は、カードの信用状 (Crc), 指数関数 (X), オプショナル・メッセージ (M), 初期疑似チャレンジ (db) 及び答 (D) を含むビット列であり、初期擬似チャレンジ (db) 及び答 (D) (X) 及び (M) のサインを形成することを特徴とする方法。
  2. 第1オーソリティと第2オーソリティとは一つの同一のものであることを特徴とする請求項1に記載の方法。
  3. ─各カードが、信用状の冗長度(J=Red(Crc))により得られる代表値(Jc)によって定義され、資格を与えられたオーソリティは、代表値(Jc)をmod* nで-s乗し、その結果は信用供与(Bc)(JcBcv mod * n =1)であり、
    ─セキュリティ・モジュールが、信用状のレターの冗長度 (Jm=Red(Crm)) により得られる代表値(Jc)によって定義され、資格を与えられたオーソリティは、代表値(Jm)を mod* n'で-s'乗し、その結果は信用供与(Bm)(JmBmv mod * n'=1)であることを特徴とする請求項1に記載の方法。
  4. セキュリティ・モジュールのマイクロコンピュータにより実行される第2計算段階では、
    a)セキュリティ・モジュールのマイクロコンピュータは、答(D)のv乗に代表値(Jc)のdb乗を掛けた積をmod* nで計算し、その結果は最終証拠Tf(Tf=Dv Jcdb mod* n)とすることと、
    b)セキュリティ・モジュールのマイクロコンピュータは、指数関数(X)とオプショナル・メッセージ(M)と最終証拠(Tf)とを含むビット列に圧縮関数("Hash")を適用し、またマイクロコンピュータは、カードが為したのと同じやり方で最終疑似チャレンジ(df)(df=select(Hash(X,M,Tf))を得るためにビットを選定することと、
    c)セキュリティ・モジュールのマイクロコンピュータは、カードのマイクロコンピュータが指数関数(X)とメッセージ(M)とに正しくサインしたこと及びそれが受け取った第1の証明が正確であることを示すところの、最終疑似チャレンジ(df)と初期疑似チャレンジ(db)とが等しい場合には、そしてその場合に限り、処理動作の継続を容認することと、
    d)セキュリティ・モジュールのマイクロコンピュータは、指数(y)を任意に選択するとともに選択された有限集合での指数(y)の指数関数(Y)を計算することを計算することとによって、それ自体の指数関数(Y)を計算し、
    e)セキュリティ・モジュールのマイクロコンピュータは、受信した指数関数 (X) を前記セキュリティ・モジュールの指数(y)でべき乗することによって、共通の過渡的キィ(K)を計算することと、
    f)セキュリティ・モジュールのマイクロコンピュータは、共通の過渡的キィ(K)とシークレット(S)との援けを借りてクリプトグラム(C)を計算することと、
    g)セキュリティ・モジュールのマイクロコンピュータは、指数関数(Y)とカードに転送されるべきもう一つのオプショナル・メッセージ(M')とクリプトグラム(C) とにサインし、これを実行するために、mod* n'の整数の集合から1つの元(r')を無作為に選定し、この元のv'乗を mod* n'で計算し、その結果は初期証拠Tb'(Tb'=r' v'mod * n')とすることと、
    h)セキュリティ・モジュールのマイクロコンピュータは、指数関数(Y)とオプショナル・メッセージ(M')とクリプトグラム(C) と初期証拠(Tb')とを含むビット列に、圧縮関数("Hash")を適用する(Hash(X,M',C,Tb))ことと、
    i)この圧縮の結果から、セキュリティ・モジュールのマイクロコンピュータは、0からv'-1 までの間の値を持つ初期疑似チャレンジ(db')(db' =select(Hash(X,M',C,Tb')))を造り出すことと、
    j)セキュリティ・モジュールのマイクロコンピュータは、元(r')にモジュールの信用供与(Bm)のdb' 乗を掛けた積を mod* n'で計算し、その結果は答D'(D'=r'Bm db'mod* n')とすることとが行われ、
    セキュリティ・モジュールとカードとの間の第2のデータ転送では、セキュリティ・モジュールのマイクロコンピュータは、カードのマイクロコンピュータに向かって、モジュールの信用状(Crm),自身の指数関数(Y),オプショナル・メッセージ(M'),クリプトグラム(C),初期疑似チャレンジ(db')及び答(D')を含むビット列により構成される第2の証明を送達し、初期擬似チャレンジ(db’)及び答(D’)が(Y),(M’)及び(C)のサインを形成することを特徴とする請求項記載の方法。
  5. カードのマイクロコンピュータにより実行される第3計算段階では、
    a)カードのマイクロコンピュータは、答(D')のv'乗とモジュールの信用状(Crm)に対応するモジュールの代表値(Jm)のdb' 乗とを掛けた積をmod* n'で計算し、その結果は最終証拠Tf'(Tf'=D' v' Jmdb'mod * n')とすることと、
    b)カードのマイクロコンピュータは、値(Y,M',C)と最終証拠(Tf') とを含むビット列に圧縮関数"Hash"を適用し、またマイクロコンピュータは、セキュリティ・モジュールが為したのと同じやり方でビットを選定し、こうして最終疑似チャレンジ(df')(df' =(Hash(Y,M',C,Tf'))を得ることと、
    c)カードのマイクロコンピュータは、セキュリティ・モジュールのマイクロコンピュータが(Y,M',C)に有効にサインしたこと及びそれが送達した証明が正確であることを示すところの、最終疑似チャレンジ(df') と初期疑似チャレンジ(db')とが等しい場合には、そしてその場合に限り、処理動作の継続を容認することと、
    d)カードのマイクロコンピュータは、受信した指数関数( Y )を前記カードの指数 (x) でべき乗することによって、共通の過渡的キィ(K)を計算し、前記クリプトグラム(C)からシークレット(S)を取り出すために共通の過渡的キィ(K)を用いることとを行うことを特徴とする請求項に記載の方法。
  6. 複数のカードに属する第1マイクロコンピュータのシークレットを、セキュリティ・モジュールが属する第2マイクロコンピュータから非インタラクティブ転送する方法であって、これら第1及び第2マイクロコンピュータが、共通の過渡的キィを確立するのに適切な集合セットの指数の使用に対して予め物理的に同意した方法において、
    −各カードに対して、第1証明が予めディレクトリに書き込まれ、これによって、ディレクトリが、互いに相違するカードの全ての証明を有し、第1法(n)、第1確認指数(v)及び第1署名指数(s)から構成された第1公開キィが、各チップ・カードに設けられ、各カードが、信用状(Crc)のサインによって得られる信用供与(Bc)によって規定され、そのサイン、前記第1公開・キィによって検証することができるものであり、カードの第1証明が、前記カードの信用状(Crc)と、計算された指数関数(X)と、オプション・メッセージ(M)と、(X)及び(M)のサインとを具え、そのサイン、前記第1公開・キィによって検証することができるものであり
    −第2法(n’)、第2確認指数(v’)及び第2署名指数(s’)から構成された第2公開キィが、前記セキュリティ・モジュールに設けられ、前記セキュリティ・モジュールが、信用状(Crm)のサインによって得られる信用供与(Bm)によって規定され、そのサイン、前記第2公開・キィによって検証することができるものであり
    −前記セキュリティ・モジュールのマイクロコンピュータが、前記ディレクトリの第1証明を読み出し、前記第1公開・キィの助けにより証明が受信されたか否か及び前記カードによって正しくサインされたか否かを確認し、サインがなされている場合、受信した指数関数(X)及び前記セキュリティ・モジュールの指数(y)から共通の過渡的キィ(K)を計算し、次いで、オプション・メッセージ(M’)及び指数(y)の自身の指数関数(Y)を計算し、その後、前記共通の過渡的キィ(K)及び前記シークレット(S)から、転送すべきクリプトグラム(暗号:C)を生成するとともに、(M’),(Y)及び(C)に対するサインを生成し、
    −前記セキュリティ・モジュールのマイクロコンピュータが、前記証明を前記ディレクトリに入力したカードのマイクロコンピュータに対して第2証明を転送し、その第2証明が、前記モジュールの信用状(Crm)と、(Y),(M’)及び(C)と、(Y),(M’)及び(C)に対するサインとを具え、
    −前記カードのマイクロコンピュータが、前記第2公開・キィの助けにより証明が受信されたか否か及び前記マイクロコンピュータによって正しくサインされたか否かを確認し、サインがなされている場合、受信した前記指数関数(Y)及び前記カードの指数 (x) から前記共通の過渡的キィ (K) を計算し、これによって前記クリプトグラム(暗号:C)から前記シークレット(S)を取り出すことができるようにし、
    カードのマイクロコンピュータにより実行される第1計算段階では、
    a)カードのマイクロコンピュータは、指数xを任意に選択し、選ばれた有限集合での自分自身の指数関数 (X) を計算することと、
    b)カードのマイクロコンピュータは、値X及びセキュリティ・モジュールのマイクロコンピュータに送達するべきメッセージMに署名し、これを実行するために、 mod * n の整数の集合から1つの元rを選定し、この元のv乗を mod * n で計算し、その結果は初期証拠T b (T b =r v mod * n )とすることと、
    c)カードのマイクロコンピュータは、指数関数 (X) とオプショナル・メッセージ (M) と初期証拠 ( b) とを含むビット列に、圧縮関数 ("Hash") を適用することと、
    d)その結果から、カードのマイクロコンピュータは、圧縮の結果のビットを選択することにより0から v 1 までの間の値を持つ初期疑似チャレンジ db Hash(X,M,Tb) db select(Hash(X,M,Tb)) )を造り出すことと、
    e)カードのマイクロコンピュータは、元rに信用供与 (Bc) db 乗を掛けた積を mod * n で計算し、その結果は答D(D=r Bc db mod * n )とすることとが行われ、
    ードによってディレクトリに書き込まれる第1の証明は、カードの信用状 (Crc), 指数関数 (X), オプショナル・メッセージ (M), 初期疑似チャレンジ (db) 及び答 (D) を含むビット列であり、初期擬似チャレンジ (db) 及び答 (D) (X) 及び (M) のサインを形成することを特徴とする方法。
  7. 2つのマイクロコンピュータによって利用される有限集合の指数が、有限体の指数であり、前記有限体が、pを標数、qを原始元とするものであり、次でカードのマイクロコンピュータが第1計算段(A)内で、pより小なる正の指数(x)をランダムに選択し、対応する指数関数(X=ax mod p)を計算し、セキュリティ モジュールのマイクロコンピュータが、第2計算段(C)内で、pより小なる正の整数(y)を選択し、対応する指数関数=ay mod p)を計算し、指数関数(X)を指数(y)でべき乗して、(ax y mod pを求め、これにより共通の過渡的キィを形成し、次でカードのマイクロコンピュータは、第3計算段(E)で、指数関数(Y)を指数(x)でべき乗して、すなわち(ay x mod pを求め、これを共通の過渡的キィとする請求項1ないしのいずれか1項に記載の方法。
  8. セキュリティ モジュールのマイクロコンピュータが、共通の過渡的キィ(K)及びシークレット(S)より、(S)と(K)との排他的オア演算によって暗号(C)を計算し、カードのマイクロコンピュータが、共通の過渡的キィ(K)より受信したこの暗号(C)を用い、(C)と(K)との同一の排他的オア演算を行って、シークレット(S)を抽出することを特徴とする請求項1ないしのいずれか1項に記載の方法。
JP16523491A 1990-06-11 1991-06-11 反復認証を行う2個のマイクロコンピュータ間に2つの証明を交換するシークレットの転送方法 Expired - Lifetime JP3704162B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9007228 1990-06-11
FR9007228A FR2663141B1 (fr) 1990-06-11 1990-06-11 Procede de transfert de secret, par echange de deux certificats entre deux microcalculateurs s'authentifiant reciproquement.

Publications (2)

Publication Number Publication Date
JPH0684026A JPH0684026A (ja) 1994-03-25
JP3704162B2 true JP3704162B2 (ja) 2005-10-05

Family

ID=9397470

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16523491A Expired - Lifetime JP3704162B2 (ja) 1990-06-11 1991-06-11 反復認証を行う2個のマイクロコンピュータ間に2つの証明を交換するシークレットの転送方法

Country Status (4)

Country Link
EP (1) EP0461983B1 (ja)
JP (1) JP3704162B2 (ja)
DE (1) DE69108786T2 (ja)
FR (1) FR2663141B1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396558A (en) * 1992-09-18 1995-03-07 Nippon Telegraph And Telephone Corporation Method and apparatus for settlement of accounts by IC cards
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
DE19702049C1 (de) * 1997-01-22 1998-05-14 Ibm Zertifizierung kryptografischer Schlüssel für Chipkarten
GB9709135D0 (en) * 1997-05-02 1997-06-25 Certicom Corp Two way authentication protocol
US6272475B1 (en) * 1998-03-23 2001-08-07 Siemens Nixdorf Informationssysteme Aktiengesellschaft Apparatus and method for the secure dispensing of bank papers
US8423788B2 (en) 2005-02-07 2013-04-16 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8108691B2 (en) 2005-02-07 2012-01-31 Sandisk Technologies Inc. Methods used in a secure memory card with life cycle phases
US8321686B2 (en) 2005-02-07 2012-11-27 Sandisk Technologies Inc. Secure memory card with life cycle phases
US7748031B2 (en) 2005-07-08 2010-06-29 Sandisk Corporation Mass storage device with automated credentials loading
US8966284B2 (en) 2005-09-14 2015-02-24 Sandisk Technologies Inc. Hardware driver integrity check of memory card controller firmware
US20070061597A1 (en) 2005-09-14 2007-03-15 Micky Holtzman Secure yet flexible system architecture for secure devices with flash mass storage memory
US8423794B2 (en) 2006-12-28 2013-04-16 Sandisk Technologies Inc. Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4424414A (en) * 1978-05-01 1984-01-03 Board Of Trustees Of The Leland Stanford Junior University Exponentiation cryptographic apparatus and method
US4797920A (en) * 1987-05-01 1989-01-10 Mastercard International, Inc. Electronic funds transfer system with means for verifying a personal identification number without pre-established secret keys
FR2615638B1 (fr) * 1987-05-20 1989-07-21 Dassault Electronique Dispositif et procede d'habilitation informatique ou telematique
FR2620248B1 (fr) * 1987-09-07 1989-11-24 France Etat Procedes d'authentification d'accreditations ou de messages a apport nul de connaissance et de signature de messages
US4933970A (en) * 1988-01-19 1990-06-12 Yeda Research And Development Company Limited Variants of the fiat-shamir identification and signature scheme

Also Published As

Publication number Publication date
DE69108786D1 (de) 1995-05-18
DE69108786T2 (de) 1995-11-16
EP0461983B1 (fr) 1995-04-12
JPH0684026A (ja) 1994-03-25
FR2663141A1 (fr) 1991-12-13
FR2663141B1 (fr) 1992-08-21
EP0461983A1 (fr) 1991-12-18

Similar Documents

Publication Publication Date Title
US5218637A (en) Method of transferring a secret, by the exchange of two certificates between two microcomputers which establish reciprocal authorization
US9990796B2 (en) Data card verification system
EP1873960B1 (en) Method for session key derivation in a IC card
EP0202768B1 (en) Technique for reducing rsa crypto variable storage
US5606617A (en) Secret-key certificates
EP0439847B1 (en) Optionally moderated transaction systems
EP0348812B1 (en) Authentication method and apparatus therefor
EP0503119B1 (en) Public key cryptographic system using elliptic curves over rings
US7093133B2 (en) Group signature generation system using multiple primes
US9882890B2 (en) Reissue of cryptographic credentials
EP0252499A2 (en) Method, apparatus and article for identification and signature
WO1998034202A9 (en) Data card verification system
US7000110B1 (en) One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device
WO1995023465A1 (en) Efficient electronic money
JP3704162B2 (ja) 反復認証を行う2個のマイクロコンピュータ間に2つの証明を交換するシークレットの転送方法
US20050102523A1 (en) Smartcard with cryptographic functionality and method and system for using such cards
Wang Public key cryptography standards: PKCS
Okada et al. Optimistic fair exchange protocol for E-Commerce
Roijakkers Security in signalling and digital signatures
Chaum New secret codes can prevent a computerized Big Brother
AL-Matari Anonymous and Non-Repudiation E-Cash Scheme Based on Partially Blind Signature

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040830

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040903

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050722

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090729

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090729

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100729

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110729

Year of fee payment: 6

EXPY Cancellation because of completion of term