JPH10506727A - 特にスマートカードのための、電子的署名を生成する方法 - Google Patents

特にスマートカードのための、電子的署名を生成する方法

Info

Publication number
JPH10506727A
JPH10506727A JP8531532A JP53153296A JPH10506727A JP H10506727 A JPH10506727 A JP H10506727A JP 8531532 A JP8531532 A JP 8531532A JP 53153296 A JP53153296 A JP 53153296A JP H10506727 A JPH10506727 A JP H10506727A
Authority
JP
Japan
Prior art keywords
signature
coupon
card
calculation
verification
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
JP8531532A
Other languages
English (en)
Other versions
JP3433258B2 (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.)
Gemplus SA
Original Assignee
Gemplus SA
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
Priority claimed from FR9504753A external-priority patent/FR2733378B3/fr
Application filed by Gemplus SA filed Critical Gemplus SA
Publication of JPH10506727A publication Critical patent/JPH10506727A/ja
Application granted granted Critical
Publication of JP3433258B2 publication Critical patent/JP3433258B2/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/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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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
    • H04L9/3239Cryptographic 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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 この発明は、電子的メッセージに対してディジタル署名を生成する方法に関する。この発明では、DSA(digital Signature Algorithms)のような署名生成アルゴリズムを変更することにより、スマートカードに計算及び記憶資源の減少をもたらして、このような減少にも拘わらず、高度の機密保護性をもってディジタル署名を生成することができる。署名検証端末は、ランダム数aを送り、このランダム数を用いる信号を返送するのにカードによりとられる時間を計測する。この時間が所定時間より長い場合は、たとえ認証管理部が肯定的であっても、署名が排除される。さらに、署名の一部(秘密カードキーを使用するだけでなく公開アルゴリズムパラメータを使用する部分)は、予め計算され、その部分を短くするような圧縮関数により生成される署名部分の形式でカードに格納される。署名第2の部分だけは、カードにより計算されなければならない。この発明によると、計算が単純に行われるので、カードには大きい計算及びメモリ資源が必要とされないようになっている。

Description

