JPH11110504A - Icカード - Google Patents
IcカードInfo
- Publication number
- JPH11110504A JPH11110504A JP26732497A JP26732497A JPH11110504A JP H11110504 A JPH11110504 A JP H11110504A JP 26732497 A JP26732497 A JP 26732497A JP 26732497 A JP26732497 A JP 26732497A JP H11110504 A JPH11110504 A JP H11110504A
- Authority
- JP
- Japan
- Prior art keywords
- data
- card
- processing
- records
- encryption
- 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
Links
Landscapes
- Credit Cards Or The Like (AREA)
Abstract
も、各種データについての処理時間が短く、セキュリテ
ィ性の高いICカードを提供する。 【解決手段】 RAM5またはEEPROM4には、金
融取引等についてのデータが複数のレコードに分割して
格納してある。CPU1は、その複数のレコードを所定
のレコード数毎に結合してデータのかたまりをつくる。
そして、CPU1は、その結合したデータのかたまり毎
に圧縮処理および暗号化処理を行う。そして、CPU1
は、その圧縮処理および暗号化処理した結果をRAM5
またはEEPROM4に格納するとともに、署名データ
として端末装置側に送出する。ここで、コプロセッサ2
は、暗号化処理におけるべき乗余剰演算を行う。
Description
扱うシステムで用いられるICカードに関する。特に本
発明は、取引の履歴を示すデータであるLOGデータを
用いてICカード内で署名データを生成して、取引デー
タの認証をするICカードに関する。
を確保しなければならない金融取引システム(電子現金
システム)に用いられる。この種のICカードでは、商
取引の状態(日時、場所、金額など)を示す取引データ
を取り扱い、また、セキュリティ性を高めるため暗号化
した署名データを用いてその取引についての認証を行う
ようにしている。
は、ICカード内に格納されているデータを端末装置側
で読み出し、これを暗号化して再度ICカードに格納し
ていた。ここで、端末装置側とは、ICカードの通信相
手となる装置であって、金融取引システムなどにおける
上位システムをいう。また、取引データについては、1
レコードについて暗号化してTAC(Transaction Auth
entication Code)を生成し、これをICカードに格納
していた。この場合、取引データが複数のデータによっ
て構成されるときは、レコード毎にTACを生成し、I
Cカードに格納するか、端末装置側で取引データを圧縮
し、暗号化した後にICカードに格納していた。
on Standard)、FEAL(Fast DataEncryption Algorit
hm)利用の認証子生成検査法による暗号をいう。ここ
で、DESとは、アルゴリズム公開型の共通鍵方式の暗
号方式をいう。共通鍵方式とは、復号鍵が暗号化鍵に等
しいか暗号化鍵から簡単に導ける暗号方式をいい、対称
暗号系ともいう。共通鍵方式は、比較的小規模のプログ
ラムやハードウエアを用いても高速な処理が可能で、実
用性の高いものを構成しやすい。
カードにおいては、レコード単位にMACを生成するの
で、複数のレコードからなる取引データ(日時、場所、
金額等)についてはMAC生成を複数回行う必要があっ
た。
ときは、セキュリティ性を高めるためにMACデータを
8バイトの長いデータにする。そして、複数のレコード
をICカードに格納する場合は、各レコード毎に長いM
ACデータが付加されているので、ICカードが内蔵す
るメモリの使用量を増大させてしまう。また、この場合
は、そのメモリの内容においてMACデータ以外の取引
データの割合が少なくなり、ICカードのメモリの有効
利用上も問題があった。
ものであり、認証用データ等を少ない記憶容量で効率的
に記憶することができるとともに、セキュリティ性の高
いICカードを提供することを目的とする。
ために、請求項1記載の発明は、情報を書き換え可能に
格納するメモリと、前記メモリに格納されているプログ
ラムに基づいて当該ICカードの動作を制御する中央処
理装置とを具備するICカードにおいて、前記メモリに
格納されているデータであって複数のレコードに分割し
てあるデータを、所定数のレコード毎に1個のブロック
に結合する結合手段と、前記結合手段が結合したブロッ
ク毎に連続して当該データをデータ圧縮をする圧縮手段
と、前記圧縮手段によって圧縮したデータを前記メモリ
に格納する格納手段と、前記格納手段によって格納した
データを所定の暗号方式で暗号化することで署名データ
を生成する署名データ生成手段とを具備することを特徴
とする。
載のICカードにおいて、前記署名データを不揮発的に
保持する署名データ保持手段を有することを特徴とす
る。
たは2記載のICカードにおいて、前記署名データ生成
手段は、べき乗余剰演算が可能なコプロセッサを用いて
暗号化の処理をすることを特徴とする。
2または3記載のICカードにおいて、前記圧縮手段
は、一方向性ハッシュ関数を用いてデータ圧縮すること
を特徴とする。
2、3または4記載のICカードにおいて、前記署名デ
ータ生成手段における暗号方式は、公開型暗号方式であ
ることを特徴とする。
2、3、4または5記載のICカードにおいて、前記メ
モリに格納されているデータであって、複数のレコード
に分割してあるデータは、取引の履歴の一部を示す取引
データを含むことを特徴とする。
の実施形態について説明する。 A:実施形態の構成 図1は、本発明の一実施形態であるICカードの構成を
示すブロック図である。図において、1は装置各部を制
御するCPUであり、2は暗号化処理におけるべき乗余
剰演算をするコプロセッサである。3は、CPU1の動
作を規定するプログラムなどを記憶するROMであり、
EEPROM4はデータを書き換え可能に記憶する不揮
発性メモリである。なお、CPU1の動作を規定するプ
ログラムはEEPROM4に記憶させてもよい。RAM
5は、データを一時的に格納する揮発性メモリである。
(図示せず)に挿入された状態において、電源Vcc、
クロックCLK、リセット信号RSTおよびグランド電
位GNDが与えられるようになっている。また、CPU
1は、端末装置とICカード10との間の双方における
データの授受をI/O端子を介して行う。
CPU1が各種の情報処理をする際の作業バッファとも
なる。さらにRAM5またはEEPROM4の一部は、
図6に示すようなファイル構造のレコードが格納されて
る。そのレコードは、金融取引または商取引などにおけ
る金額、取引時間、取引場所などの履歴を示すデータな
どからなる。
る。図2は、ICカード10におけるコマンド処理を示
すフローチャートである。まず、CPU1は、端末装置
側から受けた命令がハッシュコマンドであるか否かを判
断する(S1)。ここで、ハッシュコマンドである場合
は、図3に示すレコード結合処理及び図4に示す圧縮処
理をする(S2)。すなわち、ハッシュコマンドとは、
ICカード10の内部において、複数のレコードを結合
して、その結合したデータをハッシュ関数で圧縮処理す
ることを要求するコマンドである。
マンドでない場合は、CPU1は受けた命令が暗号コマ
ンドであるか否かを判断する(S3)。ここで、暗号コ
マンドである場合は、暗号認証処理すなわちEEPRO
M4またはRAM5に格納してあるデータを暗号化して
署名データを生成する処理を行う(S4)。ステップS
3において、暗号コマンドでない場合、すなわち受けた
命令がハッシュコマンドでもなく暗号コマンドでもない
場合は不当なコマンドとしてエラーステータスを端末装
置側に送る(S5)。
結合処理及び圧縮処理を示すフローチャートである。以
下の処理動作は、主にCPU1が制御する。まず、作業
バッファの先頭アドレスを所定のレジスタにセットする
(S11)。ここで、作業バッファとは、当該レコード
結合処理または圧縮処理を実行する際に用いるメモリ領
域であり、本実施形態ではRAM5またはEEPROM
4内の一部の領域である。
用いる初期データをWORK1にセットする(S12)。こ
こで、WORK1は、作業バッファの一部であり、前記先頭
アドレスに基づいて所定領域が確保されている。次に、
レジスタr0に、本レコード結合処理の対象となるレコ
ードの数をセットする(S13)。本レコード結合処理
の対象となるレコードは、例えば、金融取引等における
金額、取引時間、取引場所などの履歴を示すデータから
なる。そして、各レコードは、図6に示すようなファイ
ル構造で、RAM5またはEEPROM4に格納されて
いる。
なるレコードのレコード番号の初期値として「1」をセ
ットする(S14)。そして、レジスタr2に、作業バ
ッファ内データ長の初期値として、「0」をセットする
(S15)。ここで、作業バッファ内データ長とは、作
業バッファ内に格納した、すなわち作業バッファ内で既
に結合したデータの長さをいう。
指定しているレコードのレコード長(バイト数)をセッ
トする(S16)。次に、作業バッファがENDの位置
にきているか、すなわち、作業バッファが結合したデー
タでいっぱいか否かを判断する(S17)。ここで、作
業バッファがエンドの位置にきていない場合は、レジス
タr1が保持している番号のレコードのデータを読み出
し、これを作業バッファに格納する(S18)。ここ
で、その読み出し対象のレコードのデータ長(バイト
数)はレジスタr3に保持されているので、そのレジス
タr3の値だけ当該レコードのデータを作業バッファに
格納すれば、1レコード分のデータが作業バッファに格
納される。すなわち、1つのレコードに含まれるデータ
全部を読み出して、作業バッファに格納することで、そ
の作業バッファにおいて各レコードを結合している。
内容とレジスタr3の内容とを加算した値をセットす
る。これにより、バッファ内のデータ長がレジスタr2
にセットされる。さらに、レジスタr1の内容を「1」
増加させて、新たなレジスタr1の内容とする(S1
9)。これにより、作業対象となるレコード番号が
「1」増加する。次に、レジスタr0の内容を「1」減
少させて、新たなレジスタr0の内容とする(S2
0)。そして、レジスタr0の内容が「0」になったか
否かを判断し、「0」でない場合は、まだ結合及び圧縮
処理をしていないレコードがあるので、ステップS16
に戻る(S21)。
理によって、本レコード結合処理の対象となるレコード
の数だけ、ステップS16から21の処理が繰り返さ
れ、各レコードを結合していく。
内容が「0」になった場合は、図4に示すハッシュ処理
をする(22)。すなわち、レジスタr0の内容が
「0」になったことで、結合処理の対象となるレコード
の全てが作業バッファにおいて結合されたことがわか
る。そして、その結合したレコードの全体について、ハ
ッシュ処理を1回行いデータ圧縮する。
ファがいっぱいになった場合は、レジスタr3の内容か
ら読み出しバイト数を減算して、新しいレジスタr3の
内容とする(S24)。これは、読み出し作業バッファ
にr3バイトずつ格納していくと、作業バッファの大き
さに満たないデータが出てくるため、その満たない大き
さのデータが(r3−読み出しバイト数)になり、これ
が次のデータを入れるバッファr3の大きさを示すもの
である。
ち圧縮処理をする(S25)。これらは、作業バッファ
がいっぱいになっり、所定量のデータがその作業バッフ
ァにおいて結合されたので、その結合されたデータを圧
縮処理するものである。その後、まだハッシュ処理され
ずに残っているレコードを結合して、圧縮処理をすべく
ステップS17の処理に移る。
を示すフローチャートである。すなわち、本フローチャ
ートは、図3におけるステップS22およびステップS
24の各圧縮処理を具体的に示したものである。ここ
で、バッファWORK1,WORK2は、それぞれ圧縮処理につい
ての作業用のバッファであり、それぞれRAM5内にセ
ットするものとする。なお、その作業用のメモリ領域
は、EEPROM4内において確保してもよい。
る(S30)。次に、バッファWORK2に圧縮対象となる
データをセットする(S31)。そして、バッファWORK
2にあるデータとバッファWORK1にあるデータとを加え合
わせ、その加え合わせたデータをハッシュ関数を用いて
圧縮する(S32)。その圧縮したデータは、バッファ
WORK1にセットする(S33)。また、その圧縮したデ
ータであってバッファWORK1にセットしたデータは、バ
ッファWORK2にあるデータに加え合わせられて、ステッ
プS32における圧縮対象となるデータとなる。その
後、作業バッファの先頭アドレスを所定のレジスタにセ
ットし(S34)、ハッシュ処理を終了する。
に知られている一方向性ハッシュ関数を使用する。その
一方向性ハッシュ関数としては、例えば、MD4、MD
5、SHA、RIPE−MD等を用いることができる。
なお、MD4、MD5における”MD”は、「Messeage
Digest」の略である。また、”SHA”は、「SeureHa
sh Algorithm」の略である。
理を示すフローチャートである。まず、キーデータを読
み出す(S41)。ここで、キーデータはEEPROM
4またはROM3に記憶されている。次に、指定レコー
ドのアドレスを計算する(S42)。次に、EEPRO
M4またはROM3に記憶してある暗号用データのアド
レスをセットする(S43)。次に、キーデータアドレ
スをセットする(S44)。
(d)でRSA(Rivest Shamir Adleman)方式の暗号
処理を行う(S45)。RSA方式とは、公開鍵暗号方
式の一つであり、素因数分解が実際上困難である(例え
ば512ビット以上の)大きな整数を法とする剰余ベキ
乗を用いる方式である。なお、本発明における暗号処理
は、RSA方式に限定されるものではなく、例えば、D
ES方式、またはFEAL方式などの他の方式を用いる
こともできる。
は、コプロセッサ2が行う。これにより、暗号処理が高
速に実行される。そして、暗号化処理が完了した後、そ
の処理結果を署名データとしてEEPROM4に格納す
る。これとともに、出力バッファに署名データをセット
して端末装置側に送出する(S46)。
データについてのファイル構造を示す説明図である。ま
ず、ディレクトリ構造としては、データファイルの先頭
アドレスと、RAM5またはEEPROM4に格納され
ているレコードの数とが格納されている。そして、認証
用のデータもディレクトリ構造の一つとして格納されて
いる。一方、圧縮処理および暗号化の対象となる取引デ
ータなどは、レコード単位でRAM5またはEEPRO
M4に格納されている。そして、各レコードには、自身
のレコード長がデータとして付加されている。
側が送出するコマンドフォーマットを示す説明図であ
る。本図では、ハッシュ処理を指令するハッシュコマン
ドと、暗号化処理を指令する暗号コマンドが示してあ
る。また、各処理が正常に実行されたことを示すレスポ
ンス信号のフォーマットも示してある。
コードからなる取引データをCPU1が本ICカードの
内部で結合し、この結合したデータのかたまり、すなわ
ちブロックについてICカード10の内部で圧縮処理お
よび暗号化処理をして署名データを生成するので、取引
データを外部に出力せずに署名データを生成することが
できる。したがって、本ICカードによれば、金融取引
システム等で高いセキュリティ性が求められる署名デー
タの偽造および改ざんをほとんど不可能にすることがで
きる。
を結合したデータのかたまりについて圧縮処理および暗
号化処理をするので、各レコード毎に圧縮処理および暗
号化処理をした場合よりもMACデータ等を少なくする
ことができる。これは、以下の理由による。各レコード
毎に暗号化処理をすると各レコード毎にMACデータ等
が付与される。一方、データのかたまりについて暗号化
処理をするとそのかたまりに1個のMACデータが1つ
付与されるだけであるからである。したがって、本IC
カードは、そのICカードに内蔵するメモリを効率的に
使用することができる。
を結合したデータのかたまりについて圧縮処理および暗
号化処理をして署名データを生成するので、各レコード
毎に圧縮処理および暗号化処理をして署名データを生成
した場合よりも圧縮処理および暗号化処理の回数を大幅
に低減することができる。したがって、本ICカード
は、署名データの生成を高速に実行することができる。
ロックに結合し、そのブロック毎に圧縮処理および暗号
化処理をしている。しかし、本発明は上述の実施形態に
限定されるものではない。例えば、複数のレコードを1
個のブロックに結合し、そのブロックを複数生成し、複
数のブロックを1個のブロック集合に結合して、そのブ
ロック集合毎に圧縮処理および暗号化処理を行ってもよ
い。
複数のレコードを1個のブロックに結合し、さらにその
ブロック毎に連続して圧縮してから暗号化して署名デー
タを生成する手段をICカード自身がもつので、取引デ
ータを前記レコードに含ませた場合でも、その取引デー
タを外部に出力せずに、ICカードの内部で署名データ
を生成することができ、セキュリティ性の高いICカー
ドを提供することができる。すなわち、本発明によれ
ば、署名データの偽造および改ざんがほとんど不可能と
なるICカードを提供することができる。
結合したブロック毎に、圧縮処理および暗号化処理をす
るので、各レコード毎に圧縮処理および暗号化処理をし
た場合よりもMACデータ等を少なくすることができ、
ICカードに内蔵するメモリを効率的に使用することが
できる。
示すブロック図である。
ーチャートである。
フローチャートである。
ャートである。
チャートである。
図である。
示す説明図である。
Claims (6)
- 【請求項1】 外部装置と接続され、書き換え可能なメ
モリ手段と、外部からの命令に基づいてデータ処理を行
う演算手段を有するICカードにおいて、 前記メモリに格納されているデータであって複数のレコ
ードに分割してあるデータを、所定数のレコード毎に1
個のブロックに結合する結合手段と、 前記結合手段が結合したブロック毎に連続して当該デー
タをデータ圧縮をする圧縮手段と、 前記圧縮手段によって圧縮したデータを前記メモリに格
納する格納手段と、 前記格納手段によって格納したデータを所定の暗号方式
で暗号化することで署名データを生成する署名データ生
成手段とを具備することを特徴とするICカード。 - 【請求項2】 請求項1記載のICカードにおいて、 前記署名データを不揮発的に保持する署名データ保持手
段を有することを特徴とするICカード。 - 【請求項3】 請求項1または2記載のICカードにお
いて、 前記署名データ生成手段は、べき乗余剰演算が可能なコ
プロセッサを用いて暗号化の処理をすることを特徴とす
るICカード。 - 【請求項4】 請求項1、2または3記載のICカード
において、 前記圧縮手段は、一方向性ハッシュ関数を用いてデータ
圧縮することを特徴とするICカード。 - 【請求項5】 請求項1、2、3または4記載のICカ
ードにおいて、 前記署名データ生成手段における暗号方式は、公開型暗
号方式であることを特徴とするICカード。 - 【請求項6】 請求項1、2、3、4または5記載のI
Cカードにおいて、 前記メモリに格納されているデータであって複数のレコ
ードに分割してあるデータは、取引の履歴の一部を示す
取引データを含むことを特徴とするICカード。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26732497A JPH11110504A (ja) | 1997-09-30 | 1997-09-30 | Icカード |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26732497A JPH11110504A (ja) | 1997-09-30 | 1997-09-30 | Icカード |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11110504A true JPH11110504A (ja) | 1999-04-23 |
Family
ID=17443246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26732497A Pending JPH11110504A (ja) | 1997-09-30 | 1997-09-30 | Icカード |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11110504A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10113829A1 (de) * | 2001-03-21 | 2002-09-26 | Infineon Technologies Ag | Prozessoranordnung für sicherheitsrelevante Anwendungen und Verfahren zum Ausführen von sicherheitsrelevanten Anwendungen |
KR100743804B1 (ko) * | 2000-01-08 | 2007-07-30 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 데이터 처리 장치 및 그 동작 방법 |
JP2013097338A (ja) * | 2011-11-04 | 2013-05-20 | Fujitsu Ltd | 暗号化プログラム、復号化プログラム、暗号化方法、復号化方法、システムおよびコンテンツの生成方法 |
-
1997
- 1997-09-30 JP JP26732497A patent/JPH11110504A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100743804B1 (ko) * | 2000-01-08 | 2007-07-30 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 데이터 처리 장치 및 그 동작 방법 |
DE10113829A1 (de) * | 2001-03-21 | 2002-09-26 | Infineon Technologies Ag | Prozessoranordnung für sicherheitsrelevante Anwendungen und Verfahren zum Ausführen von sicherheitsrelevanten Anwendungen |
JP2013097338A (ja) * | 2011-11-04 | 2013-05-20 | Fujitsu Ltd | 暗号化プログラム、復号化プログラム、暗号化方法、復号化方法、システムおよびコンテンツの生成方法 |
US9305171B2 (en) | 2011-11-04 | 2016-04-05 | Fujitsu Limited | Encryption apparatus, encryption method, decryption apparatus, decryption method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5231666A (en) | Cryptographic method for updating financial records | |
US4736423A (en) | Technique for reducing RSA Crypto variable storage | |
US7328338B1 (en) | Transaction verification protocol for smart cards | |
US9990796B2 (en) | Data card verification system | |
US6704870B2 (en) | Digital signatures on a Smartcard | |
US5414772A (en) | System for improving the digital signature algorithm | |
CA2334597C (en) | Leak-resistant cryptographic indexed key update | |
EP1873960A1 (en) | Method for session key derivation in a IC card | |
US7000110B1 (en) | One-way function generation method, one-way function value generation device, proving device, authentication method, and authentication device | |
JPH07235922A (ja) | 照合器により少なくとも一の証明器を認証するシステム | |
JP2008293034A (ja) | タイミング攻撃を阻止する標準化されたモジュラべき乗を計算することにより復号メカニズムを実行する方法と装置 | |
CN108229966A (zh) | 一种银行卡交易处理方法、银行卡及银行服务器 | |
Tzong-Chen et al. | Authenticating passwords over an insecure channel | |
JPH10240128A (ja) | 暗号装置、暗号鍵生成方法及び暗号鍵管理方法、並びに素数生成装置及び素数生成方法 | |
US7543153B2 (en) | Digital signature generating apparatus, method, computer program and computer-readable storage medium | |
JP2004054128A (ja) | 暗号化装置 | |
JPH118616A (ja) | 故障利用攻撃対応icカード | |
JPH11110504A (ja) | Icカード | |
JPH11225138A (ja) | 暗号処理装置、暗号処理方法及びその方法を記録した記録媒体 | |
JPH1069222A (ja) | Icカード | |
CN101465726B (zh) | 用于秘钥的反破解方法及执行此方法的控制器与储存装置 | |
JP2004248330A (ja) | 暗号装置、暗号鍵生成方法、暗号鍵管理方法 | |
JPH07121107A (ja) | 鍵生成方法および装置 | |
JP4860314B2 (ja) | 情報処理装置、タイムスタンプトークンの発行方法、及び、コンピュータプログラム | |
US20100005131A1 (en) | Power-residue calculating unit and method of controlling the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031224 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040220 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040406 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040607 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20040705 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20040723 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060417 |