JP2002509269A - 送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法 - Google Patents

送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法

Info

Publication number
JP2002509269A
JP2002509269A JP2000539611A JP2000539611A JP2002509269A JP 2002509269 A JP2002509269 A JP 2002509269A JP 2000539611 A JP2000539611 A JP 2000539611A JP 2000539611 A JP2000539611 A JP 2000539611A JP 2002509269 A JP2002509269 A JP 2002509269A
Authority
JP
Japan
Prior art keywords
prgm
message
encrypted
receiver device
result
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
JP2000539611A
Other languages
English (en)
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 JP2002509269A publication Critical patent/JP2002509269A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 本発明は、送出器デバイス(E)から受信器デバイス(R)へのメッセージ(Prgm)の伝達を安全にする方法に関する。本発明の方法は、メッセージ(Prgm)は、nが1より大きい数であるとして、n個の基本単位(I)に更に分割されることと、論理的特性(P)は、任意の基本単位(I)に対して、真正の基本単位(I)に用いたときに真のタイプの論理値を与えるように定義されることと、メッセージ(Prgm)は、結果Kc(Prgm)を得るために鍵(Kc)を有する暗号化アルゴリズムを使用して前記送出器デバイス(E)の暗号化手段によって暗号化されることと、暗号化された結果Kc(Prgm)は、送出器デバイス(E)によって、受信器デバイス(R)に伝達されることと、暗号化された結果Kc(Prgm)は、解読された結果Kd(Kc(Prgm))を得るために秘密鍵(Kd)を有する解読アルゴリズムを使用して受信器デバイス(R)によって解読されることと、解読された結果Kd(Kc(Prgm))は、基本単位(I)に更に分割されることと、論理的特性(P)は、それぞれの単位に対して、真のタイプ又は偽のタイプの論理値を得るために、基本単位(I)に用いられることとを特徴とする。本発明は、スマートカードの分野に特に適している。

Description

