■国際標準規格
参照すべき国際標準規格は以下に示す通りである。
表4.1 参照すべき国際標準規格構成
国際標準規格 | 規格概要 |
ISO/IEC 10536-1 | 物理特性 |
ISO/IEC 10536-2 | カッブリングフィールド |
ISO/IEC 10536-3 | 電子信号とモード切り替え |
ISO/IEC 10536-4 | オペレーション手順 |
ISO/IEC 7816-4 | インターインダストリコマンドとセキュリティ機構 |
■物理的構造
密着型ICカードシステムにおける物理的構造を図4.1 の通り設定する。
備 考 | |
| コプロ | : チップとしては開発しているが、アプリケーション上は規定しない。 |
| 割込機能 | : オプション |
図4.1 物理的構造
リード・ライト・ユニットと密着型ICカード間において、密着型ICカードに電力を伝送する機能について技術開発項目の概要を示す。
表4.2 中分類「非接触電力伝送機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
非接触電力伝送機能 | アンテナ機能 | リード・ライト・ユニットとの受電する機能である。 |
全波整流機能 | 交流電力信号を直流電力信号に変換する機能である。 |
電圧安定化機能 | 入力電圧・負荷変動に対して安定した直流電圧を生成する機能である。 |
電力制御機能 | CPUチップへの電力供給を制御する機能である。 |
電力蓄積機能 | 直流電力を負荷の変動に対するためにコンデンサに余剰電力を蓄積する機能である。 |
4.1.1 アンテナ機能
リード・ライト・ユニットの交流磁場発生回路によって発生した磁界を電磁結合により受け止め、あるいは密着型ICカード内のRFインタフェース回路により生成した信号を送信するためのアンテナ機能を実現する。
(1) 基本仕様
電力及び信号の伝送は誘導結合方式とし、結合領域の寸法を図4.2 に示す。電磁結合の結合領域とは、結合要素を動作させるために必要な規定の電磁束量が通過する領域のことである。
図4.2 結合領域の寸法
結合領域の数と位置を図4.3 に規定する。誘導結合領域の数は2個で ISO/IEC 10536-2で規定している、H1及びH3の領域を使用する。
図4.3 結合領域の数と位置
アンテナコイルはISO/IEC 10536-3 Annex Dに規定されるテストリーダの仕様にて動作すること。
電力伝送はコイルH1、H3を通じて交流磁場F1、F3により励起され、交流磁場の周波数は4.9152MHz、磁場の周波数偏差は、±0.1%以内とする。交流磁場の波形は、正弦波とし高調波歪みは総計 10%未満とする。交流磁場F1、F3は少なくともATRの間、90度の位相差が必要である。位相偏差は正規の位置から±10%以内とする。アンテナ回路は1つの励起磁場から150mWを超えない電力を取り出すものとする。また、取り出す事のできる最大電力は、200mWとする。
(2) 拡張仕様
なし
(3) 参考
切りかきとして、密着型ICカードの表面から見て右上の角を切る。
4.1.2 全波整流機能
アンテナ機能で受信した電力(交流)を、整流し直流電力に変換する。
(1) 基本仕様
リード・ライト・ユニットの交流磁場発生回路との電磁結合により密着型ICカードのアンテナコイルに発生した交流電力信号を、RFインタフェース回路及びマイコン回路の動作に必要な直流電力信号に変換する機能を実現する。
全波整流回路は各アンテナコイル1個につき1個設け、ブリッジ回路による全波整流方式とする。1つの励起磁場からは最大150mWを超えない電力を取り出すことができる整流回路とする。
(2) 拡張仕様
リード・ライト・ユニットから供給される交流信号は、リード・ライト・ユニット側の出力電力やアンテナ回路との結合度合により、過大な電圧を生じることがある。ここでは、半導体の電気的特性値を超える入力電圧に対して、半導体を破壊から保護する機能を有する。この最大値は、半導体の特性に依存する。
ISO/IEC 10536-3 Annex.A 「電力伝送の試験方法」のA.3.1「単一コイル電力伝送」に規定される試験方法による汎用リード・ライト・ユニットの「単一コイル」の送信電力が100mWのとき、密着型ICカードは、動作すること。但し、汎用リード・ライト・ユニットの2つの励起磁界に差がないこと。
(3) 参考
アンテナコイルからの入力印加電圧の最大値は、非動作時 30Vp-p、動作時 15Vp-pとする。
4.1.3 電圧安定化機能
全波整流機能により生成された直流電圧は電磁結合のため、結合の度合、リード・ライト・ユニットの供給電力の強度、RFインタフェース回路及びマイコン回路の負荷により電圧変動が大きく、そのままでは不安定となりRFインタフェース回路及びマイコン回路へ電源として供給できない。そこで、入力電圧、負荷の変動に対して一定の安定した直流電圧を生成する機能を実現する。
(1) 基本仕様
RFインタフェース回路及びマイコン回路の動作範囲の条件を満たす出力値を得るものとする。この動作範囲には、直流動作電圧、リップル電圧がある。
(2) 拡張仕様
なし
(3) 参考
RFインタフェース回路用電源は5.0V±10%、マイコン回路用電源は3.3V、出力電流15mA(max.) とする。
4.1.4 電力制御機能
マイコン回路の初期化を行うときに、ISO/IEC 10536-3の「7.2 Timing Constraint」の規定に従い、マイコン回路への電源電力を制御する。
(1) 基本仕様
後述のリセット信号生成機能における電圧比較機能の出力によりマイコン回路への電力供給を制御する。マイコン回路への供給電圧が、マイコン回路の動作条件を満たさない場合、不要な動作・処理を回避し、マイコン回路の動作を確実に停止する。
(2) 拡張仕様
なし
(3) 参考
マイコン回路の電源電圧は3.3Vであるが、この電圧を監視し、所定の値以下となったときに、警報信号を出力する。監視電圧は2.5V±5%とする。ハイレベルの電圧監視は選択とする。
4.1.5 電力蓄積機能
RFインターフェース回路およびマイコン回路の動作による負荷の変動に対応するため、コンデンサに電源安定化機能で得られた電力とRFインターフェース回路およびマイコン回路で消費する電力の差分の余剰電力を蓄積する。
(1) 基本仕様
全波整流機能にて生成した直流電力を負荷の変動に対応させるため、コンデンサに余剰電力を蓄え、負荷が大きくなったときにコンデンサに蓄えた電力を負荷側に供給する。
コンデンサの容量は負荷(RFインタフェース回路、マイコン回路)の瞬時最大電流が流れた時においても、各々の最小動作電圧以上を保証する値とする。
(2) 拡張仕様
このコンデンサは ISO 7810 に規定される厚さ、及びISO/IEC10536-1に規定される表面形状を実現する薄さが必要であり、かつ所定の電力の蓄積を実現する機能を有する。
(3) 参考
電圧安定化機能への入力電圧は直流で標準6.0V、最小値5.5Vとする。
リード・ライト・ユニットと密着型ICカード間において、アンテナ回路を経由して情報信号を処理・伝送する機能について技術開発項目の概要を示す。
表4.3 中分類「非接触信号伝送機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
非接触信号伝送機能 | アナログ・ディジタル変換機能 | アナログ信号からディジタル信号への信号変換機能である。 |
信号分離機能 | アンテナコイルの両端から得られる電力信号と情報信号の重畳信号を効率良く分離する機能である。 |
受信データ復調機能 | 位相比較機能の出力を電気信号に変換する機能である。 |
復調データ出力機能 | 受信データ復調機能で生成された信号をマイコン回路に出力する機能である。 |
変調データ入力機能 | マイコン回路から送信されるディジタル信号を入力する機能である。 |
送信データ変調機能 | サブキャリア信号を位相変調する機能である。 |
信号変調機能 | アンテナコイルからの入力信号を振幅変調し、アンテナコイル側に信号を伝送する機能である。 |
4.2.1 アナログ・ディジタル変換機能
アンテナ機能から入力される交流信号はアンテナコイルの両端から得られるアナログ信号であって、受信データを復調する回路は集積密度の向上および動作性能の安定化のためディジタル回路で構成するため、アナログからディジタルへの信号変換機能を実現する。
(1) 基本仕様
アンテナコイルH1、H3のそれぞれの両端から得られる正弦波のアナログ信号を受信し、RFインタフェース回路で処理可能なディジタル信号に変換する。
(2) 拡張仕様
なし
(3) 参考
なし
4.2.2 信号分離機能
アンテナ機能から入力される交流信号には、RFインタフェースチップ及びCPUチップに供給する電力信号と情報信号が重畳されている。アンテナコイルの両端から得られるこれらの重畳信号から電力信号と情報信号を効率良く分離する機能を実現する。
(1) 基本仕様
信号分離機能で分離した情報信号は、位相差の異なる交流磁界の変化として得られる。この位相差をISO 1177に規定される論理レベル'1'(マーク)および論理レベル'0'(スペース)の電気信号に変換するために交流磁界の位相差を検出する機能を実現する。交流磁場F1、F3は90度の位相差を持っており状態Aと状態A*の関係は次の通りである。
状態A (φF1、φF3=φF1+90°)
状態A* (φF1'=φF1−90°、φF3'=φF3+90°=φF1+180°)
図4.4、表4.6 に示すT3の間の位相の状態を論理レベル'1' と規定し、マーク、スペースを決定する。
(2) 拡張仕様
なし
(3) 参考
なし
4.2.3 受信データ復調機能
アナログ・ディジタル変換の出力を論理レベル'1'(マーク)および論理レベル'0'(スペース)の情報信号に変換する。
(1) 基本仕様
前記、位相比較機能の出力を得て論理レベル'1'(マーク)および論理レベル'0'(スペース)の電気信号に変換する。信号の符号化方式はNRZ(Non-Return to Zero)方式で、位相シフトキーイング(PSK)方式で位相変調された信号を復調する機能を実現する。
位相変調の位相遷移時間は、データの遷移時間の10%以内とする。
(2) 拡張仕様
データレートは9600bps x N (N=1,2,4) とする。
(3) 参考
なし
4.2.4 復調データ出力機能
受信データ復調機能で生成された信号をマイコン回路に出力する。
(1) 基本仕様
前記、受信データ復調機能で生成された信号をディジタル信号処理機能であるマイコン回路に出力する機能であり、マイコン回路の信号入力端子を駆動する能力を有する。
(2) 拡張仕様
なし
(3) 参考
駆動電圧はVcc=3.3V。
4.2.5 変調データ入力機能
マイコン回路から送られてくる論理レベル'1'(マーク)および論理レベル'0'(スペース)の情報信号を受信する。
(1) 基本仕様
ディジタル信号処理機能であるマイコン回路から送られてくるディジタル信号をRFインタフェースチップで処理可能な信号レベルとする。
(2) 拡張仕様
なし
(3) 参考
なし
4.2.6 送信データ変調機能
前記、変調データ入力機能で受信した信号で後述するサブキャリア信号を位相変調する機能を実現する。
(1) 基本仕様
サブキャリア信号はクロック生成機能で作られる基準クロック周波数(4.9152MHz)を1/16に分周しサブキャリア信号用の周波数(307.2KHz)に変換して生成する。アンテナコイルH1、H3を通して、サブキャリアを位相シフトキーイング(PSK)で180度位相変調する。
(2) 拡張仕様
なし
(3) 参考
なし
4.2.7 信号変調機能
送信データ変調機能で生成した、位相変調されたサブキャリア信号でアンテナコイルからの入力信号を振幅変調し、アンテナコイル側に信号を伝送する機能を実現する。
(1) 基本仕様
サブキャリア信号は連続的に初期負荷の少なくとも10%、1mW以上の負荷変動を与えるものとする。この間、サブキャリアの位相は180度切り替わり、これにより2つの相が定義できる。位相遷移時間はデータ遷移時間TDの20%以内とする。CICCからCCDへのデータ伝送はNRZコーディングを用いる。CICCが最初に励起されるとき、CCDは論理レベル'1'をT3の間の状態の位相に割り付ける。T3の経過後、各サブキャリアの位相変換により逆の論理レベル'0'を与える。T3は表4.6 に定義する。
(2) 拡張仕様
なし
(3) 参考
初期負荷の20%の変動を与えるものとする。
密着型ICカード内においてクロックを生成する機能について技術開発項目の概要を示す。
リード・ライト・ユニットと密着型ICカード間の情報処理に関する国際標準規格であるISO/IEC 10536-3 に規定されているクロック信号をアンテナ機能を通じて得られる交流磁界から生成する機能を実現する。
表4.4 中分類「クロック生成機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
クロック生成機能 | クロック信号抽出機能 | RFインタフェース回路及びマイコン回路の動作に必要な基準クロック信号を生成する機能である。 |
クロックデューティ調整機能 | クロック信号のデューティを所定の規定値内に調整する機能である。 |
クロック供給機能 | 生成されたクロック信号をサブキャリア生成機能及びマイコン回路に供給する機能である。 |
4.3.1 クロック信号抽出機能
アンテナ機能を通じて得られる信号から、RFインタフェース回路およびマイコン回路の動作に必要な基準クロック信号を抽出する。
(1) 基本仕様
リード・ライト・ユニットの交流磁場発生回路との電磁結合によりICカード側のアンテナコイルに発生した交流電力信号から、RFインタフェース回路及びマイコン回路の動作に必要な基準クロック信号を生成する。クロック周波数は4.9152MHzであり、少なくともATR期間中は、CICCから CCDへのデータ伝送レートは9600bpsとする。
(2) 拡張仕様
なし
(3) 参考
なし
4.3.2 クロックデューティ調整機能
クロック信号のハイレベル期間とロウレベル期間の比(デューティ)をマイコン回路の要求する規定値以内に調整する。
(1) 基本仕様
クロックのデューティはマイコン回路の動作許容範囲内とする。
(2) 拡張仕様
磁界の変化により抽出したクロック信号のハイレベルとロウレベルの比(デューティ)を50±10%以内に調整する機能を実現する。
(3) 参考
なし
4.3.3 クロック供給機能
生成されたクロック信号をマイコン回路に供給する。
(1) 基本仕様
生成されたクロック信号を、前記サブキャリア生成機能およびマイコン回路にそれぞれ供給可能な出力値とする。
(2) 拡張仕様
なし
(3) 参考
出力電圧は3.3V、立上り時間min.10ns、立下り時間min.10nsとする。
密着型ICカード内においてリセット信号を生成する機能について技術開発項目の概要を示す。
リード・ライト・ユニットと密着型ICカード間の情報処理に関する国際標準規格であるISO/IEC 10536-3 に規定されている初期応答(Answer to Reset)をディジタル信号処理機能に実施させるとともにマイコン回路の初期化を行うための初期化信号(リセット信号)を生成する機能を実現する。
表4.5 中分類「リセット信号生成機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
リセット信号生成機能 | 電圧比較機能 | マイコン回路の動作に必要な直流電力信号レベルにあるかを判断する機能である。 |
パワーオンリセット機能 | 所定のクロック期間までリセット信号を発生する機能である。 |
リセット出力機能 | パワーオンリセット機能で生成した信号をマイコン回路に接続するためのバッファ機能である。 |
4.4.1 電圧比較機能
アンテナ機能により受け取る電力が、RFインタフェース回路およびマイコン回路の動作に必要な直流電力信号レベルにあるかを判断する。
(1) 基本仕様
マイコン回路の動作に必要な直流電力信号レベルにあるかを判断するための比較を行い、所定の値以下の時、マイコン回路への電源供給を制御し、かつ初期応答のタイミング規定に準ずるリセット復帰時間(T0)を保証する。
(2) 拡張仕様
なし
(3) 参考
直流電力信号の監視レベルは 2.5V±5%とする。
4.4.2 パワーオンリセット機能
前記、電圧比較機能により電源電圧の出力をモニターし電源電圧が規定値を超えたことを確認した後、所定のクロック期間までリセット信号を発生する機能を実現する。
(1) 基本仕様
コンタクトレス伝送において正しく動作させるためには、タイミングの規定が重要である。リセット復帰時間(T0)、リセット信号立ち上がり時間(T1)、データ伝送準備時間(T2)、安定ロジック時間(T3)そしてATR送出時間(T4)についての規定を図4.4 に、そのタイミング規定値を表4.6 に示す。
最小リセット復帰時間:電力伝送フィールドが変化し、CCDからの影響をリセットする時間で、リセット復帰時間(T0)はCICCに電力が供給されない時間として定義する。
t0≧8.0ms
最大電力立ち上がり時間:電力フィールドの立ち上がり時間は次のように規定する。
t1≦0.2ms
データ伝送準備時間:CICCが安定するための通信を準備するに要する時間で、次のように規定する。
t2=8.0ms
安定ロジック時間:ATRの前に、論理レベル'1'が維持される。
t3=2ms
最大ATR送出時間:CICCがATRの送出を開始する時間は、次のように規定する。但し、CICCはデータ伝送準備時間にATRの送出を開始してもよい。
t4≦30ms
図4.4 タイミングの規定
表4.6 タイミング規定値
Time Interval | Name | Communication | Value |
From CICC | To CICC |
---|
T0 | reset recovery time interval | Not allowed | Not allowed | ≧8ms |
T1 | power rise time interval | Not defined | Not defined | ≦0.2ms |
T2 | preparation time interval | Not defined | Logic Level 1 | 8ms |
T3 | stable Logic time interval | Logic Level 1 | Logic Level 1 | 2ms |
T4 | response time interval for ATR | ATR | Not defined | ≦30ms |
(2) 拡張仕様
データ伝送準備時間T2(8ms)において、CICCは、T2の開始直後から少なくとも5msの間、論理レベル'1'を出力するものとする。
(3) 参考
なし
4.4.3 リセット出力機能
パワーオンリセット機能で生成した信号をマイコン回路に出力する。
(1) 基本仕様
パワーオンリセット機能で生成した信号をリセット信号を基に、マイコン回路のリセット端子へ接続可能な(駆動能力を持つ)信号出力に変換する。
(2) 拡張仕様
なし
(3) 参考
駆動電圧はVoh=Vcc (max)、Vol=0.4V (max)、Vcc=3.3V
リード・ライト・ユニットと密着型ICカード間の情報処理に関する機能について技術開発項目の概要を示す。リード・ライト・ユニットと密着型ICカード間の情報処理に関する国際標準規格であるISO/IEC 10536-3 に規定されているディジタル信号処理機能を実現する。
表4.7 中分類「ディジタル信号処理機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
ディジタル信号処理機能 | CPU機能 | 読み出し/書き込み命令、演算命令他、乗除算命令等を持つ機能である。 |
メモリ機能 | データ伝送処理、コマンド処理等を実行する時の中間情報やプログラム、ファイル情報等を記憶する機能である。 |
乗余演算機能 | 所定のクロック以内で剰余演算を高速に実行する機能である。 |
割り込み処理機能 | CPUチップへの割り込みが発生したことを知らせる機能である。 |
入出力機能 | RFチップと情報信号を送受信する機能である。 |
4.5.1 CPU機能
読み出し/書き込み命令、演算命令、入出力命令、乗除算命令、ビット単位の操作命令、後述のEEPROMへの書き込み命令をCPUで処理する。
(1) 基本仕様
密着型ICカードの機能を実現するデータ伝送処理機能、コマンド処理機能、ファイル生成・管理機能、セキュリティ機能の各実行モジュール(ソフトウェア)を順次処理する汎用レジスタ方式のCPU(Central Processing Unit)で、メモリへの読み出し/書き込み命令、算術演算命令、入出力命令の他、論理演算命令、ビット単位の操作命令、ジャンプ/ブランチ命令、例外処理命令と、複数のアドレッシングモード(CPUが記憶装置やレジスタに対して読み出し/書き込みを行うときのアドレスの生成方式)の機能を有する。
(2) 拡張仕様
ハードウエアによる剰余演算器を内蔵する場合は、剰余演算命令を有する。
(3) 参考
なし
4.5.2 メモリ機能
データ伝送処理、コマンド処理等を実行する時の中間情報やプログラム、ファイル情報等を記憶する機能である。
(1) 基本仕様
データ伝送処理機能、コマンド処理機能、ファイル生成・管理機能、セキュリティ機能の各実行モジュール(ソフトウェア)をコード化して記憶するROM(Read Only Memory)機能と、CPU機能が逐次処理をする時の中間情報を記憶するRAM(Random Access Memory)機能、およびファイル情報、認証情報など電源の供給を停止した場合でもその記憶内容が消去されることなく、データを保持できる不揮発性記憶機能を実現する。
(2) 拡張仕様
不揮発性記憶機能はEEPROM(Electrical Erasable Programmable Read Only Memory)で実現してもよい。EEPROMは、データ領域としてだけではなくプログラム領域としても使用できるものとする。
ROM、RAM、不揮発性メモリの記憶容量は任意とする。
(3) 参考
標準的マイコンの記憶容量はROM 16KB、RAM 512B、EEPROM 8KBである。
4.5.3 剰余演算機能
所定のクロック以内で剰余演算を高速に実行する機能である。
(1) 基本仕様
国際標準規格では規定なし
(2) 拡張仕様
情報のセキュリティを確保するために各種の暗号アルゴリズムが提案されている。これらの暗号アルゴリズムには複雑な処理と膨大な演算が必要であり、ICカード用のCPUのソフトウェアによる処理では時間がかかりすぎ実用的でない。そこで、演算処理の中で処理時間の短縮に効果のある部分をハードウェア化し、このハードウェアを効率よく利用することで、実用的な時間内での暗号処理が可能となる。このハードウェアは剰余計算を高速に実行するもので、所定のクロック以内で処理する機能を実現する。演算処理のビット長は選択とする。
(3) 参考
なし
4.5.4 割り込み処理機能
CPUヘの割り込みが発生したことを知らせる機能である。
(1) 基本仕様
CPUに対する外部からの割り込み信号を入力し、CPUヘ割り込みの発生したことを知らせる。外部からの割り込み信号は、その立ち上がりのエッジで応答し、この入力によりCPUは例外処理を実行する。
(2) 拡張仕様
なし
(3) 参考
なし
4.5.5 入出力機能
RFチップと情報信号を送受信する機能である。
(1) 基本仕様
RFインタフェース回路とマイコン回路間の情報信号の送信、受信機能を実現する。
(2) 拡張仕様
なし
(3) 参考
なし
密着型ICカードのデータ伝送処理機能として、ISO/IEC CD 10536-4に規定される初期応答(Answer To Reset)、外部端子付ICカードに関する国際規格標準であるISO/IEC 7816-3/AMD1規定される半二重ブロック伝送プロトコル等の表4.8 に示す小分類として位置付けられる各種機能に関し、次の実装規約を規定する。
表4.8 中分類「データ伝送処理機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
データ伝送処理機能 | 初期応答生成機能 | 密着型ICカードからリード・ライト・ユニットへの初期応答を生成する機能である。 |
キャラクタ生成機能 | データ伝送の最小単位であるキャラクタを生成する機能である。 |
キャラクタ送受信機能 | 密着型ICカードとリード・ライト・ユニット間でキャラクタを送受信する機能である。 |
調歩式半二重ブロック伝送プロトコル処理機能 | 調歩式半二重ブロック伝送プロトコルによる制御・処理をする機能である。 |
ブロック生成機能 | 密着型ICカードからリード・ライト・ユニットへ伝送するブロックを生成する機能である。 |
ブロック送受信機能 | 密着型ICカードとリード・ライト・ユニット間でブロックを送受信する機能である。 |
プロトコル制御バイト処理機能 | 密着型ICカードとリード・ライト・ユニット間で送受信するブロックに存在するプロトコル制御バイトを処理する機能である。 |
誤り信号検出機能 | 誤り信号を検出する機能である。 |
誤り信号生成機能 | 誤り信号を生成する機能である。 |
データ値の表記形式を次のとおりとする。
・2進データを表示するとき、データを" "で囲む。例、ビット"0"、"1"
・16進データを表示するとき、データを' 'で囲む。例、'00'、'FF'、'3FFFF'
・10進データを表示するとき、そのまま表示する(データを囲まない)。例、16バイト。 |
4.6.1 初期応答生成機能
初期応答生成機能とは、密着型ICカードが活性化された際、リード・ライト・ユニットへ最初にデータ送信する初期応答(Answer To Reset)を生成する機能である。
(1) 基本仕様
密着型ICカードが活性化された際、密着型ICカードは初期応答情報(Answer To Reset)と呼ばれる電気的・伝送プロトコル特性に関する属性情報をリード・ライト・ユニットにデータ送信する。この動作は、初期応答動作(Answer To Reset)と呼ばれる。
密着型ICカードの初期応答情報は、ISO/IEC CD 10536-4 に準拠し、開始キャラクタ、構成表示キャラクタ、接続情報キャラクタ、管理情報キャラクタ、及び検査キャラクタにより構成される。
- ・開始キャラクタ( initial character : TS )
-
これは、初期応答情報の先頭キャラクタ(1バイト固定)であり、後続のキャラクタのデータバイトを符号化するための意味付け(順意味付け・逆意味付けのいづけか一方)を示す。ここで、順意味付けとは、密着型ICカードとリード・ライト・ユニット間のシリアルデータ伝送をLSBファーストで行うことを、逆意味付けとは、MSBファーストで行うことを意味する。
・構成表示キャラクタ( format character : T0 )
これは、開始キャラクタに続く第2のキャラクタ(1バイト固定)であり、上位4ビットで後続する接続情報キャラクタの有無を示し、また、下位4ビットで接続情報キャラクタの次に後続する管理情報キャラクタの個数(バイト数)を示す。
・接続情報キャラクタ(interface characters : TAi, TBi, TCi, TDi )
これは、構成表示キャラクタに続くキャラクタであり、データ伝送プロトコル上の各種パラメータを示す。接続情報キャラクタはオプション(任意選択)でありバイト数は固定されない。
・管理情報キャラクタ(historical characters : T1, ... )
これは、接続情報キャラクタに続くキャラクタであり、密着型ICカードの使用方法に関する各種データを示す。管理情報キャラクタはオプション(任意選択)でありバイト数は固定されていない(最大15バイト可能)。
・検査キャラクタ(check character)
これは、初期応答情報の最終バイトに位置するキャラクタであり、構成表示キャラクタから管理情報キャラクタの最終バイトまでの排他的論理和を示す。言い換えると、構成表示キャラクタから検査キャラクタまでの排他的論理和が'00'になるよう設定する。検査キャラクタは条件に応じて付加する。
(2) 拡張仕様
次頁の表4.9 に記載する初期応答情報を密着型ICカードの初期応答情報とする。
(3) 参考
なし
表4.9 密着型ICカードの初期応答情報
項目 | 記号 | データ | 内容 |
開始キャラクタ (initial character) | TS | '3B' | 順意味付け:LSBファースト |
構成表示キャラクタ (format character) | T0 | 'EA'or'FA' | 上位4bit:TB1,TC1,TD1を送出。TA1は任意選択。 下位4bit:管理情報キャラクタの数=10 Byte |
接続情報キャラクタ (interface characters) | (TA1) | none or one of '91','92','93' | なし、又は'91'のとき、作業etu=1/9600秒 '92'のとき、作業etu=1/19200秒 '93'のとき、作業etu=1/38400秒 |
TB1 | '00' | Vpp=0V |
TC1 | 'FF' | min. deday = 11 etu |
TD1 | '81' | 上位4bit:TD2を送出。 下位4bit:プロトコルT=1を選択。 |
TD2 | '31' | 上位4bit:TA3,TB3を送出。 下位4bit:プロトコルT=1を選択。 |
TA3 | 'xx' | 情報フィールド長整数値(IFSI) |
TB3 | 'xx' | 上位4bit:ブロック待ち時間整数値(BWI) 下位4bit:キャラクタ待ち時間整数値(CWI) |
管理情報キャラクタ (historical characters) | T1 | '80' | カテゴリ指標子 (圧縮符号化TLVデータ対象で構成する。) |
T2 | '12' | 上位4bit:国名コードタグ番号 下位4bit:国名コードの長さ |
T3 | '39' | 日本の国名コード(第1バイト) |
T4 | '2F' | 日本の国名コード(第2バイト) |
T5 | '31' | 上位4bit:カードサービスデータタグ番号 下位4bit:カードサービスデータの長さ |
T6 | 'C0' | 応用サービスに依存しないカードサービス |
T7 | '73' | 上位4bit:カード能力タグ番号 下位4bit:カード能力の長さ |
T8 | 'C7' | ソフトウェア機能表示バイト1 |
T9 | '01' | ソフトウェア機能表示バイト2 |
T10 | '49' | ソフトウェア機能表示バイト3 |
検査キャラクタ (check character) | TCK | 'xx' | T0〜T10の排他的論理和 |
密着型ICカードの初期応答情報を構成する開始キャラクタ、構成表示キャラクタ、接続情報キャラクタ、管理情報キャラクタ、及び検査キャラクタを次のとおりとする。
・開始キャラクタ
開始キャラクタTS = '3B'とする。これは、順意味付け、すなわちLSBファーストを選択したときのデータ値である。表4.9 を参照のこと。
・構成表示キャラクタ
接続情報キャラクタTA1の送出を任意選択、TB1, TC1,TD1の送出を必須とし、管理情報キャラクタの個数(バイト数)を10バイトとする。したがって、TA1を送出しない場合、構成表示キャラクタT0 = 'EA'とし、TA1を送出する場合、T0 = 'FA'とする。表4.9 を参照のこと。
・接続情報キャラクタ
接続情報キャラクタとして、TA1を任意選択、TB1, TC1, TD1, TD2, TA3, TB3を必須とした6バイト又は7バイトのキャラクタを送出する。TA1で規定されるパラメータF、及びDにより、初期応答動作以降のデータ伝送速度を規定する。TA1が省略された場合、初期応答動作と同じデータ伝送速度を選択する。4.6.3節「キャラクタ送受信機能」を参照のこと。
TA1, TB1, TC1, TD1, TD2のデータ値は、表4.9 を参照のこと。また、TA3及びTB3のデータ値は規定しない。
・管理情報キャラクタ
管理情報キャラクタとして、T1からT10までの10バイトのキャラクタを送出する。これらのキャラクタにより、カテゴリ指標子と呼ばれる管理情報キャラクタのフォーマットを指定する情報バイト、日本の国名コードを示す情報バイト、カードの能力に関する情報バイトなどを指定する。
これらのキャラクタT1, ... , T10のデータ値は、表4.9 を参照のこと。
・検査キャラクタ
密着型ICカードは、プロトコル形式として調歩式半二重ブロック伝送プロトコルを指定した。
これは、検査キャラクタを付加する条件を満たすため、検査キャラクタを付加すること。
但し、接続情報キャラクタTA3、及びTB3のデータ値を規定しないため、検査キャラクタのデータ値についても規定しない。
(3) 参考
接続情報キャラクタTA3、及びTB3で規定されるパラメータ、すなわち、情報フィールド長整数値(IFSI)、ブロック待ち時間整数値(BWI)、及びキャラクタ待ち時間整数値(CWI)を規定しない。
したがって、TA3, TB3のデータ値はカードメーカの独自仕様とし、カードメーカは、ISO/IEC 7816-3/AMD1 に規定される方法で、TA3, TB3のデータ値を決定する。また、決定したTA3, TB3のデータ値に従い、検査キャラクタを付加する。
4.6.2 キャラクタ生成機能
キャラクタ生成機能とは、密着型ICカードとリード・ライト・ユニット間のデータ伝送の最小の単位であるキャラクタを生成する機能である。
(1) 基本仕様
図4.6に示すように、密着型ICカードとリード・ライト・ユニットの間でデータ伝送されるキャラクタは、10個の連続したビット、すなわち、開始ビット、8ビットからなる情報データビット、及びパリティ検査ビットから構成される。また、パリティ検査ビットの後ろには、キャラクタ保護時間を必要とする。
図4.6 キャラクタの構成
開始ビットの前の状態は、状態Z(密着型ICカードの場合、論理"1"とする。)であり、開始ビットは、状態A(密着型ICカードの場合、論理"0"とする。)とする。
(2) 拡張仕様
開始ビットに続く8個のデータビットは、b1,b2, ..., b8の順に送出する(LSBファースト)。正論理・LSBファーストのデータ伝送であることを、初期応答情報(ATR)の開始キャラクタTSを'3B'とすることにより、リード・ライト・ユニットへ通知する。また、データビットに続くパリティ検査ビットは、偶数パリティとする。
(3) 参考
なし
4.6.3 キャラクタ送受信機能
キャラクタ送受信機能とは、密着型ICカードとリード・ライト・ユニット間のデータ伝送の最小の単位であるキャラクタの送受信、すなわち、密着型ICカードからリード・ライト・ユニットへキャラクタを送信する機能、及びリード・ライト・ユニットから密着型ICカードへのキャラクタを受信する機能である。
(1) 基本仕様
送受信されるキャラクタの構成は、4.6.2節の「キャラクタ生成機能」に従う。
1ビットに要する伝送時間の単位として、etuを用いる。1個のキャラクタ内では、開始ビットの先端からn番目のビットの終端までの時間を、(n±0.2)etuとする。
初期応答動作中の二つの連続するキャラクタ間(開始ビットの先端間)、すなわち、(10±0.2)etuのキャラクタ伝送時間とキャラクタ保護時間の合計を、少なくとも12etuとする。また、初期応答情報の接続情報キャラクタTC1を設定することにより、初期応答動作以降の二つの連続するキャラクタ間(開始ビットの先端間)を、少なくとも11etuとしてもよい。
- 初期etuとは、初期応答動作中の1ビットに要する伝送時間であり、リード・ライト・ユニットが密着型ICカードに送出する交流電力信号の搬送周波数をfi = 4.9152 MHzとしたとき、次の時間とする。
初期etu=512 / fi 秒 = 1 / 9600 秒 (fiの単位は、Hzとする。)
作業etuとは、初期応答動作以降の1ビットに要する伝送時間であり、次の時間とする。
作業etu= ( 1/D ) x ( F/ fi ) 秒 (fiの単位は、Hzとする。)
ここで、Dをビット伝送率変換因子、Fをクロック伝送率変換因子と呼ぶ。
D、及びFの値は、接続情報キャラクタTA1のデータ値により設定され、作業etuと初期etuを異なる時間とすることができる。但し、初期etuの時間は変えることができない。
TA1が省略された場合、D=1、F=512が設定され、作業etuは初期etuと同じ時間となる。
作業etu=( 1/1 ) x ( 512 / 4915200 )= 1 / 9600 秒
(2) 拡張仕様
密着型ICカードでは、初期応答情報の接続情報キャラクタTC1を'FF'と設定することにより、初期応答動作以降の二つの連続するキャラクタ間(開始ビットの先端間)を、少なくとも11etuとする。
- 密着型ICカードの作業etuは、次の三つの内いづれか一つとする。
作業etu= 1 / 9600 秒、1 / 19200 秒、又は 1 / 38400 秒
作業etu= 1 / 9600 秒を選択する場合、TA1を送出しないか(省略する)、又はD=1、F=512を示すTA1 = '91'を送出する。
作業etu= 1 / 19200 秒を選択する場合、D=2、F=512を示すTA1 = '92'を送出する。
作業etu= 1 / 38400 秒を選択する場合、D=4、F=512を示すTA1 = '93'を送出する。
(3) 参考
密着型ICカードでは、作業etu= 1 / 9600 秒を選択し、初期応答情報の中でTA1を送出しない。
4.6.4 調歩式半二重ブロック伝送プロトコル処理機能
密着型ICカードとリード・ライト・ユニット間のデータ伝送は、調歩式半二重ブロック伝送プロトコルとよばれる伝送プロトコルによって、伝送制御及びカード固有の制御に関するコマンドの構造・処理が定義される。ここで、ブロックとは連続したキャラクタの集まりを指し、コマンドとはリード・ライト・ユニットから密着型ICカードに伝送されるカード固有の制御のためのデータ(ブロックにより構成される。)を指す。
調歩式半二重ブロック伝送プロトコル処理機能とは、この伝送プロトコルに従った処理をする機能である。
(1) 基本仕様
調歩式半二重ブロック伝送プロトコルのプロトコル形式はT=1と呼ばれる。
このプロトコルの詳細、例えば、密着型ICカードとリード・ライト・ユニットとの間でデータ伝送をするための伝送制御、制御手順、プロトコル規則などは、ISO/IEC 7816-3/AMD1で規定される。
これ以外の伝送プロトコルとして、調歩式半二重キャラクタ伝送プロトコル(プロトコル形式T=0)、調歩式全二重ブロック伝送プロトコル(プロトコル形式T=2)などの伝送プロトコルが、各々ISO/IEC 7816-3、ISO/IEC CD 10536-4に規定される。
初期応答情報の接続情報キャラクタTD1のデータ値を設定することにより、密着型ICカードがどのプロトコル形式を選択するかをリード・ライト・ユニットに通知することができる。
(2) 拡張仕様
密着型ICカードは、調歩式半二重ブロック伝送プロトコル(プロトコル形式T=1)を選択し、他のプロトコルは選択しない。
密着型ICカードは、ISO/IEC 7816-3/AMD1に規定される伝送プロトコル上のデータ伝送制御、制御手順、規則などを満足し、補足すべき規定を次のとおりとする。
- ・NAD異常時の処理(NADについては、4.6.5節「ブロック生成機能」を参照のこと。)
NADが未確定状態であり、かつNADが異常であった場合、NADを確立しないこと。NADが異常である場合とは、「ビットb8又はb4が'1'である。」、又は「NADがパリティエラー。」を指す。
NADが確定状態であり、かつNADが異常であった場合、密着型ICカードは無応答とする(応答しないこと)。
・Sブロックの処理(Sブロックについては、4.6.5節「ブロック生成機能」を参照のこと。)
密着型ICカードは、S(IFS request)を送信しない。
ブロック連鎖中のIブロックを受信後にエラーを発生した場合、S(ABORT request)を送信し、ブロック連鎖を中断する。また、このS(ABORT request)に対する応答S(ABORT response)を受信後、Iブロックを用いてステータスコードを出力する。
S(IFS request)を受信した場合、リード・ライト・ユニットの情報フィールド長(IFSD)として32バイト以上とする。但し、32バイト未満を指すS(IFS request)を受信したときの処理(レスポンス内容、及びレスポンスを出力するか否か)は規定しない。また、密着型ICカードの情報フィールド長(IFSC)より大きなリード・ライト・ユニットの情報フィールド長(IFSD)を指定されたとき、IFSDを一致させたレスポンスをした後、カードの情報フィールド長(IFSC)に従う。
S(RESYNCH request)を受信した場合、NADは保持したまま、送信ブロック番号及びリード・ライト・ユニットの情報フィールド長(IFSD)を初期状態に戻す。
・Rブロックの処理
ブロック連鎖中のIブロックを送信後、Rブロックを受信した場合において、そのRブロックの送信ブロック番号が次の送信ブロック番号を示していながらPCBの下位ビットがエラー通知を示すとき、異常電文(PCBエラー)として扱い、「その他の誤り」を符号化したRブロックを送信する。
(3) 参考
なし
4.6.5 ブロック生成機能
調歩式半二重ブロック伝送プロトコル(T=1)において、密着型ICカードとリード・ライト・ユニットとの間で伝送可能な最小のデータ単位をブロックと呼び、このブロックは、伝送プロトコル上で透過となる応用データ(application data)や伝送誤り処理を含む伝送制御データ(transmission control data)を送るために用いる。
ブロック生成機能とは、このブロックを生成する機能である。
(1) 基本仕様
ブロックはデータバイトを含む一連のキャラクタであり、その構成は、前述の4.6.2節「キャラクタ生成機能」に記述したキャラクタ構成と同一とする。
密着型ICカードのブロックは、先頭フィールド(prologue field)、情報フィールド(information field)、及び最終フィールド(epilogue field)の3つのフィールドから構成される。
- ・先頭フィールド(prologue field)
先頭フィールドは、ノードアドレス(NAD)、プロトコル制御バイト(PCB)、及び長さ(LEN)の3バイトで構成される。ノードアドレスとは、ブロックの送信元及び宛先示す1バイトであり、ビットb1〜b3が送信元のノードアドレスを、ビットb5〜b7が宛先のノードアドレスを示す。プロトコル制御バイトとは、データ伝送の制御に必要となる情報を送る1バイトであり、4.6.7節「プロトコル制御バイト」を参照のこと。長さとは、情報フィールドのバイト数(0〜254)を示す1バイトである。
・情報フィールド(information field)
情報フィールドは、応用データ(これは、メモリの内容を読み出すなど、カード固有の処理をするために用いる。)か、又は応用データ以外の伝送制御情報を伝送するためのバイトであり、そのバイト数は長さにより示される。情報フィールドを持たないブロックもありうる。
・最終フィールド(epilogue field)
最終フィールドは、ブロックの誤り検出符号(EDC: error detection code)である。
誤り検出符号を、水平冗長符合(LRC: longitudinal redundancy check)、又は巡回冗長検査(CRC: Cyclic redundancy check)のどちらかとする。
密着型ICカードには、次の3種類のブロックがある。
- ・情報ブロック(Iブロック)
- アプリケーションが使用する情報を伝送するために用いるブロックであり、肯定又は否定の応答を伝送する。
- ・受信準備完了ブロック(Rブロック)
- 肯定又は否定の応答を伝送するためのブロックであり、情報フィールドを持たない。
- ・管理ブロック(Sブロック)
- 密着型ICカードとリード・ライト・ユニットの間のプロトコル制御に関する情報を交換するためのブロックである。このブロックは、制御情報の内容によって、情報フィールドを持つことがある。
これらのブロックは、プロトコル制御バイトによって識別される。
(2) 拡張仕様
密着型ICカードでは、最終フィールドの誤り検出符号として、水平冗長符合(LRC )を使用する。最終フィールドのバイト数を1バイトとする。
密着型ICカードのブロックの構成を図4.7に示す。
図4.7 ブロックの構成
(3) 参考
なし
4.6.6 ブロック送受信機能
ブロック送受信機能とは、生成したブロックをリード・ライト・ユニットにデータ送信する機能、及び。リード・ライト・ユニットから送られるブロックをデータ受信する機能である。
(1) 基本仕様
密着型ICカードは、4.6.6節の「ブロック生成機能」に記載される構成のブロックをリード・ライト・ユニットにデータ送信する。また、リード・ライト・ユニットから密着型ICカードへ伝送されるブロックを同一の構成でデータ受信する。
(2) 拡張仕様
リード・ライト・ユニットから受信したブロックの誤り検出符号を水平冗長符合(LRC)とし、最終フィールドのバイト数を 1バイトとする。
(3) 参考
なし
4.6.7 プロトコル制御バイト処理機能
プロトコル制御バイト処理機能とは、リード・ライト・ユニットから受信したブロックに含まれるプロトコル制御バイトの内容に従いデータ伝送を制御する機能、及びリード・ライト・ユニットにデータ伝送すべき伝送制御情報をプロトコル制御バイトとして生成する機能である。
(1) 基本仕様
密着型ICカードとリード・ライト・ユニットの間で送受信されるブロックの中のプロトコル制御バイト(PCB)には、データ伝送に必要な制御情報が含まれる。また、PCBの最上位ビットb8及びb7によって、3つのブロック(Iブロック、Rブロック、及びSブロック)の種別が識別される。
- ・Iブロックの符号化規則
- Iブロックの符号化方法を図4.8に示す。
図4.8 Iブロックの符号化
送信ブロック番号N(S)は、1ビットで構成され、モジュロ2で計算する。ブロック伝送プロトコル後、又はRESYNCH処理後、N(S)の値を"0"とする。Iブロックを送信する度に1を加算する。
N(S)="1"に1を加算するとN(S)="0"となる。(モジュロ2による加算。)
ブロック連鎖ビットMは、ブロック伝送プロトコルの機能であるブロック連鎖の制御情報である。ブロック連鎖とは、ブロックを幾つかのブロックに分割して伝送する機能であり、情報フィールドの長さが情報フィールド整数値(IFSI)を越えるようなブロックを伝送する場合に使用できる。
ブロック連鎖ビットM="0"のとき、連鎖したブロックの最後のブロックである。
ブロック連鎖ビットM="1"のとき、連鎖したブロックの最初又は中間のブロックである。
- ・Rブロックの符号化規則
- Rブロックの符号化方法を図4.9に示す。
図4.9 Rブロックの符号化
N(R)の値は、Rブロックが誤りを通知するブロックであるか否かを示す。
- ・Sブロックの符号化規則
- Sブロックの符号化方法を図4.10に示す。
図4.10 Sブロックの符号化
Sブロックの内容は、ISO/IEC 7816-3/AMD1に従う。
(2) 拡張仕様
誤りを通知するRブロックの場合、N(R)は誤りを検出したIブロックのN(S)と同じ値となる。
密着型ICカードはVpp端子を持たない。したがって、「Vpp誤り通知」を示すSブロックを使用しない。
(3) 参考
なし
4.6.8 誤り信号検出機能
誤り信号検出機能とは、リード・ライト・ユニットから受信したブロック中の誤り検出符号により、そのブロックの誤りを検出する機能である。
(1) 基本仕様
調歩式半二重ブロック伝送プロトコル(T=1)において、リード・ライト・ユニットから受信したブロックの最終フィールドには誤り検出符号(EDC: error detection code)が含まれる。この誤り検出符号は、水平冗長符合(LRC: longitudinal redundancy check)、又は巡回冗長検査(CRC: Cyclic redundancy check)のどちらか一方である。4.6.5節「ブロック生成機能」を参照のこと。
(2) 拡張仕様
リード・ライト・ユニットから受信するブロックの誤り検出符号(EDC: error detection code)を水平冗長符号(LRC:Longitudinal Redundancy Check)とする。
(3) 参考
なし
4.6.9 誤り信号生成機能
誤り信号生成機能とは、リード・ライト・ユニットに送信するブロックから誤り検出符号を生成する機能である。
(1) 基本仕様
調歩式半二重ブロック伝送プロトコル(T=1)において、リード・ライト・ユニットに送信するブロックの最終フィールドとして誤り検出符号(EDC: error detection code)を生成する。この誤り検出符号は、水平冗長符合(LRC: longitudinal redundancy check)、又は巡回冗長検査(CRC: Cyclic redundancy check)のどちらか一方とする。4.6.5節「ブロック生成機能」を参照のこと。
(2) 拡張仕様
リード・ライト・ユニットに送信するブロックの誤り検出符号(EDC: error detection code)を水平冗長符号(LRC:Longitudinal Redundancy Check)とする。
(3) 参考
なし
密着型ICカードのコマンド処理機能として、外部端子付ICカードに関する国際規格標準であるISO/IEC 7816-4に規定されるユーザコマンドの種別判定、ユーザコマンド内のパラメータ検査等の表4.10 に示す小分類として位置付けられる各種機能に関し、次の実装規約を規定する。
表4.10 中分類「コマンド処理機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
コマンド処理機能 | コマンド種別判定機能 | リード・ライト・ユニットから受信したコマンドを解析し、コマンド種別を判定する。 |
コマンドパラメータ検査機能 | コマンドパラメータを解析し、所定のパラメータであるか検査する。 |
コマンド実行機能 | リード・ライト・ユニットから受信したコマンドの処理を実行する。 |
コマンド実行結果判定機能 | コマンド処理の実行結果が、正常か異常かを判定する。 |
レスポンスパラメータ生成機能 | 密着型ICカードからリード・ライト・ユニットへ送信するレスポンスパラメータを生成する。 |
レスポンス生成機能 | 密着型ICカードからリード・ライト・ユニットへ送信するレスポンスを生成する。 |
ステータス生成機能 | 密着型ICカード内部の処理状態を示すステータスバイトを生成する。 |
4.7.1 コマンド種別判定機能
コマンド種別判定機能とは、リード・ライト・ユニットから受信したコマンドを解析し、コマンドの種別を判定する機能である。
(1) 基本仕様
応用プロトコルは、コマンドを送信し、受信側でコマンドを処理し、レスポンスを送り返すというステップから構成される。特定のコマンドには、特定のレスポンスがあり、この対をコマンドレスポンス対とする。
APDU(応用プロトコルデータ単位:Application protocol data unit )は、リード・ライト・ユニットから密着型ICカード、又はその逆に送られるコマンドメッセージ又はレスポンスメッセージからなる。
コマンドメッセージ及びレスポンスメッセージは、データを含んでもよく、表4.11に示す4つの場合がある。
表4.11 コマンドレスポンス対内のデータ
場合 | コマンドデータ | 期待されるレスポンスデータ |
1 | データなし | データなし |
2 | データなし | データあり |
3 | データあり | データなし |
4 | データあり | データあり |
コマンドAPDUは、図4.11に示す4 バイト(必須)の見出し部及び条件に依存する可変長の本体部から構成される。
図4.11 コマンドAPDUの構成
コマンドAPDUのデータフィールド内のバイト数は、Lc とする。
レスポンスAPDUのデータフィールドの期待される最大バイト数は、Le とする。
表4.11で定めた4つの場合に従い、コマンドAPDUの4つの構造を図4.12に示す。
図4.12 コマンドAPDUの構造
ISO/IEC 7816-4は、18種類のコマンドを規定している。但し、全てのコマンドが任意選択(オプション)であり、必ずしも全てのコマンドに対応する必要はない。
(2) 拡張仕様
密着型ICカードのAPDU(応用プロトコルデータ単位:Application protocol data unit)は、リード・ライト・ユニットから密着型ICカードに送られるコマンドメッセージ、又は密着型ICカードからリード・ライト・ユニットに送られるレスポンスメッセージとする。したがって、密着型ICカードからリード・ライト・ユニットに送られるコマンドメッセージ、及びリード・ライト・ユニットから密着型ICカードに送られるレスポンスメッセージはない。
密着型ICカードのコマンドAPDUの内容を表4.12 に示す。
表4.12 コマンドAPDUの内容
表記 | 名前 | 長さ (バイト) | 内容 |
CLA INS P1 P2 | クラスバイト 命令バイト パラメータバイト1 パラメータバイト2 | 1 1 1 1 | 命令クラス 命令コード 命令パラメータ1 命令パラメータ2 |
Lcフィールド | 長さ(Lc) | 1又は3 | コマンドのデータフィールドバイト内のバイト数 |
データフィールド | データフィールドバイト | Lc (可変) | 受信するバイト列 |
Leフィールド | 長さ(Le) | 1又は3 | コマンドに対するレスポンスのデータフィールド内に期待される最大バイト数 |
コマンドAPDU内のLcフィールドは、1 バイト又は 3 バイトとし、拡張Lcフィールド方式に対応する。また、コマンドAPDU内のLeフィールドは、1 バイト又は 3 バイトとし、拡張Leフィールド方式に対応する。但し、上記の場合 4 のとき、Lcフィールド及びLeフィールドは1 バイトとし、拡張Lcフィールド及び拡張Leフィールド方式に対応しない。ここで、拡張Lcフィールド方式及び拡張Lcフィールド方式とは 3バイトで長さを表す方式であり、先頭バイトを'00'とし、後続する2バイトで長さを表す。
密着型ICカードのコマンドは、ユーザコマンドと準システムコマンドの二つに大別される。
ISO/IEC 7816-4に規定されるコマンドをユーザコマンド、ISO/IEC 7816-4に規定されないコマンドを準システムコマンドとする。
密着型ICカードでは、表4.13 に示されるコマンドを規定する。
表4.13 コマンド一覧表
| No. | コマンド名 | CLS | INS | 参照 |
ユーザ コマンド | 1 | READ BINARY | '0x' | 'B0' | 4.8.8節「バイナリデータ読出し機能」 |
2 | WRITE BINARY | 'D0' | 4.8.9節「バイナリデータ書込・書換機能」 |
3 | UPDATE BINARY | 'D6' |
4 | READ RECORD(S) | 'B2' | 4.8.6節「レコード読出し機能」 |
5 | WRITE RECORD | 'D2' | 4.8.7節「レコード書込・書換機能」 |
6 | APPEND RECORD | 'E2' |
7 | UPDATE RECORD | 'DC' |
8 | SELECT FILE | 'A4' | 4.8.3節「ファイル選択機能」 |
9 | VERIFY | '20' | 4.9.1節「データ照合機能」 |
10 | INTERNAL AUTHENTICATE | '88' | 4.9.2節「内部認証機能」 |
11 | EXTERNAL AUTHENTICATE | '82' | 4.9.3節「外部認証機能」 |
12 | GET CHALLENGE | '84' |
準システム コマンド | 13 | LOCK DF | '8x' | '50' | 4.9.4節「ファイル閉塞機能」 |
14 | UNLOCK DF | '52' | 4.9.5節「ファイル閉塞解除機能」 |
15 | UNLOCK KEY | '54' | 4.9.7節「キー閉塞解除機能」 |
16 | CHANGE KEY | '32' | 4.9.8節「キー書換機能」 |
17 | ERASE ALL RECORDS | '06' | 規定しない。 |
(3) 参考
表4.13に示したコマンド以外に、密着型ICカードの初期化処理などをするために必要となるコマンドがあるが、この実装規約では規定しない。
4.7.2 コマンドパラメータ検査機能
コマンドパラメータ検査機能とは、表4.13に示したコマンドに含まれるパラメータを解析し、所定のパラメータであるかを検査する機能である。
(1) 基本仕様
コマンドのクラスバイト(CLA)は、ISO/IEC 7816-4に対するコマンド及びレスポンスの適合の程度、及び論理チャネル番号によって表わされる。
また、無効な命令バイト(INS)を表4.15 に示す。
表4.15 無効なINS
b8 b7 b6 b5 b4 b3 b2 b1 | 意味 |
|
|
コマンドのパラメータバイト( P1, P2 )は、いかなる値をもってもよい。パラメータバイトを指定しない場合、パラメータバイトを'00'にしなければならない。
(2) 拡張仕様
密着型ICカードのクラスバイト(CLA)の符号化規定を表4.14 に示す。
表4.14 CLAの符号化規則
CLA | 内容 |
b8 | b7 | b6 | b5 | b4 | b3 | b2 | b1 |
0 | 0 | 0 | 0 | 0 | 0 | x | x | ISO/IEC 7816-4準拠のコマンド ここで、xは、論理チャネル番号。 |
1 | 0 | 0 | 0 | 0 | 0 | x | x | ISO/IEC 7816-4準拠でないコマンド ここで、xは、論理チャネル番号。 |
ユーザコマンドのクラスバイト(CLA)を'0x'、準システムコマンドのそれを'8x'する。
ユーザコマンド及び準システムコマンドの命令バイト(INS)を表4.13 に示す。
(3) 参考
なし
4.7.3 コマンド実行機能
コマンド実行機能とは、リード・ライト・ユニットから受信したコマンドの種別及びパラメータの内容に従い、それに対応した処理を実行する機能である。
(1) 基本仕様
密着型ICカードは、リード・ライト・ユニットからユーザコマンド(ISO/IEC 7816-4に規定されるコマンド)を受信した場合、そのコマンドの種別及びパラメータの内容に従い、ユーザコマンドの処理を実行する。
(2) 拡張仕様
密着型ICカードは、リード・ライト・ユニットから準システムコマンドを受信した場合、そのコマンドの種別及びパラメータの内容に従い、準システムコマンドの処理を実行する。
(3) 参考
密着型ICカードは、リード・ライト・ユニットからユーザコマンド及び準システムコマンド以外の(密着型ICカードの初期化処理などをするために必要となる)所定のコマンドを受信した場合、そのコマンドの種別及びパラメータのの内容に従い、所定のコマンドの処理を実行する。
この所定のコマンドは、カードメーカの独自仕様とする。
4.7.4 コマンド実行結果判定機能
コマンド実行結果判定機能とは、コマンドを実行した結果が、正常であるか異常であるかを判定する機能である。
(1) 基本仕様
密着型ICカードは、ユーザコマンドの処理を実行した後、実行結果が正常であるか、異常であるかを判定する。
(2) 拡張仕様
密着型ICカードは、準システムコマンドの処理を実行した後、実行結果が正常であるか、異常であるかを判定する。
(3) 参考
密着型ICカードは、ユーザコマンド及び準システムコマンド以外の(初期化処理などをするために必要となる)所定のコマンドの処理を実行した後、コマンド処理の実行結果が正常であるか、異常であるかを判定する。
4.7.5 レスポンスパラメータ生成機能
レスポンスパラメータ生成機能とは、密着型ICカードからリード・ライト・ユニットへ送信するレスポンスに含まれるパラメータを生成する機能である。
(1) 基本仕様
レスポンスAPDUは、本体部及び後続部から構成される。4.7.6節「レスポンス生成機能」を参照のこと。
密着型ICカードは、ユーザコマンドの処理実行及び判定結果に基づき、レスポンスAPDUの本体部となるデータフィールド(レスポンスパラメータ)を生成する。
(2) 拡張仕様
密着型ICカードは、準システムコマンドの処理実行及び判定結果に基づき、レスポンスAPDUの本体部となるデータフィールド(レスポンスパラメータ)を生成する。
(3) 参考
密着型ICカードは、ユーザコマンド及び準システムコマンド以外の所定のコマンドの処理実行及び判定結果に基づき、レスポンスAPDUの本体部となるデータフィールド(レスポンスパラメータ)を生成する。
4.7.6 レスポンス生成機能
レスポンス生成機能とは、密着型ICカードからリード・ライト・ユニットへ送信するレスポンスを生成する機能である。
(1) 基本仕様
レスポンスAPDUは、図4.13に示す条件に依存する可変長の本体部とそれに続く2 バイト(必須)の後続部から構成される。
図4.13 レスポンスAPDUの構成
レスポンスAPDUのデータフィールド内のバイト数は、Lr とする。
表4.16 にレスポンスAPDUの内容を示す。
表4.16 レスポンスAPDUの内容
表記 | 名前 | 長さ (バイト) | 内容 |
データフィールド | データフィールドバイト | Lr (可変) | 送出するバイト列 |
SW1 SW2 | ステータスバイト1 ステータスバイト2 | 1 1 | コマンド処理ステータス コマンド処理修飾子 |
後続部については、4.7.7節「ステータス生成機能」を参照のこと。
(2) 拡張仕様
なし
(3) 参考
なし
4.7.7 ステータス生成機能
ステータス生成機能とは、密着型ICカードからリード・ライト・ユニットへ送信するステータスバイトを生成する機能である。
(1) 基本仕様
レスポンスのステータスバイト( SW1, SW2 )は、密着型ICカード内部の処理状態を示す。
ステータスバイトのデータ値の構造的な体系を図4.14に示す。
図4.14 ステータスバイトの体系
SW1が'63'又は'65'の場合、不揮発性メモリの状態が変わったことを示す。'63'又は'65'以外の'6x'は、不揮発性メモリの状態が変わっていないことを示す。
(2) 拡張仕様
表4.17 に、密着型ICカードのステータスコードとその意味を示す。
表4.17 ステータスコードとその意味
ステータスコード | 意味 |
SW1 | SW2 |
'90' | '00' | 正常終了。 |
'62' | 'xx' | 警告処理。不揮発性メモリの状態が変化していない。 |
'81' | 出力データに異常がある。 |
'83' | DFが閉塞している。 |
'63' | 'xx' | 警告処理。不揮発性メモリの状態が変化している。 |
'00' | 照合不一致である。 |
'81' | ファイルが今回の書き込みによっていっぱいになった。 |
'Cx' | 照合不一致である。 'x'によって、残りの再試行回数(1〜15)を示す。 |
'64' | 'xx' | 実行誤り。不揮発性メモリの状態が変化していない。 |
'00' | ファイル制御情報に誤りがある。 |
'65' | 'xx' | 実行誤り。不揮発性メモリの状態が変化している。 |
'81' | メモリへの書き込みが失敗した。 |
'67' | '00' | 検査誤り。Lcフィールド及び/又はLeフィールドが間違っている。 |
'68' | 'xx' | 検査誤り。CLAの機能が提供されない。 |
'81' | 指定された論理チャンネル番号によるアクセス機能を提供しない。 |
'82' | メッセージ安全保護機能を提供しない。 |
'69' | 'xx' | 検査誤り。コマンドは許されない。 |
'81' | ファイル構造と矛盾したコマンドである。 |
'82' | セキュリティステータスが満足されない。 |
'84' | 参照されたIEFが閉塞している。 |
'85' | コマンドの使用条件が満足されない。 |
'86' | カレントEFがない。 |
'6A' | 'xx' | 検査誤り。間違ったパラメータP1,P2。 |
'80' | データフィールドのタグが正しくない。 |
'81' | 機能を提供しない。 |
'82' | アクセス対象のファイルがない。 |
'83' | アクセス対象のレコードがない。 |
'84' | ファイル内に十分なメモリ容量がない。 |
'85' | Lcの値がTLV構造に矛盾している。 |
'86' | P1-P2の値が正しくない。 |
'87' | Lcの値がP1-P2に矛盾している。 |
'88' | 参照されたキーが正しく設定されていない。 |
'6B' | '00' | 検査誤り。EF範囲外にオフセット指定した。 |
'6D' | '00' | 検査誤り。INSが提供されていない。 |
'6E' | '00' | 検査誤り。CLAが提供されていない。 |
'6F' | '00' | 検査誤り。自己診断異常。 |
(3) 参考
ステータスコード( SW1 - SW2 )が'6A81'と'6A86'及び'6A82'と'6A88'のとき、ステータスの内容は、密着型ICカードの製造者の裁量及び考え方に委ねる。
密着型ICカードのファイル生成・管理機能として、外部端子付ICカードに関する国際規格標準であるISO/IEC 7816-4に規定されるファイル及びデータの構成、前記ファイル及びデータへのアクセス方法等の表4.18 に示す小分類として位置付けられる各種機能に関し、次の実装規約を規定する。
表4.18 中分類「ファイル生成・管理機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
ファイル生成・管理機能 | ファイル階層化機能 | 専用ファイルの階層化構造を実現する。 |
ファイル生成機能 | 専用ファイル及び基礎ファイルを生成する。 |
ファイル選択機能 | 専用ファイル及び基礎ファイルを選択する。 |
レコード生成機能 | レコード構造を持つ基礎ファイルを生成する。 |
レコード選択機能 | 基礎ファイル内のレコードを選択する。 |
レコード読出し機能 | 基礎ファイル内のレコードを読み出す。 |
レコード書込・書換機能 | 基礎ファイル内のレコードを書き込み、書き換えする。 |
バイナリデータ読出し機能 | バイナリデータを読み出す。 |
バイナリデータ書込・書換機能 | バイナリデータを書き込み、書き換えする。 |
4.8.1 ファイル階層化機能
ファイル階層化機能とは、密着型ICカード内に格納されたデータの論理構成を専用ファイルの階層構造とする機能である。
(1) 基本仕様
密着型ICカード内に格納されたデータの論理構成は専用ファイル(dedicated file : DF)の階層構造とする。専用ファイル(DF)については、4.8.2節「ファイル生成機能」を参照のこと。
専用ファイル(DF)の根幹は、主ファイル(master file : MF)とし、必須とする。
(2) 拡張仕様
主ファイル(MF)以外の専用ファイル(DF)は、主ファイル(MF)を基準としたとき、少なくとも2階層下の階層化をサポートする。例えば、主ファイル(MF)の階層をレベル0とし、主ファイル(MF)の下の専用ファイル(DF)の階層をレベル1、さらにその下の専用ファイル(DF)の階層をレベル2としたとき、レベル2まで階層化した専用ファイル(DF)をサポートする。
密着型ICカード内の論理ファイルの構成例を図4.15 に示す。
図4.15 論理ファイルの構成例
(3) 参考
なし
4.8.2 ファイル生成機能
ファイル生成機能とは、密着型ICカード内に専用ファイル及び基礎ファイルを生成する機能である。
(1) 基本仕様
密着型ICカード内に生成されるファイルは、専用ファイル(dedicated file : DF)と基礎ファイル(elementary file : EF)の2つに分類される。ここで、専用ファイル(DF)とはファイル制御情報及び任意選択の割付け可能メモリを含むファイルであり、基礎ファイル(EF)とは同一のファイル識別子を共有しているデータ単位又はレコードの集合である。
密着型ICカードには、主ファイル(MF)と呼ばれるファイル構成の根幹となる唯一の専用ファイルが生成される。
基礎ファイル(EF)は、作業用基礎ファイル( working elementary file : WEF )と内部基礎ファイル( internal elementary file : IEF )の二つに大別される。
作業用基礎ファイル(WEF)はアプリケーションが使用するデータを格納する基礎ファイル(EF)であり、透過構造及びレコード構造の二つの構造がある。透過構造はバイナリデータの連続であり、レコード構造には、さらに固定長順編成ファイル、可変長順編成ファイル及び固定長循環順編成ファイルの三つの構造がある。上記の四つの基礎ファイルの構造を図4.16 に示す。
図4.16 作業用基礎ファイルの構造
(2) 拡張仕様
内部基礎ファイル(IEF)はキーのデータを格納し、照合キー及び認証キーの2つのキーがある。照合キーは、平文で認証が行われるキーであり、VERIFYコマンドが適用可能である。認証キーは、暗号文でが行われるキーであり、さらに次の二つのキーがある。
・内部認証キー INTERNAL AUTHENTICATEコマンドが適用可能である。
・外部認証キー EXTERNAL AUTHENTICATEコマンドが適用可能である。
透過構造を持つ作業用基礎ファイル(WEF)のデータ、すなわちバイナリデータのデータ形式を8ビット固定とし、その初期値を'FF'とする。
(3) 参考
なし
4.8.3 ファイル選択機能
ファイル選択機能とは、密着型ICカード内に生成された専用ファイル(DF)及び基礎ファイル(EF)を選択する機能である。
(1) 基本仕様
ファイルが暗黙的に選択できない場合、2バイトで符号化したファイル識別子による参照、経路による参照、短縮EF識別子による参照、又はDF名による参照ののいずれか又は複数でファイルを選択可能としなければならない。
論理チャネルとは、専用ファイル(DF)に対する結合手段であり、一つ一つのそれは独立して動作する。論理チャネルはクラスバイト(CLA)内の論理チャネル番号で指定され、一つの論理チャネルにおけるコマンド・レスポンス対の間に、他の論理チャネルを使用するコマンド・レスポンス対があってはならない。チャネル番号0の論理チャネルを基本論理チャネルと呼ぶ。
SELECT FILEコマンドは、論理チャネルを介して一時的指定ファイル(カレントファイル)を設定するために使用される。後続のコマンドは設定されたファイルをカレントファイルとする。初期応答後、基本論理チャネルは主ファイル(MF)をカレントファイルとする。
一時的指定専用ファイル(DF)をカレントDF、一時的指定基礎ファイル(EF)をカレントEFと呼ぶ。
(2) 拡張仕様
密着型ICカード内の専用ファイル(DF)は、1〜16バイトで符号化したDF名によって選択される。このDF名は、密着型ICカード内で唯一としなければならない。また、パーシャルDF名でも選択可能とする。パーシャルDF名とは、DF名の上位桁からの部分桁で構成される。通常のDF名をパーシャルDF名と対比させ、フルDF名と呼ぶ。例えば、フルDF名が「CICC」であった場合、パーシャルDF名には「C」、「CI」、「CIC」が存在する。
ファイル識別子'3F00'は主ファイル(MF)を表わし、ファイル識別子'3FFF'又は'FFFF'は将来利用のため留保する。
密着型ICカード内の基礎ファイル(EF)は、2バイトで符号化したEF識別子によって選択される。ある専用ファイル(DF)の配下にある基礎ファイル(EF)は、異なるEF識別子を持たなければならない。
EF識別子が'0001'〜'001E'の場合、基礎ファイル(EF)は範囲1〜30の値を5ビットで符号化した短縮EF識別子によって選択される。但し、主ファイル(MF)の配下のEF識別子'001E'は、「カード識別子」としてリザーブされる。短縮EF識別子"00000"は、カレントEFを選択する場合に使用する。また、短縮EF識別子はファイル識別子として使用してはならない。
密着型ICカードの最大論理チャネル数は2とする。これは、初期応答情報(ATR)の管理情報キャラクタT10(ソフトウェア機能表示バイト3)によって、リード・ライト・ユニットへ通知される。
初期応答後、全ての論理チャネルのカレントDFは、主ファイル(MF)とする。
(3) 参考
なし
4.8.4 レコード生成機能
密着型ICカードの内部にある作業用基礎ファイル(WEF)の構造には、レコード構造と呼ばれる識別可能なレコード列からなるファイル構造がある。4.8.2節「ファイル生成機能」を参照。ここで、レコードとは密着型ICカードが一括して扱うバイト列である。
レコード生成機能とは、このレコードを生成する機能である。
(1) 基本仕様
密着型ICカードのレコード形式は、簡易符号化TLVフォーマットを採用し、そのフォーマットを図4.17、図4.18 に示す。
図4.17 簡易符号化TLVフォーマット
(値フィールドが、0 〜 254バイトの場合)
図4.18 簡易符号化TLVフォーマット
(値フィールドが、0 〜 65535バイトの場合)
図4.17、及び図4.18 に示される各フィールドの意味付けは、次のとおりとする。
- ・タグフィールドT
- 1 〜 254 のタグ番号をバイナリで符号化した1バイトであり、レコード識別子と呼ぶ。
タグフィールド(レコード識別子)のデータ値として、'FF' を使用しない。
- ・長さフィールドL
- 値フィールドのバイト数を符号化した1バイト、又は3バイトである。
長さフィールドの先頭バイトが '00' 〜 'FE'の場合、長さフィールドは1バイトであり、0 〜 254の整数Lが符号化される。長さフィールドの先頭バイトが 'FF' の場合、長さフィールドは3バイトであり、後続する2バイトによって0 〜 65535バイトの整数Lが符号化される。2バイト目を上位、3バイト目を下位とする(上位先順)。
- ・値フィールドV
- アプリケーションが使用するデータである。
長さフィールドのデータ値Lが 0 でない場合、L個のバイトから構成される。データ値Lが 0 の場合、値フィールドはない。
(2) 拡張仕様
密着型ICカード内部のレコード構造を持つ作業用基礎ファイル(WEF)において、長さフィールドが1バイトのレコード形式と3バイトのレコード形式を混在してもよい。また、タグを使用しない場合、そのレコードのタグフィールドのデータ値Tを '00' とすることにより、タグを使用したレコードと区別することができる。
(3) 参考
なし
4.8.5 レコード選択機能
レコード選択機能とは、レコード構造を持つ作業用基礎ファイル(WEF)内の個々のレコードを選択する機能である。
(1) 基本仕様
密着型ICカード内部のレコード構造を持つ作業用基礎ファイル(WEF)内の個々のレコードは、レコード番号により管理される。このレコード番号は、作業用基礎ファイル(WEF)内において唯一、かつ、連続とする。また、番号は1番から順に割り付けられる。
レコード番号の付与方式を次のとおりとし、図4.19 に示す。
- ・順編成構造の作業用基礎ファイル(WEF)の場合
- レコード番号は、追記した順番、すなわち、生成した順番で割り当てられる。そのため、最初のレコード(レコード番号1、すなわち、#1)は、最初に生成されたレコードとする。
- ・循環順編成構造の作業用基礎ファイル(WEF)の場合
- レコード番号は、逆の順番で割り当てなければならない。すなわち、最初のレコード(レコード番号1、すなわち、#1)は、最後に生成されたレコードとする。
図4.19 レコード構造におけるレコード番号の付与方式
(2) 拡張仕様
レコード構造を持つ各作業用基礎ファイル(WEF)において、各レコードは、レコード番号又はレコード識別子によって選択される。レコード識別子については、4.8.4節「レコード生成機能」を参照のこと。
- ・レコード番号による選択
- レコード構造を持つ各作業用基礎ファイル(WEF)において、唯一かつ連続であるレコード番号を指定することにより、対象となるレコードを選択する。レコード番号'00'を指定した場合、カレントレコードを参照する。カレントレコードを示すレコードポインタが初期状態のとき、当該コマンド(READ RECORD、WRITE RECORD、UPDATE RECORD、又はAPPEND RECORD)の処理を終了する。
カレントレコード及びレコードポインタについては後述する。
- ・レコード識別子による選択
- 簡易TLVフォーマットのタグフィールドT(レコード識別子)を指定することにより、対象となるレコードを選択する。同じレコード識別子を持つ複数のレコードが存在してもよい。このとき、対象となるレコードの論理位置(レコードポインタを基点としたときの次又は前の存在)を指定する。 ここで、レコードポインタとは、レコード識別子による選択の際に使用する変数(ポインタ)であり、レコードポインタを設定又は変更することにより、対象となるレコードを選択する。また、カレントレコードとは、レコードポインタが示すレコードであり、レコードポインタが初期状態のとき、カレントレコードは存在しない。カード活性化後、SLECT FILEコマンドの処理後、及び有効な短縮EF識別子を扱うコマンドの処理後において、レコードポインタは初期状態となる。
レコードポインタは、レコード番号による選択によって影響されない。
- ・最初のレコード及び最後のレコードの指定
- 指定されたレコード識別子を持つレコードの中で、最初の論理位置に位置するレコードを最初のレコードとし、最後の論理位置に位置するレコードを最後のレコードとする。
- ・次レコードの指定
- カレントレコードが存在するとき、指定されたコード識別子を持つレコードの中で、カレントレコードと最後のレコードの間に存在し、かつ、カレントレコードに最も近いレコードを次レコードとする。また、カレントレコードが存在しないとき、最初のレコードを次レコードとする。
- ・前レコードの指定
- カレントレコードが存在するとき、指定されたコード識別子を持つレコードの中で、カレントレコードと最初のレコードの間に存在し、かつ、カレントレコードに最も近いレコードを前レコードとする。また、カレントレコードが存在しないとき、最後のレコードを参照する。
(3) 参考
なし
4.8.6 レコード読出し機能
レコード読出し機能とは、レコード構造を持つ各作業用基礎ファイル(WEF)内の指定されたレコードの内容を読み出す機能である。
(1) 基本仕様
READ RECORDコマンドは、レコード構造を持つ各作業用基礎ファイル(WEF)内の指定されたレコードの内容を読み出すために使用される。このコマンドが有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。レコード構造を持たない基礎ファイル(EF)に対し、このコマンドが適用された場合、コマンドの処理を終了する。セキュリティステータスが、対象となる作業用基礎ファイル(WEF)のセキュリティ属性を満たす場合だけ、このコマンドを実行する。セキュリティステータス及びセキュリティ属性については、4.9節「セキュリティ機能」を参照のこと。
(2) 拡張仕様
READ RECORDコマンドは、有効な短縮EF識別子により指定された作業用基礎ファイル(WEF)又はカレントWEFに対して実行される。
レコードはレコード番号又はカレントレコード指定により指定する。コマンドAPDUのP1='00'のときカレントレコード指定、P1≠'00'のときP1のデータ値によるレコード番号指定とする。指定したレコード番号から最後のレコードまで又はその逆の複数レコードの読み出し、及びレコード識別子による次レコード又は前レコードの読み出しを可能とする。
(3) 参考
なし
4.8.7 レコード書込・書換機能
レコード書込・書換機能とは、レコード構造を持つ各作業用基礎ファイル(WEF)内の指定されたレコードの内容を書き込み、又は書き換えする機能である。
(1) 基本仕様
レコード構造を持つ各作業用基礎ファイル(WEF)内の各レコードは、WRITE RECORD、APPEND RECORD、又はUPDATE RECORDの三つのコマンドによって、レコードへのデータの書き込み、又は書き換えが実行される。
- ・初期書き込み( WRITE RECORD )
- WRITE RECORDコマンドは、順編成構造を持つ各作業用基礎ファイル(WEF)内の最終位置にレコードを初期書き込み、又は循環順編成構造を持つ各作業用基礎ファイル(WEF)内のレコード番号1のレコード(#1)に初期書き込みするために使用される。
- ・追記書き込み( APPEND RECORD )
- APPEND RECORDコマンドは、順編成構造を持つ各作業用基礎ファイル(WEF)内の最終位置にレコードを追記書き込み、又は循環順編成構造を持つ各作業用基礎ファイル(WEF)内のレコード番号1のレコード(#1)に追記書き込みするために使用される。
- ・レコード番号指定又はカレントレコード指定による書き換え( UPDATE RECORD )
- UPDATE RECORDコマンドは、レコード構造を持つ各作業用基礎ファイル(WEF)内の指定されたレコードを更新(書き換え)ために使用される。
上記の三つのコマンドは有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。レコード構造を持たない基礎ファイル(EF)に対し、これらのコマンドが適用された場合、コマンドの処理を終了する。セキュリティステータスが、対象となる作業用基礎ファイル(WEF)のセキュリティ属性を満たす場合だけ、これらのコマンドを実行する。セキュリティステータス及びセキュリティ属性については、4.9節「セキュリティ機能」を参照のこと。
(2) 拡張仕様
WRITE RECORD、APPEND RECORD及びUPDATE RECORDの三つのコマンドは、有効な短縮EF識別子により指定された作業用基礎ファイル(WEF)又はカレントWEFに対して実行される。
- ・初期書き込み( WRITE RECORD )
- 初期書き込みが正常に終了した場合、レコードポインタを設定し、そのレコードをカレントレコードとする。未書き込みのレコードがないとき、初期書き込み処理を行わない。
- ・追記書き込み( APPEND RECORD )
- 全てのレコードが書き込み済み(未書き込み領域がない)の順編成ファイルのとき、書き込み処理を行わない。また、全てのレコードが書き込み済みの循環順編成ファイルのとき、最大のレコード番号を持つレコード(最旧レコード)を書き換え、レコード番号を1(最新レコード)とする。追記書き込みが正常に終了した場合、レコードポインタを設定し、そのレコードをカレントレコードとする。
- ・レコード番号指定又はカレントレコード指定による書き換え( UPDATE RECORD )
- 固定長循環順編成構造を持つ各作業用基礎ファイル(WEF)に対し、既存レコードと異なる長さのレコードの更新を指定した場合、コマンドの処理を終了する。
更新の結果(正常・異常)にかかわらず、カレントレコードを設定しない。
レコード番号指定又はカレントレコード指定のいずれであるかは、コマンドAPDUのP1で指定する。P1='00'のときカレントレコード指定、P1≠'00'のときP1のデータ値によるレコード番号指定とする。最初のレコード、最後のレコード、並びにカレントレコードの前又は次のレコードによるレコードの指定はない。
書き込み済みのレコードが全くない又はカレントレコードが存在しない場合、レコード番号指定又はカレントレコード指定による書き換えを実行しない。
(3) 参考
なし
4.8.8 バイナリデータ読出し機能
バイナリデータ読出し機能とは、透過構造を持つ各作業用基礎ファイル(WEF)内の指定されたバイナリデータの内容を読み出す機能である。
(1) 基本仕様
READ BINARYコマンドは、透過構造を持つ各作業用基礎ファイル(WEF)内の指定されたバイナリデータの内容を読み出すために使用される。このコマンドが有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。透過構造以外の基礎ファイル(EF)に対し、このコマンドが適用された場合、コマンドの処理を終了する。セキュリティステータスが、対象となる作業用基礎ファイル(WEF)のセキュリティ属性を満たす場合だけ、このコマンドを実行する。
セキュリティステータス及びセキュリティ属性については、4.9節「セキュリティ機能」を参照のこと。
(2) 拡張仕様
透過構造を持つ作業用基礎ファイル(WEF)の相対アドレスの付加方法を次のとおりとする。
先頭データの相対アドレスを'0000'番地とし、それに続くデータの相対アドレスを一つずつ増加する。図4.20 を参照のこと。
図4.20 相対アドレスの付与方式
READ BINARYコマンドは、有効な短縮EF識別子により指定された作業用基礎ファイル(WEF)又はカレントWEFに対して実行される。
オフセットで内部に付与される相対アドレス、及び長さを指定することにより、バイナリデータを参照する。相対アドレスは、8ビット又は15ビットで表現される。
(3) 参考
なし
4.8.9 バイナリデータ書込・書換機能
バイナリデータ書込・書換機能とは、透過構造を持つ各作業用基礎ファイル(WEF)内の指定されたバイナリデータの内容を書き込み・書き換えする機能である。
(1) 基本仕様
透過構造を持つ各作業用基礎ファイル(WEF)内の各バイナリデータは、WRITE BINARYコマンド又はUPDATE BINARYの二つのコマンドの処理によって、それぞれバイナリデータの書き込み、又は書き換えが実行される。
- ・書き込み( WRITE BINARY )
- WRITE BINARYコマンドは、透過構造を持つ各作業用基礎ファイル(WEF)内の指定されたバイナリデータの内容を書き込むために使用される。
- ・書き換え( UPDATE BINARY )
- UPDATE BINARYコマンドは、透過構造を持つ各作業用基礎ファイル(WEF)内の指定されたバイナリデータの内容を更新(書き換え)するために使用される。
上記の二つのコマンドは有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。レコード構造を持たない基礎ファイル(EF)に対し、これらのコマンドが適用された場合、コマンドの処理を終了する。セキュリティステータスが、対象となる作業用基礎ファイル(WEF)のセキュリティ属性を満たす場合だけ、これらのコマンドを実行する。セキュリティステータス及びセキュリティ属性については、4.9節「セキュリティ機能」を参照のこと。
(2) 拡張仕様
WRITE BINARY及びUPDATE BINARYの二つのコマンドは、有効な短縮EF識別子により指定された作業用基礎ファイル(WEF)又はカレントWEFに対して実行される。
オフセットで内部に付与される相対アドレス、及び長さを指定することにより、バイナリデータの書き込み又は書き換えを実行する。相対アドレスは、8ビット又は15ビットで表現される。
- ・書き込み( WRITE BINARY )
- WRITE BINARYコマンドは、指定された書き込み領域が全て初期値、すなわち'FF'であった場合にのみ、バイナリデータの書き込みを実行する。書き込み指定領域が一つの透過構造を持つ作業用基礎ファイル(WEF)の範囲を越えていた場合、バイナリデータの書き込みは実行されない。
図4.21 透過構造を持つ作業用基礎ファイル(WEF)の例
(ファイルの大きさ:48バイト、アドレス:'0000'〜'002F')
図4.21 に示す透過構造を持つ作業用基礎ファイル(WEF)の場合の書き込み処理を次のとおりとする。図4.21 の網掛け部分のデータは初期値である。
- (a) 書き込み指定領域が '0000'〜'0005'のとき、書き込み可能。
- (b) 書き込み指定領域が '0000'〜'0006'のとき、書き込み不可。
- 相対アドレス'0006'番地のバイナリデータが初期値でない。
- (c) 書き込み指定領域が '0013'〜'0019'のとき、書き込み可能。
- (d) 書き込み指定領域が '002A'〜'0030'のとき、書き込み不可。
相対アドレス'0030'番地が作業用基礎ファイル(WEF)の範囲を越えている。
- ・書き換え( UPDATE BINARY )
- UPDATE BINARYコマンドは、指定された書き換え領域が既存のデータ値に依らず、バイナリデータの書き換えを実行する。したがって、バイナリデータを初期値に戻すことができる。書き換え指定領域が一つの透過構造を持つ作業用基礎ファイル(WEF)の範囲を越えていた場合、バイナリデータの書き換えは実行されない。
図4.21 に示す透過構造を持つ作業用基礎ファイル(WEF)の場合の書き換え処理を次のとおりとする。ここで、図4.21 の網掛け部分はデータが初期値である。
- (a) 書き換え指定領域が '0000'〜'0005'の場合、書き換え可能。
- (b) 書き換え指定領域が '0000'〜'0006'の場合、書き換え可能。
- (c) 書き換え指定領域が '0013'〜'0019'の場合、書き換え可能。
- (d) 書き換え指定領域が '002A'〜'0030'の場合、書き換え不可。
相対アドレス'0030'番地が作業用基礎ファイル(WEF)の範囲を越えている。
(3) 参考
なし
密着型ICカードのセキュリティ機能として、外部端子付ICカードに関する国際規格標準であるISO/IEC 7816-4に規定されるデータ照合、内部認証、外部認証等の表4.19 に示す小分類として位置付けられる各種機能に関し、次の実装規約を規定する。
表4.19 中分類「セキュリティ機能」を構成する小分類
中分類 | 小分類 | 小分類概要 |
セキュリティ機能 | データ照合機能 | パスワード等を照合する。 |
内部認証機能 | リード・ライト・ユニットから送られたチャレンジ及び密着型ICカード内の内部認証キーから内部認証コードを計算する。 |
外部認証機能 | 密着型ICカードがリード・ライト・ユニットに出力したチャレンジ及び密着型ICカード内の外部認証キーを使い、リード・ライト・ユニットから送られた外部認証コードを認証する。 |
ファイル閉塞機能 | ファイルを閉塞する。 |
ファイル閉塞解除機能 | ファイルを閉塞解除する。 |
キー閉塞機能 | キーを閉塞する。 |
キー閉塞解除機能 | キーを閉塞解除する。 |
キー書換機能 | キーを書き換えする。 |
データ暗号化機能 | データを暗号化する。 |
データ複号化機能 | データを複号化する。 |
密着型ICカードのセキュリティ機構であるセキュリティステータス及びセキュリティ属性を次のとおりとする。
(1) 基本仕様
セキュリティステータスは、初期応答、及び認証手続きを実行する一つ又は連続したコマンドの終了後の一時的な状況を示す。パスワード、又は鍵を知っていることの証明によって、セキュリティステータスは変化してもよい。
SELECT FILEコマンド実行時、カレントDFが元のカレントDFと同一、又は元のカレントDFの子ファイルである場合、元のカレントDF固有のセキュリティステータスを維持する。また、カレントDFが元のカレントDFと同一でなく、かつ元のカレントDFの子ファイルでない場合、元のカレントDF固有のセキュリティステータスを失う。但し、元のカレントDFと新しいカレントDFに共通の上位ファイルから受け継いだセキュリティステータスは維持する。
セキュリティ属性は、許可されている行為、及びそれらの行為を完結するために実行される手続きを指定する。それぞれのファイルに関連付けされてよい。また、ファイル操作の実行のために必要なセキュリティ条件を指定する。
(2) 拡張仕様
セキュリティステータスは、「アクセスする際に必要となるキー」との照合又は認証の結果であり、密着型ICカードの内部で保持される。アクセス時に、対象とするファイルのセキュリティ属性とセキュリティステータスを比較することにより、アクセスの可否判定が可能である。
セキュリティ属性は、データに対しアクセスする際に必要となるキー(又は複数のキーの組み合わせ)を指定する情報を指す。これは、階層化構造をもつ全てのファイルに対して個別に設定できる。基礎ファイル(EF)をアクセス条件を設定する最小単位とする。
ここで、「アクセスする際に必要となるキー」とは、当該データに対するアクセスに先立ち照合又は認証を行うキーである。
(3) 参考
なし
4.9.1 データ照合機能
データ照合機能とは、リード・ライト・ユニットから送られた照合データを比較・照合する機能である。
(1) 基本仕様
VERIFYコマンドは、リード・ライト・ユニットから送られた照合データ(照合キー)を、密着型ICカード内に格納されている参照データ(例えば、パスワード)で比較・照合するために使用される。このコマンドが有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。
(2) 拡張仕様
VERIFYコマンドは、有効な短縮EF識別子により指定された基礎ファイル(EF)、又はカレントEFに対して実行される。また、この指定された基礎ファイル(EF)をカレントEFとする。
現在のセキュリティの状態に関わらず、比較の結果によりセキュリティステータスを更新する。また、比較不一致の回数を密着型ICカードに記録する。但し、再試行回数を制限しない設定の場合は比較不一致の回数を密着型ICカードに記録しない。
(3) 参考
なし
4.9.2 内部認証機能
内部認証機能とは、リード・ライト・ユニットから送られたチャレンジ及び密着型ICカード内の内部認証キーから内部認証コードを計算する機能である。
(1) 基本仕様
INTERNAL AUTHENTICATEコマンドは、リード・ライト・ユニットから種となる情報(チャレンジのこと。例えば、乱数)を与えて、密着型ICカード内の機密情報(内部認証キー)から内部認証コードを計算するために使用される。このコマンドが有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。
(2) 拡張仕様
INTERNAL AUTHENTICATE コマンドは、有効な短縮EF識別子により指定された基礎ファイル(EF)、又はカレントEFに対して実行される。また、この指定された基礎ファイル(EF)をカレントEFとする。
使用する暗号アルゴリズムは、任意選択とし、DES、RSA、FEALの3つを候補とする。これら以外の暗号アルゴリズムの採用もありえるが、ここでは規定しない。また、使用する暗号アルゴリズムは一つ、又は複数とする。
使用する暗号アルゴリズムは、カード識別子内の暗号関数識別子によって識別される。カード識別子については、4.9.9節「データ暗号化機能」を参照のこと。
(3) 参考
使用する暗号アルゴリズムは、DES及び/又はRSAとする。
4.9.3 外部認証機能
外部認証機能とは、密着型ICカードがリード・ライト・ユニットに出力したチャレンジ及び密着型ICカード内の外部認証キーを使い、リード・ライト・ユニットから送られた外部認証コードを認証する機能である。
(1) 基本仕様
GET CHALLENGEコマンドによるチャレンジの生成及びEXTERNAL AUTHENTICATEコマンドによる外部認証コードの認証によって、外部認証機能を実現する。
- ・チャレンジの生成( GET CHALLENGE )
- GET CHALLENGEコマンドは、リード・ライト・ユニットに種となる情報(チャレンジのこと。例えば、乱数)を出力するために使用される。
- ・外部認証コードの認証( EXTERNAL AUTHENTICATE )
- EXTERNAL AUTHENTICATEコマンドは、リード・ライト・ユニットに出力したチャレンジ、及び密着型ICカード内の機密情報(外部認証キー)を使い、リード・ライト・ユニットから送られた外部認証コードの認証を行い、結果をリード・ライト・ユニットに出力するために使用される。このコマンドが有効な短縮EF識別子を含むとき、そのファイルをカレントEFとする。認証の結果に応じて、セキュリティステータスを更新する。
このコマンドを実行するには、密着型ICカードが出力した最新のチャレンジが有効な状態でなければならない。
(2) 拡張仕様
- ・チャレンジの生成( GET CHALLENGE )
- GET CHALLENGE コマンドによって、出力されるチャレンジはチャネル間で共有される。
- ・外部認証コードの認証( EXTERNAL AUTHENTICATE )
- EXTERNAL AUTHENTICATE コマンドは、有効な短縮EF識別子により指定された基礎ファイル(EF)、又はカレントEFに対して実行される。また、この指定された基礎ファイル(EF)は、カレントEFとなる。
密着型ICカードは、現在のセキュリティの状態に関わらず、認証の結果によりセキュリティステータスを更新する。また、認証不一致の回数を密着型ICカードに記録する。但し、再試行回数を制限しない設定の場合、認証不一致の回数を密着型ICカードに記録しない。
使用する暗号アルゴリズムは、任意選択とし、DES、RSA、FEALの3つを候補とする。これら以外の暗号アルゴリズムの採用もありえるが、ここでは規定しない。また、使用する暗号アルゴリズムは一つ、又は複数とする。
使用する暗号アルゴリズムは、カード識別子内の暗号関数識別子によって識別される。カード識別子については、4.9.9節「データ暗号化機能」を参照のこと。
(3) 参考
使用する暗号アルゴリズムは、DES及び/又はRSAとする。
4.9.4 ファイル閉塞機能
ファイル閉塞機能とは、対象とする専用ファイル(DF)又は主ファイル(MF)を閉塞する機能である。
(1) 基本仕様
ISO/IEC 7816-4に規定されないコマンド(準システムコマンド)によって、ファイル閉塞機能を実現する。したがって、「基本仕様」に対する規定はない。
(2) 拡張仕様
LOCK DFコマンドは、対象とする専用ファイル(DF)(主ファイル(MF)を含む。)を閉塞するために使用される。このコマンドは、カレントDF又は主ファイル(MF)に対して実行される。対象とする専用ファイル(DF)のセキュリティステータスがLOCK DFコマンドに対するセキュリティ属性を満たさない場合、このコマンドを実行しない。
このコマンドにより親である対象とする専用ファイル(DF)を閉塞した場合であっても、その子である閉塞されていない専用ファイル(DF)は閉塞状態とならない。したがって、その子である専用ファイル(DF)を閉塞したい場合、そのDFをカレントDFとし、LOCK DFコマンドを実行する。
LOCK DF コマンドは、対象となるファイルの閉塞状態に依らず、実行される。
(3) 参考
なし
4.9.5 ファイル閉塞解除機能
ファイル閉塞解除機能とは、対象とする専用ファイル(DF)又は主ファイル(MF)の閉塞状態を解除する機能である。
(1) 基本仕様
ISO/IEC 7816-4に規定されないコマンド(準システムコマンド)によって、ファイル閉塞解除機能を実現する。したがって、「基本仕様」に対する規定はない。
(2) 拡張仕様
UNLOCK DFコマンドは、対象とする専用ファイル(DF)(主ファイル(MF)を含む。)の閉塞状態を解除するために使用される。このコマンドは、カレントDF又は主ファイル(MF)に対して実行される。
対象とする専用ファイル(DF)のセキュリティステータスがUNLOCK DFコマンドに対するセキュリティ属性を満たさない場合、このコマンドを実行しない。
このコマンドにより親である対象とする専用ファイル(DF)を閉塞状態を解除した場合であっても、その子である閉塞状態の専用ファイル(DF)は閉塞状態を解除されない。したがって、その子である専用ファイル(DF)の閉塞状態を解除したい場合、そのDFをカレントDFとし、UNLOCK DFコマンドを実行する。
UNLOCK DF コマンドは、対象となるファイルの閉塞状態に依らず、実行される。
(3) 参考
なし
4.9.6 キー閉塞機能
キー閉塞機能とは、密着型ICカード内の照合キー又は外部認証キーの照合の不一致回数がある設定値に達した場合、自動的にこれらのキーを閉塞する機能である。
(1) 基本仕様
VERIFYコマンドを使用する際、照合キーの使用に対する再試行の回数を制限するため、照合の不一致を密着型ICカードに記録してもよい。
EXTERNAL AUTHENTICATEコマンドを使用する際、外部認証キーの使用に対する再試行の回数を制限するため、認証の不成功を密着型ICカードに記録してもよい。
(2) 拡張仕様
- ・照合キーの閉塞
- VERIFYコマンドの実行時、照合の不一致回数が密着型ICカード内に設定された許容値に達した場合、自動的に照合キーを閉塞し、照合をできなくする。但し、照合の不一致回数を制限しない設定とした場合、この不一致回数を密着型ICカードに記録しない。
- ・外部認証キーの閉塞
- EXTERNAL AUTHENTICATEコマンドの実行時、認証の不一致回数が密着型ICカード内に設定された許容値に達した場合、自動的に外部認証キーを閉塞し、認証をできなくする。但し、認証の不一致回数を制限しない設定とした場合、この不一致回数を密着型ICカードに記録しない。
(3) 参考
なし
4.9.7 キー閉塞解除機能
キー閉塞解除機能とは、密着型ICカード内の照合キー又は外部認証キーの閉塞状態を解除する機能である。
(1) 基本仕様
ISO/IEC 7816-4に規定されないコマンド(準システムコマンド)によって、キー閉塞解除機能を実現する。したがって、「基本仕様」に対する規定はない。
(2) 拡張仕様
UNLOCK KEYコマンドは、対象とするキー(照合キー、又は外部認証キー)の閉塞状態を解除するために使用される。このコマンドは、有効な短縮EF識別子により指定された内部基礎ファイル(IEF)、又はカレントIEFに対して実行される。また、この指定された内部基礎ファイル(IEF)は、カレントIEFとなる。
指定された内部基礎ファイル(IEF)のセキュリティステータスがUNLOCK KEYコマンドに対するセキュリティ属性を満たさない場合、このコマンドを実行しない。また、作業用基礎ファイル(WEF)に対しこのコマンドを適用した場合、処理を中断する。
UNLOCK KEY コマンドは、対象となるファイルの閉塞状態に依らず、実行される。
(3) 参考
なし
4.9.8 キー書換機能
キー書換機能とは、密着型ICカード内の照合キー又は外部認証キーの内容を変更する機能である。
(1) 基本仕様
ISO/IEC 7816-4に規定されないコマンド(準システムコマンド)によって、キー書換機能を実現する。したがって、「基本仕様」に対する規定はない。
(2) 拡張仕様
CHANGE KEYコマンドは、対象とするキー(照合キー、又は外部認証キー)を変更するために使用される。このコマンドは、有効な短縮EF識別子により指定された内部基礎ファイル(IEF)、又はカレントIEFに対して実行される。また、この指定された内部基礎ファイル(IEF)は、カレントIEFとなる。
指定された内部基礎ファイル(IEF)のセキュリティステータスがCHANGE KEYコマンドに対するセキュリティ属性を満たさない場合、このコマンドを実行しない。また、作業用基礎ファイル(WEF)に対しこのコマンドを適用した場合、処理を中断する。
変更前の指定されたキーに異常がある場合、このコマンドを実行しない。
CHANGE KEY コマンドは、対象となるファイルの閉塞状態に依らず、実行される。
(3) 参考
なし
4.9.9 データ暗号化機能
データ暗号化機能とは、密着型ICカードが持つ暗号アルゴリズムを使用して、リード・ライト・ユニットから受信したデータから暗号データを計算する機能である。
(1) 基本仕様
密着型ICカード内の秘密又は公開されたデータ(例えば、秘密鍵、公開鍵)を使って、暗号データを計算し、(場合によっては他のデータと共に)データフィールドにそれを挿入することができる。この機能は、鍵の管理や条件付アクセスのような秘密性のサービスを提供するために使用してもよい。
(2) 拡張仕様
データ暗号化を実行するコマンドは、有効な短縮EF識別子により指定された基礎ファイル(EF)、又はカレントEFに対して実行される。また、この指定された基礎ファイル(EF)は、カレントEFとなる。但し、このコマンドについては規定しない。
使用する暗号アルゴリズムは、任意選択とし、DES、RSA、FEALの3つを候補とする。これら以外の暗号アルゴリズムの採用もありえるが、ここでは規定しない。また、使用する暗号アルゴリズムは一つ、又は複数とする。
使用する暗号アルゴリズムは、カード識別子内の暗号関数識別子によって識別される。
カード識別子は、主ファイル(MF)配下の作業用基礎ファイル(WEF)に格納されるカード識別情報である。その作業用基礎ファイル(WEF)は、固定長順編成のレコード構造を持ち、EF識別子を'001E'とする。カード識別子は、次の情報から構成される。
・製造者識別子 密着型ICカードの製造者を示す。
・暗号関数識別子 密着型ICカードがサポートする暗号アルゴリズムの種類を示す。
・仕様識別子 密着型ICカードの仕様の版数(バージョン)を示す。
(3) 参考
使用する暗号アルゴリズムは、DES及び/又はRSAとする。
カード識別子の設定は、密着型ICカードの製造者が行い、レコードの書き換えはできない。
カード識別子を格納したレコードの構成を図4.22に示す。
図4.22 カード識別子の構成
タグフィールドTは、'00'とする。
長さフィールドLは、'03'とし、値フィールドのバイト数は3バイトとする。
製造者識別子の値は、本規約では規定されない。
暗号関数識別子の符号化規則を図4.23に示す。
図4.23 暗号関数識別子の符号化規則
DES、RSA、FEAL以外の暗号アルゴリズムの種別は規定しない。
仕様識別子の値は規定しない。
4.9.10 データ復号化機能
データ復号化機能とは、密着型ICカードが持つ暗号アルゴリズムを使用して、リード・ライト・ユニットから受信したデータから復号データを計算する機能である。
(1) 基本仕様
密着型ICカード内の秘密データ(例えば、秘密鍵)を使って、リード・ライト・ユニットから受信した暗号データから復号データを計算する。
(2) 拡張仕様
データ復号化を実行するコマンドは、有効な短縮EF識別子により指定された基礎ファイル(EF)、又はカレントEFに対して実行される。また、この指定された基礎ファイル(EF)は、カレントEFとなる。但し、このコマンドについては規定しない。
使用する暗号アルゴリズムは、任意選択とし、DES、RSA、FEALの3つを候補とする。これら以外の暗号アルゴリズムの採用もありえるが、ここでは規定しない。また、使用する暗号アルゴリズムは一つ、又は複数とする。
暗号アルゴリズムの識別については、4.9.9節「データ暗号化機能」を参照のこと。
(3) 参考
本規約において、データ復号化を実行する具体的なコマンド、及びDES、RSA、FEAL以外の暗号アルゴリズムについて、規定しない。
禁無断転載
(C) NMDA. All rights reserved.