JIS X 6320-8:2006 ICカード―第8部:セキュリティ処理コマンド | ページ 3

                                                                                              9
X 6320-8 : 2006 (ISO/IEC 7816-8 : 2004)
カードが公開かぎ(鍵)を取り込む方法には次の二つの場合がある。
− 証明書が自己記述的である(P2 = “BE”)場合,カードは,(復元された)証明書内容から公開かぎ
(鍵)のタグによって識別される公開かぎ(鍵)を取り込む。
− 証明書が自己記述的でない(P2 = “AE”)場合,カードは,暗黙的又は明示的に,証明書内容を示す
ヘッダリスト内の公開かぎ(鍵)タグを用いて,証明書から公開かぎ(鍵)を取り込む。
公開かぎ(鍵)が格納される場合,それは後続のVERIFY DIGITAL SIGNATURE処理の省略時のかぎ(鍵)
になる。
表12にVERIFY CERTIFICATE処理のパラメタ及びデータフィールドを示す。
表 12 VERIFY CERTIFICATE処理のパラメタ及びデータフィールド
コマンドのP1P2パラメタ及びデータフィールド
P1 “00”
P2 “92”, “AE” 又は“BE”
コマンドデータフィールド 処理に必要なデータ要素又はデータオブジェクト
レスポンス
レスポンスデータフィールド 存在しない。
備考 限定されたメッセージ復元方式が用いられ,情報の一部が既にカードに保存されている場合,
後でカードがデータを挿入できるように,補助データのデータオブジェクトは空(くう)で転
送される。
5.2.7 ENCIPHER 処理 ENCIPHER処理は,コマンドデータフィールドで送信されたデータを暗号化す
る。この処理の使用は,特定の用途に制限されてもよい。
備考 この処理は,派生かぎ(鍵)(diversified key)を生成する場合に用いてもよい。
表13にENCIPHER処理のパラメタ及びデータフィールドを示す。
表 13 ENCIPHER処理のパラメタ及びデータフィールド
コマンドのP1P2パラメタ及びデータフィールド
P1 “82”, “84”, “86”(暗号文)
P2 “80”(平文)
コマンドデータフィールド 存在しない(データは既にカードに存在する),又は,暗号化されるデ
ータ。
レスポンス
レスポンスデータフィールド 暗号化データ
5.2.8 DECIPHER 処理 DECIPHER処理は,コマンドデータフィールドで送信されたデータを復号する。
この処理の使用は,特定の用途に制限されてもよい。
表14にDECIPHER処理のパラメタ及びデータフィールドを示す。
表 14 DECIPHER処理のパラメタ及びデータフィールド
コマンドのP1P2パラメタ及びデータフィールド
P1 “80”(平文)
P2 “82”,“84”,“86”(暗号文)
コマンドデータフィールド 復号するデータ
レスポンス
レスポンスデータフィールド 存在しない(復号データはカードに残る),又は,復号データ。

――――― [JIS X 6320-8 pdf 11] ―――――