【発明の詳細な説明】
【0001】 本発明は、送出器デバイス(emitter device)から受信器デバイス(receiver de
vice)へメッセージを伝達する安全な(secure)方法に関する。
【0002】 情報が送出器デバイスから受信器デバイスに伝達されるとき、メッセージに含
まれるような情報は、移動中に劣化する危険がある。そのような劣化は、メッセ
ージの、送出器中、伝達経路中、又は受信器中の欠陥に由来することがあり、あ
るいは、第三者の不正手段に由来することがある。受信された場合のメッセージ
は、こうして、不正(corrupted)となる。
【0003】 このことが、伝達されたメッセージ不正でないことを照合(verify)することが
できる方法を開発した理由である。
【0004】 更に、情報が送出器デバイスから受信器デバイスに伝達されるとき、当該情報
へのアクセスを、限られた数の人のみに対して、通常、メッセージの送出器及び
受信器に対して確保するように、メッセージを秘密にすることが、時々有用であ
る。
【0005】 このことが、メッセージの秘密性を保持することができる方法を開発した理由
である。
【0006】 最後に、メッセージ中に含まれる情報が受信器デバイスに伝達されるとき、送
出器デバイスから真正に来る場合のメッセージを認証する(authenticate)ことが
できることは、しばしば有用である。
【0007】 このことが、メッセージ認証方法を開発した理由である。
【0008】 秘密性を保持するための、及び認証を提供するための、不正(corruption)がな
いことを照合するための知られた方法、すなわち、メッセージを安全にするため
の方法は、通常、メッセージを暗号化(encrypting)すること、及び伝達前に、そ
こに保証(certificate)を付加することにある。受信器デバイスは、次に、メッ セージを解読(decrypt)、保証を照合し、及び、恐らくは、メッセージがコンピ ュータプログラムであれば、それを実行する。
【0009】 そのような方法は、保証を解読しかつ照合することが2つの別個の操作を含む
限り、明らかに幾分面倒なものである。これは、暗号化及び解読の操作が非常に
長いときに、特に当てはまる。
【0010】 上述の見地から、本発明が解決を探している問題は、メッセージを解読するス
テップと保証を照合するステップの上述の2つのステップを実施する必要がない
、送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法を
提供するという問題である。
【0011】 上述の問題の見地から、本発明は、送出器デバイスから受信器デバイスへのメ
ッセージの伝達を安全にする方法であって、 − メッセージは、nが1より大きい数であるとして、n個の基本単位(element
ary unit)に、更に分割(subdivide)されることと、 − 論理的特性(logical property)は、任意の基本単位に対して、真正の基本単
位に用いたときに真のタイプの論理値を与えるように、当該論理的特性が定義さ
れることと、 − メッセージは暗号化された結果を得るために鍵を有する暗号化アルゴリズム
を使用して送出器デバイスの暗号化手段によって暗号化されることと、 − 暗号化された結果は、送出器デバイスによって、受信器デバイスに伝達され
ることと、 − 暗号化された結果は、解読された結果を得るために秘密鍵を有する解読アル
ゴリズムを使用して受信器デバイスによって解読されることと、 − 解読された結果は、基本単位に更に分割されることと、 − 論理的特性は、それぞれの単位に対して、真のタイプ又は偽のタイプの論理
値を得るために、その基本単位に用いられることと、 − それぞれの単位の論理値が真のタイプであれば、そのメッセージは、真正で
ありかつ不正でない(uncorrupted)と判断されることとを特徴とする方法を提供 する。
【0012】 好都合には、次に、そのメッセージは記憶される。
【0013】 好都合には、メッセージPrgmは、受信器デバイスRによって、実行及び/
又は解釈されるために適したコンピュータプログラムである。基本単位は、プロ
グラムPrgmの命令である。基本単位Iに使用される場合の特性Pは、基本単
位Iが実行可能及び/又は解釈可能であるときはいつも、真のタイプの論理値を
与える。基本単位Iに使用される場合の特性Pは、基本単位Iが実行可能及び/
又は解釈可能でないときはいつも、偽のタイプの論理値を与える。受信器デバイ
スRは、スマートカードタイプの、メモリを有する携帯型の物である。受信器デ
バイスRは、スマートカードタイプの、メモリを有する携帯型の物を含む。メモ
リを有する携帯型の物は、加入者識別モジュール(subscriber identity module,
SIM)である。メッセージPrgmは、高レベルの解釈される言語(interpreted
language)で書かれる。高レベル言語は、Java言語である。コンピュータプ ログラムは、一組のプリコンパイルされた命令から構成される。メッセージPr
gmは、連続フロー(continuous flow)又は連鎖(chained-together)ブロックと して暗号化される。メッセージPrgmは、ブロック中で暗号化され、暗号化さ
れたメッセージPrgmのブロックは、入れ替えられる。入れ替えられたブロッ
クの1つは、メッセージPrgmの開始ブロック(starting block)又は終了ブロ
ック(end block)である。結果Kc(Prgm)は、ブロックで解読され、それ ぞれの暗号化されたブロックは、暗号化されたブロックと同じスペースを占有す
る解読されたブロックを生じさせる。暗号化及び解読アルゴリズムは、送出器デ
バイスEによって受信器デバイスRに伝達される乱数を利用する。メッセージP
rgmは、照合の後に、受信器デバイスRの不揮発性メモリ中に記録される。
【0014】 本発明は、以下の限定ではない説明を読むと、より理解されるであろう。
【0015】 本発明では、メッセージPrgmは、送出器デバイスEから受信器デバイスR
に伝達される。
【0016】 例として、メッセージPrgmは、実行及び/又は解釈されるために適したコ
ンピュータプログラムである。
【0017】 例として、送出器デバイスEは、サーバ、コンピュータ、遠隔通信ネットワー
クにおける送信局(transmitter station)、又は、接触式若しくは非接触式のス マートカードリーダ、すなわち、メッセージを暗号化かつ送出できる任意のデバ
イスである。当然のこととして、送出器デバイスEは、1つの部分が例えばメッ
セージの暗号化の働きをし、また他の部分が実際に当該メッセージを送出する働
きをするような、実際には別個である物理的部分から構成される複合デバイスを
含むような広い意味で考えなければならない。
【0018】 例として、受信器デバイスRは、スマートカードリーダ及び当該リーダ中に挿
入されたカード、遠隔通信ネットワーク中の受信局、オプションとして加入者識
別モジュール(SIM)が取り付けられた携帯電話、又は、スマートカード又は
そのようなモジュールでさえも、言いかえれば、メッセージを受信でき、又はメ
ッセージを記憶でき、及び好都合にはメッセージがコンピュータプログラムであ
る場合に当該プログラムを解釈及び/又は実行することができる任意のデバイス
が、オプションとして取り付けられたコンピュータである。受信器デバイスは、
好都合に、スマートカードタイプの携帯型のメモリ物体を含むとき、携帯型の物
は、支払カード(payment card)、又は例えばコンピュータネットワークへの、ア
クセスを制御するカードとすることができる。
【0019】 本発明の以下の説明は、メッセージはコンピュータプログラムPrgmである
例に限定されている。
【0020】 本発明では、コンピュータプログラムPrgmは、nが1以上の整数であると
して、n個の基本単位Iに更に分割される。それは、命令、命令のブロック、又
はプログラムPrgmがJavaタイプの解釈可能な言語で書かれている場合に
はプリコンパイルされたプログラム命令(又はバイトコード)を含む。
【0021】 本発明では、論理的特性Pは、真正の基本単位に使用されたときのこの特性P
が、どの基本単位Iに対しても、真のタイプの論理値P(I)を与えるように定
義される。それにもかかわらず、基本単位Iに使用されるとき、当該基本単位I
が改変されかつ例えば認識不能なプログラム命令、特に解釈及び/又は実行でき
ないようなプログラム命令に対応するときはいつも、偽のタイプの論理値P(I
)を与える特性Pを見つけるための試みがなされる。
【0022】 本発明では、結果Kc(Prgm)を得るために送出器デバイスEに既知の鍵
Kcを有する暗号化アルゴリズムを使用して、プログラムPrgmは、送出器デ
バイスEの暗号化手段によって暗号化される。暗号化は、送出及び受信の間、と
りわけ受信器デバイスRへ伝達中の間、秘密に保たれることを保証する。結果K
c(Prgm)は、このようにして、デバイスEから受信器デバイスRに伝達さ
れる。
【0023】 それは次に、受信器デバイスに既知の秘密鍵Kdを含む暗号化アルゴリズムを
使用して、デバイスRによって解読される。次に、解読された結果Kd(Kc(
Prgm))が得られる。
【0024】 この鍵Kcは、デバイスEに特有とし、又はデバイスRが既知であり、及びデ
バイスEにも既知とすることができる。第1の形態の例は、デバイスRが、送出
器デバイスによって送付されたサービスの加入者である場合である。第2の形態
の例は、解読鍵Kdは受信器デバイスのみに既知であるままである一方、プログ
ラムの伝達のリクエスト時に、受信器デバイスが鍵Kcを送付する場合である。
同じ形態の他の例は、Kc及びKdが同一である(プライベート・キー・システ
ム)、及び、当該鍵が受信器デバイスによって送出器デバイスに暗号化された形
態で送られる場合である。
【0025】 本発明では、解読された結果Kd(Kc(Prgm))は、送出器デバイスE
でプログラムPrgmを更に分割した結果であるn個の基本単位のイメージであ
る、又はそれらに対応するn個の基本単位に、更に分割され、又は分解される。
【0026】 次に論理的特性Pは、それぞれの単位に対して真のタイプ又は偽のタイプの論
理値を得るために、当該n個の基本単位に用いられる。
【0027】 全ての論理値が真のタイプであるとき、解読されたプログラムが暗号化された
プログラムと同一である可能性、及び暗号化のために使用された鍵が予期された
鍵Kcであった可能性は非常に高い。次に受信器デバイスRは、プログラムPr
gmは不正でないと、及び、それは鍵Kcを所有している送出器デバイスEによ
って確かに送出されたものであり、そのため真正であると推定する。
【0028】 しかし、少なくとも1つの論理値が偽のタイプであるとき、解読されたプログ
ラムは、Prgmと異なっており、また、受信器デバイスRは、プログラムPr
gmが、放出時、受信時、又は伝達中に少なくとも1つの改変を受けたと、及び
/又は、当該プログラムPrgmが、Kc以外の鍵、すなわち予期しない鍵を使
用して、メッセージ中に暗号化されたと推定する。その場合には、当該プログラ
ムは、不正ではないということも真正であるということもない。
【0029】 このように、本発明によって、暗号化及び解読の単一の操作で、メッセージが
不正でないこと、メッセージが真正であること、及び、プログラムPrgmが秘
密に保持されていたことを、同時に保証することが可能になる。
【0030】 例として、プログラムPrgmが書かれているコンピュータ言語の命令は、命
令を定義するために232の可能な理論的合計を与える4バイトにコード化された
命令であると仮定する。当然、一組のパラメータによって定義されたいくつかの
コードは、どの理解できる命令にも対応しない。更に、特定のコードに対する特
定のパラメータ、典型的には最後の3バイトは、認められた特定の値のみを有す
る。このように、メモリアドレスは、負とはなれず、又は、プログラムPrgm
に割り当てられた空間の外側に置くことはできない。これが、特性Pは、好都合
には、命令のタイプに依存するパラメータテストを含む理由である。
【0031】 もし、単位非検出率(unit non-detection rate)Cが、プログラムPrgmへ の単一の変更の後に、特性Pを解読時に用いることによって偽であると認識され
ない可能な命令のパーセンテージとして定義されるなら、受信器デバイスRの不
正の検出に失敗することになる確率probは、単一の変更が、解読された結果
のそれぞれの命令中の変更の原因であると仮定すると、以下によって与えられる
。 prob=(1−C)n 以下の典型的な値に対して、以下の確率probが得られる。
【0032】
【表1】
【0033】 非常に少ない命令を有し、かつ単位非検出率Cが非常に高いプログラムを除い
ては、観察されずに通り過ぎる、変更の、特に不正な変更の確率は、非常に低い
ことが認められる。この確率は、プログラムがKc以外の鍵を使用して暗号化さ
れた場合に、なおさら、非常に低い。
【0034】 従来の暗号化操作と比較して、特性Pを用いることは、特に過度の計算時間に
関して、過度の投資を必要としない。命令の変造された実行(run)を解読するど のような試みも擬似ランダムな性質であって、暗号化アルゴリズムが良好な品質
であるとすると、それにより、エラーが、すべてのタイプのプログラムPrgm
で検出されることが可能になる。
【0035】 暗号化アルゴリズムは、好都合には、連鎖ブロック(chained block)又は連続 フロー(continuous flow)タイプである。このようにして、任意の1つの基本命 令を改変することにより、他の命令の改変が発生することになる。対照的に、も
しそのアルゴリズムがブロック中で単独に動作するなら、暗号化されたプログラ
ムは、例えば、必然的にn個の基本単位に対応する、n個のブロックの実行(run
)として分解することが可能である。1つのブロックを改変すること及び受信器 デバイスの振る舞いを観察することによって、改変が検出されずに通過する確率
Prgmは、次に、1−Cに等しくなり、このためそれは非常に高い。
【0036】 暗号化されたプログラムのヘッドブロック(head block)又はテールブロック(t
ail block)に用いられる、向けられた改変を避けるために、暗号化されたプログ
ラムのブロックは、例えば、当該ヘッド及びテールブロックが、たとえそれらが
デバイスE及びRに既知であっても、不正を働く人によって予想されない位置に
なるように、入れ替えられる。
【0037】 例えば、受信器デバイスRによって生成され、かつ送出器デバイスEに伝達さ
れた暗号化アルゴリズムが乱数を利用するとき、秘密性も改善される。例として
、これは、プログラムの決められた数のバイト又は暗号化前にそれの全てに加え
られる排他的論理和(EXCLUSIVE-OR)操作に基くことができる。
【0038】 最後に、プログラムの開始及び/又は終了時に、暗号化前に、受信器デバイス
が特性Pを用いることによって認識でき、そして除去する空の命令(NOP)を
挿入することが可能である。
【0039】 本発明の第1の実施では、送出器デバイスEは、GSM遠隔通信ネットワーク
の基地局(ここで、GSM = Global System for Mobile communications)、又は 他のタイプのセキュリティモジュールを使用する移動電話システムであって、受
信器デバイスRは、移動電話に関連する加入者識別モジュールSIMである。当
該SIMにダウンロードするためのプログラムPrgmは、例えば、Java言
語で書かれたような、プリコンパイルされた命令(バイトコード)の形態にコー
ド化される。
【0040】 当然、本発明は、同じようにして、例えば支払いシステム(payment system)又
はアクセス制御システムのような、他のスマートカードシステムに適用される。
【0041】 本発明のこの第1の実施形態では、プログラムはn個の基本単位に分割され、
また、1つの基本単位は、(固定されているか、あるいは、命令のタイプによる
)決められた数のビットを有するプリコンパイルされた命令である。
【0042】 論理的特性Pは、それが用いられる基本単位が、実行可能な命令(又は解釈可
能な命令)である、又はNOP命令に対応するときに、真の論理値を取るように
定義される。
【0043】 プログラムPrgmは、次に送出器デバイスEによって、例えば、米国特許第
4,405,829号に記載された、RSAタイプ(RSA = Rivet, Shamir, Ade
lman)の暗号化アルゴリズムを使用して、暗号化される。暗号化結果Kc(Pr
gm)、すなわち、鍵Kcの関数が、次に得られる。
【0044】 この結果Kc(Prgm)、すなわち、暗号化されたプログラムは、基地局に
よって、それに関連する送信局(transmitter station)に、及び移動電話受信器 手段に運ばれる。次にそれは、解読操作を実行する前に、SIM中でこの操作を
実施するために必要な時間の長さが与えられたとして、それが不揮発性メモリ(
EEPROM)に記録されるところであるカード中にロードされる。
【0045】 結果Kc(Prgm)は、次に、秘密鍵Kdを含む解読アルゴリズムを使用し
て解読される。解読された結果のそれぞれのブロックは、SIMのEEPROM
中の対応する暗号化された結果ブロックのアドレスに記憶させられる。結果とし
て、本発明に従って解読を実施するために使用されるメモリ空間は、最小にされ
る。本発明の種々の実施では、少なくとも1つのブロックに値する利用可能なメ
モリ空間の助けによって、解読した結果が対応する暗号化されたブロックのアド
レスと異なるメモリアドレスに、解読した結果のブロックを記憶させることがで
きる。解読ステップの間に、プログラムのセキュリティを改善させる、循環的な
入れ替えも可能である。
【0046】 特性Pは、好適には、暗号化された結果Kc(Prgm)が完全に解読された
後に用いられ、最終結果(受諾あるいは拒絶されたプログラム)は、全ての照合
が実行された後のみに得られる。このようにして、不正を働く人は、どの基本単
位Iが、特性Pが用いられるときに、偽の論理値を生じるとして認識されるかを
、単に検出することができない。
【0047】 SIMで利用可能な少ない量のメモリが、特性Pのために提供される。これは
、インタプリタ自身によって実施される機能である。一旦、暗号化された結果が
解読されたなら、インタプリタは、命令に意味があるかないかを知るために確認
することによって、解読された結果を解釈する。言いかえれば、この解釈は、解
読された結果が確かにプログラムPrgmと対応するかどうかを照合することの
他のどのような効果も伴わないことを除いて、それを通常の方法で解釈する間と
同じ方法で、インタプリタは、プログラムを分析する。
【0048】 本発明の第2の実施では、送出器デバイスEは、例えば、Java言語で書か
れたプリコンパイルされかつ暗号化された形態Kc(Prgm)のプログラムP
rgmを含むサーバである。受信器デバイスRは、好都合には、カードが挿入さ
れるスマートカードリーダを備えたパーソナルコンピュータである。パーソナル
コンピュータは、解読された結果Kd(Kc(Prgm))及び鍵の一時的又は
恒久的記憶で使用するため、ハードディスク、及び安全な、すなわち第三者によ
って読み書きされないメモリゾーンを有する。コンピュータは、プログラムPr
gmをロードするための、当該プログラムPrgmが使用される(解釈される、
又は予期される)前に、プリコンパイルされたプログラムPrgmをロードする
ことが必要であるそれぞれの時に呼び出される、「ローダ(loader)」と呼ばれる
ソフトウェアも有する。本発明のこの第2の実施では、このソフトウェアは、好
都合には、解読のために必要な機能要素、及び特に解読アルゴリズムの要素を有
する、解読機能を含む。ロードするプログラムのためのローダソフトウェアは、
次に、「オーバーロードされた」と言われる。当然、解読のために必要な他の機
能要素は、スマートカードの不揮発性メモリ中に含まれることができる。これら
の要素は、次に、プログラムローダソフトウェア及び解読機能によって呼び出さ
れる。このようにして、当該解読結果Kd(Kc(Prgm))を解釈する前に
、すなわち、一旦、特性PがプログラムPrgmに好結果に用いられ、その後プ
ログラムPrgmは実行されるとき、カードと結合させられた場合、ローダソフ
トウェアによって、結果Kc(Prgm)を解読すること及び解読された結果K
d(Kc(Prgm))を照合することが可能になる。
【0049】 例えば、解読のために必要なテーブルのような1つ以上の鍵又は要素を含むた
めの安全な物理的媒体としてのみ、この場合そのカードは使用されるとすると、
本発明の方法の第1の実施を説明するときに言及した時間及びメモリ空間の制約
は、この第2の実施では重要性がより低い。そのカードは、全体の秘密解読アル
ゴリズムを含むことさえできる。
【0050】 結果として、特性Pは、単なる上述のタイプである必要はなく、でなければ、
照合アルゴリズムで実施される特別の特性である必要はない。一例では、照合ア
ルゴリズムは、暗号化された結果からの命令のブロックが解読されたそれぞれの
時に、プリコンパイルされた命令を照合する。カードと、インタプリタ、ローダ
デバイスを備え、カードが挿入されるカードリーダが結合したパーソナルコンピ
ュータとの間のデータ入れ替え段階は、次に、初期化段階、転送段階、及び解読
/照合段階の、3つの段階を含むことができる。
【0051】 初期化段階は、公開鍵及び秘密鍵の両方が交換される段階である。この段階は
、解読工程の初期化の間に開始される。鍵の対は、パーソナルコンピュータのハ
ードディスク条には書き込まれず、また、いつでもそれを再計算することができ
る。この段階の間、再初期化命令がパーソナルコンピュータによってカードに伝
達される。次に、コンピュータは、公開鍵PKc及び秘密鍵PKdを含む対を計
算し、そして秘密鍵PKdを使用して公開鍵PKcからシグネチャ(signature) を計算する。このシグネチャは、公開鍵PKcと共にカードに伝達される。次に
、それは、公開鍵PKcを使用してカードによって照合される。次にカードは、
秘密鍵CKdを使用して公開鍵CKcのシグネチャを計算する。このシグネチャ
は、公開鍵CKcを使用してパーソナルコンピュータに伝達される。コンピュー
タは、公開鍵CKcを使用してシグネチャを照合する。
【0052】 転送段階は、秘密情報がカードからパーソナルコンピュータ中にロードされる
段階である。この情報によって、コンピュータは、プリコンパイルされかつ暗号
化された形態のプログラムPrgmを解読することができる。この段階の間、コ
ンピュータはカードに、カードがそれのメモリ中に含んでいる秘密解読鍵Kdを
転送するように要求する。カードは、鍵PKcを使用してこの鍵を暗号化し、そ
れをコンピュータに送る。コンピュータは、このメッセージをそれの鍵Kdを使
用して解読し、こうして鍵Kcがコンピュータに与えられる。これで、コンピュ
ータが、不正の試みが発生していないとすると元のプログラムPrgmと同一に
なることになるプログラムPrgm’を得るために、プログラムKc(Prgm
)を解読することが可能になる。
【0053】 この瞬間に、第1の実施の場合のように、コンピュータは、プログラムPrg
m’を基本単位に更に分割でき、特性Pをそこに用いることができる。もし、そ
の結果が満足するものであれば、当該プログラムは、例えばハードディスク上に
記録(archive)される。コンピュータは、(例えば、チェックサム、又はもっと 十分にはハッシュ合計)照合情報も計算することができ、また、続いてそのプロ
グラムは不正ではないことを照合することができるように、それをカードメモリ
中に記録することができる。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04L 9/10 H04L 9/00 621A Fターム(参考) 5B035 AA13 BB09 CA23 CA38 5B058 CA17 KA08 5J104 AA08 AA10 AA16 EA06 EA19 LA03 LA06 NA02 NA35 NA37 PA02 PA10

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 送出器デバイスEから受信器デバイスRへのメッセージPr
    gmの伝達を安全にする方法において、 − 前記メッセージPrgmは、nが1より大きい数であるとして、n個の基本
    単位Iに、更に分割されることと、 − 論理的特性Pは、任意の基本単位Iに対して、真正の基本単位Iに用いたと
    きに真のタイプの論理値を与えるように定義されることと、 − メッセージPrgmは、暗号化された結果Kc(Prgm)を得るために鍵
    Kcを有する暗号化アルゴリズムを使用して前記送出器デバイスEの暗号化手段
    によって暗号化されることと、 − 前記暗号化された結果Kc(Prgm)は、前記送出器デバイスEによって
    、前記受信器デバイスRに伝達されることと、 − 前記暗号化された結果Kc(Prgm)は、解読された結果Kd(Kc(P
    rgm))を得るために秘密鍵Kdを有する解読アルゴリズムを使用して前記受
    信器デバイスRによって解読されることと、 − 前記解読された結果Kd(Kc(Prgm))は、基本単位Iに更に分割さ
    れることと、 − 前記論理的特性Pは、それぞれの単位に対して、真のタイプ又は偽のタイプ
    の論理値を得るために、前記基本単位Iに用いられることと、 − それぞれの単位の論理値が真のタイプであれば、前記メッセージPrgmは
    、真正でありかつ不正でないと判断されることとを特徴とする方法。
  2. 【請求項2】 前記メッセージPrgmは、前記受信器デバイスRによって
    実行及び/又は解釈されることに適したコンピュータプログラムであることを特
    徴とする請求項1に記載の方法。
  3. 【請求項3】 前記基本単位は、前記プログラムPrgmの命令であること
    を特徴とする請求項1又は2に記載の方法。
  4. 【請求項4】 基本単位Iに用いられた前記特性Pは、前記基本単位Iが実
    行可能及び/又は解釈可能であるときはいつも、真のタイプの論理値を与えるこ
    とを特徴とする請求項2又は3に記載の方法。
  5. 【請求項5】 基本単位Iに用いられた前記特性Pは、前記基本単位Iが実
    行可能及び/又は解釈可能でないときはいつも、偽のタイプの論理値を与えるこ
    とを特徴とする請求項2、3又は4に記載の方法。
  6. 【請求項6】 前記受信器デバイスRは、メモリを有する、スマートカード
    タイプの携帯型の物であることを特徴とする請求項1から5のいずれか1つに記
    載の方法。
  7. 【請求項7】 前記受信器デバイスRは、メモリを有する、スマートカード
    タイプの携帯型の物を含むことを特徴とする請求項1から5のいずれか1つに記
    載の方法。
  8. 【請求項8】 メモリを有する前記携帯型の物は、加入者識別モジュール(
    SIM)であることを特徴とする請求項6に記載の方法。
  9. 【請求項9】 前記メッセージPrgmは、高レベルの解釈される言語で書
    かれることを特徴とする請求項1から8のいずれか1つに記載の方法。
  10. 【請求項10】 前記高レベルの言語は、Java言語であることを特徴と
    する請求項9に記載の方法。
  11. 【請求項11】 前記コンピュータプログラムは、一組のプリコンパイルさ
    れた命令から構成されることを特徴とする請求項9又は10に記載の方法。
  12. 【請求項12】 前記メッセージPrgmは、連続フロー又は連鎖ブロック
    として暗号化されることを特徴とする請求項1から11のいずれか1つに記載の
    方法。
  13. 【請求項13】 前記メッセージPrgmは、ブロックで暗号化され、及び
    、当該暗号化されたメッセージPrgmの当該ブロックは、入れ替えられること
    を特徴とする請求項1から12のいずれか1つに記載の方法。
  14. 【請求項14】 前記入れ替えられたブロックの1つは、前記メッセージP
    rgmの開始ブロック又は終了ブロックであることを特徴とする請求項13に記
    載の方法。
  15. 【請求項15】 前記結果Kc(Prgm)は、ブロックで解読され、それ
    ぞれの解読されたブロックは、前記暗号化されたブロックと同じ空間を占有する
    解読されたブロックを生じることを特徴とする請求項1から12のいずれか1つ
    に記載の方法。
  16. 【請求項16】 暗号化及び解読アルゴリズムは、送出器デバイスEによっ
    て受信器デバイスRに伝達された乱数を使用することを特徴とする請求項1から
    15のいずれか1つに記載の方法。
  17. 【請求項17】 前記メッセージPrgmは、照合後に、前記受信器デバイ
    スRの不揮発性メモリ中に記録されることを特徴とする請求項1から16のいず
    れか1つに記載の方法。
