JP2720701B2 - Icカード用プログラム書き込み装置 - Google Patents

Icカード用プログラム書き込み装置

Info

Publication number
JP2720701B2
JP2720701B2 JP4105946A JP10594692A JP2720701B2 JP 2720701 B2 JP2720701 B2 JP 2720701B2 JP 4105946 A JP4105946 A JP 4105946A JP 10594692 A JP10594692 A JP 10594692A JP 2720701 B2 JP2720701 B2 JP 2720701B2
Authority
JP
Japan
Prior art keywords
program
card
code
object program
writing
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.)
Expired - Lifetime
Application number
JP4105946A
Other languages
English (en)
Other versions
JPH06176209A (ja
Inventor
昭雄 永守
正志 高橋
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.)
Toppan Inc
Original Assignee
Toppan Printing Co Ltd
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 Toppan Printing Co Ltd filed Critical Toppan Printing Co Ltd
Priority to JP4105946A priority Critical patent/JP2720701B2/ja
Publication of JPH06176209A publication Critical patent/JPH06176209A/ja
Application granted granted Critical
Publication of JP2720701B2 publication Critical patent/JP2720701B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はICカードのデータメモ
リ中にソースファイルからプログラムをダウンロードす
るICカード用プログラム書き込み装置、詳しくはダウ
ンロードするプログラムが正常か否かの確認を行ってダ
ウンロードすることにより、ICカードでのプログラム
の正常動作を保証するプログラム書き込み装置に関す
る。
【0002】
【従来の技術】ICカードのデータメモリ中にソースフ
ァイルからアプリケーションプログラムをダウンロード
してこのプログラムを使用する場合がある。この場合に
おいて、ソースプログラムからオブジェクトプログラム
に翻訳(コンパイル)した際に、そのプログラムにコン
パイルエラーが生じていれば、コンパイルエラーリスト
に示される。しかし、このコンパイルエラーリストを見
逃すと、中途半端なオブジェクトプログラムをICカー
ドにダウンロードしてしまう結果となる。すなわち、I
Cカードにダウンロードする際には、そのオブジェクト
プログラムが正常に翻訳されたものか否かを判別するこ
とは不可能であった。
【0003】
【発明が解決しようとする課題】このように従来のIC
カードへのプログラム書き込み装置においては、メモリ
への不正なプログラムまたはコンパイルエラーを有する
プログラムの書き込みを防止することができず、このた
め、ICカードの不正な使用、例えばデータの改ざん等
を防ぐことができなかった。また、プログラムの暴走、
データの破壊を防止することができなかった。
【0004】そこで、本発明は、ICカードの不正使
用、例えばメモリのデータの改ざんを防止するととも
に、そのプログラムの暴走、データの破壊を防止するこ
とができるICカード用プログラム書き込み装置を提供
することを、その目的としている。
【0005】
【課題を解決するための手段】請求項1に記載の発明
は、ICカードにプログラムを書き込むICカード用プ
ログラム書き込み装置において、ソースプログラムをオ
ブジェクトプログラムに翻訳する翻訳手段と、このオブ
ジェクトプログラムに翻訳のエラーが存在するか否か、
および、このオブジェクトプログラムが正当に作成され
たか否かをチェックするチェック手段と、正当に作成さ
れ、かつ、翻訳エラーのないオブジェクトプログラムに
ついて認証コードを付与するコード付与手段と、オブジ
ェクトプログラムについて上記認証コードの有無を判別
するコード判別手段と、認証コードを有するオブジェク
トプログラムをメモリに書き込む書き込み手段と、を備
えたICカード用プログラム書き込み装置である。
【0006】
【作用】本発明に係るICカード用プログラム書き込み
装置にあっては、ソースプログラムをオブジェクトプロ
グラムに翻訳し、その翻訳にエラーがない場合にそのオ
ブジェクトプログラムに認証コードを付す。また、この
オブジェクトプログラムが正当に作成されたものか否か
をチェックし、正当なプログラムについてのみ認証コー
ドを付与する。そして、ICカードのメモリへのプログ
ラムの書き込みに際してこの認証コードをチェックし、
認証コードを有するオブジェクトプログラムのみをダウ
ンロードする。
【0007】
【実施例】以下、本発明に係るICカード用プログラム
書き込み装置の実施例を図面を参照して説明する。図1
〜図3は本発明の一実施例を説明するためのものであ
る。
【0008】図1において、10はICカードを示し、
20はこのICカード10にプログラム等を書き込むこ
とができるリーダライタ(端末)を示している。ICカ
ード10は周知の構成を有しており、I/O、CPU、
ROM、RAM等を備えている。また、リーダライタ2
0にあっても同様にI/O、CPU、ROM、RAMを
有して構成されているものである。
【0009】同図に示すように、リーダライタ20にあ
っては、ソースプログラムをコンパイルするためのコン
パイル手段21と、コンパイルエラーのチェック、プロ
グラム正当性のチェックを行うチェック手段22と、オ
ブジェクトプログラムに認証コードを付与するためのコ
ード付与手段23と、を有している。一方、ICカード
10にあっても、オブジェクトプログラムについて認証
コードの有無等を判別するためのコード判別手段11、
および、オブジェクトプログラムをメモリ(例えばEE
PROM)に書き込むための書き込み手段12を有して
構成されている。
【0010】コンパイル手段21は、アセンブラ言語、
手続向き言語で記述されたソースプログラムを、機械語
形式のオブジェクトプログラムに翻訳するものである。
チェック手段22は、コンパイルエラーのチェック、お
よび、そのソースプログラムが正当な端末、正当な者に
よって作成されたか否かをチェックするものである。そ
して、コード付与手段23は、コンパイル手段21が出
力する上記オブジェクトプログラムの一部もしくは全て
に対して少なくとも1つの秘密データを考慮に入れた演
算処理を行い、認証コードを生成、付与するものであ
る。なお、チェック手段22によって翻訳エラーが検出
されなかった場合、および、ソースプログラムの正当性
が確認された場合に限り、このコード付与手段23は動
作するものである。さらに、コード判別手段11は、書
き込みの対象となるオブジェクトプログラムについて上
記認証コードが付与されているかをチェックするもので
ある。例えば書き込みコマンドについて比較用コードを
作成し、この比較用コードとオブジェクトプログラムの
有する認証コードとを比較するものである。書き込み手
段12は、周知の構成であって、ICカード10のメモ
リ(EEROMまたはRAMでもよい)に機械語形式の
オブジェクトプログラムを書き込むものである。そし
て、この書き込まれたオブジェクトプログラムに基づい
てCPUが動作してそのプログラムを実行するものであ
る。このオブジェクトプログラムとしては銀行カードの
場合には預金残高照会プログラム、通帳記入プログラム
等がある。
【0011】以下、図2および図3のフローチャートを
参照して本発明の作用について説明する。まず、コード
付与のためのルーチンについて図2を参照して説明す
る。このルーチンにあっては、ソースファイルから所望
のソースプログラム(コンパイラ言語、アセンブラ言語
等によるアプリケーションプログラム)を読み込み(S
21)、このソースプログラムが正当なものか否かをチ
ェックする(S22)。例えば正当な端末、正当なソー
スファイルから読み込まれたものか等を、チェックする
ものである。正当性が確認された場合、そのソースプロ
グラムを機械語プログラムに翻訳し(S23)、その翻
訳にエラーがないかをチェックする(S24)。エラー
がない場合にはこのオブジェクトプログラムについて認
証コードを付す(S25)。そして、このオブジェクト
プログラムをオブジェクトファイルとして格納する(S
26)。なお、ソースプログラムに正当性がない場合、
例えば偽造等された不正なプログラムの場合、または、
コンパイルエラーが生じた場合は、その時点で処理を中
断するものとする。
【0012】図3はこのようにして作成したオブジェク
トプログラムをICカード10のメモリに書き込むため
のルーチンを示している。この場合、書き込みコマンド
が入力されたとすると(S31)、ICカード10はそ
のコマンドで指定されたオブジェクトプログラムをいっ
たん読み込む(S32)。そして、このオブジェクトプ
ログラムについて認証コードをチェックし(S33)、
認証コードの無い場合は処理を中断する(S37)。ま
た、認証コードを有する場合は、上記書き込みコマンド
に基づいてこの比較用のコードを演算、作成する(S3
4)。例えば装置ID、操作者ID等に基づいて演算を
行うものとする。そして、この比較用コードを認証コー
ドと照合し(S35)、これらのコードが一致している
場合は、そのオブジェクトプログラムをメモリのCPU
予定のエリアにダウンロードする(S36)。一致しな
い場合は処理の中断となる(S37)。
【0013】また、本発明にあっては、上記実施例に限
られることなく、例えばICカードのメモリへのプログ
ラムの書き込みをリーダライタ(端末)によって行うよ
うに構成してもよいことはもちろんである。
【0014】なお、本発明にあっては、ICカードに限
られることなく光カード等他の情報カードにも適用する
ことができる。
【0015】
【発明の効果】本発明によれば、翻訳エラーがあるオブ
ジェクトプログラムをICカード内にダウンロードする
おそれがなくなり、その結果、原因不明のICカードの
暴走、データの破壊がなくなる。また、不正に作成され
たオブジェクトプログラムのダウンロードを妨げること
ができる。その結果、ICカードの不正使用、例えばメ
モリ中のデータの改ざんを防止することができる。
【図面の簡単な説明】
【図1】本発明の一実施例に係るICカード用プログラ
ム書き込み装置を示すブロック図である。
【図2】本発明の一実施例に係るICカード用プログラ
ム書き込み装置でのプログラムへのコード付与の手順を
示すフローチャートである。
【図3】本発明の一実施例に係るICカード用プログラ
ム書き込み装置でのICカードのメモリへのプログラム
の書き込み手順を示すフローチャートである。
【符号の説明】
10 ICカード 11 コード判別手段 12 書き込み手段 20 リーダライタ 21 コンパイル手段 22 チェック手段 23 コード付与手段

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 ICカードにプログラムを書き込むIC
    カード用プログラム書き込み装置において、 ソースプログラムをオブジェクトプログラムに翻訳する
    翻訳手段と、 このオブジェクトプログラムに翻訳のエラーが存在する
    か否か、および、このオブジェクトプログラムが正当に
    作成されたか否かをチェックするチェック手段と、 正当に作成され、かつ、翻訳エラーのないオブジェクト
    プログラムについて認証コードを付与するコード付与手
    段と、 オブジェクトプログラムについて上記認証コードの有無
    を判別するコード判別手段と、 認証コードを有するオブジェクトプログラムをメモリに
    書き込む書き込み手段と、を備えたことを特徴とするI
    Cカード用プログラム書き込み装置。
