JP2001503162A - Electronic message signing and / or authentication method - Google Patents

Electronic message signing and / or authentication method

Info

Publication number
JP2001503162A
JP2001503162A JP10523288A JP52328898A JP2001503162A JP 2001503162 A JP2001503162 A JP 2001503162A JP 10523288 A JP10523288 A JP 10523288A JP 52328898 A JP52328898 A JP 52328898A JP 2001503162 A JP2001503162 A JP 2001503162A
Authority
JP
Japan
Prior art keywords
key
message
module
card
keys
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.)
Pending
Application number
JP10523288A
Other languages
Japanese (ja)
Inventor
ステルヌ,ジャック
レヴィ―ディ―ヴェエル,フランソワーズ
ナカッシュ,ダヴィッド
Original Assignee
ジェムプリュス エス.セー.アー.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ジェムプリュス エス.セー.アー. filed Critical ジェムプリュス エス.セー.アー.
Publication of JP2001503162A publication Critical patent/JP2001503162A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/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/357Cards having a plurality of specified features
    • 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/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

Abstract

(57)【要約】 本発明は計算アルゴリズムがチップカードに埋め込まれたデジタル鍵(N,e,d)を使用し、鍵がとくにモジュールNと呼ばれる整数を含んでいる、電子メッセージの署名および/または認証の分野に関するものである。本発明による方法によれば複数の鍵(N,e,d),(N,e’,d’)は同一のモジュール(N)を有し、これらの鍵がメッセージの署名、検証および/または認証にあてられる。本発明はとくにカードの鍵の使用者の認識に、あるいは一人または複数の使用者によって使用されたサービスの認識に応用される。 SUMMARY OF THE INVENTION The present invention uses a digital key (N, e, d) whose computational algorithm is embedded in a chip card, and the signature and / or signature of an electronic message, wherein the key contains in particular an integer called module N. Or in the field of certification. According to the method according to the invention, the keys (N, e, d), (N, e ', d') have the same module (N), and these keys sign, verify and / or Dedicated to certification. The invention applies in particular to the identification of the user of the card key or to the service used by one or more users.

Description

【発明の詳細な説明】 電子メッセージの署名および/または認証方法 本発明は電子メッセージの署名および/または認証方法に関するものである。 それはとくに「電子チップカード」タイプのマイクロプロセッサ式の携帯可能 な装置によって使用されるためのものである。 特定のサービスの排他性を守るために、チップカードは一般的にデジタル鍵を 有し、デジタル鍵はカードと検証装置、例えば読取り端末あるいは管理センター との間で交換されたメッセージの署名または認証のために、あるいは使用される カードの認証のために計算アルゴリズムによって使用される数列によって構成さ れる。 さらに、伝送されたメッセージを暗号化するためにかかる鍵を用いることもで きる。つぎにメッセージは暗号鍵と等しい鍵(この場合、対称暗号と呼ばれる) 、または秘密の暗号鍵に対応する鍵(非対称暗号)を有する装置だけが復合化す ることができる。 例えば、カードから読取り端末に、あるいは管理センターに送信されたメッセ ージに署名する場合、あるいはまた取引(電子小切手)を実行し、それらがまず 取引が行われた読取り端末によって、ついで取引を管理する管理センターによっ て検証されるようにこの取引に署名をする場合がこれに当たる。 以下に、「電子署名」および「デジタル署名」という表現、あるいは「デジタ ル鍵」と「電子鍵」という表現を区別なく使用する。実際、数列によって構成さ れた鍵による署名はとくに電子的に伝送されたメッセージの署名に適している。 電子署名はアルゴリズムとこれらの計算に使用されるパラメータ全体によって 定義された一連の計算規則によって計算される。署名は同時に署名者の身元(な ぜならそれは署名者に固有の秘密の指数を介入させるから)と署名されたメッセ ージの完全性(なぜならそれはメッセージ自体を介入させるから)を検証する ことができる。アルゴリズムは一方では、署名を生成し、他方では署名を検証す ることができる、この作業は検証と呼ばれる。 認証は特別な検証作業で、それによって端末または管理センターは、有意のメ ッセージのいっさいの交換に先立って、カードの署名だけを検証する。この手続 きの際に、検証装置は任意のメッセージをカードに送信し、カードはそれに署名 して送り返す。これによって検証装置はこのメッセージの署名を認証することが できる。認証は、好適には、メッセージの署名/検証作業に用いられるものとは 異なるデジタル鍵を介入させる。 以下に説明する署名と認証の方法は、米国特許第4,405,829号に詳細 が開示されているその発明者(Rivest,ShamirとAdleman) の名前からRSAとよばれる標準化されたアルゴリズムでとくに使用されるため のものである。 RSA署名の生成は秘密指数を介入させる。検証は、秘密指数に対応するがそ れと同一ではない公開指数を介入させる。それぞれの使用者は1対の指数(秘密 、公開)を所有する。公開指数は皆が知っていてもよいが、秘密指数は決して開 示してはならない。だれでも使用者の公開指数を使用してその人の署名を検証す る能力を有するが、秘密指数の所有者だけが指数の対に対応する署名を生成する ことができる。 もっと正確に言えば、RSA電子鍵はそれぞれモジュールN、公開指数e、お よび秘密指数dと呼ばれる3つのパラメータ(N,e,d)を備えている。2つ の素数(N,e)は、そこに記憧されているチップカード上で読みとることが可 能であり、公開パラメータと名付けられている。反対に、秘密指数dは外部から 読みとれないカードの保護された記憧領域内に記憶されている。カードの保護さ れた計算回路だけが秘密指数dの読取りにアクセスできる。 電子鍵はリードオンリーメモリEEPROMをプログラムすることによってカ ード内に埋め込まれる。公開パラメータ(N,e)は端末から読取りアクセス可 能なメモリEEPROMの領域内に埋め込まれる。反対に、秘密指数dはメモ リEEPROMの保護された領域内に埋め込まれるので、指数dはその計算のた めにカードのプロセッサにしか提供されない。 それぞれのパラメータはデジタルの整数で構成される。モジュールNの長さは 一般的に512ビット以上である。実際には、3つ組(N,e,d)のそれぞれの パラメータは平均で512ビットの長さを有する。しかしながら公開指数eは署 名検証を促進するためにもっと短いことが多い。 以下に、RSA計算アルゴリズムを使用した場合のメッセージの電子署名、検 証、認証、暗号化および復合化作業の流れを説明する。 公開パラメータが(N,e,d)である鍵によって、メッセージMの署名Sを得 るために、チップカードはつぎの計算を行う: Md modulo N=S このときカードは対(M,S)、すなわち署名Sを伴ったメッセージを発信す る。メッセージMの署名の計算に使用されたパラメータ(N,e)をカードが発 信するか、端末が読みにいく。 これによって端末はつぎの計算を実施して署名Sを検証することができる: Se mod N=M’ このとき端末はM’がMに等しいことを検証する。 カードと検証装置の間の認証作業はカードが検証装置に対してその身元を証明 することから成る。 そのために、検証装置はカードに任意のメッセージXを送信する。カードはつ ぎの関係式を使って別のRSA鍵のパラメータ(N’,e’,d’)からこのメッ セージの署名Aを計算する: Xd' mod N’=A 検証装置はモジュールN’と公開指数e’を読み出すか受信し、それによって 署名されたかかる任意のメッセージAを復合化し、つぎの関係式を使用してメッ セージX’を取得することができる。: Ae' mod N’=X’ このとき、認証はXとX’を比較することによってこの検証装置によって実施 される。任意のメッセージXと復合化されたメッセージX’が一致したとき、署 名は認証される。 秘密指数dはアクセス不可であり、3つのパラメータ(N,e,d)が大きな2 進数なので署名の不正使用は不可能になる。 上述の方程式の解である秘密指数dを見つけるのに必要な計算量と時間は膨大 であり、それが見つけだされることは全くあり得ない。 例えば、広く使用されるチップカードにおいて、RSA鍵はそれぞれ512ビ ットの3つの2進数を有する。このときただ一つの鍵が192バイトのメモリス ペースを占めることがわかる。 デジタル鍵とRSAアルゴリズムのもう一つの役割はカードと端末または管理 センターとの間のメッセージ交換の秘密を保持することである。 機密保持は交換されるメッセージの暗号化と復合化によって得られる。メッセ ージMの暗号化は下記の2進数演算を実現して、RSAアルゴリズムによって得 られる: Me mod N=C したがって、暗号化は、署名に類似の、しかしこの場合には秘密指数dの代わ りに公開指数eを用いる演算によって得られる。 相互的に、復合化は次の2進数演算によって表すことができる: Cd mod N=M これによってカードはそのデジタル鍵のモジュールNと秘密指数dを用いて暗 号化されたメッセージCを復合化することができる。 ここで、復合化には、先に見たごとく発見するのがほとんど不可能な、秘密指 数dを知る必要があるので、機密が保持される。 一般的に整数のいっさいの三つ組(N,e,d)は次の数学的条件を満たさなけ ればならない: e・d=1 mod E(N) ここで、「オイラーの関数」と呼ばれるE(N)はNと素でN以下の整数の数 を示す。 実際には、それぞれの鍵が異なるサービスへのアクセスを可能にする、複数の 鍵をチップカードに埋め込むことができる。メモリEEPROMはこの場合鍵と 同じ数だけの三つ組(N1,e1,d1),(N2,e2,d2)・・・,(Ni, ei,di)を含んでいなければならない。 複数の鍵が予定されている場合に、チップカードのためにかかるアルゴリズム を使用する不便は、大容量のリードオンリーメモリEEPROMを占めることで ある。前記の例によれば、192バイトの10個のRSA鍵を有するカードは約 2KバイトのリードオンリーメモリEEPROMを必要とする。 もう一つの不便は、それぞれのカードが複数の鍵を含むことを知った上で大量 のカードをプログラムしなければならないので多数の鍵を生成しなければならな いことである。実際、デジタル鍵の設計の際の計算時間は長くなる。それぞれの モジュールNとそれぞれの鍵のそれぞれの指数の対(e,d)の選択には安全と 不可侵性を保証するための数学的条件を検証するための一連の複雑な作業が必要 になる。 本発明の目的はチップカードのメモリ空間を最適化し、署名および認証作業を 簡単にすることである。 本発明の別の目的は、デジタル符号化の安全と不可侵性を保証することである 。 意外なことに、本発明によると、これらの目的は2つの鍵が一方の鍵の指数対 (e1,d1)が別の鍵の指数対(ei,di)と異なることによって区別される 、同一モジュールNを含むデジタル鍵(N,e1,d1),(N,e2,d2)・・ ・,(N,ei,di)を使用し、かかる鍵を署名、検証および/または認証手続 きのみに用いることによって達成される。 とくに、同一モジュールNを有するデジタル鍵(N,e1,d1),・・・,( N,ei,di)の中でただ一つのデジタル鍵(N,e1,d1)だけを暗号化およ び/または復合化手続きに用いることができる。 本発明によれば、計算アルゴリズムがメッセージに署名するために、および/ またはメッセージを認証するために電子鍵を用いる電子メッセージの署名および /または認証方法が用いられ、鍵は数列で構成され、チップカードに埋め込まれ 、一つの鍵はとくに整数の三つ組:(N,e,d): ・モジュール(N)、 ・公開指数(e)、および ・秘密指数(d)、 を有し、2つの鍵は一方の鍵の三つ組(N,e,d)が他の鍵の三つ組(N’, e’,d’)とは異なり、この方法は複数の鍵(N,e,d)、(N,e’,d’) がとくにカードの使用者または同一の使用を認識するために同一のモジュール( N)を有し、これらの鍵がメッセージの署名、検証および/または認証に宛てら れることを特徴とする。 変型によれば、本発明は、同一のモジュール(N)を有する鍵(N,e,d), (N,e’,d’),(N,e”,d”)の中で、最高一つの鍵(N,e,d)がメッ セージの暗号化および/または復合化に宛てられる方法を用いて実現される。 本発明は、好適にはメッセージ(M)の署名が細分化作業の後に行われる方法 によって実現される。 最後に本発明は電子メッセージの署名および/または認証に使用される電子鍵 (N,e,d)を含むメモリを有する電子チップカード(C1)を実現することを 目的とし、鍵(N,e,d)はメモリ内に記憶された数列で構成され、一つの鍵( N,e,d)はとくに整数の三つ組: ・モジュール(N)、 ・公開指数(e)、および ・秘密指数(d)、 を有し、2つの鍵(N0,e0,d0),(N1,e3,d3)は一方の鍵の三つ組 (N0,e0,d0)が他の鍵の三つ組(N1,e7,d7)とは異なることによっ て区別され、カードの一つの鍵(N0,e0,d0)がこのカード(C1)または 別のカード(C2)の別の鍵(N0,e1,d1),(N0,e5,d5)のモジ ュール(N0)と同一のモジュール(N0)を有することを特徴とする。 本発明の実現は付属の図面を参照して以下の詳細な説明と図面を読むことによ っていっそうよく理解できるだろう。付属の図面において: 図1は本発明によ る電子メッセージの署名、検証および/または認証方法を用いるチップカードの 模式図である。 図1は本発明による方法で異なる2枚のカードへの複数のデジタル鍵(N0, e0,d0)・・・(N1,e3’,d3’)の埋め込みを模式的に示している。 第一のチップカードC1は公開部分P1と秘密部分S1の2つの部分で示され 、 それぞれカードC1のリードオンリーメモリEEPROMのアクセス可能な 領域と保護された領域を表している。 第二のチップカードC2は同様に、そのリードオンリーメモリのアクセス可能 な領域と保護された領域を表している公開部分P2と秘密部分S2とともに図示 されている。 第一系列のパラメータN0,N1,e0,e0’,e1,e1’,e2,e2 ’,e3,e3’はカードC1の公開部分P1内に示されている。第一系列は第一 のカードC1のリードオンリーメモリのアクセス可能な領域内に記憶されたモジ ュールと公開指数に対応している。 第二系列のパラメータ、d0,d0’,d1,d1’,d2,d2’,d3, d3’はカードC1の秘密部分S1内に示されている。第二系列は第一のカード C1のリードオンリーメモリの保護領域内に記憶された秘密指数に対応している 。 同様に、第二のカードC2において、公開部分P2の中に第三系列のパラメー タN0,N1,N2,e4,e4’,e5,e5’,e6,e6’,e7,e7 ’があり、秘密部分S2内に第四系列のパラメータのd4,d4’,d5,d5 ’,d6,d6’,d7,d7’がある。第三系列のパラメータはリードオンリ ーメモリEEPROMのアクセス可能な領域内に記憶されたモジュールと公 開指数に対応し、第四系列は第二のカードC2のリードオンリーメモリEEPR OMの保護領域内に記憶された秘密指数に対応している。 このとき三つ組(N,e,d)にまとめられたこれらのパラメータは上述の署名 /検証、または認証あるいは暗号化/復合化の作業を可能にするデジタル鍵を形 成する。 下表は、例えば、図1のカードC1とC2の一連のパラメータを採って形成さ れた2群のデジタル鍵と、本発明による署名/検証、または認証あるいは暗号化 /復合化の作業へのこれらのカードの使用を示している。 デジタル鍵と題された第二列でカードC1は同じモジュールNOを有する、6 つの鍵(N0,e0,d0),(N0,e0’,d0’),(N0,e1,d1),( N0,e1’,d1’),(N0,e2,d2)と(N0,e2’,d2’)とから成 ることがわかる。 認証作業は、これらの作業がカードの同じサービスに関する場合でも、好適に は署名/検証鍵の別個の鍵を使用する。 これらの署名/検証および認証鍵はしかしながら同じモジュールを有すること ができる。したがって、表の例では、モジュールN0を有するカードC1の6個 の鍵の中で、3つの鍵(指数の対(e0,d0),(e1,d1)と(e2,d2 ))は署名/検証作業に宛てられ、他の3つの鍵(指数の対(e0’,d0’) ,(e1’,d1’)と(e2’,d2’)は認証にあてられることを示した。 一般的に、共通モジュールN0を有するそれぞれの鍵は別個のサービスの使用 に組み合わされることが可能である。例えば、3つの鍵(N0,e0,d0),( N0,e1,d1)と(N0,e2,d2)はカードC1の使用者の3つの銀行口座 に対応することができる。このときそれぞれの指数の対(e0,d0),(e1, d1)と(e2,d2)はそれぞれの口座に対応する別個の電子署名に組み合わ される。 しかしながら、表の最後の列に示したように、6つの鍵の中で一つだけが同一 のモジュールN0を有するので、鍵(N0,e0,d0)が暗号化・復合化作業に 使用されるようになっている。 この様に、モジュールN0は2つの別個の暗号・復合鍵の中に使用されていな い。これによって暗号化作業の安全と不可侵性の条件が満たされる。 表の第二の部分はカードC2が同じモジュールN0を含む4つの鍵(N0,e 4,d4),(N0,e4’,d4’),(N0,e5,d5),(N0,e5’,d 5’)を有することを示している。これによって共通モジュールN0を異なるカ ードC1,C2の上に備えることができることがわかる。 しかしながら、モジュールN0はこの例では暗号化・復合化作業のためにカー ドC1の鍵(N0,e0,d0によって使用されるので、どの暗号化・復合化作業 も第二のカードC2の鍵(N0,e4,d4)または鍵(N0,e4’,d4’)ま たは鍵、(N0,e5,d5)または(N0,e5’,d5’)で行ってはならない 。 この場合は、同一モジュールN0が複数のカードに共通な本発明の用途を示し ている。例えば、鍵(N0,e0,d0)と(N0,e4,d4)はこれらのカード に予定されている同じサービスまたは同じ用途に対応している。 前述の表は同一のモジュールN1を有する鍵(N1,e3,d3),(N1,e 3’,d3’),(N1,e6,d6),(N1,e6’,d6’)の別の系列を示 している。この別の系列において、カードC2に結びつけられた鍵(N1,e6, d6)だけが暗号化・復合化作業を可能にする。 要するに、本発明による方法の特徴によれば、複数の鍵が同一のモジュールを 有し、これらの鍵がメッセージの署名および/または認証に宛てられる。 また本発明による方法の変型によれば、同一モジュールを有するかかる鍵の中 で、最高で一つの鍵がメッセージの暗号化および/または復合化に用いられる。 しかしながら、最大限の安全を確保するために、以下に詳細に述べるごとく、 公開指数の選択に注意が払われる。 第一の注意として、数学的特性が同一のモジュールNに関する公開指数e0, ・・・,eiの選択を制限する。 ekで表した、これらの公開指数のそれぞれは、同じモジュールに関する他の 公開指数: e0,・・・,ek-1,ek+1,ei の最小公倍数(ppcmと略す)の約数であってはならない。 この第一の注意の実現は、とくに素数の中から公開指数e0,・・・eiを選 ぶことによってとくに得られる。事実、素数が他の素数の倍数の約数になること は数学的にあり得ない。 しかしながら、大きなサイズの素数の計算は膨大な数の計算になるので、別の 方法を採ることができる。それは非常に大きな数の中から任意に複数の公開指数 e0,・・・e1を選ぶことから成る。このとき鍵を発見する確率はきわめて低 いことが証明できる。この証明は本願の枠に入らない。 しかしながら、例として、180ビットの2進数の中から任意に16の指数e 0,・・・e16の選択を考えてみる;この場合、指数ekの一つが他のもの のppcmの約数である可能性は270分の1である。 別の例によれば、512ビットの2進数のなから256の指数e0,・・・, 256の選択は2-166未満の確率になる。 この方法は、厳密性は劣るが、計算時間を節約しながら、高い確実性を得るこ とを可能にする。 第二の注意として、メッセージに署名する前にそれらを細分することが考えら れる。そのために、周知のタイプの細分化アルゴリズムが使用できる。この複雑 化によってデジタル鍵発見のために必要な作業数が倍増し、その可能性を全くあ り得ないものにする。 典型的に、細分化アルゴリズムはメッセージMのような、2進数の連鎖に、疑 似偶然的に、整数P未満の数を対応させる確率関数である。メッセージMの細分 化の結果は、したがって、固定2進サイズの圧縮、整数Pのサイズになる。 有利には、SHAアルゴリズム、すなわちNational Instituteof Standards a nd Technologyが刊行した"Secure Hash Standard"に合致したアルゴリズムが使 用されるだろう。 ここで注意するのは、結果のサイズが、すなわち整数Pのサイズがモジュール N0,N1,・・・のサイズよりもはるかに小さい細分化アルゴリズムを適用し たとき、反復細分化を適用することが望ましいことに注意しよう。反復細分化の 際に、メッセージMはサブメッセージm,m’,・・・に切り離され、それぞれ のサブメッセージは細分化アルゴリズムによって隔離して処理される。 例えば、デジタル鍵が約512ビットのパラメータN,e,dを備え、使用さ れる細分化アルゴリズムの結果が128または160ビットの寸法を有する結果 が与えられるとき、かかる反復細分化を適用する方が望ましい。 本発明の推奨実施態様によれば、下記の形で表される、公開指数eとメッセー ジMを用いる細分化関数hが使用される: H=h(e,M) Hは細分化の結果、すなわち細分化されたメッセージである。 したがって、細分化に続く署名作業は次の関係式に従う: S=Hd mod N=(h(e,M))d mod N 相互的に、検証作業は次の関係式を検証することで実施されるだろう: Se mod N=h(e,M) この細分化の手順は署名および認証方法に大きな確実性を与える利点がある。 本発明による好適実施態様はさらに暗号化する前に複雑な暗号化関数fを用い ることが考えられる。これによって、2つの別個の符号化方法によって2次の符 号化が得られ、暗号化の確実性が強化される。 DESアルゴリズム(Data Enscryption standard)などのデータ暗号規格に 一致するアルゴリズムをこのように対称暗号化の関数fの実現に使用できる。 例えば、暗号化されるメッセージMとパラメータkを用い、下記の形で表され る暗号化関数fを選択することができる: F=f(k,M) Fは暗号化されたメッセージである。 対称的なので、関数fは下記の関係式を検証する、f-1で表される、逆関数を 許容する: M=f-1(k,M) 暗号化の作業をもっと複雑に、したがって、もっと確実にするために、パラメ ータkは好適には次の関係式に従って、公開指数eの細分化によって得られる: k=h(e) したがって、暗号化されたメッセージFは、この実施態様によれば、下記の計 算によって得られる: F=f(h(e),M) 最後に、暗号化・暗号方式作業は下記の関係式に対応する: C=Fe mod N=[f(h(e),M)]e mod N Cは先に設定したごとく暗号化され、ついで暗号化されたメッセージである。 相互的に、復合・解読作業は下記の計算に従って実施される: M=F-1(h(e),Cd mod N) この方法の安全性の証明と鍵発見の無限小の確率のとくに複雑な計算は本出願 では詳細に述べない。 最後の注意はチップカードの数、より正確には同一のモジュールNを有する鍵 (N,ei,di)の数iを制限することである。 本発明による方法のとくに興味深い用途分野の一つはまさに同一のモジュール Nを含む限定された系列のカードの発行である。このモジュールは例えば、ある 使用者群または共通に使用されたサービスの認識に使われる。 同一のモジュールを有する鍵の使用は、使用される指数によってそれぞれの署 名者の身元を区別しながら、ある群の名において署名できる可能性を提供する。 本発明による方法の別の用途は、使用者を認識するために、あるいは同一の提 供者によって提供されたサービス群の認識を可能にするために同一のモジュール Nを有する複数の鍵(N,ei,di)を同一のカードに埋め込むことである。 最後に、特別な用途として、カードを識別してから、それを個別化すること、 すなわち使用者に固有の鍵を使用者に交付することが挙げられる。実際には、チ ップカードのメモリに、それらを試験し、ロットの中でそれを区別するための輸 送鍵が当初に読み込まれる。既知のカードにはIdで示した、カード識別番号が 含まれている。 この識別番号Idは安全のために下記の署名された形で伝送される: S(Id)=Idd modulo N (N,e,d)は輸送鍵と呼ばれる鍵のパラメータである。個別化の際に、この 鍵は使用者に固有の新規の鍵に切り替えられる。 本発明による方法によって、指数の対(e,d)だけを変更して輸送鍵内にす でに記憶されたモジュールNを再使用することができる。 本発明の利点はリードオンリーメモリEEPROMまたはROM内のデジタル 鍵によって使用されるメモリサイズを制限することである。このようにして小さ な寸法の構成部品が使用できる、あるいはそのためのデータの格納のために占有 されていないメモリ領域を使用できる。 本発明による方法の別の利点は、カードと端末あるいは管理センターの間の交 換を減らすことである。なぜなら、使用される鍵が変わる都度それを読み込むこ とを避けながら、端末は複数の鍵に共通モジュールNを記憧させることができる 。 最後に、本発明による方法によって、複雑な計算の対象となったモジュールN は数回使用できるので、デジタル鍵生成の際の膨大な計算時間の節約が得られる 。The present invention relates to a method for signing and / or authenticating an electronic message. It is especially for use by portable devices of the microprocessor type of "electronic chip card" type. To protect the exclusivity of certain services, chip cards generally have digital keys, which are used to sign or authenticate messages exchanged between the card and a verification device, for example a reading terminal or a management center. Or the sequence used by the computational algorithm for authentication of the card used. Furthermore, such a key can be used to encrypt the transmitted message. The message can then be decrypted only by a device having a key equal to the encryption key (in this case called a symmetric encryption) or a key corresponding to a secret encryption key (asymmetric encryption). For example, when signing a message sent from a card to a reading terminal or to a management center, or also to execute a transaction (electronic check), which first manages the transaction by the reading terminal with which the transaction was made and then This is the case when this transaction is signed as verified by the center. Hereinafter, the expressions “digital signature” and “digital signature” or the expressions “digital key” and “electronic key” are used interchangeably. Indeed, signatures with keys constituted by sequences are particularly suitable for signing electronically transmitted messages. An electronic signature is calculated by a set of calculation rules defined by the algorithm and the overall parameters used in these calculations. The signature can simultaneously verify the identity of the signer (because it intervenes the signer's unique secret exponent) and the integrity of the signed message (because it intervenes the message itself). The algorithm can generate a signature on the one hand and verify the signature on the other hand, this operation is called verification. Authentication is a special verification operation whereby the terminal or management center verifies only the card's signature prior to any exchange of significant messages. During this procedure, the verifier sends an arbitrary message to the card, which signs it back. This allows the verification device to authenticate the signature of this message. Authentication preferably involves a different digital key than that used for the message signing / verification operation. The method of signature and authentication described below is based on a standardized algorithm called RSA from the name of its inventor (Rivest, Shamir and Adleman), which is disclosed in detail in US Pat. No. 4,405,829. It is intended to be used. Generating the RSA signature intervenes the secret exponent. Verification involves a public index that corresponds to the secret index but is not the same. Each user has a pair of indices (secret, public). The public index may be known to everyone, but the secret index must never be disclosed. Although anyone has the ability to verify a user's signature using the user's public index, only the owner of the secret index can generate a signature corresponding to the index pair. More precisely, the RSA electronic key has three parameters (N, e, d) called module N, public exponent e and secret exponent d, respectively. The two prime numbers (N, e) can be read on the chip card admired there, and are named public parameters. On the contrary, the secret exponent d is stored in the protected memory area of the card which cannot be read from the outside. Only the protected computing circuitry of the card has access to reading the secret exponent d. The electronic key is embedded in the card by programming a read only memory EEPROM. The public parameters (N, e) are embedded in an area of the memory EEPROM that can be read and accessed from the terminal. Conversely, since the secret exponent d is embedded in a protected area of the memory EEPROM, the exponent d is only provided to the processor of the card for its calculation. Each parameter is composed of a digital integer. The length of module N is generally at least 512 bits. In practice, each parameter of the triple (N, e, d) has an average length of 512 bits. However, the public exponent e is often shorter to facilitate signature verification. Hereinafter, the flow of the electronic signature, verification, authentication, encryption, and decryption work of a message when the RSA calculation algorithm is used will be described. With a key whose public parameters are (N, e, d), to obtain the signature S of the message M, the chip card performs the following calculation: M d modulo N = S where the card is a pair (M, S), That is, a message with the signature S is transmitted. The card sends out the parameters (N, e) used for calculating the signature of the message M, or the terminal goes to read. This allows the terminal to verify the signature S by performing the following calculation: S e mod N = M 'Then the terminal verifies that M' is equal to M. The authentication operation between the card and the verification device consists of the card proving its identity to the verification device. To do so, the verification device sends an arbitrary message X to the card. The card computes the signature A of this message from the parameters (N ', e', d ') of another RSA key using the following relation: X d' mod N '= A The verifier publishes module N' The exponent e 'can be read or received, thereby decrypting any such message A signed and the message X' can be obtained using the following relation: Ae ' mod N' = X 'Then authentication is performed by this verifier by comparing X and X'. When any message X matches the decrypted message X ', the signature is authenticated. Since the secret exponent d is inaccessible and the three parameters (N, e, d) are large binary numbers, unauthorized use of the signature becomes impossible. The amount of computation and time required to find the secret exponent d, which is a solution to the above equation, is enormous, and it is unlikely that it will be found. For example, in a widely used chip card, an RSA key has three binary numbers of 512 bits each. At this time, it can be seen that only one key occupies 192 bytes of memory space. Another role of the digital key and the RSA algorithm is to keep the message exchange between the card and the terminal or management center secret. Confidentiality is obtained by encrypting and decrypting the exchanged messages. The encryption of the message M is obtained by the RSA algorithm, implementing the following binary operation: Me mod N = C Thus, the encryption is similar to the signature, but instead of the secret exponent d in this case It is obtained by an operation using the public exponent e. Reciprocally, the decryption can be represented by the following binary operation: C d mod N = M, whereby the card decrypts the message C encrypted using its digital key module N and secret exponent d. can do. Here, the decryption needs to know the secret exponent d, which is almost impossible to find as seen above, so that the confidentiality is maintained. In general, all triples of integers (N, e, d) must satisfy the following mathematical condition: ed = 1 mod E (N) where E (N, called the "Euler function" ) Is a prime number with N and is an integer number equal to or less than N. In practice, multiple keys can be embedded in the chip card, each key allowing access to different services. The memory EEPROM must in this case contain as many triples (N1, e1, d1), (N2, e2, d2)... (Ni, ei, di) as there are keys. The inconvenience of using such an algorithm for a chip card when multiple keys are scheduled is that it occupies a large amount of read only memory EEPROM. According to the above example, a card with 10 RSA keys of 192 bytes requires about 2K bytes of read-only memory EEPROM. Another inconvenience is that a large number of keys must be generated since a large number of cards must be programmed knowing that each card contains multiple keys. In fact, the calculation time for designing a digital key is long. The selection of each exponent pair (e, d) for each module N and each key requires a series of complex tasks to verify the mathematical conditions to ensure security and inviolability. . SUMMARY OF THE INVENTION It is an object of the present invention to optimize the memory space of a chip card and to simplify signature and authentication operations. Another object of the invention is to guarantee the security and inviolability of digital coding. Surprisingly, according to the invention, these objectives are distinguished by the fact that the two keys are distinguished by the fact that the exponent pair (e1, d1) of one key is different from the exponent pair (ei, di) of another key. Use digital keys (N, e1, d1), (N, e2, d2),..., (N, ei, di) including module N, and use such keys only for signature, verification and / or authentication procedures Achieved by: In particular, only one digital key (N, e1, d1) among the digital keys (N, e1, d1),..., (N, ei, di) having the same module N is encrypted and / or encrypted. Can be used for decryption procedures. According to the invention, a method of signing and / or authenticating an electronic message is used, wherein the computation algorithm uses an electronic key to sign the message and / or authenticate the message, wherein the key is composed of a sequence and the chip Embedded in the card, one key is in particular a triple of integers: (N, e, d): a module (N), a public exponent (e), and a secret exponent (d), with two keys Is such that one key triplet (N, e, d) is different from the other key triplet (N ', e', d '), and this method uses multiple keys (N, e, d), (N, e, d). e ', d') have the same module (N), in particular for recognizing the user or the same use of the card, characterized in that these keys are addressed to the signing, verification and / or authentication of the message. And According to a variant, the invention provides the highest of the keys (N, e, d), (N, e ', d'), (N, e ", d") with the same module (N). One key (N, e, d) is implemented using a method that is addressed to message encryption and / or decryption. The invention is preferably realized by a method wherein the signing of the message (M) is performed after the segmentation operation. Finally, the invention aims at realizing an electronic chip card (C1) having a memory containing an electronic key (N, e, d) used for signing and / or authenticating electronic messages, wherein the key (N, e) is , d) is composed of a sequence of numbers stored in memory, one key (N, e, d) being in particular a triple of integers: module (N), public exponent (e), and secret exponent (d ), And two keys (N0, e0, d0) and (N1, e3, d3) are one key triplet (N0, e0, d0) and the other key triplet (N1, e7, d7). And one key of the card (N0, e0, d0) is different from the other key (N0, e1, d1), (N0, e5, It is characterized by having the same module (N0) as the module (N0) of d5). The realization of the present invention may be better understood by reading the following detailed description and drawings with reference to the accompanying drawings, in which: In the accompanying drawings: FIG. 1 is a schematic diagram of a chip card using a method for signing, verifying and / or authenticating an electronic message according to the invention. FIG. 1 schematically shows the embedding of a plurality of digital keys (N0, e0, d0)... (N1, e3 ′, d3 ′) into two different cards by the method according to the present invention. The first chip card C1 is indicated by two parts, a public part P1 and a secret part S1, and represents an accessible area and a protected area of the read-only memory EEPROM of the card C1, respectively. The second chip card C2 is likewise shown with a public part P2 and a secret part S2 representing the accessible and protected areas of its read-only memory. The parameters N0, N1, e0, e0 ', e1, e1', e2, e2 ', e3, e3' of the first sequence are shown in the public part P1 of the card C1. The first series corresponds to the module and the public index stored in the accessible area of the read-only memory of the first card C1. The parameters of the second sequence, d0, d0 ', d1, d1', d2, d2 ', d3, d3', are shown in the secret part S1 of the card C1. The second sequence corresponds to the secret exponent stored in the protection area of the read-only memory of the first card C1. Similarly, in the second card C2, the parameters N0, N1, N2, e4, e4 ', e5, e5', e6, e6 ', e7, e7' of the third series are included in the public part P2, In the portion S2, there are parameters d4, d4 ', d5, d5', d6, d6 ', d7, d7' of the fourth series. The third series of parameters correspond to the modules and public indexes stored in the accessible area of the read only memory EEPROM, and the fourth series is stored in the protection area of the read only memory EEPROM of the second card C2. Corresponding to the secret exponent. These parameters, which are then grouped in triplets (N, e, d), form a digital key which enables the above mentioned signature / verification or authentication or encryption / decryption operations. The following table shows, for example, two groups of digital keys formed by taking the series of parameters of the cards C1 and C2 of FIG. 1 and their application to the signature / verification or authentication or encryption / decryption operation according to the invention. Shows the use of the card. In the second column entitled Digital Key, card C1 has the same module NO, six keys (N0, e0, d0), (N0, e0 ', d0'), (N0, e1, d1), (N0 , e1 ', d1'), (N0, e2, d2) and (N0, e2 ', d2'). The authentication operation preferably uses a separate signing / verification key, even if these operations relate to the same service on the card. These signature / verification and authentication keys can, however, have the same module. Therefore, in the example of the table, among the six keys of the card C1 having the module N0, three keys (exponent pairs (e0, d0), (e1, d1) and (e2, d2)) are signed / signed. Addressed to the verification work, it showed that the other three keys (exponent pair (e0 ', d0'), (e1 ', d1') and (e2 ', d2') are for authentication. In addition, each key with the common module N0 can be combined for the use of a separate service, for example, three keys (N0, e0, d0), (N0, e1, d1) and (N0, e2). , d2) can correspond to the three bank accounts of the user of card C1, with each index pair (e0, d0), (e1, d1) and (e2, d2) in each account. It is combined with the corresponding separate digital signature, however, as shown in the last column of the table. Since only one of the six keys has the same module N0, the key (N0, e0, d0) is used for the encryption / decryption operation. N0 is not used in two separate encryption / decryption keys, which satisfies the security and inviolability requirements of the encryption operation The second part of the table contains the module N0 in which the card C2 is the same. It has four keys (N0, e4, d4), (N0, e4 ', d4'), (N0, e5, d5), and (N0, e5 ', d5'). It can be seen that the common module N0 can be provided on different cards C1, C2, however, the module N0 is used in this example by the key (N0, e0, d0) of the card C1 for the encryption / decryption operation. So any encryption / decryption work It must not be performed with the key (N0, e4, d4) or key (N0, e4 ', d4') or key, (N0, e5, d5) or (N0, e5 ', d5') of the second card C2. In this case, the same module N0 indicates a use of the present invention common to a plurality of cards, for example, keys (N0, e0, d0) and (N0, e4, d4) are scheduled for these cards. The above table corresponds to the keys (N1, e3, d3), (N1, e3 ', d3'), (N1, e6, d6), (N1, e3, d3) having the same module N1. N1, e6 ', d6'), in which only the key (N1, e6, d6) associated with the card C2 enables the encryption / decryption operation. In short, according to a feature of the method according to the invention, a plurality of keys have the same module, and these keys are addressed for signing and / or authentication of the message. According to a variant of the method according to the invention, at most one such key having the same module is used for encrypting and / or decrypting the message. However, in order to ensure maximum security, attention is paid to the choice of public indices, as detailed below. As a first note, the mathematical properties restrict the choice of public exponents e0,. Each of these public indices, denoted by ek, is a divisor of the least common multiple (abbreviated as ppcm) of the other public indices for the same module: e 0 ,..., e k−1 , ek + 1, ei Not be. The realization of this first notice is obtained especially by selecting public exponents e0,... Ei from prime numbers. In fact, it is mathematically impossible for a prime to be a divisor of a multiple of another prime. However, since the calculation of a large number of prime numbers is a huge number of calculations, another method can be adopted. It consists of arbitrarily choosing a plurality of public indices e0,... E1 from a very large number. At this time, it can be proved that the probability of finding the key is extremely low. This proof is out of the scope of the present application. However, as an example, consider the choice of arbitrarily 16 exponents e 0,... E 16 out of a 180-bit binary number; in this case, one of the exponents ek may be a divisor of the ppcm of the other. The gender is 1/270 . According to another example, the selection of 256 exponents e0,..., 256 from a 512-bit binary number has a probability of less than 2-166 . This method makes it possible to obtain a high degree of certainty, albeit less strictly, but while saving computation time. A second precaution is to subdivide the messages before signing them. For this purpose, well-known types of segmentation algorithms can be used. This complication doubles the number of tasks required for digital key discovery, making that possibility entirely impossible. Typically, the segmentation algorithm is a probability function that associates, by chance, a number less than an integer P with a sequence of binary numbers, such as message M. The result of the fragmentation of the message M is thus a fixed binary size compression, the size of the integer P. Advantageously, the SHA algorithm, an algorithm that conforms to the "Secure Hash Standard" published by the National Institute of Standards and Technology, will be used. Note that it is desirable to apply iterative refinement when the size of the result, ie the size of the integer P, is much smaller than the size of the modules N0, N1,. Note that At the time of the iterative segmentation, the message M is separated into sub-messages m, m ',..., And each of the sub-messages is isolated and processed by the segmentation algorithm. For example, when the digital key comprises parameters N, e, d of about 512 bits and the result of the refinement algorithm used gives a result having a size of 128 or 160 bits, it is better to apply such an iterative refinement. desirable. According to a preferred embodiment of the present invention, a refinement function h using a public index e and a message M is used, represented by the form: H = h (e, M) where H is the result of the refinement; That is, it is a fragmented message. Therefore, the signing work following the segmentation obeys the following relation: S = H d mod N = (h (e, M)) d mod N Reciprocally, the verification work is performed by verifying the following relation it will be: S e mod N = h ( e, M) procedures in this subdivision is advantageous to provide greater certainty on the signature and authentication methods. It is envisaged that the preferred embodiment according to the invention further uses a complex encryption function f before encrypting. This provides a second order encoding with two separate encoding methods and enhances the security of the encryption. An algorithm that matches the data encryption standard, such as the DES algorithm (Data Enscryption standard), can thus be used to implement the function f for symmetric encryption. For example, using the message M to be encrypted and the parameter k, one can select an encryption function f represented by the following form: F = f (k, M) where F is the encrypted message. Since symmetrical, the function f verifies the following relationship, represented by f -1, allowing inverse function: M = f -1 (k, M) more complex work encryption, therefore, For more certainty, the parameter k is obtained by subdivision of the public exponent e, preferably according to the following relation: k = h (e) Thus, the encrypted message F is according to this embodiment. Then, by the following calculation: F = f (h (e), M) Finally, the encryption / encryption scheme operation corresponds to the following relation: C = F e mod N = [f (h ( e), M)] e mod NC is a message that has been encrypted as previously set and then encrypted. Reciprocally, the decryption / decryption operation is performed according to the following calculation: M = F −1 (h (e), C d mod N) Proof of the security of this method and infinite probability of key discovery, in particular Complex calculations are not described in detail in this application. A final precaution is to limit the number of chip cards, more precisely the number i of keys (N, ei, di) having the same module N. One particularly interesting field of application of the method according to the invention is the issuance of a limited series of cards containing exactly the same module N. This module is used, for example, to recognize a certain group of users or commonly used services. The use of a key with the same module offers the possibility to be able to sign in a group of names, distinguishing the identity of each signer by the exponent used. Another application of the method according to the invention is to use a plurality of keys (N, ei) with the same module N to identify a user or to enable the recognition of a group of services provided by the same provider. , di) in the same card. Finally, a special use is to identify a card and then personalize it, that is, to issue a user-specific key to the user. In practice, a transport key is initially loaded into the memory of the chip card to test them and distinguish them in the lot. Known cards include a card identification number, indicated by Id. The identification number Id is transmitted in the following signed form for safety: S (Id) = Id d modulo N (N, e, d) is a parameter key called transport key. Upon personalization, this key is switched to a new key specific to the user. With the method according to the invention, it is possible to reuse the module N already stored in the transport key by changing only the pair of indices (e, d). An advantage of the present invention is that it limits the memory size used by a read-only memory EEPROM or digital key in a ROM. In this way, components of smaller dimensions can be used, or unoccupied memory areas can be used for storing data therefor. Another advantage of the method according to the invention is that it reduces the exchange between the card and the terminal or the management center. This is because the terminal can store the common module N in a plurality of keys while avoiding reading the used key each time it changes. Finally, with the method according to the invention, the module N, which has been subjected to a complex calculation, can be used several times, thus saving a great deal of calculation time when generating a digital key.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ナカッシュ,ダヴィッド フランス共和国,エフ―75009 パリ,リ ュ シャプタル,7────────────────────────────────────────────────── ─── Continuation of front page    (72) Inventor Nakash, David             France, F-75009 Paris, Li             The Shaptar, 7