JP2000539611A 1997-12-16 1998-12-16 送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法 Pending JP2002509269A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR97/15971 1997-12-16
FR9715971A FR2772532B1 (fr) 1997-12-16 1997-12-16 Procede de securisation de la transmission d'un message d'un dispositif emetteur a un dispositif recepteur
PCT/FR1998/002753 WO1999031845A1 (fr) 1997-12-16 1998-12-16 Procede de securisation de la transmission d'un message d'un dispositif emetteur a un dispositif recepteur

Publications (1)

Publication Number Publication Date
JP2002509269A true JP2002509269A (ja) 2002-03-26

Family

ID=9514695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000539611A Pending JP2002509269A (ja) 1997-12-16 1998-12-16 送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法

Country Status (5)

Country Link
EP (1) EP1040620A1 (ja)
JP (1) JP2002509269A (ja)
CN (1) CN1284227A (ja)
FR (1) FR2772532B1 (ja)
WO (1) WO1999031845A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE387775T1 (de) * 2000-01-21 2008-03-15 Sony Corp Daten-identifizierungs-system
CN100462992C (zh) * 2007-04-30 2009-02-18 北京飞天诚信科技有限公司 生产信息安全设备的方法和系统
US9686077B2 (en) * 2014-03-06 2017-06-20 Microsoft Technology Licensing, Llc Secure hardware for cross-device trusted applications

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155680A (en) * 1986-10-24 1992-10-13 Signal Security Technologies Billing system for computing software
US5222133A (en) * 1991-10-17 1993-06-22 Wayne W. Chou Method of protecting computer software from unauthorized execution using multiple keys
WO1997005551A1 (en) * 1995-07-31 1997-02-13 Verifone, Inc. Method and apparatus for operating resources under control of a security module or other secure processor
JPH09179951A (ja) * 1995-12-22 1997-07-11 Dainippon Printing Co Ltd 携帯可能情報記憶媒体及びそのシステム