【発明の詳細な説明】 特にスマートカードのための、電子的署名を生成する方法 〔発明の属する技術分野〕 本発明は、電子的メッセージのためのディジタル署名(サイン)を生成する方 法にに関する。 この方法は、特に、マイクロプロセッサベースのスマートカード形の携帯可能 な装置によりメッセージに署名するのに適用することができる。 例えば、カードによって読取り端末又は中央認証管理部に送られるメッセージ に署名するのが必要になることがある。或いは、取引(電子小切手取引)を実行 し、この取引に署名して、この取引がまず最初に読取り端末によって認証される ようにする必要があることもあり、その取引は、読取り端末で行われそれから中 央認証管理部により管理される。 〔従来の技術〕 これから説明する方法は、特に、アメリカ合衆国国立標準技術研究所(US N ational Institute of Standard and Technology)により、近年発行されたディ ジタル署名の生成アルゴリズムに関係しており、このアルゴリズムは、例えば、 米国特許出願第07/ 738431号に記載されており、そして、前記研究所により記録 された連邦登録(Federal Register)の第 42980-42982頁にて1991年8月30日に 公表されているDSA(ディジタル署名アルゴリズム= Digital Signature Argo rithm)のようなものである。 〔発明が解決しようとする課題〕 本発明の目的は、このような公知の方法を変更して、特に、数学的演算を大き い数値について高速に実行するのに十分な物理的資源(プロセッサ、メモリ)を 備えていないプロマイクロプロセッサベースのカードに適した方法にすることに ある。公知のアルゴリズム、特に、DSAのアルゴリズムは、大きい数値を用い て、十分な機密保護性をもつ署名を生成させるようにしている。 本発明を明確に理解するために、まず最初に、DSAのアルゴリズムがどのよ うなものであるかを再述してみよう。 DSAの署名は、コンピュータ内で2進ディジット(数)の長いストリング( 列)(160ディジット)により表現される大きい数値の対{r,s}から成って いる。このようなディジタル署名は、このアルゴリズムにより規定される一連の 計算規則を用いて計算され、これらの計算には一組のパラメータが使用される。 この署名によって、〔この署名により署名者(signataire= 「署名するもの」と いう意味)に固有の秘密(secret)キーが作動させられる理由から〕署名者の同 定、及び、〔この署名によりメッセージそれ自体が作動させされる理由から〕署 名されたメッセージの完全性の双方を証明することを可能にする。このアルゴリ ズムによって、先ず署名を生成し、次に署名を検証する。 DSA署名の生成により秘密キーが作動させられ、検証により、秘密キーに対 応するが秘密キーと同一ではない公開(publique)キーが作動させられる。各ユ ーザは、一対のキー{(秘 密),(公開)}を有している。公開キーは、秘密キーが漏れない限り全ての人 が知ることはできない。誰でも、或るユーザの公開キーを利用することによって このユーザの署名を検証する能力をもっているが、秘密キーのプロセッサは、キ ー対に対応する署名を生成するだけである。 DSAパラメータは次のとおりである: 512〜1024の範囲にあるLに対して2L-1<p<2L(制限を含む)、且つ、任 意の整数に対してL=64aであるような主要な数p、 2159<q<2160であり、(p−1)がqの倍数であるような主要な数q、 次のような関係にある「qモジュロp」位の(d'ordre q modulo p)の数g; g = h(P-1)/q modulo p ここで、hは、 1<h<p−1 且つ g>1 を検証する任意の整数である。 ランダム的に、又は、擬似ランダム的に生成される数x(これは、秘密キーで あり、所定のユーザに対して固定される)、 次の関係により定義される数y(これは、公開キーであり、秘密キーに連継さ れる); y = gx modulo p なお、本明細書では、「モジュロp」又は「モジュロq」のようなモジュロ演算 は、以下、夫々「mod p」又は「mod q」のように示される。 整数p,q,gは、ユーザグループごとに公開乃至分割される。署名者の秘密 キー及び公開キーは、夫々x及びyである。 ランダムなパラメータkは、新しい署名のそれぞれに対して再生成させられる。 パラメータx,yは、署名の生成のために使用されるが、秘密状態が維持されな ければならない。 メッセージm〔これは、一般に、初期ファイルのハッシュされた値(valeur h achee)になる〕に署名するために、署名者は次式によって署名を計算する: r =(gk mod p) mod q かつ、s =(m+xr)/k mod q (ここで、kによる除算は、モジュロqであるようになされる。即ち、1/k は、kk’=1 mod qとするような数k’となる、例えば、q=5,k=3の 場合、「1 mod 5」を与える3×2=6に対して、1/k=2となる。) r及びsがゼロでないことが検査された後、署名{r,s}は、検証者(Veri fieur = 「検証するもの」という意味)に送られる。この検証者は、一般に、メ ッセージm及び署名{r,s}を送るスマートカードが挿入される端末である。 この検証者は、p,q及びg(これらは、適用業務に関係する)、並びに、m( 端末がカードから受けたメッセージ)を知ることであり、次の計算を行う: a. w =(1/s) mod q b. u1= mw mod q c. u2= rw mod q d. v =[gu1・yu2 mod p]mod q そこで、この値「[gu1・yu2 mod p]mod q」は、sが値「(m+xr) /s mod q」をもつ場合、精確に、rに等しい。 従って、端末は、r及びsを受け、vが実際にrに等しくて 署名を受容すべきであるのか、さもなくて、排除すべきであるのかを確かめる。 以下において、「署名者」又は署名者ユニット又は供給装置又はスマートカー ドという用語は、署名を送り出す装置、そして、一般的にはスマートカードにな るであろう装置を示すのに無差別に用いられる。また、「検証者」又は検証者ユ ニット又は検証者装置又は検証者端末又は認証管理部という用語は、署名を受け てその署名を検証し取引又はメッセージを受容するか或いは排除する装置を示す のに無差別に用いられる。本発明の最も単純な適用形態は、カードが挿入された 読取り端末にスマートカードを用いて署名を送ると共に、この端末が検証操作を 実行し中央認証管理部に接続されるか或いは接続されなくすることである。 本発明の目的の一つは、生成の機密保護機能及び電子的ディジタル署名の検証 機能を増大させると共に、署名を生成するためにスマートカードに内蔵させなけ ればならない計算及び記憶手段を最小化することにある。 特に、8ビットマイクロプロセッサでは大きい数値を容易に処理することがで きないという事実に拘わらず、カードには、パワーフルで高価というよりはむし ろ低コストの8ビットマイクロプロセッサを使用することができるのが望ましい 。しかしながら、このことは、機密保護を犠牲にしてなされるべきではない。 〔課題を解決するための手段〕 本発明は、第一の大きな局面に従うと、署名者(カード)に より送られる署名の検証者(端末)による検証が、データ(主として、ランダム なデータ)が検証者によって署名者(カード)に送られる時間と(このランダム なデータを使用する)署名が検証者に戻ってくる時間との間に経過する期間の時 間を決定するステップを用いることを提案するものである。経過した時間の長さ が過剰である場合は、署名者による署名の計算処理が異常になされていることを 意味し、署名は、その真実性が検証者により確認されている場合でさえ、排除さ れる。 間接的には、この解決法によって、薯名の同一機密保護を維持すると同時に、 スマートカードにおいて(計算及び記憶のパワーの点で)小さい物理的資源を使 用することができることが分かるであろう。小さい資源に伴って、署名の生成及 び検証の方法を変更する必要が必然的に生じるが、これは機密保護の犠牲につな がる。本発明による時間決定ステップによって、十分なレベルの機密保護性が回 復される。 この解決法は、先に再述したDSAアルゴリズムから得られるアルゴリズムに 基づいて詳しく説明することになるが、本発明の第一の局面が、DSAアルゴリ ズムと非常に異なっている他のアルゴリズムとでさえ適用可能であるということ を理解されたい。 簡単にいうと、本発明の第一の局面を構成する電子的署名方法は、検証者ユニ ットにより送られたランダムなデータを使用して署名を計算する署名者ユニット によって、ディジタル署名を生成すること、及び、送られた署名及びランダムな データを作動させる数学的な条件が満たされていることを確かめる検証者によっ て、この署名を検証することから成っており、署名者により検証者に送られる署 名の検証は、さらに、ランダムなデ ータが検証者によって署名者に送られる時間と、署名者による計算後、このラン ダムなデータを使用する署名が検証者に戻ってくる時間との間に経過する期間の 時間を決定するステップを用いており、経過した時間が所定の閾値を下回ってい る場合であって、しかも、数学的条件が検証された場合に、署名が受容されるこ とを特徴としている。 好ましくは、使用されるアルゴリズムは、署名の生成が、2つの値{r,s} (ここで、sは、r及び秘密キーxに基づいて計算される)を創り出し、署名{ r,s}の検証が、rと、r及びsの関数fとの間の均等性v=f(r,s)= rの検証で成るタイプのものである。それから、本発明によると、秘密キーにつ いて知識がないときこの均等性に基づいて行われる或る値sの探索の期間が、た とえパワーフルなコンピュータにより実行される場合でさえ、r及び秘密キーに 基づいてカードにより行われる値sの計算及び伝送の期間−このケースは、カー ドに低価格のマイクロプロセッサ(例えば、20MHz8ビットマイクロプロセ ッサ)が使用される場合でさえある−より、はるかに大きくなるように、関数f が十分に複雑な(complexe)ものに選択されるようになっている。それで、前記 時間選定により時間条件の精確な選択を行うことによって、秘密キーについて知 識がないときこの条件が満たされること、特に、均等性r=f(r,s)をもと にしたsの探索によりこの条件が満たされることが分かる。 実際には、関数f(r,s)は、また、この関数をf(r,s,m)で表すこ とができるように署名操作を行うために、メッセージmをも作動させる。 好ましくは、関数fは、数学的計算及びそれに後続する複雑 なハッシュ関数から成る。署名rの第1部分は、他の数学的計算及びそれに後続 する同一の複雑なハッシュ関数によって確立される。 この複雑なハッシュ関数は、以下に述べるように、複雑な圧縮関数であること が好ましく、この圧縮関数によって、実行される数学的計算により得られるビッ トストリング長の減少をもたらされる。 想起されるのは、ハッシュ関数は、所定の長さをもつ文字ストリングを、同一 の長さ又は異なる長さをもつ別の文字ストリングに基づいて取得するために用い ることができる2進ストリングを論理的に処理する関数であることである。複雑 なハッシュ関数は、複数のハッシュ演算を含むハッシュ的乃至数学的な諸計算か らなる一連の演算により得ることができる。最終的に圧縮が得られるのは、結果 的として、モジュロ値 modulo 2e(ここで、eは最終的所望ストリング長であ る)をとることによる。 さらに、本発明の別の主要な局面によると、署名操作により2つの数r,sが 作動させられ、送られるべきメッセージ及びカードの秘密キーが数sのみで作動 させられるタイプのディジタル署名操作アルゴリズムにおいて、スマートカード 内で最小数の処理を行う新規な解決法が提供される。 本発明のこの第2の局面は、フランス国特許出願第93 14466号に記載されてい る署名生成方法の改良である。この特許出願には、このタイプの(DSAがその 例になっている)アルゴリズムにおいて、数rが、カードにより送られるメッセ ージmにもカードに内蔵される秘密キーにも依存しないことが記載され ている。この数が依存するのは、考慮されている適用業務のために非変化である 数、及び、ランダムな数だけであり、これらの数は、例えば、DSAアルゴリズ ムにおけるg,p,q及びkである。それで、カードによりrの計算を行うこと が不要になっているが、それは実質的な計算時間量を消費するからである。むし ろ、riで表される一連のn個の可能な値r(ここで、iは1〜nの範囲の指標 である)を、認証された中央認証管理部により前もって計算するようになされる 。値riは、カードに格納されている。カードを新たに使用するごとに、値の1 つriが用いられる(そして、好ましくは、この値はもはや次のときには用いら れない)。署名操作の際には、カードによって、値riとメッセージmの秘密キ ーxとに基づいて署名sの他の部分だけが計算され、それから、考慮されている アルゴリズムにより予定された手法でそのとき検証者が検証することができる署 名を表す対{r,s}及びメッセージmが、検証者に送られる。 数riは、「署名クーポン」(coupons de signature)とも呼ばれる予め計算 された認証書である。これらの数は、送られるべき署名のみの一部分を形成し、 前もってカードに準備され格納することができる。指標iは、所定の署名操作の 期間中に用いられる署名クーポンを表す。 しかしながら、難題の一つとして、これらの署名クーポンが非常に大きい長さ (上述したDSAアルゴリズムでは160ビット)をもつということがある。こ れらの署名クーポンは、カード内の不揮発性メモリの大部分の空間を占める。限 られたサイズの不揮発性メモリしか使用可能でない場合には、カード内にそれら のの大きい数を保管することは不可能である。さらに、 これらの署名クーポンは、8ビットマイクロプロセッサの採用に伴って非常な長 さの計算時間を必要とするが、これは、これらの数を小さく細片的に探索する必 要があるからである。しかし、より小さい署名クーポンが使用され格納される場 合には、署名の認証の保証が更に低下するというリスクが生じることになる。 ここに説明される本発明によると、より小さい署名クーポンriを使用すると 共に、併せて認証の保証を配慮することができる。 従って、本発明は、ディジタル署名アルゴリズムを用いて、署名者ユニットに より電子的署名を生成し検証者ユニットにより検証する方法であって、このディ ジタル署名アルゴリズムでは、署名者により送られる署名は、少なくとも1つの 署名クーポンri、並びに、署名クーポンri及びカードの秘密キーxに基づい て計算される1つの署名補数sから成っており、このアルゴリズムは、検証者に より次の形の検証式 v = f(ri,s) = ri を用いることによって署名の検証を可能にする方法において、 a.署名クーポンは、認証管理部により次の2つのステップにて前もって確立さ れ: (1)数学式を用いて大きな2進数を作動させことによって、長い2進ストリ ングで表現される数を計算するステップ、及び、 (2)この結果の長さを大幅に減少する複雑な圧縮関数によって、この計算結 果を変更するステップ、 b.短い長さをもつ一連の異なる署名クーポンが、このようにして前もって準備 され、そして、署名者ユニット(メモリ及びマイクロプロセッサを備えるスマー トカード)に格納され、 c.署名生成は、クーポンri、並びに、少なくともri及びxに基づいて計算 された署名補数sを送ることでなり、 d.署名検証アルゴリズムは、数学的計算、及び、この数学的計算に後続し、ク ーポンを準備するのに用いられたその一つに応じた同一の複雑な圧縮関数より成 り、その結果が、署名検証のためにクーポンと比較される ことを特徴とする方法を提案するものである。 圧縮関数は、好ましくは、十分に長い計算時間を要求する複雑なハッシュ関数 である。これによって、署名の生成及び検証の方法に大きい機密保護性が与えら れる。それ故、署名の認証を効果的に保証するという利点は、小さいサイズのク ーポンのカードに保管する可能性に、従って、これらの多くのクーポンを保管す る可能性に結びつく。さらに、上述した時間選定が用いられる場合には、認証の 保証を格段に許可することができることが分かる。 さらに、次の特性を1つ以上によって、機密保護を改良することができる: クーポンriを計算するための式は、好ましくは、カードにより最初に生成さ れ、クーポンriが署名を確立するのに用いられるときに再使用されるために、 カード内に格納されるランダムな数Jに基づいて確立される。 署名の生成を活性化するために、検証者端末によって、ランダムな数がカード に送られ、それから、タイマが活性化される状況を用意することができる。そし てまた、署名補数を確立するのに、必然的に、このランダムな数aを使用するこ と、及び、署名の検証にもこのランダムな因子aが必要とされることも理解する ことができる。 署名補数sは、好ましくは、メッセージ及びこのランダムな因子aのハッシュ 関数SHA(m,a)を作動させる計算によって確立され、同一のハッシュ関数 が署名検証のために用いられる。 署名補数sは、好ましくは、カードに格納されており、署名クーポンを確立す るのに使用されたランダムな数Jを作動させる計算によって確立される。さらに 、このsの計算によって、このランダムな数J、及び、使用されるクーポンの数 を表す指標iに関するハッシュ関数SHA(x,J,i)を作動させるのが好ま しいが、これは、それ以前に、対応するクーポンの計算に用意された長い2進ス トリングの計算期間中に使用された同一のハッシュ関数である。また、このハッ シュ関数によりカードの秘密キーxを作動させることが好ましい。 署名関数sは、好ましくは、クーポンのハッシュ関数SHA(ri)を作動さ せる計算によって確立されるが、これは、署名検証のために使用された同一のハ ッシュ関数SHA(ri)である。また、このハッシュ関数によりカードの秘密 キーxを作動させることが好ましい。 それで、本発明の特別の局面によると、署名者ユニットによりメッセージのデ ィジタル署名を生成し検証者ユニットによりこれらの署名を検証する方法であっ て、署名者ユニットは、データの計算、通信及び保持を行うための手段であって 、少なくとも1つの電気的にプログラム可能な不揮発性メモリを備える手段を具 備し、不揮発性メモリには、検証者ユニットに従って、署名クーポンriを構成 する暗合化データが用意されており、署名クーポンが、不揮発性メモリ内にロー ディングされており メッセージに署名するために署名者により使用される方法において、 クーポンは、メモリにローディングされる前に、ハッシュ関数とも呼ばれる圧 縮関数の適用によって認証管理部により圧縮されること、並びに、 署名により認証されなければならないメッセージmが伝送され、 署名者はクーポンriを署名者に送り、 署名者は、ランダムな数を署名者に送り、そして、タイマを活性化し、 署名者は、メッセージの署名sを計算し、そして、この署名を検証者に送り、 検証者は、この署名が、カード内に保持された秘密キー及びクーポンriによ って得られたことを確かめ、この検証が次の等式 v = f(ri,s,m) = ri を検証することによってなされ、 検証者は、検証条件v=riが満たされている場合で、しかも、計測された時 間が予め決定された割当て時間を超過していない場合に、署名を受容する という諸交換により成ること を特徴とする方法が提案される。 説明を簡単にするために、以下の説明においては、特に、カードを署名者とし て扱うものとする。 〔図面の簡単な説明〕 本発明の他の特徴及び利点は、添付した次の図面にを参照してなされる以下の 詳細な説明によって、明らかになるだろう: 図1は、本発明により提案されるシステムを実装するカードのフローチャート を示し、 図2は、クーポン使用時にカードと端末との間で伝送されるデータを示し、 図3は、本発明により提案されるシステムを実装する端末のフローチャートを 示し、 図4は、クーポンのローディング及びn個のクーポンのローディング後カード のメモリの組織化のステップの期間中に、カードと認証管理部との間で伝送され るデータを示す。 〔発明の実施の形態〕 導入部において行った説明から、本発明の方法に従って予め計算された署名ク ーポンの主たる利点が、単純な8ビットマイクロプロセッサをベースにしたカー ドによる署名の計算が速いこと、及び、格納されるクーポンによるメモリ占有率 が低いことにあるということが理解されよう。典型的には、署名計算は、伝送時 間を含めて、およそ300 msで行われ、各クーポンは、EPRO又はEEPRO Mタイプメモリの2〜4バイトを使用している。 本発明はこの実施例で説明されるが、これは、最大の利点が得られる場合でさ え、単なる例に過ぎないことが了解されるよう。 署名生成のための方法は、このケースでは、明確に区別される2つのステップ に小分けすることができる。つまり、カードを発行した認証管理部によるクーポ ンのローディングすること、 及び、その後、端末がカードの秘密キーxを知らない前に、カードにより、これ らのクーポンを使用することである。 この2つのステップには、ここでは、2つの異なるタイプのハッシュ関数が使 用される。或る数のハッシュ化のための関数は、ビットストリングにより表現さ れ、初期ストリングの長さと同じであるか或いは同じでなくてよい特定の長さを もつ別のビットストリングの生成で成っており、この生成は、初期ストリングの ビットグループ上に実行される論理関数に基づいて行われる。 或るストリングchのハッシュ化のためには、SHA(ch)で表される単純 なハッシュ関数が使用される。これらの関数は、最近の米国の標準SHA(Secu re Hash Algorithm - FIB PUBXX,1993年2月1日、“Digital Signature Stand ard”より)で公表されたもののような標準的なハッシュ関数であってよい。こ れらの関数は、MDA又はMD5関数又はDES(Data Encryption Standard) アルゴリズムに基づいたハッシュ演算であってよい。 複雑なハッシュ関数として知られているたの関数も使用されることがある。こ こで使用されるハッシュ関数の特性は、所定の信号処理操作の期間中に要求され る減速関数、さらには、スマートカード内に保管されるべき署名クーポンの長さ を減少する圧縮関数ほど多くはない。 この減速及び圧縮関数は、ストリングchを処理するために、以後、H(ch )で表される。 本発明では、減速及び圧縮関数の全ソートを使用することができる。標準的な ハッシュ関数をSHA(ch)で示すと、例えば、次の関数が関数H(ch)と して採用される: HCH=SHA〔SHA{SHA(ch)}SHA(ch) mod p〕mod 2e ここで、eは、例えば16〜40ビット、つまり数バイトのクーポンに対する所望の 長さである。 以下、DSAアルゴリズムから直接的に得られるアルゴリズムを採り上げて、 どのようにして本発明の独創的な特定的な特徴が実現されるのかを示すことにし よう。パラメータp,q,g,x,yについては、DSAアルゴリズムに関して 既述のように定義されたものがそのまま用いられる。 カードへのクーポンのローディング これは、予備的なステップであり、もちろん、カードの外側で前もって署名{ r,s}の第1部分rが計算されるとき、及び、複数の可能な値riがカードに ローディングされるときにだけ行われる。 1.カードは、不揮発性メモリ(EPROM又はEEPROM)でカウンタを ゼロにリセットし、(例えば、10〜20バイトの)ランダムな数Jを発生し、それ を認証管理部に送ると、認証管理部は、化の秘密キーxを知り、i=1〜nにつ いて、次のような複数の数ki及び複数の数riの計算を行う: ki={1/〔SHA(x,J,i)〕}mod q ri= H(gki mod p) ここで、Hは、減速及び圧縮関数である。 カードは、各iについて値SHA(x,J,i)の計算を行い、それを認証管 理部に送ることも考えられ、この認証管理部は数riを計算する。 2.認証管理部は数riをカードに送り、カードは、これらの数を参照番号i とのリンクを保存しつつメモリに格納する。数kiは保存されない。 アルゴリズムDSAに言及すると、kiは、新しい各署名毎に変更されるラン ダムな数kを表す。しかしながら、署名のときに検証者端末により送出する代わ りに、適切な時点にカードにより再計算されることがある。この数はiに依存し 、指標iをもつクーポンは一度しか使用されないので、kiは各時間毎に更新さ れる。 メッセージに署名するためのクーポンの使用 メッセージに署名するためにカードがシークするとき、(好ましくは、メッセ ージを受ける端末の公知のハッシュ関数に従って、真のメッセージのハッシュ関 数の形式で)メッセージmを伝送した後、次のプロトコルが使用される: 1.カードは、 カウンタから状態i(作り出されるであろう署名の現在の指標を表す)を抽出 し、 不揮発性メモリからランダムな数J、秘密キーx、指標iに対応するクーポン riを抽出し、 I=SHA(x,J,i)を計算し(Iは、クーポンriの計算のために使用 したkiのモジュロ反転以外のなにものでもない)、 A=xSHA(ri)mod q を計算し、 riを検証者端末に送る(このディスパッチは署名の第1部分を表す)。 2.それから、端末はランダムな数aを発生して、署名sの第2部分の生成を 活性化する。このディスパッチは検証者端末カードに挑戦の送出を伝えるように 構成する。というのは、端末ハッシュ関数、同時に、タイマを起動して、この挑 戦に対するカードの応答時間が計測されるようにするからである。 カードが送らなければならない署名sは、検証者内に備えられる検証式 f( ri,m,s,a)=riに与えられるが、次式で表される: s=〔xSHA(ri)mod q+SHA(m,a)〕/ki mod q この式によってクーポンri、カードの秘密キーx、送られたメッセージm、 数ki、及び、検証者により挑戦として送られたランダムな数が作動させられる 。この式は、DSAアルゴリズムにより与えられる式s=(m+xr)/kとは 、いくつかの理由で、異なっている。つまり、この式はランダムな数を作動させ て挑戦として送られて、検証者によって、ランダムな数aがカードに到着したと きに署名sの時間選定計算が開始するのを確実にするようにしている。その理由 は、m及びランダムな数aをハッシュ化したもの、即ち、SHA(m,a)が、 mをハッシュ化したものに代えて使用されたからである。さらに、非常に短いス トリングriより長いストリングの形でクーポン値を使用するには、riよりも むしろSHA(ri)を使用するのが好ましい。しかし、本来、xri及びSH A(m,a)の代わりにxSHA(ri)を使用した場合、検証式にはそれが考 慮されなければならないが、これをなすことはさらに離れたものになることが分 かる。署名計算は、検証式がこれら のことを考慮するという条件で、他に種々変形することができる。 3.カードは、できるかぎり高速で署名sを計算する。しかしながら、タイマ の起動前には、既に、A=xSHA(ri)mod a q 及び I=1/ki−S HA(x,J,i)を計算してしまっているので、次の計算を行う以外に何も残 っていない: s=I・〔SHA(m,a)+A〕mod q この計算は、例えば、Intel 8051形又はMotorola 6805形のような、単純で低 価格の8ビットマイクロコントローラに対してさえ、迅速に行われる。計算が完 了すると、カードは署名sを送り返す。 4.sの受信の際、端末は、タイマを停止し、署名認証の検証のための計算を 実行する。署名が前述の式に従って精確に計算された場合は、次の等式が得られ なければならないことが検証される: 〔y[SHA(ri)/s]mod q[SHA(m,a)/s]mod q mod p〕=gki mod p 検証者は、kiを保持していない。検証者が保持するのは、ri=H(gki mod p)であり、ここで、Hは減速及び圧縮関数である。 従って、上の等式は、次のように変換される: G〔y[SHA(ri)/s]mod q[SHA(m,a)/s]mod q mod p〕=H(gki mod p )=ri 検証者は、利用可能なri,s,a,p,q,m,a、単純なハッシュ関数、 並びに、減速及び圧縮関数Hを有している。従って、検証者は上述の等式を検証 する。 等式が得られた場合、及び、署名が所定閾値より短い期間内に送られた場合に は、署名は検証者により受容される。これらの2つの条件の1つが満たされない 場合は、受容されない。 期間の評価のための一例として、次の指示を与えることができる。つまり、現 在知られている最もパワーフルなコンピュータでさえ可能な極端にパワーフルな コンピュータ上で、H(ch)を評価するのに必要な時間をTとする。長さeを 有するストリングに帰着する減速関数H(Hは圧縮関数でもある)が、十分に複 雑であるとし、そして、任意の値z及び任意の現存コンピュータに対し、z=H (ch’)のような新しい値ch’の探索に時間T・2eが要求されるようにす るために、どんな場合にも十分に複雑であるように選ばれなくてはならないと仮 定する。 カードの秘密キーを知らない者が、検証式に基ついて(即ち、徹底的な探索に よって)試行錯誤的にsの探索を行った場合、この者は、この値T・2eより非 常に小さい例えば、この値の100万分の1のレベルの時間閾値を設定するように 選ばれているときには、単純な試みをもってしても、sの精確な値を見つけるこ とができない。 このことは、減速関数及び閾値期間を選ぶために追従すべき方法論を指示して いる。 一般に、ここで説明しそして一例として図示されている原理は、他の署名プロ トコルに適用可能である。特定的には、署名 クーポンの予備計算が可能である他のプロトコル、特に、次のようなプロトコル に適用可能である: Rueppel-Nyberg:“New signature schemes based on the discrete logarithm problem”(Eurocrypt'94シンポジウム報告書で公表)、 Schnorr:“Efficient identification and signatures for smart-cards”(C rypt'89シンポジウム報告書で公表)、 El-Gamal:“A public-key cryptosystem and a signature scheme based on d iscrete logarithms”(“IEEE Transactiom on Information Theory”誌,Vol .IT30,No.4,第469〜 472頁にて公表)、 Guiiiou-Quisquater:“A practical zero-knowledge protocol fitted to sec urity microprocessors minimizing both transmission and memory”(Eurocry pt'88シンポジウム報告書で公表)、及び、“A paradoxical identity-based si gnature scheme resulting from zero-knowledge”(Crypt'88シンポジウム報告 書で公表)、 離散的な対数に基づく他の公開キーシステム、このシステムでは、〔Horster 外により、“meta Message Recovery and Meta Blind Signature schemes based on the discrete logarithm problem and their applications”(Asiacrypt'8 8シンポジウム報告書で公表)で説明されているように〕式(m+xr)/k m od qが、m,x,及びkを作動させる別の均等物に置換されており、さらに、 同一署名において複数の個別ランダム数k又は複数の個別秘密キーxを使用する 。 本発明は、電子的小切手の署名操作に適用することができ、 それから、このような小切手を低価格のスマートカードを使って作成するのに適 用することができる(これは、8ビットマイクロプロセッサ及び限られたサイズ の不揮発性メモリを使用する結果生じる)。 もちろん、メッセージmは、カードにより端末を使って実行される取引を表す ことができ、このような端末は、例えば、小売商人の支払端末である。好ましく は、メッセージmには署名が行われる。端末は、メッセージを受容しそれによっ て取引をするために署名を検証するが、この端末は、また、中央認証管理部(例 えば、銀行)にも接続され、この管理部は、一方では署名者の勘定の借方を記入 し他方では小売商人の勘定の貸方を記入する前に、自身で、メッセージ及び署名 の認証を管理することができる。 それで、先に詳述したように署名操作及び署名検証の全手続が完了した後、端 末は、認証管理部に電子的小切手{i,ri,a,s,m}を送り、認証管理部 は、署名sが正しい署名であること、即ち、 s=SHA(x,J,i)〔SHA(m,a)+xSHA(ri)〕mod q を確かめ、認証管理部は、メッセージmで規定されている取引額により端末の勘 定の貸方を記入する。 注目されるのは、カードによる署名の計算において、SHA(m,a)に代え て式SHA(m,a,i)を使用することができるということである。この場合 、端末による検証の式は、これを考慮すべきであるから、 H〔y[SHA(ri)/s]mod q[SHA(m,i,a)/s]mod q mod p〕=ri とすべきであり、認証管理部による署名の検証のための式もこれを考慮して次の ようになる: s=SHA(x,J,i)〔SHA(m,i,a)+xSHA(ri)〕mo d q 図面を参照すると、各スマートカードは、処理ユニット(CPU)11、ラン ダムアクセスメモリ(RAM)13、及び/又は、読出専用メモリ(ROM)1 4、及び/又は、消去可能乃至電気的に消去可能でプログラム可能な読出専用メ モリ(EPROM乃至EEPROM)15を備えている。 スマートカードの処理ユニット11及び/又はROM14には、クーポンのロ ーディングの間、及び、メッセージの署名操作及び電子的小切手の送出の間にカ ードにより実行される計算ステップの実行に対応する計算プログラム又は資源が 格納されている。これらのプログラムには、特に、sを生成するための計算規則 及びハッシュ関数SHAの使用規則が含まれている。計算ユニット及びROMプ ログラムには、また、乗算、加算及びモジュロ変換(reduction modulaire)の 演算に必要な資源が備えられる。これらの演算は組み合せることができる(例え ば、モジュロ変換は、直接、乗算に統合される)。 DSAアルゴリズムの場合と同じように、カードのRAMは、例えば、ハッシ ュ関数SHA(m,a)又はSHA(m,i,a)が適用されるメッセージm及 びランダムな数aを格納している。不揮発性メモリメモリ15は、典型的には、 パラメータq,x,J及び予め計算されたクーポン(ri)を格納している。指 標は、署名の新しい生成の度毎に増分されクーポンのローディングの間リセット される不揮発性カウンタ内にある。 カードの処理ユニットは、アドレス及びデータバス16並びに通信インターフ ェイス10を介して、メモリ13,14,15における読出及び書込操作を活性 化する。 各スマートカードは、物理的な保護機構17によって外部から保護されている 。これらの保護機構は、認証されていないどんな実体も秘密キーxを得られない ようにするのに十分なものとすべきである。現時点でこの技術分野で最も普通に 用いられている技術は、チップを集積化して安全モジュールとし、異常な電圧や クロック周波数だけでなく、温度、光の変化を検出することができる装置をチッ プに装備することである。メモリアクセスを混乱させるような特別に設計された 技術も、用いられる。 端末は、少なくとも1つの処理ユニット(CPU)30及びメモリ資源32, 33,34を備えている。 CPU30は、アドレス及びデータバス35並びに通信インターフェイス31 を介して、メモリ32,33,34における読出及び書込操作を制御する。 認証管理部のCPU30及び/又はROM34には、クーポンの計算及び署名 の検証に必要な、ハッシュ、減速及び圧縮、乗算、加算、モジュロ逆変換(inve rsion modulaire)、べき乗(指数化)並びにモジュロ変換というような計算や 機能を実行するのを可能にする計算プログラム又は資源が格納されている。これ の演算のうちのあるもの(例えば、乗算及びモジュロ変換)は、組み合わせるこ とができる。 本発明は、すべて、スマートカードに言及して説明されてきたが、署名者ユニ ットが別の物体であるとき、特に、並列及び非直列伝送プロトコルをもつタイプ のスマートカードであるP CMCIAカード、又は、バッジ、無接点カードのような可搬体であるときに、 適用することができることが理解されよう。カードと端末との間の通信は、電子 的署名を用いて直接的に行うことも、或いは、無線周波数又は赤外線伝送により 遠隔的に行うこともできる。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),JP,US