10
X 6320-8 : 2006 (ISO/IEC 7816-8 : 2004)
附属書A(参考)ディジタル署名と関係する処理例
この附属書(参考)は,本体に関連する事柄を補足するもので,規定の一部ではない。
A.1 セキュリティ環境管理のコマンド順序 附属書A表1は,カレントSEのDST,CCT及びCTコンポ
ーネントに設定を行い,最後にP2の中で示したSEIDにカレントSEを格納するMANAGE SECURITY
ENVIRONMENTコマンドの手順を示す。
附属書A表 1 セキュリティ環境コンポーネントの設定
コマンド 処理 P1-P2 コマンドデータフィールド
MSE SET DST “41” - “B6”
[{“84” - L - かぎ(鍵)参照}] - [{“91” - L = 0}]
MSE SET CCT “41” - “B4”
[{“83” - L - かぎ(鍵)参照}] - [{“87” - L -初期値}]
MSE SET CT “41” - “B8”
[{“83” - L - かぎ(鍵)参照}]
MSE STORE (SEID =1) -
“F2” - “01”
SET DST処理は,署名計算の中で使用するプライベートかぎ(鍵)を指定し,ディジタル署名入力中の
乱数実装方法を指定する(参考,L=0は,カードが乱数を生成することを意味する。)。
SET CCT処理は,暗号化チェックサムの計算のために使用する秘密かぎ(鍵)及び初期の値を指定する。
SET CT処理は,機密性のために使用する秘密セションかぎ(鍵)を指定する。
A.2 ディジタル署名計算のためのコマンドのシーケンス 附属書A表2は,添付型署名方式を用いるディ
ジタル署名を生成するための構文を示す。入力はパディングバイトのついたハッシュコードである。この
例は,ハッシュ処理を含む複合したアルゴリズムでディジタル署名の計算を行う説明である。この例では,
ハッシュコードがカードに入力される。
附属書A表 2 添付型ディジタル署名方式の第1の例
コマンド 処理 P1-P2 コマンドデータフィールド レスポンスデータ
フィールド
MSE RESTORE -
“F3” - “01” -
PSO COMPUTE DIGITAL “9E” - “9A”
パディングバイトのついた ディジタル署名
SIGNATURE ハッシュコード
備考 この例は純粋に例証であり,適用されるかもしれない外部出力制御を実装するため,また,一
般的なセキュリティ上の理由のため,この値は制限される(署名繰返しの回避は,ある状況下
において望ましい。)。
附属書A表3は,添付型署名方式を用いてディジタル署名を生成するための構文を示す。ディジタル署
名入力は,パディングバイトなしのハッシュ値からなっている。
附属書A表 3 添付型ディジタル署名方式の第2の例
コマンド 処理 P1-P2 コマンドデータフィールド レスポンスデータ
フィールド
MSE RESTORE -
“F3” - “01” -
PSO COMPUTE DIGITAL “9E” - “9A”
パディングバイトなしのハ ディジタル署名
SIGNATURE ッシュコード
備考1. 取出し制限を回避するためには,署名及びハッシュの複合したアルゴリズムを用いるとよい。
2. 状況によっては,署名の繰返しを回避することは望ましくても,避けられないことがある。

――――― [JIS X 6320-8 pdf 12] ―――――

                                                                                             11
X 6320-8 : 2006 (ISO/IEC 7816-8 : 2004)
附属書A表4は,添付型署名方式を示す。パディングバイトを含まないディジタル署名入力データがカ
ードに渡される。また,カードは,MSEコマンドのコマンドデータフィールドにあるDSTの拡張ヘッダ
リストで求められる乱数を,生成することが求められる。P2にタグ“BC”が指定されているので,データ
オブジェクトの連結(カードに渡されるハッシュコード及びカードによって生成される乱数)が署名され
る。
附属書A表 4 添付型ディジタル署名方式の第3の例
コマンド 処理 P1-P2 コマンドデータフィールド レスポンスデータ
フィールド
MSE SET [{“4D” - L - (“90” - L - “91” -
“41” - “B6” -
L=0)}] - [{“84” - L - かぎ(鍵)
参照}]
PSO COMPUTE DIGITAL “9E” - “BC” ディジタル署名
[{“90” - L - ハッシュコード}]
SIGNATURE
附属書A表5は,限定されたメッセージ復元を伴うディジタル署名の構文を示す。署名されるデータは,
コマンドデータフィールドにあるデータオブジェクトを用いた限定されたメッセージ復元を与える署名方
式に従って構成されており,それによって,ディジタル署名カウンタがカードから提供された内部メッセ
ージとして用いられる。
附属書A表 5 添付型ディジタル署名方式の第4の例
コマンド 処理 P1-P2 コマンドデータフィールド レスポンスデータ
フィールド
MSE RESTORE -
“F3” - “02” -
PSO COMPUTE DIGITAL “9E” - “AC” ディジタル署名
[{“90” - L - ハッシュコード}]
SIGNATURE
備考 ディジタル署名及びハッシュコード計算のためのパディングは,ISO/IEC 9796-2による。
附属書A表6では,カードはハッシュ計算(又は繰返し実行するハッシュ計算の最後の演算)を行って
いる。入力データは,すべてカード内にあるので,ディジタル署名入力はCOMPUTE DIGITAL SIGNATURE
処理において空(くう)である。
附属書A表 6 添付型ディジタル署名方式の第5の例
コマンド 処理 P1-P2 コマンドデータフィールド レスポンスデータ
フィールド
MSE RESTORE -
“F3” - “01” -
PSO HASH “90” - “80”
ハッシュ対象データ -
PSO COMPUTE DIGITAL -
“9E” - “9A” ディジタル署名
SIGNATURE
A.3 ディジタル署名検証のためのコマンドのシーケンス 附属書A表7では,拡張ヘッダリストが,非自
己記述証明書の構造を指定する(附属書B参照)。ディジタル署名入力は,データ要素から構成される。
VERIFY CERTIFICATE処理は,コマンド連鎖を使用する。
附属書A表 7 ディジタル署名検証の第1の例
コマンド 処理 P1-P2 コマンドデータフィールド
MSE SET DST [{“4D” - L - (“42” - L - “5F20” - L - “5F49” - L)}] - [{“83”
“41” - “B6”
- L - かぎ(鍵)参照}]
PSO VERIFY “00” - “AE”
[{“5F4E” - L -証明書内容}]
CERTIFICATE
(CLA=“1X”)