Also Published As

Publication number Publication date
FR2772532B1 (fr) 2000-01-07
FR2772532A1 (fr) 1999-06-18
WO1999031845A1 (fr) 1999-06-24
CN1284227A (zh) 2001-02-14
EP1040620A1 (fr) 2000-10-04

Similar Documents

Publication Publication Date Title
US11989727B2 (en) Payment system
US10460314B2 (en) Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions
US20050283662A1 (en) Secure data backup and recovery
US20060195402A1 (en) Secure data transmission using undiscoverable or black data
JP2007513529A (ja) 動的検証値を生成するための方法とシステム
JP3597704B2 (ja) Icカードおよび記録媒体
CN111614467B (zh) 系统后门防御方法、装置、计算机设备和存储介质
JP4475386B2 (ja) チップカードの初期化
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
US20170330177A1 (en) Payment terminal authentication
CN113949988B (zh) 一种位置保护方法和系统,及存储介质
CN108242997B (zh) 安全通信的方法与设备
JP2002509269A (ja) 送出器デバイスから受信器デバイスへのメッセージの伝達を安全にする方法
CN108985079B (zh) 数据验证方法和验证系统
CN111260365A (zh) 一种保护交易安全性的加密方法和装置
JP3923229B2 (ja) 認証処理方法及び方式
CA2557516C (en) Non-algorithmic vectored steganography
CN115361140B (zh) 安全芯片密钥验证方法及装置
US11522707B2 (en) System and method for detecting compromised devices
JP2001134738A (ja) Icカード、及びicカード読取装置
CN113395156B (zh) 逻辑加密卡及其认证方法、计算机可读存储介质
CN108416209B (zh) 程序安全验证方法、装置及终端设备
JP2003281476A (ja) Cpu付きicカードの通信システム、cpu付きicカード、管理センター及び読書装置
CN114357385A (zh) 一种软件防护和授权方法、系统及装置
CN117527209A (zh) 一种加密机可信启动方法、装置、加密机及存储介质