[go: up one dir, main page]

JPH02187888A - 認証方式 - Google Patents

認証方式

Info

Publication number
JPH02187888A
JPH02187888A JP1008010A JP801089A JPH02187888A JP H02187888 A JPH02187888 A JP H02187888A JP 1008010 A JP1008010 A JP 1008010A JP 801089 A JP801089 A JP 801089A JP H02187888 A JPH02187888 A JP H02187888A
Authority
JP
Japan
Prior art keywords
data
electronic device
card
key
key data
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
JP1008010A
Other languages
English (en)
Inventor
Yasuo Iijima
康雄 飯島
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1008010A priority Critical patent/JPH02187888A/ja
Priority to GB8929239A priority patent/GB2227111B/en
Priority to KR1019900000428A priority patent/KR900012179A/ko
Priority to FR9000511A priority patent/FR2641885A1/fr
Publication of JPH02187888A publication Critical patent/JPH02187888A/ja
Priority to US07/942,337 priority patent/US5293029A/en
Priority to HK98102223.8A priority patent/HK1003129B/xx
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) 本発明は、たとえばICカード内のメモリ部に対しデー
タを書込む際、その書込みデータの正当性を確認する認
証方式に関する。
(従来の技術) 近年、新たな携帯可能なデータ記憶媒体として、消去可
能な不揮発性メモリおよび、これらを制御するCPUな
どの制御素子を有するICチップを内蔵した、いわゆる
ICカードが注目されている。
従来、このようなICカードを利用したICカードシス
テム(たとえばショッピングシステムやクレジットシス
テムなど)においては、ICカード(実際はICカード
内のメモリ部)へのデータ書込み処理、特に取引データ
を書込む際、センタ(ホストコンピュータ)に送られる
取引データの正当性がセンタ側で確認できなかった。
このため、端末装置からデータを書込む命令をICカー
ドが受信すると、ICカード内でキーデータおよび暗号
化アルゴリズムを使用して書込みデータを暗号化し、そ
の暗号化データのうち一部のデータを端末装置に送り、
これを受信した端末装置では、その暗号化データおよび
書込みデータをそれぞれセンタに送り、センタで、これ
らの各データにより書込みデータの正当性を確認する認
証方式が考えられている。
(発明が解決しようとする課題) しかし、このような認証方式では、I’Cカードが多目
的利用されるにつれ、複数のアプリケーションで使用さ
れることになった場合、正当性を確認するための各アプ
リケーションが保管している確認用のキーデータを異な
らせる方が、各アプリケーション間のセキュリティを確
保するためには有効である。
そこで、本発明は、たとえば複数のアプリケーションで
ICカードが使用されることになっても、各アプリケー
ションで使用する正当性確認用のキーデータおよび暗号
化アルゴリズムを選択的に運用でき、アプリケーション
間のセキュリティを確保することが可能となる認証方式
を提供することを目的とする。
また、上記した認証方式では、書込みデータ、キーデー
タおよび暗号化アルゴリズムが同一であれば、ICカー
ドから出力される暗号化データも同一となってしまい、
本来の取引データの正当性確認が困難となるという問題
があった。
そこで、本発明は、同一の書込みデータ、キーデータお
よび暗号化アルゴリズムであっても、書込み時間が異な
れば出力される暗号化データも異なるものになり、正当
性の確認が容易となる認証方式を提供することを目的と
する。
[発明の構成] (課題を解決するための手段) 本発明の認証方式は、第1の電子装置と、この第1の電
子装置との間で通信可能な第2の電子装置とからなり、
第2の電子装置から第1の電子装置に対し第1のデータ
および、その第1のデータを暗号化するためのキーデー
タを指定する指定データを送信する手段と、第1の電子
装置において、前記第1のデータおよび指定データを受
信すると、あらかじめ用意された少なくとも1つのキー
データの中から前記受信した指定データに基づき1つの
キーデータを選択し、この選択したキーデータを使用し
て前記受信した第1のデータを暗号化する手段と、第1
の電子装置において、前記第1のデータを全て受信した
後に、その暗号化データのうち一部のデータを第2の電
子装置に送信する手段とを具備している。
また、本発明の認証方式は、第1の電子装置と、この第
1の電子装置との間で通信可能な第2の電子装置とから
なり、第2の電子装置から第1の電子装置に対し第1の
データおよび、その第1のデータを暗号化するためのキ
ーデータおよび暗号化アルゴリズムを指定する指定デー
タを送信する手段と、第1の電子装置において、前記第
1のデータおよび指定データを受信すると、あらかじめ
用意された少なくとも1つのキーデータおよび少なくと
も1つの暗号化アルゴリズムの中から前記受信した指定
データに基づき1つのキーデータおよび1つの暗号化ア
ルゴリズムを選択し、この選択したキーデータおよび暗
号化アルゴリズムを使用して前記受信した第1のデータ
を暗号化する手段と、第1の電子装置において、前記第
1のデータを全て受信した後に、その暗号化データのう
ち一部のデータを第2の電子装置に送信する手段とを具
備している。
さらに、本発明の認証方式は、第1の電子装置と、この
第1の電子装置との間で通信可能な第2の電子装置とか
らなり、第2の電子装置から第1の電子装置に対し第1
のデータおよび、その都度内容の異なる第2のデータを
送信する手段と、第1の電子装置において、前記第1の
データおよび第2のデータを受信すると、その受信した
第2のデータ、あらかじめ用意されたキーデータおよび
暗号化アルゴリズムを使用して前記受信した第1のデー
タを暗号化する手段と、第1の電子装置において、前゛
記憶1のデータを全て受信した後に、その暗号化データ
のうち一部のデータを第2の電子装置に送信する手段と
を具備している。
(作用) 本発明は、ICカード(第1の電子装置)の内部に保有
している複数のキーデータのうち1つのキーデータを端
末装置(第2の電子装置)から指定し、この指定したキ
ーデータを用いて書込みデータを暗号化することにより
、たとえば複数のアプリケーションでICカードが使用
されることになっても、各アプリケーションで使用する
正当性確認用のキーデータを選択的に運用でき、アプリ
ケーション間のセキュリティを確保することが可能とな
る。
また、本発明は、ICカード(第1の電子装置)の内部
に保有している複数のキーデータおよび複数の暗号化ア
ルゴリズムのうち1つのキーデータおよび1つの暗号化
アルゴリズムを端末装置(第2の電子装置)から指定し
、この指定したキーデータおよび暗号化アルゴリズムを
用いて書込みデータを暗号化することにより、たとえば
複数のアプリケーションでICカードが使用されること
になっても、各アプリケーションで使用する正当性確認
用のキーデータおよび暗号化アルゴリズムを選択的に運
用でき、アプリケーション間のセキュリティを確保する
ことが可能となる。
さらに、本発明は、端末装置(第2の電子装置)からI
Cカード(第]の電子装置)に送信された、その都度内
容の異なるデータをパラメータとして書込みデータを暗
号化することにより、同一の書込みデータ、キーデータ
および暗号化アルゴリズムであっても、書込み時間が異
なれば出力される暗号化データも異なるものになり、正
当性の確認が容易となる。
(実施例) 以下、本発明の一実施例について図面を参照して説明す
る。
第8図は、本発明に係るICカード(第1の電子装置)
と、その上位装置である端末装置(第2の電子装置)と
、その上位装置であるセンタ(ホストコンピュータ)と
のシステム構成図である。
ICカード(第1の電子装置)10は、各種データを記
憶するためのメモリ部11、乱数データを発生する乱数
発生部12、データの暗号化を行なう暗号化部13、後
述する端末装置20と通信するためのコンタクト部14
、およびこれらを制御するCPUなどの制御素子15な
どから構成されていて、これらのうちメモリ部11、乱
数発生部12、暗号化部13および制御素子15は、た
とえば1つのICチップ(あるいは複数のICチップ)
で構成されてICカード本体内に埋設されている。
メモリ部11は、たとえばEEFROMなどの不揮発性
メモリによって構成されており、第2図に示すように、
エリア定義テーブル(領域)16とデータファイル(領
域)17とに大きく分割されている。そして、データフ
ァイル17内は、図示するように複数のエリア18.・
・・に分割定義されるもので、これら各エリア18・・
・はエリア定義テーブル16内のエリア定義情報19に
よってそれぞれ定義される。
ここに、エリア定義情報1つは、たとえばエリアを指定
する識別情報としてのエリア番号(AID)、エリアが
割当てられているメモリ上の先頭アドレス情報、エリア
の容量を規定するサイズ情報および属性情報を対応付け
たデータ列である。なお、属性情報は、たとえば1バイ
トで構成されていて、そのMSBが「0」であれば暗号
化データ書込みエリアであり、「IJであれば入力デー
タ書込みエリアであることを示している。
端末装置(第2の電子装置)20は、ICカード10を
取扱う機能を有し、各種データを記憶するメモリ部21
、乱数データを発生する乱数発生部22、データの暗号
化を行なう暗号化部23、データの入力などを行なうキ
ーボード部24、データを表示する表示部25、ICカ
ード10と通信するためのコンタクト部26、センタ(
ホストコンピュータ)30と通信回線31を介してオン
ラインで通信する通信制御部27、およびこれらを制御
するCPUなとの制御部28から構成されている。
次に、このような構成において、本発明に係る認証方式
を第1図を用いて詳細に説明する。なお、端末装置20
のメモリ部21には、図示するようなキーデータリスト
およびキーデータ番号(KID)リストが格納されてい
るものとする。
キーデータリストはキーデータ番号とキーデータとを対
応付けたリストであり、KIDリストはキーデータを指
定するキーデータ番号のみがリスト化されたものである
。一方、ICカード10は、独自にキーデータリストを
有しており、これはカード発行時などで内部のメモリ部
11に登録(記憶)される。
さて、まずステップ1〜ステツプ8によって、ICカー
ド10と端末装置20との間で行なわれる相互認証のプ
ロセスを説明する。まず、ステップ1において、端末装
置20は、乱数発生部22によって乱数データR1を生
成し、認証準備コマンドEXCHによって、これをIC
カード10に送信する。このとき、端末装置20がIC
カード10を認証するために使用するキーデータのキー
データ蕃号(KID−M)、および端末装置2゜がサポ
ートしている暗号化アルゴリズム(A L G)の指定
データをも合わせて送信する。
次に、ステップ2において、ICカード10は、認証準
備コマンドEXCHを受信すると、乱数発生部12によ
って乱数データR2を生成し、それを認証$備コマンド
EXCHに対するレスポンスexchとして端末装置2
0に送信する。このとき、ICカード10は、端末装置
20を認証するために使用するキーデータのキーデータ
番号(KID−N)を自身のもつキーリストより見付け
だし、かつ指定された暗号化アルゴリズム(A L G
)を自身がサポートしているかを判断し、これをalg
として乱数データR2と合わせて端末装置20に送信す
る。
もしこのとき、端末装置20から指定されたキーデータ
番号(K I D−M)がキーリストに存在しなかった
り、あるいはICカード10か端末装置20を認証する
ために使用するキーデータ番号(KID−N)がキーリ
ストに存在しなかったり、あるいは指定された暗号化ア
ルゴリズムをサポートしていなかった場合には、その旨
を端末装置20に通知する。
次に、ステップ3において、端末装置20は、ICカー
ド10から指定された暗号化キーデータのキーデータ番
号(KID−N)を自己が所有するキーリストから捜し
出し、対応するキーデータ(NNNNN)を取出す。そ
して、暗号化部23によって、暗号化アルゴリズムAL
G(−alg)を使用してキーデータ(NNNNN)に
よりICカード10からの乱数データR2を暗号化し、
その結果、すなわち暗号化データC2を認証コマンドA
UTHによってICカード10に送信する。
なお、図中、Eは暗号化を実現する機能ボックスを示す
次に、ステップ4において、ICカード10が認証コマ
ンドAUTHを受信すると、ICカード10は、先に送
信した暗号化キーデータのキーブタ番号(KID−N)
を自己が所有するキーリストより捜し出し、対応するキ
ーデータ(NNNNN)を取出す。そして、暗号化部1
3によって、認証$備コマンドEXCHで指定された暗
号化アルゴリズム(ALG)を使用してキーデータ(N
NNNN)により乱数データR2を暗号化し、暗号化デ
ータC2Xを得る。
次に、ステップ5において、ICカード10は、先に受
信した認証コマンドAUTH中の暗号化データC2とス
テップ4で生成した暗号化データC2Xとを比較し、そ
の比較結果Y/Nを得る。
次に、ステップ6において、ICカード10は、認証準
備コマンドEXCHで端末装置20から指定された暗号
化キーデータのキーデータ番号(KID−M)に対応す
るキーデータ(MMMMM)を取出す。次に、暗号化部
13によって、暗号化アルゴリズム(A L G)を使
用してキーデータ(MMMMM)により乱数データR1
を暗号化し、暗号化データC1を得る。そして、この暗
号化データC1とステップ5による比較結果Y/Nを、
認証コマンドAUTHに対するレスポンスauthとし
て端末装置20に送信する。
次に、ステップ7において、端末装置20がレスポンス
authを受信すると、端末装置20は、先に送信した
暗号化キーデータのキーデータ番号(KID−M)に対
応するキーデータ(M M M M M )を取出す。
そして、暗号化部23によって、暗号化アルゴリズム(
A L G)を使用してキーデータ(〜IMMMM)に
より端末装置20からの乱数データR1を暗号化し、暗
号化ブタCIXを得る。
次に、ステップ8において、端末装置20は、レスポン
スau thによって受信した暗号化ブタC1とステッ
プ7で生成した暗号化データCIXとを比較し、この比
較結果とレスポンスauthにより受信したステップ5
によるICカード10での比較結果とにより、以降のシ
ステム処理の決定を行なう。
次に、ステップ9〜ステツプ23によって1.端末装置
20からICカード10に対しデータを書込むとともに
、書込み処理の正当性を確認するプロセスを説明する。
まず、ステップ9において、端末装置20は、書込みコ
マンドWRITEによりデータを書込む要求をICカー
ド10に送信する。このとき、端末装置20は、Icカ
ード10内のメモリ部11に対する書込み対象エリアの
エリア番号(AID−A)、書込みデータのバイト数(
L−1)、および書込みデータ(Ml)のうちICカー
ド10か入力データとして受信し得るバイト数に分割し
た最初の分割データ(Ml、−1)をICカード10に
送信する。
次に、ステップ10において、ICカード10は、書込
みコマンドWRITEによって受信したエリア番号(A
ID−A)が付されたエリアを第2図のエリア定義テー
ブル16から見付ける。もし見付からなければ、エリア
番号未定義を意味するステータスを書込みコマンドWR
ITEに対するレスポンスwr i t eによって端
末装置20に送信する。もし見付かれば、先に認証準備
コマンドE X CH,または後述する暗号化準備コマ
ンド5RNDが正常終了されているかをチエツクする。
このチエツクの結果、もし正常終了されていなければ、
実行条件不備ステータスをレスポンスw r i t 
eによって端末装置20に送信する。
上記チエツクの結果、正常終了されていれば、ICカー
ド10は、先の認証準備コマンドEXCHによって通知
された乱数データR1とICカード10の内部で所有す
るカード固有値とにより初期データR1’を生成する。
次に、ステップ11において、ICカード10は、先に
認証準備コマンドEXCHで指定された暗号化アルゴリ
ズム(A L G)を使用・して、初期データR1′お
よび先に認証準備コマンドEXCHによって通知された
キーデータ番号(KID−M)に対応するキーデータ (MMMMM)により書込みデータ(Ml−1)を暗号
化し、暗号化データ(CI −1)を得る。
次に、アクセス対象となっているエリア番号(AID−
A)のエリアの属性情報を参照することにより、メモリ
部11への書込みデータを入力データ(Ml−1)にす
るか暗号化データ(C1−1)にするかを決定し、書込
み処理を行なう。
そして、端末装置20に対し次の書込みデータを要求す
るためのレスポンス−nb−を送信する。
次に、レスポンス nb−を受信すると、端末装置20
は、ステップ12において、次の書込みデータ(Ml−
2)をICカード10に送信する。
次に、ステップ13において、次の書込みデータ(Ml
−2)を受信すると、ICカード10は、再び暗号化ア
ルゴリズム(A L G)を使用して、先に生成した暗
号化データ(C1−1)の最終の8バイトデータおよび
キーデータ番号(KID−M)に対応するキーデータ(
MMMMM)により書込みデータ(Ml−2)を暗号化
し、暗号化データ(CI−2)を得る。次に、ステップ
11と同様に、メモリ部11への書込みデータを入力デ
ータ(Ml−2)にするか暗号化データ(C1−2)に
するかを決定し、選択的にエリアへの書込み処理を行な
う。そして、端末装置20に対し次の書込みデータを要
求するためのレスポンスnb−を送信する。
以下、ステップ12.13と同様の処理動作を繰返し行
なう。
さて、ステップ14において、端末装置20が分割デー
タの最終データ(Ml−n)をICカード10に送信す
ると、ステップ15において、ICカード10は同様の
書込み処理を行なう。そして、最終的に生成された暗号
化データ(C1−〇)のうち最終8バイトを確認情報(
ACI)とし、書込みコマンドWRITEに対するレス
ポンスwriteによって端末装置20に送信する。
すなわち、上記処理においては、あらかじめ相互認証手
順で端末装置20がICカード10を認証するために、
ICカード10に対して指定したキーデータ(MMMM
M)、暗号化アルゴリズム(A L G)および乱数デ
ータ(R1)を使用して、書込みデータM1に対する確
認情報(ACI)が得られている。
次に、上記とは異なるキーデータ、暗号化アルゴリズム
および乱数データにより確認情報を得るプロセスをステ
ップ16〜ステツプ20によ−って説明する。まず、ス
テップ16において、端末装置20は、乱数発生部22
によって新規の乱数データR3を生成し、暗号化準備コ
マンドS RNDによって、これをICカード10に送
信する。このとき、 ごカード10が確認情報を生成す
るのに使用するキーデータのキーデータ番号(KIDA
)、および暗号化アルゴリズム(ALG”)を合わせて
送信する。
次に、ステップ17において、ICカード10は、暗号
化準備コマンド5RNDを受信すると、キーデータ番号
(KID−A)を自身が所有するキーリストから見付け
だし、対応するキーデータ(AAAAA)を得て、レス
ポンス5rndを端末装置20に送信する。
次に、ステップ18において、端末装置20は、書込み
コマンドWRITEによりデータを書込む要求をICカ
ード10に送信する。このとき、端末装置20は、IC
カード10内のメモリ部11に対する書込み対象エリア
のエリア番号(AID−B)、書込みデータのバイト数
(L−2) 、および書込みデータ(M2)を送信する
。なお、本ステップ18では、書込みデータ(M2)の
バイト数は、ICカード10が入力データとして受信し
得るバイト数である。
次に、ステップ1つにおいて、ICカード10は、ステ
ップ10と同様にしてエリア番号(AID−B)が付さ
れたエリアを第2図におけるエリア定義テーブル16か
ら見付ける。そして、次にICカード10として、先に
暗号化準備コマンド5RND (または認証準備コマン
ドE X CH)か正常終了されているか否かをチエツ
クする。もし、正常終了されているとすると、ICカー
ド10は、暗号化準備コマンド5RNDによって通知さ
れた乱数データR3とICカード10の内部で所有する
カード固有値とにより初期データR3’を生成する。
次に、ステップ20において、ICカード10は、先に
暗号化準備コマンド5RNDで指定された暗号化アルゴ
リズム(ALG’ )を使用、して、初期データR3’
および先に暗号化準備コマンド5RNDにより通知され
たキーデータ番号(KID−A)に対応するキーデータ (AAAAA)により書込みデータ(M2)を暗号化し
、暗号化データC2を得る。次に、アクセス対象となっ
ているエリア番号(AID−B)のエリアの属性情報を
参照することにより、メモリ部]1への書込みデータを
入力データ(M2)にするか暗号化データ(C2)にす
るかを決定し、書込み処理を行なう。そして、端末装置
20に対し、暗号化データ(C2)のうち最終8バイト
のデータを確認情報(AC2)として、書込みコマンド
WRITEに対するレスポンスw r i t eによ
って送信する。
なお、ICカード10は、第2図のエリア定義テーブル
16内の先頭アドレス情報およびサイズ情報によりメモ
リ部11内の物理的位置を確認する。先頭アドレス情報
は対応するエリアの先頭アドレス値であり、サイズ情報
は先頭アドレス値からのエリアの容量を規定している。
また、属性情報は1ハイドで構成され、そのMSBが「
0」であれば暗号化データ書込みエリアであり、「1」
であれば入力データ書込みエリアであることを示す。
次に、ステップ21において、端末装置20は、ICカ
ード10へのデータ書込みを終了すると、書込みデータ
(Ml、M2)に対応する乱数ブタ(R1,R3) 、
キーデータ番号(KID−M。
KID−A)、確認情報(ACI、AC2) 、および
使用アルゴリズム指定値(ALG  ALG’ )によ
り、データ書込み処理リストを作成する。なお、このと
きカード固有値もリストに対応付けておく。そして、こ
の作成したリストをセンタ30へ送信する。
次に、ステップ22において、センタ30は、端末装置
20からのリストを受信すると、そのリストから書込み
データ(Ml)を取出し、対応するキーデータ番号(K
IDI−M)により、キーデータ(M M M M M
)を自身が所有するキーリストから見付けだし、かつ自
身が所有する取引きリストで対応付けられている乱数デ
ータ(R1)および暗号化アルゴリズム(A L G)
により確認情報(ACIX)を生成する。
そして、ステップ23において、リストで対応付けられ
た確認情報(ACI)とステップ22で生成した確認情
報(A CI X)とを比較し、両者が一致していれば
センタ30は書込みデータ(Ml)に対する書込み処理
の正当性を確認する。
書込みデータ(M2)以降についても、ステップ22.
23と同様な処理により正当性を確認する。
次に、ICカード10としての動作を第7図を用いて説
明する。まず、制御素子15は、端末装置20からの制
御信号によって電気的活性化を経た後、アンサ−・ツー
・リセットと称する初期応答データを端末装置20へ出
力する(Sl)。そして、制御素子15は、認証準備コ
マンド完了フラグおよび暗号化準備コマンド完了フラグ
をオフしくS2)、命令データ待ち状態に移る。
この状態で、命令データを受信すると(S3)制御素子
15は、まず、この命令データが第3図に示す認証準備
コマンドEXCHであるか否かを判断しくS4) 、も
しそうでないと判断すると次のフローに移る。
ステップS4において、認証準備コマンドEXCHであ
ると判断すると、制御素子15は、認証準備コマンド中
のキーデータ番号(K I D)フィールドの内容をピ
ックアップし、メモリ部ll内に登録されているキーリ
ストから同一のキーデータ番号を見付ける(S5)。
そして、もしキーデータ番号が見付からなければ(S6
)、制御素子15は、キーデータ指定エラーステータス
を出力しくS7)、命令データ待ち状態に戻る。もし、
キーデータ番号が見付かれば(S6)、制御素子15は
、対応するキーデータを内部RAM上の第1キーバツフ
アにセーブする(S8)。
次に、制御素子15は、認証準備コマンド中の暗号化ア
ルゴリズム指定データ(A L G)フィールドを参照
することにより、メモリ上に登録されている暗号化アル
ゴリズムであるか否かをチエツクする(S9) このチ
エツクの結果、指定された暗号化アルゴリズムが存在し
ない場合(SIO)、制御素子15は、指定アルゴリズ
ムエラーステータスを出力しくS 11) 、命令デー
タ待ち状態に戻る。上記チエツクの結果、指定された暗
号化アルゴリズムが存在する場合(S10)、制御素子
15は、その暗号化アルゴリズムの番号をセーブしてお
く(S12)。
次に、制御素子15は、認証準備コマンド中の乱数デー
タ(R1)を内部RAM上の第1乱数バツフアにセーブ
しく813)、その後、先のキーリストからICカード
認証用キーデータのキーデータ番号(KID’)を見付
ける(S14)。
そして、もしキーデータ番号が見付からなければ(S1
5)、制御素子15は、キーデータ未登録エラーステー
タスを出力しく516)、命令データ待ち状態に戻る。
もし、キーデータ番号が見付かれば(S 15) 、制
御素子15は、対応するキーデータを内部RAM上の第
2キーバツフアにセーブする(S 17)。
次に、制御素子15は、乱数発生部12によって乱数デ
ータR2を生成し、内部RAM上の第2乱数バツフアに
セーブする(318)。そして、制御素子15は、認証
準備コマンド完了フラグをオンしくS 19)  かつ
、生成した乱数データR2を先のキーデータ番号(KJ
D’)および認証$備コマンド中の暗号化アルゴリズム
指定データ(ALG)フィールドの内容とともに、認証
準備コマンドEXCHに対するレスポンスexchとし
て端末装置20に出力しく520)、命令データ待ち状
態に戻る。
ステップS4において、認証率ORコマンドEXCHで
ないと判断すると、制御素子15は、第4図に示す認証
コマンドAUTHであるか否かを判断しく521)、も
しそうでないと判断すると次のフローへ移る。
ステップ21において、認証コマンドAUTHであると
判断すると、制御素子15は、認証準備コマンド完了フ
ラグがオンされているか否かを判断しく522)、もし
オフであれば実行条件不備エラーステータスを出力しく
823)、命令データ待ち状態に戻る。
ステップ22において、認証準備コマンド完了フラグが
オンであれば、制御素子15は、暗号化部13により、
第2キーバツフアの内容を暗号化のキーデータとして第
2乱数バツフアの内容を暗号化する(S24)。このと
きの暗号化アルゴリズムは、セーブされた暗号化アルゴ
リズム番号に対応する暗号化アルゴリズムを使用する。
そして、制御素子15は、上記暗号化の結果と認証コマ
ンドAUTHで送られた入力データとを比較しく525
)、その比較結果に応じて一致フラグをオンまたはオフ
する(826〜528)。
次に、制御素子15は、暗号化部13により、第1キー
バツフアの内容を暗号化のキーデータとして第1乱数バ
ツフアの内容を暗号化する(S 29)。このときの暗
号化アルゴリズムも上記同様のものを使用する。そして
、制御素子15は、この暗号化の結果を先の一致フラグ
の内容とともに、認証コマンドAUTHに対するレスポ
ンスauthとして端末装置20に出力しく530)、
命令データ待ち状態に戻る。
ステップS21において、認証コマンドAUTHでない
と判断すると、制御素子15は、第5図に示す暗号化/
$備コマンド5RNDであるか否かを判断しくS 31
)  もしそうでないと判断すると次のフローへ移ル。
ステップ31において、暗号化準備コマンド5RNDで
あると判断すると、制御素子15は、暗号化準備コマン
ド中のキーデータ番号(KID)フィールドの内容をピ
ックアップし、メ゛モリ部11内に登録されているキー
リストから同一のキーデータ番号を見付ける(S 32
)。
そして、もしキーデータ番号が見付からなければ(33
3)、制御素子15は、キーデータ指定エラーステータ
スを出力しく534)、命令データ待ち状態に戻る。も
し、キーデータ番号が見付かれば(833)、制御素子
15は、対応するキーデータを内部RAM上の第1キー
バツフアにセーブする(S 35)。
次に、制御素子15は、暗号化準備コマンド中の暗号化
アルゴリズム指定データ(A L G)フィールドを参
照することにより、メモリ上に登録されている暗号化ア
ルゴリズムであるか否かをチエツクする(S36)。こ
のチエツクの結果、指定された暗号化アルゴリズムが存
在しない場合(S37)、制御素子15は、指定アルゴ
リズムエラーステータスを出力しく838)、命令デー
タ待ち伏聾に戻る。上記チエツクの結果、指定された暗
号化アルゴリズムが存在する場合(S37)、制御素子
15は、その暗号化アルゴリズムの番号をセーブしてお
く  (S39)。
次に、制御素子15は、暗号化準備コマンド中の乱数デ
ータ(R3)を内部RA M上の第1乱数バツフアにセ
ーブしく540)、その後、暗号化準備コマンド完了フ
ラグをオンしく541)、かつ暗号化準備コマンド完了
ステータスを端末装置20に出力しく542)、命令デ
ータ待ち状態に戻る。
ステップS31において、暗号化$備コマンド5RND
でないと判断すると、制御素子15は、第6図(a)ま
たは(b)に示す書込みコマンドWRITEであるか否
かを判断しくS5]、)、もしそうでないと判断すると
、他のコマンド(たとえばデータの読出しコマンド)で
あるか否かの判断を行ない、対応する処理へ移行する。
ステップS51において、書込みコマンドWRITEで
あると判断すると、制御素子15は、その書込みコマン
ドが第6図(a)の形式か(b)の形式かを判断しく5
52)、第6図(a)の書込みコマンドであれば、認証
準備コマンド完了フラグおよび暗号化準備コマンド完了
フラグを参照しく553)、どちらかでもオフとなって
いれば(S 54) 、条件不備ステータスを出力しく
555)、命令データ待ち状態に戻る。もしどちらかの
フラグがオンとなっていれば(S 54)、制御素子1
5は、書込みコマンド中のデータ部の内容を内部RA 
M上の第2ライトバツフアにセーブする(S56)。
ステップS52において、第6図(b)の書込みコマン
ドであれば、制御素子15は、内部で保持している書込
みコマンド継続フラグがオンか否かを判断する(S57
)。もしオフとなっていれば、制御素子15は、要求エ
ラーステータスを出力しく558)  命令データ待ち
状態に戻る。
もしオンとなっていれば、制御素子15は、内部RA 
M上のデータセーブバッファの内容に書返みコマンド中
のデータ部の内容(入力データ)を付加し、内部RAM
上の第2ライトバツフアにセーブする(S59)。
そして、制御素子15は、書込みコマンド中のデータ部
の内容(入力データ)のみを内部RA M上の第1ライ
トバツフアにセーブする(S60)。
次に、制御素子15は、第6図(a)または(b)の書
込みコマンドによって送られた入力データに書込み後続
データが存在するか否かをチエツクしく561)、書込
み後続データが存在すれば後続フラグをオンしく562
)、書込み後続データが存在しなければ後続フラグをオ
フする(363)。
次に、制御素子15は、内部RAM上の第2ライトバツ
フア内のデータのバイト数が例えば「8」の倍数である
か否かをチエツクしく564)、もしそうであればステ
ップS70に移行する。もしそうでなければ、制御素子
15は、後続フラグを参照してオフとなっていれば(S
65)  内部RAM上の第2ライトバツフア内のデー
タにパディング処理(たとえば−20−Hexデータを
後ろに付加)L (S66)、「8」の倍数分のデータ
を生成してステップS70に移行する。
ステップS65において、後続フラグがオンとなってい
れば、制御素子15は、「8」の倍数分のデータを残し
、残りのデータを内部RAM上のデータセーブバッファ
に移動する(S 67)。すなわち、たとえば第2ライ
トバツフアに18バイトのデータが存在すれば、16バ
イトのデータのみを残して残りの2バイトはデータセー
ブバッファに移動する。このとき、内部RAM上の第2
ライトバツフア内が空となっていなければ(’568)
、ステップS70に移行する。
ステ・シブ368において、内部RAM上の第2ライト
バツフア内が空となっていれば(たとえば第2ライトバ
ツフア内に7バイトのデータがあれば、先の処理で第2
ライトバツフア内のデータ全てがデータセーブバッファ
に移動されるため、結果として第2ライトバツフアは空
となる)、制御素子15は、今回アクセスしているエリ
アが書込み時に暗号化するエリアか否かを判断する(S
 69)。そして、もしそうでなければステップS71