――――― [JIS X 6320-8 pdf 13] ―――――

12
X 6320-8 : 2006 (ISO/IEC 7816-8 : 2004)
PSO VERIFY “00” - “AE”
[{“5F37” - L - 証明書のディジタル署名}]
CERTIFICATE
(CLA=“0X”)
PSO HASH “90” - “80”
ハッシュ入力
PSO VERIFY “00” - “A8”
[{“9E” - L - ディジタル署名}]
DIGITAL
SIGNATURE
第一ステップでは,証明書内容データオブジェクト[データ要素の連結として,発行人識別番号(タグ
“42”),カード保有者名(タグ“5F20”)及びカード保有者の公開かぎ(鍵)(タグ“5F49”)]が提示され
る。カードは,証明書内容をハッシュ入力として用いてハッシュ処理を実行する。
第二ステップでは,証明書に属するディジタル署名が再変換され,結果は事前に計算されたハッシュコ
ードと比較される。その後,HASH処理が実行される。ディジタル署名を検証するために,公開かぎ(鍵)
は,先行するVERIFY CERTIFICATE処理によって取り込まれ検証される。ハッシュ入力は,ハッシュア
ルゴリズムに依存しており,連鎖コマンドなどで与えられる平文か,又は繰返し実行するハッシュ計算の
最後の演算だけをカードが実行するために事前処理されたハッシュコードのいずれかである。
最終ステップとして,VERIFY DIGITAL SIGNATURE処理が実行される。
附属書A表8は,自己記述証明書の検証を示す(附属書B参照)。ディジタル署名入力は,データオブ
ジェクトから構成される。VERIFY CERTIFICATE処理は,コマンド連鎖を使用する。第一ステップでは,
証明書の中に実装されたデータオブジェクト[例えば,データオブジェクトの連結 : 認証機関参照,カー
ド保有者名,及びカード保有者の公開かぎ(鍵)]が提示される。
カードは,ハッシュ入力としてこの連結を使用する。以降のステップは,前の例と同一である。
附属書A表 8 ディジタル署名検証の第2の例
コマンド 処理 P1-P2 コマンドデータフィールド
MSE SET DST “41” - “B6”
[{“83” - L - かぎ(鍵)参照}]
PSO VERIFY “00” - “BE”
[{“42” - L - 発行者識別番号}] - [{“5F20” - L - カード所
CERTIFICATE 持者名}] - [{“5F49” - L - カード所持者公開かぎ(鍵)}]
(CLA=“1X”)
PSO VERIFY “00” - “AE”
[{“5F37”-L-証明書のディジタル署名}]
CERTIFICATE
(CLA=“0X”)
PSO HASH “90” - “80”
ハッシュ入力
PSO VERIFY “00” - “A8”
[{“9E”-L-ディジタル署名}]
DIGITAL
SIGNATURE
附属書A表9は,あらかじめカードに実装された公開かぎ(鍵)を使用する場合を示す。
附属書A表 9 ディジタル署名検証の第3の例
コマンド 処理 P1-P2 コマンドデータフィールド
MSE SET DST “41” - “B6”[{“83” - L - かぎ(鍵)参照}]
PSO HASH “90” - “A8”ハッシュ入力
PSO VERIFY “00” - “A8”[{“9E” - L - ディジタル署名}]
DIGITAL
SIGNATURE