Claims (1)

  1. 【特許請求の範囲】 1.検証者ユニットにより送られたランダムなデータを使用してディジタル署名 を計算する署名者ユニットによって、ディジタル署名を生成すること、及び、送 られた署名及びランダムなデータを作動させる数学的な条件が満たされているこ とを確かめる検証者ユニットによって、この署名を検証することから成る電子的 署名方法において、 署名者ユニットにより検証者ユニットに送られる署名の検証は、さらに、ラン ダムなデータが検証者ユニットによって署名者ユニットに送られる時間と、署名 者ユニットによる計算後、このランダムなデータを使用する署名が検証者ユニッ トに戻ってくる時間との間に経過する期間の時間を決定するステップを用いてお り、経過した時間が所定の閾値を下回っており、しかも、数学的条件が検証され た場合に、署名が受容されることを特徴とする方法。 2.署名の計算及び検証は、署名の生成が、2つの値{r,s}(ここで、sは 、r及び秘密キーxに基づいて計算される)を創り出し、署名{r,s}の検証 が、rと、r及びsの関数fとの間の均等性v=f(r,s)=rの検証で構成 されるタイプのアルゴリズムに基づいて行われ、 秘密キーについて知識がないときこの均等性に基づいて行われる或る値sの探 索の期間が、たとえパワーフルなコンピュータにより実行される場合でさえも、 かりにカードに低価格のマイクロプロセッサが使用されるものとしてr及び秘密 キーに基づいてカードにより行われる値sの計算及び伝送の期間より、 はるかに大きくなるように、関数fが十分に複雑に選択されることを特徴とする 請求項1に記載の方法。 3.関数f(r,s)は、また、署名されるべきメッセージmを作動させること を特徴とする請求項2に記載の方法。 4.関数fは、数学的計算、及び、これに後続し、計算結果の取得の減速及びこ の結果の長さの圧縮の双方を達成する複雑なハッシュ関数(H)から成ることを 特徴とする請求項2又は3に記載の方法。 5.第1署名部分rは、同一の複雑なハッシュ関数(H)が後続する他の数学的 計算により確立されることを特徴とする請求項4に記載の方法。 6.署名者ユニットより送られる署名は、少なくとも1つの署名クーポンri、 並びに、署名クーポンri及びカードの秘密キーxに基づいて計算される1つの 署名補数sから成っており、このアルゴリズムは、検証者により、 v = f(ri,s) = ri の形の検証式を用いることによって署名の検証を可能にするものであり、 a.署名クーポンは、認証管理部により、 (1)数学式を用いて大きな2進数を作動させことによって、長い2進ストリ ングで表現される数を計算するステップ、及び、 (2)この結果の長さを大幅に減少する複雑な圧縮関数によって、この計算結 果を変更するステップ という2つのステップにて前もって確立され、 b.短い長さをもつ一連の異なる署名クーポンが、このようにして前もって準備 され、そして、署名者ユニット(メモリ及びマイクロプロセッサを備えるスマー トカード)に格納され、 c.署名生成は、クーポンri、並びに、少なくともri及びxに基づいて計算 された署名補数sを送ることでなり、 d.署名検証は、数学的計算、及び、この数学的計算に後続し、クーポンを準備 するのに用いられたその一つに応じた同一の複雑な圧縮関数より成り、その結果 が、署名検証のためにクーポンと比較される ことを特徴とする請求項1〜5の何れか一項に記載の署名生成及び検証方法。 7.署名者ユニットよる署名の生成及び検証者ユニットによる署名の検証から成 っており、 署名者ユニットより送られる署名は、少なくとも1つの署名クーポンri、並 びに、署名クーポンri及びカードの秘密キーxに基づいて計算される1つの署 名補数sから成っており、このアルゴリズムは、検証者により、 v = f(ri,s) = ri の形の検証式を用いることによって署名の検証を可能にするものであり、 a.署名クーポンは、認証管理部により、 (1)数学式を用いて大きな2進数を作動させことによって、長い2進ストリ ングで表現される数を計算するステップ、及び、 (2)この結果の長さを大幅に減少する複雑な圧縮関数によって、この計算結 果を変更するステップ という2つのステップにて前もって確立され、 b.短い長さをもつ一連の異なる署名クーポンが、このようにして前もって準備 され、そして、署名者ユニット(メモリ及びマイクロプロセッサを備えるスマー トカード)に格納され、 c.署名生成は、クーポンri、並びに、少なくともri及びxに基づいて計算 された署名補数sを送ることでなり、 d.署名検証は、数学的計算、及び、この数学的計算に後続し、クーポンを準備 するのに用いられたその一つに応じた同一の複雑な圧縮関数より成り、その結果 が、署名検証のためにクーポンと比較される ことを特徴とする請求項1に記載の方法による時間選定ステップを用いることが できる電子的署名生成方法。 8.圧縮関数は複雑なハッシュ関数であることを特徴とする請求項7に記載の方 法。 9.クーポンの計算は、カードにより最初に生成され、クーポンriが署名を確 立するのに用いられるときに再使用されるために、カード内に格納されるランダ ムな数Jに基づいて行われることを特徴とする請求項7又は8に記載の方法。 10.カードにより署名の生成を活性化するために、検証者端末は、ランダムな 数aをカードに送り、それから、タイマを活性化し、少なくともランダムなデー タa及びカードの秘密キーxに基づいて署名補数sを送り返すのにカードにより とられる時間を計測し、少なくとも署名s及びランダムデータaに基づいて署名 検証計算を実行し、そして、この計算が予め定められ た条件を検証し、且つ、このランダムデータをを使用する署名sを送り返すのに カードによりとられる時間が、予め定められた閾値を下回る場合に、署名を受容 することを特徴とする請求項7〜9の何れか一項に記載の方法。 11.署名補数sは、署名されるべきメッセージのハッシュ関数SHA(m,a )及びランダムデータaに基づいて確立され、同一のハッシュ関数が署名検証の ために用いられることを特徴とする請求項7〜10の何れか一項に記載の方法。 12.署名補数sは、カードに格納され、署名クーポンを確立するのに使用され たランダムなデータ(J)を作動させる計算によって確立されることを特徴とす る請求項7〜11の何れか一項に記載の方法。 13.カードに格納されたランダムなデータ(J)を作動させるこの計算は、ま た、少なくともこのランダムな数(J)及び使用されるクーポンの数を表す指標 iに関するハッシュ関数SHA(x,J,i)をも作動させ、これは、それ以前 に、対応するクーポンの計算に用意された長い2進ストリングの計算期間中に使 用された同一ハッシュ関数(x,J,i)であることを特徴とする請求項12に 記載の方法。 14.署名関数sは、クーポンのハッシュ関数を作動させる計算によって確立さ れ、これは、署名検証のために使用された同一のクーポンのハッシュ関数SHA (ri)であることを特徴とする請求項7〜13の何れか一項に記載の方法。 15.署名者装置によりメッセージのディジタル署名を生成し検証者装置により これらの署名を検証する方法であって、署名者装置は、少なくとも1つの電気的 にプログラム可能な不揮発性メモリを備え、データの計算、通信及び保持を行う ための手段を具備しており、この不揮発性メモリには、検証者装置に従って署名 クーポンriを構成する暗合化データが用意されており、これらの署名クーポン は不揮発性メモリ内にローディングされておりメッセージに署名するために署名 者により使用される方法において、 クーポンは、メモリにローディングされる前に、ハッシュ関数とも呼ばれる圧 縮関数(H)の適用によって認証管理部により圧縮されること、並びに、 (B)署名により認証されなければならないメッセージmが伝送され、 署名者はクーポンriを署名者に送り、 署名者は、ランダムな数を署名者に送り、そして、タイマを活性化し、 署名者は、メッセージの署名sを計算し、そして、この署名を検証者に送り、 検証者は、この署名が、カード内に保持された秘密キー及びクーポンriによ って得られたことを確かめ、この検証が等式 v = f(ri,s,m) = ri を検証することによってなされ、そして、 検証者は、検証条件v=riが満たされ、しかも、計測された時間が予め決定 された割当て時間を超過していない場合に、署名を受容する という諸交換により成ること を特徴とする方法。