に移行し、もしそうであればステップS79に移行する
さて、ステップS70において、制御素子15は、暗号
化部13により、内部RAM上の第2ライトバツフア内
のデータを例えばCBCモードで暗号化する。このとき
、継続フラグがオフとなっていれば、内部RAM上の第
1乱数バツフアの内容にカード固有値を排他的論理和し
たものを、また継続フラグがオンとなっていれば、前回
の書込みで暗号化したデータの最終8バイトをそれぞれ
初期値として、今回のCBCモード暗号化に使用する。
また、このときのキーデータは第1キーバツフアの内容
を使用し、暗号化アルゴリズムは保持されている暗号化
アルゴリズム番号により選択的に使用する。そして、こ
の処理が終了するとステップS71に移行する。
ステップS71において、制御素子15は、継続フラグ
かオンされているか否かを判断し、オンされていればア
クセス対象エリアが暗号化を要するエリアか否かを判断
する(S72)。もし暗号化を要するエリアでなければ
、制御素子15は、内部RAM上の第1ライトバツフア
の内容に書込みコマンド中の書込みデータのバイト数L
Xを付加して、メモリ部11のアクセス対象エリア内に
データを書込む(37B)。また、もし暗号化を要する
エリアであれば、制御素子15は、書込みデータのバイ
ト数LXよりも大なる「8」の倍数で、最少の値をLX
’ とし、これを第2ライトバツフア内のデータを付加
して書込む(S 74)。
ステップS71において、継続フラグがオンされていれ
ば、制御素子15は、アクセス対象エリアが暗号化を要
するエリアか否かを判断する(S 75)。もし暗号化
を要するエリアでなければ、制御素子15は、内部RA
M上の第1ライトバツフアの内容を先に書込んだデータ
に追加して書込む(S76)。また、もし暗号化を要す
るエリアであれば、1す御素子15は、内部RAM上の
第2ライトバツフアの内容を同様に書込む(S 77)
さて、データを書込んだ後は、制御素子15は、後続フ
ラグがオンされているか否かを判断しく878)、オン
されていれば継続フラグをオンしてレスポンス−nb−
を出力しくS 79)命令データ待ち状態に戻る。もし
、後続フラグがオフとなっていれば、制御素子15は、
内部RA M上の第2ライトバツフアの内容の最終8バ
イトを出力して継続フラグをオフしく580)、命令デ
ータ待ち状態に戻る。
このように、ICカードの内部に保有している複数のキ
ーデータおよび複数の暗号化アルゴリズムのうち1つの
キーデータおよび1つの暗号化アルゴリズムを端末装置
から指定し、この指定したキーデータおよび暗号化アル
ゴリズムを用いて書込みデータを暗号化することにより
、複数のアプリケーションでICカードが使用されるこ
とになっても、各アプリケーションで使用する正当性確
語用のキーデータおよび暗号化アルゴリズムを選択的に
運用でき、アプリケーション間のセキュリティを確保す
ることが可能となる。
なお、端末装置20からICカード10に送信される乱
数データR1,R3は、その都度内容が同一のデータで
あってもよいが、その都度内容の異なるデータとするこ
とにより、同一の書込みデータ、キーデータおよび暗号
化アルゴリズムであっても、書込み時間が異なれば出力
される暗号化データも異なるものになり、正当性の確認
が容易となる。
この場合、端末装置20内において、たとえば時計回路
を設け、この時計回路から発生する時間情報を用いて乱
数データR1,R3を生成することにより、容易にその
都度内容の異なるデータを得ることができる。
[発明の効果コ 以上詳述したように本発明の認証方式によれば、たとえ
ば複数のアプリケーションでICカドが使用されること
になっても、各アプリケーションで使用する正当性確認
用のキーデータおよび暗号化アルゴリズムを選択的に運
用でき、アプリケーション間のセキュリティを確保する
ことが可能となる。
また、本発明の認証方式によれば、同一の書込みデータ
、キーデータおよび暗号化アルゴリズムであっても、書
込み時間が異なれば出力される暗号化データも異なるも
のになり、正当性の確認が容易となる。
【図面の簡単な説明】
図は本発明の一実施例を説明するだめのもので、第1図
はICカードと端末装置との間の相互認証手順および端
末装置からICカードへのデータ書込み手順を示す図、
第2図はメモリ部の構成を示す図、第3図は認証L$8
コマンドのフォーマット例を示す図、第4図は認証コマ
ンドのフォーマット例を示す図、第5図は暗号化準備コ
マンドのフォーマット例を示す図、第6図は書込みコマ
ンドのフォーマット例を示す図、第7図はICカードの
動作を説明するフローチャート、第8図はICカードと
端末装置とセンタとのシステム構成図である。 10・・・ICカード(第1の電子装置)、11・・・
メモリ部、12・・・乱数発生部、13・・・暗号化部
、14・・・コンタクト部、15・・・制御素子、20
・・・端末装置(第2の電子装置) 21・・・メモ′
り部、22・・・乱数発生部、23・・・暗号化部、2
6・・・コンタクト部、27・・・通信制御部、28・
・・制御部、30・・・センタ(ホストコンピュータ)
。 第3図 第4図 第5図

Claims (4)

    【特許請求の範囲】
  1. (1) 第1の電子装置と、この第1の電子装置との間
    で通信可能な第2の電子装置とからなり、第2の電子装
    置から第1の電子装置に対し第1のデータおよび、その
    第1のデータを暗号化するためのキーデータを指定する
    指定データを送信する手段と、 第1の電子装置において、前記第1のデータおよび指定
    データを受信すると、あらかじめ用意された少なくとも
    1つのキーデータの中から前記受信した指定データに基
    づき1つのキーデータを選択し、この選択したキーデー
    タを使用して前記受信した第1のデータを暗号化する手
    段と、 第1の電子装置において、前記第1のデータを全て受信
    した後に、その暗号化データのうち一部のデータを第2
    の電子装置に送信する手段とを具備したことを特徴とす
    る認証方式。
  2. (2) 第1の電子装置と、この第1の電子装置との間
    で通信可能な第2の電子装置とからなり、第2の電子装
    置から第1の電子装置に対し第1のデータおよび、その
    第1のデータを暗号化するためのキーデータおよび暗号
    化アルゴリズムを指定する指定データを送信する手段と
    、 第1の電子装置において、前記第1のデータおよび指定
    データを受信すると、あらかじめ用意された少なくとも
    1つのキーデータおよび少なくとも1つの暗号化アルゴ
    リズムの中から前記受信した指定データに基づき1つの
    キーデータおよび1つの暗号化アルゴリズムを選択し、
    この選択したキーデータおよび暗号化アルゴリズムを使
    用して前記受信した第1のデータを暗号化する手段と、
    第1の電子装置において、前記第1のデータを全て受信
    した後に、その暗号化データのうち一部のデータを第2
    の電子装置に送信する手段とを具備したことを特徴とす
    る認証方式。
  3. (3) 第1の電子装置と、この第1の電子装置との間
    で通信可能な第2の電子装置とからなり、第2の電子装
    置から第1の電子装置に対し第1のデータおよび、その
    都度内容の異なる第2のデータを送信する手段と、 第1の電子装置において、前記第1のデータおよび第2
    のデータを受信すると、その受信した第2のデータ、あ
    らかじめ用意されたキーデータおよび暗号化アルゴリズ
    ムを使用して前記受信した第1のデータを暗号化する手
    段と、 第1の電子装置において、前記第1のデータを全て受信
    した後に、その暗号化データのうち一部のデータを第2
    の電子装置に送信する手段とを具備したことを特徴とす
    る認証方式。
  4. (4) 第1の電子装置は、少なくとも1つのメモリ部
    と、このメモリ部に受信した第1のデータを記憶する手
    段を更に具備したことを特徴とする請求項1ないし3記
    載の認証方式。
JP1008010A 1989-01-17 1989-01-17 認証方式 Pending JPH02187888A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP1008010A JPH02187888A (ja) 1989-01-17 1989-01-17 認証方式
GB8929239A GB2227111B (en) 1989-01-17 1989-12-28 Certification system
KR1019900000428A KR900012179A (ko) 1989-01-17 1990-01-15 데이터인증 시스템과 그 인증방법
FR9000511A FR2641885A1 (fr) 1989-01-17 1990-01-17 Systeme de verification de donnees pour une carte de paiement
US07/942,337 US5293029A (en) 1989-01-17 1992-09-09 System for mutually certifying an IC card and an IC card terminal
HK98102223.8A HK1003129B (en) 1989-01-17 1998-03-17 Certification system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1008010A JPH02187888A (ja) 1989-01-17 1989-01-17 認証方式

Publications (1)

Publication Number Publication Date
JPH02187888A true JPH02187888A (ja) 1990-07-24

Family

ID=11681381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1008010A Pending JPH02187888A (ja) 1989-01-17 1989-01-17 認証方式

Country Status (1)

Country Link
JP (1) JPH02187888A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001357370A (ja) * 2000-06-15 2001-12-26 Sony Corp データ記憶装置およびデータ記憶方法、情報処理装置および情報処理方法、並びに記録媒体
JP2002345037A (ja) * 2001-05-17 2002-11-29 Sony Corp 携帯通信装置及び通信システム並びにその通信方法
US6526511B1 (en) 1997-12-25 2003-02-25 Nippon Telegraph And Telephone Corporation Apparatus and method for modifying microprocessor system at random and maintaining equivalent functionality in spite of modification, and the same microprocessor system
US7506165B2 (en) 1998-01-02 2009-03-17 Cryptography Research, Inc. Leak-resistant cryptographic payment smartcard
US7587044B2 (en) 1998-01-02 2009-09-08 Cryptography Research, Inc. Differential power analysis method and apparatus
US9852572B2 (en) 1998-07-02 2017-12-26 Cryptography Research, Inc. Cryptographic token with leak-resistant key derivation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62118471A (ja) * 1985-11-19 1987-05-29 Nec Corp 課金装置
JPS62166489A (ja) * 1986-01-20 1987-07-22 Nippon Telegr & Teleph Corp <Ntt> Icカ−ドシステム
JPS63273980A (ja) * 1987-05-01 1988-11-11 Toshiba Corp 相互認証方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62118471A (ja) * 1985-11-19 1987-05-29 Nec Corp 課金装置
JPS62166489A (ja) * 1986-01-20 1987-07-22 Nippon Telegr & Teleph Corp <Ntt> Icカ−ドシステム
JPS63273980A (ja) * 1987-05-01 1988-11-11 Toshiba Corp 相互認証方式

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6526511B1 (en) 1997-12-25 2003-02-25 Nippon Telegraph And Telephone Corporation Apparatus and method for modifying microprocessor system at random and maintaining equivalent functionality in spite of modification, and the same microprocessor system
US7506165B2 (en) 1998-01-02 2009-03-17 Cryptography Research, Inc. Leak-resistant cryptographic payment smartcard
US7587044B2 (en) 1998-01-02 2009-09-08 Cryptography Research, Inc. Differential power analysis method and apparatus
US7634083B2 (en) 1998-01-02 2009-12-15 Cryptography Research, Inc. Differential power analysis
US8879724B2 (en) 1998-01-02 2014-11-04 Rambus Inc. Differential power analysis—resistant cryptographic processing
US9852572B2 (en) 1998-07-02 2017-12-26 Cryptography Research, Inc. Cryptographic token with leak-resistant key derivation
JP2001357370A (ja) * 2000-06-15 2001-12-26 Sony Corp データ記憶装置およびデータ記憶方法、情報処理装置および情報処理方法、並びに記録媒体
JP2002345037A (ja) * 2001-05-17 2002-11-29 Sony Corp 携帯通信装置及び通信システム並びにその通信方法

Similar Documents

Publication Publication Date Title
US5293029A (en) System for mutually certifying an IC card and an IC card terminal
US5202922A (en) Data communication system
JPH04143881A (ja) 相互認証方式
JP2005056305A (ja) メモリ領域に分割領域を持つ情報記憶装置
JP3480746B2 (ja) 携帯可能電子装置
GB2227111A (en) Certification system
EP1733305A1 (en) Semiconductor memory
US20220398565A1 (en) Type 4 nfc tags as protocol interface
JP4681314B2 (ja) 無線通信システム,リーダ/ライタ装置,鍵管理方法,およびコンピュータプログラム
JPH02187888A (ja) 認証方式
US20080284572A1 (en) Data control system, control server, data control method, and program
JP2003123032A (ja) Icカード端末および本人認証方法
CN110111119A (zh) 基于区块链的带物理防伪nfc芯片的鞋服防伪系统及方法
JPH02187785A (ja) 認証方式
JP2856415B2 (ja) 携帯可能電子装置
JPH09179950A (ja) 個別icカード、認証用icカード及びそれらを用いたicカードシステム
JP3545045B2 (ja) Icカードアクセス用パターンファイルの作成方法
JP3671238B2 (ja) チップカードのためのデータの動的解釈方法
JPH02255397A (ja) 携帯可能電子装置
CN100474327C (zh) 安全设备、中继终端及操作安全设备的方法
JP7487837B1 (ja) 電子情報記憶媒体、icチップ、icカード、鍵データ格納方法、及びプログラム
JPH02255396A (ja) 携帯可能電子装置
JPH09179949A (ja) 携帯可能情報記録媒体とそのリーダライタ装置
JPH02255399A (ja) 携帯可能電子装置
JPH02255395A (ja) 携帯可能電子装置