JP4105946A 1992-03-31 1992-03-31 Icカード用プログラム書き込み装置 Expired - Lifetime JP2720701B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4105946A JP2720701B2 (ja) 1992-03-31 1992-03-31 Icカード用プログラム書き込み装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4105946A JP2720701B2 (ja) 1992-03-31 1992-03-31 Icカード用プログラム書き込み装置

Publications (2)

Publication Number Publication Date
JPH06176209A JPH06176209A (ja) 1994-06-24
JP2720701B2 true JP2720701B2 (ja) 1998-03-04

Family

ID=14421017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4105946A Expired - Lifetime JP2720701B2 (ja) 1992-03-31 1992-03-31 Icカード用プログラム書き込み装置

Country Status (1)

Country Link
JP (1) JP2720701B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6938165B2 (en) 1996-09-03 2005-08-30 Hitachi, Ltd. Program writable IC card and method thereof
JPH1079000A (ja) 1996-09-03 1998-03-24 Hitachi Ltd プログラム書き込み可能なicカード

Also Published As

Publication number Publication date
JPH06176209A (ja) 1994-06-24

Similar Documents

Publication Publication Date Title
JP3766052B2 (ja) 高級プログラミング言語を用いたマイクロコントローラ
FI117990B (fi) Tiedonvaihtojärjestelmä, joka käsittää kannettavia tietojenkäsittely-yksiköitä
US6454173B2 (en) Smart card technology
US4904851A (en) Identification authenticating system
AU706393B2 (en) Data exchange system comprising portable data processing units
US20050086497A1 (en) IC card system
Iguchi-Cartigny et al. Developing a Trojan applets in a smart card
JPH0622030B2 (ja) 取引の正当性確認方式
KR970701884A (ko) 거래처리시스템 및 거리처리방법(a tellers processing machine and a processing method thereof)
JPH0440587A (ja) 携帯可能電子装置
Faugeron Manipulating the frame information with an underflow attack
JP2720701B2 (ja) Icカード用プログラム書き込み装置
KR19980079600A (ko) 칩 카드에 정보를 입력하는 방법
KR19990028574A (ko) 고정프로그램을변경시키는방법및장치
JP4583305B2 (ja) 記録方法、記録装置及びicカード
JP2006338311A (ja) 複数のアプリケーションを搭載したデバイスを処理するコンピュータシステム、デバイスおよびコンピュータプログラム
JP3375111B2 (ja) Icカード内プログラムの検査方式及び方法
KR100562090B1 (ko) 마이크로회로 카드, 특히 비접촉형 카드에서 다수의 비휘발성 메모리 위치를 불가분적으로 수정하는 방법
KR100609679B1 (ko) 효율적인 실행코드 검증 방법 및 장치
KR20050098365A (ko) 카드 애플리케이션(또는 데이터) 탑재용 카드단말장치 및이를 위한 기록매체
JP2005038220A (ja) カード不正使用発見方法及びシステム
JPH02105285A (ja) 非接触型icカードシステム
JP2006012104A (ja) 認証システム
Mayes Vulnerability Analysis of a Commercial
JP2000163532A (ja) 指紋登録装置及びicカード