JP53153296A 1995-04-20 1996-04-22 スマートカード用電子署名の生成方法 Expired - Fee Related JP3433258B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
FR95/04753 1995-04-20
FR9504753A FR2733378B3 (fr) 1995-04-20 1995-04-20 Procede de generation de signatures numeriques de messages
FR9507668A FR2733379B1 (fr) 1995-04-20 1995-06-27 Procede de generation de signatures electroniques, notamment pour cartes a puces
FR95/07668 1995-06-27
PCT/FR1996/000612 WO1996033567A1 (fr) 1995-04-20 1996-04-22 Procede de generation de signatures electroniques notamment pour cartes a puces

Publications (2)

Publication Number Publication Date
JPH10506727A true JPH10506727A (ja) 1998-06-30
JP3433258B2 JP3433258B2 (ja) 2003-08-04

Family

ID=26231904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53153296A Expired - Fee Related JP3433258B2 (ja) 1995-04-20 1996-04-22 スマートカード用電子署名の生成方法

Country Status (5)

Country Link
US (1) US5910989A (ja)
EP (1) EP0766894A1 (ja)
JP (1) JP3433258B2 (ja)
FR (1) FR2733379B1 (ja)
WO (1) WO1996033567A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013125245A1 (ja) * 2012-02-22 2013-08-29 パナソニック株式会社 リーダ装置、それを搭載するデータ処理装置および真偽判定方法
JP2021507616A (ja) * 2017-12-19 2021-02-22 リドル アンド コード ゲゼルシャフト ミット ベシュレンクテル ハフツング デジタル署名を提供するためのドングル及び方法

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE512748C2 (sv) 1997-05-15 2000-05-08 Access Security Sweden Ab Förfarande, aktivt kort, system samt användning av aktivt kort för att genomföra en elektronisk transaktion
JP3812123B2 (ja) * 1998-02-12 2006-08-23 富士ゼロックス株式会社 認証方法および装置
US6505773B1 (en) * 1998-04-03 2003-01-14 International Business Machines Corporation Authenticated electronic coupon issuing and redemption
US6237098B1 (en) * 1998-04-22 2001-05-22 Interface Logic Systems, Inc. System for protecting weight verification device private key
DE19820605A1 (de) * 1998-05-08 1999-11-11 Giesecke & Devrient Gmbh Verfahren zur sicheren Verteilung von Software
US6820202B1 (en) * 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
US7047416B2 (en) * 1998-11-09 2006-05-16 First Data Corporation Account-based digital signature (ABDS) system
FR2788911A1 (fr) * 1999-01-27 2000-07-28 France Telecom Procede, systeme, dispositif pour diminuer la charge de travail pendant une session destinee a prouver l'authenticite d'une entite et/ou l'origine et l'integrite d'un message
EP1145472A3 (fr) 1999-01-27 2002-11-27 France Telecom Procede, systeme, dispositif destines a prouver l'authenticite d'une entite et/ou l'integrite et/ou l'authenticite d'un message
FR2793571B1 (fr) * 1999-05-11 2003-10-31 Gemplus Card Int Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie a cle secrete et dynamique
US6895514B1 (en) * 1999-06-25 2005-05-17 Lucent Technologies Inc. Method and apparatus for achieving secure password access
DE19939281A1 (de) * 1999-08-19 2001-02-22 Ibm Verfahren und Vorrichtung zur Zugangskontrolle zu Inhalten von Web-Seiten unter Verwendung eines mobilen Sicherheitsmoduls
ATE518327T1 (de) 1999-10-01 2011-08-15 Phentam Dire Nv Llc Verfahren, system und vorrichtung zum beweis der authentizität einer einheit oder der integrität einer nachricht
KR100844546B1 (ko) * 1999-10-01 2008-07-08 프랑스 텔레콤 엔티티의 진정성 또는 메시지의 무결성 검증방법, 시스템 및 장치
SG95612A1 (en) * 1999-12-24 2003-04-23 Kent Ridge Digital Labs Remote authentication based on exchanging signals representing biometrics information
AU777912B2 (en) * 2000-02-29 2004-11-04 International Business Machines Corporation System and method of associating devices to secure commercial transactions performed over the internet
FR2809894B1 (fr) * 2000-05-31 2002-10-25 France Telecom Procede de cryptographie, microcircuit pour carte a puce et cartes a puce incluant un tel microcircuit
US7043456B2 (en) * 2000-06-05 2006-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Mobile electronic transaction personal proxy
FR2810138B1 (fr) * 2000-06-08 2005-02-11 Bull Cp8 Procede de stockage securise d'une donnee sensible dans une memoire d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
FR2811093A1 (fr) * 2000-06-30 2002-01-04 St Microelectronics Sa Dispositif et procede d'evaluation d'algorithmes
US6871278B1 (en) * 2000-07-06 2005-03-22 Lasercard Corporation Secure transactions with passive storage media
US6978369B2 (en) * 2000-08-04 2005-12-20 First Data Corporation Person-centric account-based digital signature system
US7010691B2 (en) * 2000-08-04 2006-03-07 First Data Corporation ABDS system utilizing security information in authenticating entity access
US7082533B2 (en) * 2000-08-04 2006-07-25 First Data Corporation Gauging risk in electronic communications regarding accounts in ABDS system
US6983368B2 (en) * 2000-08-04 2006-01-03 First Data Corporation Linking public key of device to information during manufacture
EP1320956A4 (en) * 2000-08-04 2006-06-21 First Data Corp DIGITAL SIGNATURE SYSTEM WITH CERTIFICATION OF AUTHENTITICITY
US6789189B2 (en) * 2000-08-04 2004-09-07 First Data Corporation Managing account database in ABDS system
US7552333B2 (en) 2000-08-04 2009-06-23 First Data Corporation Trusted authentication digital signature (tads) system
US7558965B2 (en) * 2000-08-04 2009-07-07 First Data Corporation Entity authentication in electronic communications by providing verification status of device
US7096354B2 (en) * 2000-08-04 2006-08-22 First Data Corporation Central key authority database in an ABDS system
FR2814620B1 (fr) * 2000-09-28 2002-11-15 Gemplus Card Int Procede de transmission accelere de signature electronique
AU2002248604A1 (en) * 2001-03-09 2002-09-24 Pascal Brandys System and method of user and data verification
US20020147918A1 (en) * 2001-04-05 2002-10-10 Osthoff Harro R. System and method for securing information in memory
US7000115B2 (en) * 2001-06-19 2006-02-14 International Business Machines Corporation Method and apparatus for uniquely and authoritatively identifying tangible objects
US6834795B1 (en) * 2001-06-29 2004-12-28 Sun Microsystems, Inc. Secure user authentication to computing resource via smart card
US20040128508A1 (en) * 2001-08-06 2004-07-01 Wheeler Lynn Henry Method and apparatus for access authentication entity
US6641050B2 (en) 2001-11-06 2003-11-04 International Business Machines Corporation Secure credit card
US8396809B1 (en) 2002-05-14 2013-03-12 Hewlett-Packard Development Company, L.P. Method for reducing purchase time
US6934664B1 (en) 2002-05-20 2005-08-23 Palm, Inc. System and method for monitoring a security state of an electronic device
FR2842050B1 (fr) * 2002-07-04 2004-11-12 Roger Suanez Procede et systeme de securisation de transmission de messages
TWI234706B (en) * 2002-07-26 2005-06-21 Hon Hai Prec Ind Co Ltd System and method for firmware authentication
AU2003262905A1 (en) * 2002-08-27 2004-03-19 Closer Communications Llc Wireless information retrieval and content dissemination system and method
US7194628B1 (en) 2002-10-28 2007-03-20 Mobile-Mind, Inc. Methods and systems for group authentication using the naccache-stern cryptosystem in accordance with a prescribed rule
US20030177051A1 (en) * 2003-03-13 2003-09-18 Robin Driscoll Method and system for managing worker resources
KR20060034228A (ko) * 2003-06-04 2006-04-21 마스터카드 인터내셔날, 인코포레이티드 전자 상거래 트랜잭션에서의 고객 인증 시스템 및 방법
US7706574B1 (en) 2003-11-06 2010-04-27 Admitone Security, Inc. Identifying and protecting composed and transmitted messages utilizing keystroke dynamics
CN100340937C (zh) * 2004-04-12 2007-10-03 华为技术有限公司 一种软件保护方法及装置
GB2415579B (en) * 2004-06-23 2006-12-20 Hewlett Packard Development Co Cryptographic method and apparatus
US8433647B1 (en) 2004-08-25 2013-04-30 Vectorsgi, Inc. Method and system for processing electronic checks
US7620819B2 (en) * 2004-10-04 2009-11-17 The Penn State Research Foundation System and method for classifying regions of keystroke density with a neural network
US7370202B2 (en) * 2004-11-02 2008-05-06 Voltage Security, Inc. Security device for cryptographic communications
US20060153364A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Asymmetric key cryptosystem based on shared knowledge
US7693277B2 (en) * 2005-01-07 2010-04-06 First Data Corporation Generating digital signatures using ephemeral cryptographic key
US20060156013A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Digital signature software using ephemeral private key and system
US20060153369A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Providing cryptographic key based on user input data
US7593527B2 (en) * 2005-01-07 2009-09-22 First Data Corporation Providing digital signature and public key based on shared knowledge
US20060153367A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Digital signature system based on shared knowledge
US20060153370A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Generating public-private key pair based on user input data
US7936869B2 (en) * 2005-01-07 2011-05-03 First Data Corporation Verifying digital signature based on shared knowledge
US7490239B2 (en) * 2005-01-07 2009-02-10 First Data Corporation Facilitating digital signature based on ephemeral private key
US7869593B2 (en) * 2005-01-07 2011-01-11 First Data Corporation Software for providing based on shared knowledge public keys having same private key
US8020005B2 (en) 2005-12-23 2011-09-13 Scout Analytics, Inc. Method and apparatus for multi-model hybrid comparison system
US20070198712A1 (en) * 2006-02-07 2007-08-23 Biopassword, Inc. Method and apparatus for biometric security over a distributed network
US7526412B2 (en) * 2006-03-31 2009-04-28 Biopassword, Inc. Method and apparatus for multi-distant weighted scoring system
US20070300077A1 (en) * 2006-06-26 2007-12-27 Seshadri Mani Method and apparatus for biometric verification of secondary authentications
GB2443863B (en) * 2006-10-30 2011-05-11 Hewlett Packard Development Co Method and system for generating data transaction id
US7774607B2 (en) * 2006-12-18 2010-08-10 Microsoft Corporation Fast RSA signature verification
KR102559017B1 (ko) 2007-09-24 2023-07-25 애플 인크. 전자 장치 내의 내장형 인증 시스템들
US8332932B2 (en) * 2007-12-07 2012-12-11 Scout Analytics, Inc. Keystroke dynamics authentication techniques
US8600120B2 (en) 2008-01-03 2013-12-03 Apple Inc. Personal computing device control using face detection and recognition
FR2931326A1 (fr) * 2008-05-16 2009-11-20 St Microelectronics Rousset Verification d'integrite d'une cle de chiffrement
US8656177B2 (en) * 2008-06-23 2014-02-18 Voltage Security, Inc. Identity-based-encryption system
EP2715598B1 (en) * 2011-05-23 2016-10-05 Samsung Electronics Co., Ltd. Method and apparatus for authenticating a non-volatile memory device
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
US8687902B2 (en) * 2012-03-29 2014-04-01 Intel Corporation System, method, and computer program product for decompression of block compressed images
US9898642B2 (en) 2013-09-09 2018-02-20 Apple Inc. Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs
KR102129594B1 (ko) 2013-10-30 2020-07-03 애플 인크. 관련 사용자 인터페이스 객체를 표시
US10043185B2 (en) 2014-05-29 2018-08-07 Apple Inc. User interface for payments
CN104077616B (zh) * 2014-07-02 2017-08-25 广州广电运通金融电子股份有限公司 自助终端吞卡处理方法和系统
US10066959B2 (en) 2014-09-02 2018-09-04 Apple Inc. User interactions for a mapping application
KR20160119222A (ko) * 2015-02-09 2016-10-12 가부시키가이샤 히타치세이사쿠쇼 업무 제휴 시스템 및 업무 제휴 방법
US9940637B2 (en) 2015-06-05 2018-04-10 Apple Inc. User interface for loyalty accounts and private label accounts
US20160358133A1 (en) 2015-06-05 2016-12-08 Apple Inc. User interface for loyalty accounts and private label accounts for a wearable device
US10380681B2 (en) * 2015-09-08 2019-08-13 Bank Of America Corporation Real-time data processing
US10417616B2 (en) * 2015-09-08 2019-09-17 Bank Of America Corporation Real-time data processing
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US10621581B2 (en) 2016-06-11 2020-04-14 Apple Inc. User interface for transactions
CN109313759B (zh) 2016-06-11 2022-04-26 苹果公司 用于交易的用户界面
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US20180068313A1 (en) 2016-09-06 2018-03-08 Apple Inc. User interfaces for stored-value accounts
US10860199B2 (en) 2016-09-23 2020-12-08 Apple Inc. Dynamically adjusting touch hysteresis based on contextual data
US10496808B2 (en) 2016-10-25 2019-12-03 Apple Inc. User interface for managing access to credentials for use in an operation
US20180130035A1 (en) * 2016-11-09 2018-05-10 Ca, Inc. Advanced cash reservation system in atms
EP4155988A1 (en) 2017-09-09 2023-03-29 Apple Inc. Implementation of biometric authentication for performing a respective function
KR102185854B1 (ko) 2017-09-09 2020-12-02 애플 인크. 생체측정 인증의 구현
US11170085B2 (en) 2018-06-03 2021-11-09 Apple Inc. Implementation of biometric authentication
US11100349B2 (en) 2018-09-28 2021-08-24 Apple Inc. Audio assisted enrollment
US10860096B2 (en) 2018-09-28 2020-12-08 Apple Inc. Device control using gaze information
US11328352B2 (en) 2019-03-24 2022-05-10 Apple Inc. User interfaces for managing an account
US11477609B2 (en) 2019-06-01 2022-10-18 Apple Inc. User interfaces for location-related communications
US11481094B2 (en) 2019-06-01 2022-10-25 Apple Inc. User interfaces for location-related communications
EP4034979B1 (en) 2019-09-29 2024-01-03 Apple Inc. Account management user interfaces
US11169830B2 (en) 2019-09-29 2021-11-09 Apple Inc. Account management user interfaces
RU2720320C1 (ru) * 2019-10-22 2020-04-28 Акционерное общество "Актив-софт" (АО "Актив-софт") Способ доверенного хранения на смарт-карте списка отозванных сертификатов (crl)
RU2722979C1 (ru) * 2019-11-08 2020-06-05 Акционерное общество "Актив-софт" (АО "Актив-софт") Способ хранения, обновления и использования на смарт-карте корневых сертификатов электронной подписи
DK202070633A1 (en) 2020-04-10 2021-11-12 Apple Inc User interfaces for enabling an activity
US11816194B2 (en) 2020-06-21 2023-11-14 Apple Inc. User interfaces for managing secure operations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61139873A (ja) * 1984-12-13 1986-06-27 Casio Comput Co Ltd 認証方式
US5231668A (en) * 1991-07-26 1993-07-27 The United States Of America, As Represented By The Secretary Of Commerce Digital signature algorithm
FR2713419B1 (fr) * 1993-12-02 1996-07-05 Gemplus Card Int Procédé de génération de signatures DSA avec des appareils portables à bas coûts.

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013125245A1 (ja) * 2012-02-22 2013-08-29 パナソニック株式会社 リーダ装置、それを搭載するデータ処理装置および真偽判定方法
US9016568B2 (en) 2012-02-22 2015-04-28 Panasonic Intellectual Property Management Co., Ltd. Reader device, data processing apparatus mounted with the same and genuine/counterfeit judgment method
JPWO2013125245A1 (ja) * 2012-02-22 2015-07-30 パナソニックIpマネジメント株式会社 リーダ装置、それを搭載するデータ処理装置および真偽判定方法
JP2021507616A (ja) * 2017-12-19 2021-02-22 リドル アンド コード ゲゼルシャフト ミット ベシュレンクテル ハフツング デジタル署名を提供するためのドングル及び方法
US11646889B2 (en) 2017-12-19 2023-05-09 Riddle & Code Gmbh Dongles and method for providing a digital signature