――――― [JIS X 6320-8 pdf 14] ―――――

                                                                                             13
X 6320-8 : 2006 (ISO/IEC 7816-8 : 2004)
附属書B(参考)カードによって解釈される証明書の例
この附属書(参考)は,本体に関連する事柄を補足するもので,規定の一部ではない。
B.1 カード検証可能な証明書のためのデータオブジェクト 附属書B表1に,カード検証可能な証明書に
関するデータオブジェクトを示す。
附属書B表 1 カード検証可能な証明書に関する共通データオブジェクト(例)
タグ データ要素
“42” 発行者識別番号
“5F20”カード保有者名
“5F37”静的内部認証(発行者によって生成された,証明書の署名)
“5F49”カード保有者の公開かぎ(鍵)
証明書所有者許可書
“5F4C”
証明書内容
“5F4E”
“7F21”カード保有者証明
発行者は,更に証明書通し番号,バージョン番号,有効期限などのようなデータオブジェクトを指定し
てもよい。
カード検証可能な証明書の構造は,次の二つに分類される。
− 自己記述カード検証可能な証明書は,BER-TLVデータオブジェクトの連結で構成される。
− 非自己記述カード検証可能な証明書は,データ要素の連結で構成される。
B.2 自己記述カード検証可能な証明書 証明書の署名については,メッセージ復元型ディジタル署名方式,
又は別なディジタル署名方式を用いてもよい。
附属書B表2は,メッセージ復元型ディジタル署名方式の自己記述カード検証可能な証明書の例を示す。
附属書B表 2 カード保有者の自己記述カード検証可能な証明書(例)
“7F21” 長さ 後続するデータオブジェクトの値
[{“42” - L - 発行者識別番号}] - [{“5F37” - L -ディジタル署名}]
[{“5F20” - L - カード保有者名}] -
[{“5F49” - L - カード保有者の公開か
ぎ(鍵)}]
証明書のタ 証明書の長 ディジタル署名の対象となるデータ 次のデータオブジェクトの署名。
グ(構造型) さ オブジェクトからなる証明書の値 [{“42” - L - 発行者識別番号}]
(メッセージ復元方法が分からない [{“5F20” - L - カード保有者名}]
場合だけ存在)。 [{“5F49” - L - カード保有者の公開
かぎ(鍵)}]
備考1. 認証機関の識別データによって,認証機関の公開かぎ(鍵)を参照してもよい。
2. カード保有者の識別データを,カードに格納されたデータへのアクセス権の制御のために用
いてもよい。
3. カード保有者の公開かぎ(鍵)を,後に実行されるVERIFY DIGITAL SIGNATURE処理に用
いてもよい。

――――― [JIS X 6320-8 pdf 15] ―――――

次のページ PDF 16

JIS X 6320-8:2006の引用国際規格 ISO 一覧

  • ISO/IEC 7816-8:2004(IDT)

JIS X 6320-8:2006の国際規格 ICS 分類一覧