Claims (1)

【特許請求の範囲】 1.計算アルゴリズムがメッセージに署名するために、および/またはメッセー ジを認証するために電子鍵を用いる電子メッセージの署名、検証および/または 認証方法において、鍵が数列で構成され、チップカードに組み込まれ、一つの鍵 がとくに整数の三つ組:(N,e,d): ・モジュール(N)、 ・公開指数(e)、および ・秘密指数(d)、 を有し、2つの鍵は一方の鍵の三つ組(N,e,d)が他の鍵の三つ組(N’,e ’,d’)と異なることから区別され、複数の鍵(N,e,d),(N,e’,d’ )がとくにカードの使用者または同一の使用を認識するために同一のモジュール (N)を有し、これらの鍵がメッセージの署名、検証および/または認証にあて られることを特徴とする方法。 2.一つの鍵(N,e,d)によるメッセージ(M)の署名作業が、鍵(N,e,d )のメッセージ(M)、モジュール(N)と秘密指数(d)の関数(g(M,N, d))に応じて署名されたメッセージ(S)を計算することから成り、および/ または検証作業が鍵(N,e,d)の署名されたメッセージ(S)、モジュール( N)と公開指数(e)の関数(g(S,N,e))に応じて検証されたメッセージ (M’)を計算することから成ることを特徴とする請求項1に記載の方法。 3.一つの鍵(N’,e’,d’)によるメッセージ(A)の認証作業が、任意の メッセージ(X)を伝送し、署名された任意のメッセージ(A)を受信し、鍵( N’,e’,d’)の署名された任意のメッセージ(A)、モジュール(N’)と 公開指数(e’)の関数(g(A,N’,e’))に応じて認証されたメッセージ (X’)を計算し、認証されたメッセージ(X’)を任意のメッセージ(X) と比較する、請求項1または2に記載の方法。 4.同一のモジュール(N)を有する鍵(N,e,d),(N,e’,d’),(N ,e”,d”)の中で、最高で一つの鍵(N,e,d)がメッセージの暗号化および /または復合化にあてられる、請求項1〜3のいずれか一つに記載の方法。 5.鍵(g(M,N,e)による、メッセージ(M)の暗号化作業が、鍵(N,e, d)の暗号化されたメッセージ(M)、モジュール(N)と公開指数(e)の関 数(g(C,N,d))に応じて暗号化されたメッセージ(C)を計算することか ら成り、および/または鍵(N,e,d)による復合化作業が鍵(N,e,d)の暗 号化されたメッセージ(C)、モジュール(N)と秘密指数(d)の関数(g( C,N,d))に応じて復合化されたメッセージ(M)を計算することから成る、 請求項4に記載の方法。 6.暗号化作業に先立って暗号化が行われ、および/または復合化作業の後に解 読が行われ、暗号化または解読作業に逆関数(f,f-1)と公開指数(e)が用 いられる、請求項4または5に記載の方法。 7.メッセージ(M)の署名に先立って細分化作業が行われる、請求項1〜6の いずれか一つに記載の方法。 8.同一のモジュール(N)を有する鍵(N,e1,d1),(N,e2,d2), ・・・,(N,ei,di)の公開指数(e1,e2,・・・,ei)の中で、これ らの公開指数のそれぞれ(ek)が同一モジュール(N)に関する他の公開指数 (e1,e2,・・・,ek−1,ek+1,・・・,ei)の最小公倍数の約数では ない、請求項1〜7のいずれか一つに記載の方法。 9.請求項1〜8のいずれか一つに記載の方法を使用するチップカード。 10.電子メッセージの署名および/または認証に使用される電子鍵鍵(N,e, d)を含むメモリを有する電予チップカード(C1)において、鍵(N,e,d) がメモリ内に記憶された数列で構成され、一つの鍵(N,e,d)がとくに整数の 三つ組: ・モジュール(N)、 ・公開指数(e)、および ・秘密指数(d)、 を有し、2つの鍵(N0,e0,d0),(N1,e3,d3)は一方の鍵の三つ組 (N0,e0,d0)が他方の鍵の三つ組(N1,e3,d3)とは異なることによ って区別され、カードの一つの鍵(N0,e0,d0)がこのカード(C1)また は別のカード(C2)の別の鍵(N0,e1,d1),(N0,e5,d5)のモジ ュール(N0)と同一のモジュール(N0)を有することを特徴とするカード。[Claims] 1. In a method of signing, verifying and / or authenticating an electronic message, wherein the computational algorithm uses an electronic key to sign the message and / or authenticate the message, the key is composed of a number sequence, embedded in the chip card, One key has, in particular, a triple of integers: (N, e, d): a module (N), a public exponent (e), and a secret exponent (d), where two keys are triads of one key (N, e, d) is distinguished from the other key triplets (N ', e', d '), and a plurality of keys (N, e, d), (N, e', d ') In particular having the same module (N) for recognizing the user or the same use of the card, wherein these keys are used for signing, verifying and / or authenticating the message. 2. The signature operation of the message (M) with one key (N, e, d) is performed by the message (M) of the key (N, e, d), the function of the module (N) and the secret exponent (d) (g (M , N, d)) and / or verifying the signed message (S) with key (N, e, d), module (N) 2. The method according to claim 1, comprising calculating a verified message (M ') as a function of (g (S, N, e)) and a function of the public exponent (e). 3. The operation of authenticating the message (A) using one key (N ′, e ′, d ′) transmits an arbitrary message (X), receives the signed arbitrary message (A), and receives the key (N ′). , e ′, d ′) signed message (A), authenticated according to the function of module (N ′) and public exponent (e ′) (g (A, N ′, e ′)) Method according to claim 1 or 2, wherein the message (X ') is calculated and the authenticated message (X') is compared with any message (X). 4. Among keys (N, e, d), (N, e ', d'), and (N, e ", d") having the same module (N), at most one key (N, e, d ") 4. The method according to claim 1, wherein d) is dedicated to encrypting and / or decrypting the message. 5. The operation of encrypting the message (M) with the key (g (M, N, e)) is performed by encrypting the message (M) with the key (N, e, d), the module (N) and the public exponent (e). And calculating the encrypted message (C) according to the function (g (C, N, d)) of and / or decrypting with the key (N, e, d). e, d) calculate the decrypted message (M) according to the function (g (C, N, d)) of the encrypted message (C), module (N) and secret exponent (d). 5. The method according to claim 4, comprising: encryption is performed prior to the encryption operation and / or decryption is performed after the decryption operation, and the inverse function (f, 6. The method according to claim 4 or 5, wherein f- 1 ) and the public exponent (e) are used 7. Prior to signing the message (M). 7. The method according to any one of claims 1 to 6, wherein a subdivision operation is performed 8. Keys (N, e1, d1), (N, e2, d2) having the same module (N), , (N, ei, di), each of these public indices (ek) is related to the same public module (N) by other public indices (e, e2,..., Ei). 8. The method according to any one of claims 1 to 7, wherein the method is not a divisor of the least common multiple of e1, e2, ..., ek-1, ek + 1, ..., ei). 8. A chip card using the method according to any one of 8. 10. An electronic chip card having a memory containing an electronic key (N, e, d) used for signing and / or authenticating electronic messages ( In C1), a key (N, e, d) is composed of a sequence stored in a memory, and one key (N, e, d) is , With a module (N), a public exponent (e), and a secret exponent (d), where two keys (N0, e0, d0) and (N1, e3, d3) are one Is distinguished by the fact that the key triple (N0, e0, d0) is different from the other key triple (N1, e3, d3), and one key (N0, e0, d0) of the card is this card (C1). Or a card having the same module (N0) as the module (N0) of another key (N0, e1, d1) and (N0, e5, d5) of another card (C2).
JP10523288A 1996-11-20 1997-11-20 Electronic message signing and / or authentication method Pending JP2001503162A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR96/14158 1996-11-20
FR9614158A FR2756122B1 (en) 1996-11-20 1996-11-20 METHOD FOR SIGNING AND / OR AUTHENTICATING ELECTRONIC MESSAGES
PCT/FR1997/002086 WO1998023061A1 (en) 1996-11-20 1997-11-20 Method for signing and/or authenticating electronic messages

Publications (1)

Publication Number Publication Date
JP2001503162A true JP2001503162A (en) 2001-03-06

Family

ID=9497820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10523288A Pending JP2001503162A (en) 1996-11-20 1997-11-20 Electronic message signing and / or authentication method

Country Status (5)

Country Link
EP (1) EP0940021A1 (en)
JP (1) JP2001503162A (en)
CA (1) CA2271989A1 (en)
FR (1) FR2756122B1 (en)
WO (1) WO1998023061A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017517979A (en) * 2014-06-10 2017-06-29 クアルコム,インコーポレイテッド Common method RSA key pair for signature generation and encryption / decryption

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19848378C2 (en) * 1998-09-05 2000-11-30 Orga Kartensysteme Gmbh Method for verifying the digital signature of a message
DE19952944A1 (en) * 1999-11-03 2001-05-23 Siemens Ag Access authorization method for computer or similar system
FR2803961B1 (en) 2000-01-19 2002-03-15 Ghislain Moret SYSTEM FOR SECURING TRANSACTIONS DURING CORRESPONDENCE PURCHASES

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5422953A (en) * 1993-05-05 1995-06-06 Fischer; Addison M. Personal date/time notary device
KR0144086B1 (en) * 1994-03-31 1998-08-17 조백제 Electronic signature mathod

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017517979A (en) * 2014-06-10 2017-06-29 クアルコム,インコーポレイテッド Common method RSA key pair for signature generation and encryption / decryption

Also Published As

Publication number Publication date
FR2756122A1 (en) 1998-05-22
CA2271989A1 (en) 1998-05-28
EP0940021A1 (en) 1999-09-08
WO1998023061A1 (en) 1998-05-28
FR2756122B1 (en) 1999-02-12

Similar Documents

Publication Publication Date Title
US7961915B2 (en) System and method for authenticated and privacy preserving biometric identification systems
JP6504013B2 (en) Cryptographic processing method, cryptographic processing device, and cryptographic processing program
US7188362B2 (en) System and method of user and data verification
EP0202768B1 (en) Technique for reducing rsa crypto variable storage
US5748782A (en) Device for implementing a message signature system and chip card comprising such a device
US8325994B2 (en) System and method for authenticated and privacy preserving biometric identification systems
AU651326B2 (en) Method and system for personal identification using proofs of legitimacy
US20160234010A1 (en) Method and system for homomorphicly randomizing an input
US6307938B1 (en) Method, system and apparatus for generating self-validating prime numbers
US20200106600A1 (en) Progressive key encryption algorithm
US8195951B2 (en) Data processing system for providing authorization keys
CN109660338B (en) Anti-quantum computation digital signature method and system based on symmetric key pool
US20110264917A1 (en) Method for two step digital signature
US7000110B1 (en) One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device
US9385872B2 (en) Reissue of cryptographic credentials
CN109918888B (en) Anti-quantum certificate issuing method and issuing system based on public key pool
JP2002535878A (en) Public and private key encryption method
CN107104788B (en) Terminal and non-repudiation encryption signature method and device thereof
US7424114B2 (en) Method for enhancing security of public key encryption schemas
US6928163B1 (en) Methods, systems and computer program products for generating user-dependent RSA values without storing seeds
JP2001503162A (en) Electronic message signing and / or authentication method
US20050123131A1 (en) Cryptographic system comprising an encryption and decryption system and a key escrow system, and the associated equipment and devices
JP2001503164A (en) Cryptographic systems, including encryption and decryption systems and key escrow systems, and related equipment
JP2001507479A (en) Pseudorandom generator based on hash function for cryptographic systems requiring random extraction
CN110838918B (en) Anti-quantum certificate issuing method and system based on public key pool and signature offset