Also Published As

Publication number Publication date
EP0766894A1 (fr) 1997-04-09
US5910989A (en) 1999-06-08
JP3433258B2 (ja) 2003-08-04
FR2733379A1 (fr) 1996-10-25
WO1996033567A1 (fr) 1996-10-24
FR2733379B1 (fr) 1997-06-20

Similar Documents

Publication Publication Date Title
JPH10506727A (ja) 特にスマートカードのための、電子的署名を生成する方法
US5625695A (en) Process for generating DSA signatures with low-cost portable apparatuses
US5955717A (en) Transaction verification protocol for Smart Cards
US5347581A (en) Verification process for a communication system
US5245657A (en) Verification method and apparatus
AU651326B2 (en) Method and system for personal identification using proofs of legitimacy
KR100346084B1 (ko) 검증기에의해적어도하나의프로버를검증하는방법
JP2666191B2 (ja) データ交換システムにおける加入者相互のアイデンテイフイケーシヨンならびに署名の発生および確認のための方法
US5131039A (en) Optionally moderated transaction systems
KR101142656B1 (ko) 위조로부터 전자칩을 보호하는 공용키 암호화 방법
EP0570388B1 (en) Method, identification device and verification device for identification and/or performing digital signature
US20020174339A1 (en) Data card verification system
EP3632033A1 (en) Progressive key encryption algorithm
JP2731945B2 (ja) 個別鍵による認証が可能なicカード
KR101261683B1 (ko) 전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체
WO2007031908A2 (en) Improved device, system and method for determining authenticity of an item
US6003764A (en) Method of securely storing and retrieving monetary data
JP2006139752A (ja) スマートカードに情報のダウンロードを認証するための方法および装置
US20040107353A1 (en) Cryptographic method of protecting an electronic chip against fraud
EP1331753A2 (en) Method and apparatus for simultaneously establishing user identity and group membership
WO2000008610A1 (en) Offline verification of integrated circuit card using hashed revocation list
Friis Digicash implementation
CN114254345A (zh) 一种基于区块链的秘密承诺生成与验证方法及装置
CA2543094C (en) Transaction verification protocol for smart cards
KR20030070580A (ko) 전자 서명 인증을 통한 신용카드 거래 처리 시스템

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees