【手続補正書】
【提出日】平成20年5月1日(2008.5.1)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
本発明の技術分野は、ｇｘと表記し、モジュロ（modulo）ｎの計算をし、指数計算の結果を使うスマートカードの技術分野である。これら計算は、特にサイン又はメッセージの認証を行う数多くの応用分野で行われる。
現在使われている最も実際的で信頼の置ける認証又はサインのスキームは公開キー・アルゴリズムである。これらの内一番良く知られて、一番広く使われているものはRSAアルゴリズム（発明者のR.Rivest、A.Shamir及びL.Adlemanに因んで名づけられた）であるが、計算時間の点でコストがかかる。離散対数（discrete logarithm）に基づくスキームは昔から知られており、特に時間を費やす指数計算に関する前処理計算（precomputation）に適合しているので有利である。
本発明は、どのような数学的構造においても、離散対数を使用し、公開キー・暗号化アルゴリズムを使う超小型回路カードに応用することができる。その構造として、特に、モジュロｎの数の環（但しｎは集合Zｎに属し、ｎより小さい正の整数の集合）、有限体GF（ｑ）（但しG(ｑ)は要素数がｑの体で、ｑは素数又は素数の冪である）の楕円曲線のような構造であっても良い。指数ｇｘはこれら構造全てをカバーする。
このような計算を実行する方法は、特許出願FR No．FR 2 716 058に開示されている。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
図２ａに示される予備フェーズの後にサイン処理が行われる。
銀行又は輸送会社等の事業者Aは公開キーＰＡ、秘密キーＳＡを持ち、数ｎ（ｎは素数又は素数の合成数）、ｇ（ｎより小さい、一般的にはかなり小さい整数）及びハッシュ関数ｈを選び、ＰＡ、ｎ、ｇ及びｈを、メッセージにサインをするエンティティＳに送る。このエンティティは例えば支払額を確認するカード、並びに、サインを確認しなければならないエンティティＶである。これらエンティティは、例えば商人が顧客に対して使う端末である。
エンティティＳは、秘密キーｘを選択し、公開キー ｙ＝ｇ−ｘ  mod ｎ を計算し、事業者Aに送る。すると、事業者Aは、サインの秘密キーSAから作成された証明書CertをエンティティSに送り返す。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
データｎ、ｇ、ｘ、ｙ、Certは、エンティティSのパーマネントデータである。
この予備段階が完了すると、メッセージMにサインする処理が開始する。即ち、図２ｂに示すＳが、Ｖが示した支払額にサインすることである。メッセージMには特に、支払額ｍ及びこの支払いを要求する端末Ｖの識別情報が含まれている。
このサイン処理のステップは次の通りである。
ａ）  Ｓはランダムにｋを選ぶ。
ｂ）  証拠要素（witness element）：ｒ＝ｇｋ mod ｎ を計算する。
ｃ）  Ａ、Ｓ及びＶについての既知のハッシュ関数ｈを使ってｃ＝ｈ（ｒ,M）を計算する。
ｄ）最後にｓ＝ｋ＋ｃｘを計算する。
ｅ）  ＳはＶにこれらの情報（ｙ、Ｃｅｒｔ，Ｍ、ｃ、Ｓ）を送る。
Ｖは、ＰＡを使ってＣｅｒｔを検査し、ｕ＝ｙｃｇｓ mod ｎを計算し、ｃ＝ｈ（ｕ、Ｍ）を確かめる。もしこれが正しければ、Ｍのサインは認証される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
この方法の手順の１つに、各取引における証拠ｒの計算がある。これには指数計算（例えば、ｒ＝ｇｋ mod ｎ）が必要である。この処理にはかなり時間がかかる。そのため、しばしば、これら証拠の予備計算が考えられる。しかし、これら予備計算は外部装置で行われ、次に、対（ｋ、ｒ）はカードの記憶領域（例えば、M3）に書き込まれる。これは問題である。
実際、これら証拠要素を計算するのに必要なデータを知ること、証拠要素自身について知ることにより、暗号化秘密キーを見つけることが可能になるからである。確かに、ｒとｋを知ることによりｃ＝ｈ（ｒ、Ｍ）が導かれ、ｓ＝ｋ＋ｃｘ、ｋとｃを知れば、ｘが分かる。従って、秘密はそれを保持すると見なされるエンティティと、大きな信頼を寄せるべきこの外部装置との間で共有されることになる。
又、対（ｋ、ｒ）をカードに送ったり、書き込んだりするトータル・セキュリティを確保することが必要である。
又、もしカードがもはや対（ｋ、ｒ）を持たないとしたら、再入力する必要がある。このためには特別な端末をネットワークに接続せねばならない。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
図３で示すケースにおいて、この待機時間に焦点を当てることにする。図３では、通信又はコンピュータ・ネットワークＲを介して金融会社Ｆの再チャージ・サーバにつながっている装置Ｐを使ってコンビネーション・カード型の電子財布（PME）の再チャージが示されている。この装置は、通常のSIMカード（Subscriber Identity Module）に加えカードPMEのような他のカードを受け入れることのできるミニテル（Minitel）端末又はコンピュータ又は携帯電話bi-fent（カード用２スロット付き）であってよい。
装置ＰにカードPMEを挿入すると、カードは接触モードで動作し、装置ＰはカードPMEに対しカード自身を認証する事を要求する。PMEのサインは、カードPMEに再チャージされる金額と共に、ＰによりＲを介してＦに送られる。この送信の開始から、装置Ｐに挿入されたカードPMEは待機状態になる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
図４に示される動作化手段（activation means）APCの動作の説明をする。図において、タスク“証拠要素の計算”はアクティブである、即ち、証拠要素の計算はステップＩで進行している。
外部事象があるとき、言い換えれば、タスク“証拠要素の計算”が計算を実行するために使う待機時間が終了した時（ステップII）で、もし、カードに対する電力供給がカットオフされないならば（ステップIII）、手段APCは実行することのできるタスクに進む。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
―  外部事象がUARTによる新たなＮバイトのメッセージの受信に対応するならば、手段APCはこのメッセージを待っていたタスク（例えば、タスクｔ１）に進む（ステップIV）。
―  外部事象がUARTによるN’バイトのメッセージの送信終了に対応するならば、手段APCはこのメッセージを送信したタスク（例えばタスクｔ２）に進む（ステップIV）。
手段APCが処理を進めたタスクｔｉ（例示したｔ１又はｔ２）が終了するか、又は外部事象が発生し（ステップＶ）、待機を引き起こす時に、手段APCはこのタスク“証拠要素の計算”が終わる（証拠要素の記憶領域が満杯になる）迄、又は、外部事象が生成し（ステップＶ）、初期状態に戻る迄の待機期間に、タスク“証拠要素の計算”に戻る。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
手段APCは、タスク間のプライオリティ、アプリケーション・タスクを管理する。アプリケーション・タスクは、“証拠要素の計算”タスクに対して常にプライオリティが高い。
証拠要素の計算には、時間がかかる。例えば、数100ｍｓかかる。この計算が、優先的なタスクである他のタスクにより、又は電源カットにより中断される時、この計算はステップ毎に行われ、中間結果は記憶領域（この例ではＭ３）にセーブされる。このように、APC手段がこの“証拠要素の計算”タスクに戻る時には、開始して完了していない計算は、消失しないので、既に行った計算を最初からやり直すことなく、再開することができる。即ち、APC手段が再び前記タスクに戻る時には、もしタスクがステップｍの間に中断され、ステップｍ−１の結果がセーブされるならば、計算はステップｍから再開される。