• 検索結果がありません。

デジタルテレビネットワーク機能 IC カードアクセス仕様書 デジタルテレビ情報化研究会 Copyright 2008 ALL RIGHTS RESERVED シャープ株式会社ソニー株式会社株式会社東芝株式会社日立製作所松下電器産業株式会社本仕様の内容は予告無しに変更されることがあります Docume

N/A
N/A
Protected

Academic year: 2021

シェア "デジタルテレビネットワーク機能 IC カードアクセス仕様書 デジタルテレビ情報化研究会 Copyright 2008 ALL RIGHTS RESERVED シャープ株式会社ソニー株式会社株式会社東芝株式会社日立製作所松下電器産業株式会社本仕様の内容は予告無しに変更されることがあります Docume"

Copied!
23
0
0

読み込み中.... (全文を見る)

全文

(1)

デジタルテレビ ネットワーク機能

IC カードアクセス仕様書

デジタルテレビ情報化研究会

Copyright © 2008 ALL RIGHTS RESERVED シャープ株式会社 ソニー株式会社 株式会社東芝 株式会社日立製作所 松下電器産業株式会社 本仕様の内容は予告無しに変更されることがあります。 Document Version: 1.0 Date: 23rd April, 2008 Name: デジタルテレビ ネットワーク機能仕様 IC カードアクセス仕様書

(2)
(3)

目次

1. 概要 ... 3 2. 用語の定義 ... 3 3. 想定するシステム構成... 3 4. 本書が規定する範囲 ... 4 5. 本仕様書を実装するネットTV端末を識別するための定義 ... 4 6. ICカードアクセス機能の構成要件 ... 5 6.1. ICカードアクセスプラグイン ... 5 6.2. リーダライタとドライバ... 5 7. ICカードアクセス仕様 ... 6 7.1. プラグインのMIMEタイプ ... 6 7.2. コンテンツ記述仕様 ... 6 7.2.1. HTMLタグセット...6 7.2.2. HTMLタグセットの運用 ...7 . . 7.2.3. DOM HTMLインタフェース ...7 7.3. スクリプト記述仕様 ... 8 7.3.1. request()メソッドの詳細...8 7.3.2. request()メソッドの引数に与えるコマンド文字列フォーマット ...9 7.3.2.1. 開始要求コマンド ...9 7.3.2.2. 終了要求コマンド ...10 7.3.2.3. ステータス取得要求コマンド...10 7.3.2.4. 制御データ送信要求コマンド...11 7.3.2.5. 制御データ受信要求コマンド...12 8. ICカードアクセスプラグインの状態遷移... 12 9. コマンド発行シーケンス ... 13 10. 制限および留意事項... 15 10.1. 複数のOBJECT要素が記述された場合... 15 10.2. ICカードへのアクセス時間... 15

(4)

[付録 A] 制御データとして文字列を受信する場合 ... 16 A.1 getString()メソッドの詳細 ... 16 A.1.1 getString()メソッドの引数に与えるコマンド文字列フォーマット...16 A.1.1.1. 制御データ受信要求コマンド...16 [付録 B] シーケンス例... 18 B.1 サーバとの通信を行う場合のシーケンス例... 18 B.2 サーバとの通信を行わない場合のシーケンス例... 20

(5)

1. 概要

近年、キャッシュカード、クレジットカード、交通乗車券、企業でのID カード、流通 業でのハウスカード等に IC 機能を搭載したカード(IC カード)が使われるようになっ た。 一般的にIC カードには、キャッシュカードやクレジットカードで多く利用されている 接触式カードと、交通乗車券や流通業でのハウスカード等に多く利用されている非接触 式カードがある。また、IC カードには接触、非接触といった物理インタフェース以外に も、さまざまな切り口での分類が可能である。本仕様書では、リーダライタとIC カード の間の通信プロトコル (カードコマンド) ごとに IC カードを分類し、これを IC カード種 別と呼ぶことにする。 本仕様書では特定の種別のIC カードを想定せず、ネット TV 端末に接続または内蔵さ れたIC カード用のリーダライタを介して IC カードの読み書き、および状態を取得する 機能の構成要件を記述し、機能の実現のためのインタフェースを定義する。

2. 用語の定義

用語 定義 リーダライタ IC カードに対してデータを読み書きするための機能。 IC カードへのアクセス IC カードへの書き込み、IC カードからの読み出し、およ びIC カードの状態の取得を指す。 IC カードアクセスプラグイン ネットTV ブラウザから起動され、IC カードへの操作を 行うためのプラグインソフトウェア。 アクセス中・非アクセス中 ICカードアクセスプラグインの 2 つの状態。「8. ICカー ドアクセスプラグインの状態遷移」で定義される。 スクリプト JavaScript で記述されたスクリプトを指す。 制御データ IC カードアクセスプラグインと、スクリプトとの間で送 受信されるデータ。たとえば、カードから読み出したデ ータや、カードに書き込むデータなど。 IC カード種別 IC カードの種別。リーダライタと IC カードの間の通信 プロトコル (カードコマンド) ごとに定義される。

3. 想定するシステム構成

ネットTV端末とコンテンツ事業者のサーバ、決済サービス事業者のサーバの関係は、 一例として図 3-1のようになる。この例では、コンテンツ事業者のサーバは映像などのコ ンテンツのみを提供し、本仕様書で規定するICカードアクセス機能を呼び出すHTML文 書およびスクリプトは、決済サービス事業者のサーバから提供される。ICカードに対す る決済処理は、このHTML文書およびスクリプトに基いて行われる。コンテンツ事業者

(6)

のサーバと決済サービス事業者のサーバとの間では、課金金額や決済処理結果などの決 済情報がやり取りされる。 コンテンツ事業者サーバ 映像などのコンテンツを提供するサーバ。 決済サービス事業者 サーバ IC カードに対する決済処理を行うためのサーバ。IC カー ドアクセス機能を呼び出す HTML 文書およびスクリプ トは、このサーバから提供される。 決済情報 コンテンツ事業者サーバと決済サービス事業者サーバと の間でやり取りされる情報。課金金額や決済処理結果な ど。 ネットTV 端末 決済サービス 事業者サーバ コンテンツ 事業者サーバ IC カードアクセス機能を 呼び出すHTML 文書 およびスクリプト 決済情報 映像などの コンテンツ 図 3-1 各サーバとの関係例

4. 本書が規定する範囲

本仕様書では、IC カードへのアクセス機能のインタフェースのみを規定する。実装の 詳細はIC カード種別ごとに異なるため、本仕様書では規定しない。 また、図 3-1におけるコンテンツ事業者サーバと決済サービス事業者サーバとの間での 決済情報の通知方法は、決済サービス事業者に依存するため、本仕様書では規定しない。 コンテンツ事業者サーバとネットTV端末との間でやり取りされるコンテンツの内容およ び提供方法は、コンテンツ事業者に依存するため、本仕様書では規定しない。

5. 本仕様書を実装するネットTV端末を識別するための定義

本仕様の機能名称(FunctionName)を iccard とする。Option は用いない。バージョンは 表紙に記載のDocument Version とする。

識別方法については、デジタルテレビ ネットワーク機能仕様 ネット TV ブラウザ仕様書 の「navigator.dtvnetbrowser を用いた仕様判定方法」を参照すること。

(7)

6. ICカードアクセス機能の構成要件

ICカードアクセスを実現するための構成要件を、図 6-1に示す。 図 6-1 IC カードアクセス機能を実現するための構成要件 ネットTV ブラウザ IC カードアクセスプラグイン IC カード種別 A IC カード種別 B IC カード種別 A 用ドライバ B 用ドライバ IC カード種別 A 用リーダライタ B 用リーダライタ 本仕様書で規定 種別ごとの動作 は本仕様書では 規定しない IC カード種別 A カード B カード ネットTV端末 6.1. ICカードアクセスプラグイン ネットTV 端末から IC カードにアクセスする実現方法は、ネット TV ブラウザのプラ グインを利用する。IC カードへのアクセスを実現するためのプラグインを、本仕様書で はIC カードアクセスプラグインと呼ぶ。 ネットTV ブラウザ上で実行されるスクリプトが、本仕様書で規定する IC カードアク セスプラグインのインタフェースを呼び出したとき、IC カードアクセス機能に対応した ネットTV 端末は、本章で規定する処理を行わなければならない。 IC カードアクセスプラグインは、スクリプトが指定した IC カード種別とパラメータ に基づいてIC カードと通信を行う。 6.2. リーダライタとドライバ ネットTV端末は、IC カードアクセス機能を実現するため、ハードウェアにおいて IC カードにアクセスするためのリーダライタを内蔵または接続しており、そのリーダライ タを操作するためのドライバを装備していることが望ましい。 ドライバおよびリーダライタは、IC カードとのインタフェースに依存するため、本仕 様書では規定しない。

(8)

7. ICカードアクセス仕様

7.1. プラグインのMIMEタイプ IC カードアクセスプラグインの MIME タイプは、application/x-iccard-access-plugin とする。 7.2. コンテンツ記述仕様 7.2.1. HTML タグセット ICカードアクセスプラグインのHTMLタグセットを示す。ネットTVブラウザが実装す べき属性、実装しない属性を表 7-1の「ネットTV」欄に以下の記号で示す。 ○ IC カードアクセス機能を搭載したネット TV ブラウザはこの要素また は属性を実装しなければならない。コンテンツはこの要素または属性 を使用することができる。 × ネット TV ブラウザはこの要素または属性を実装しない。コンテンツ がこの要素または属性を使用した場合、その動作は実装依存である。 表 7-1 IC カードアクセスプラグインの要素および属性 要素 属性 ネットTV 補足 OBJECT ○ %attrs %coreattrs id ○ class × style × title × %i18n lang × dir × %events onclick × ondblclick × onmousedown × onmouseup × onmouseover × onmousemove × onmouseout × onkeypress × onkeydown × onkeyup × declare × classid × codebase × data × type ○

(9)

要素 属性 ネットTV 補足 codetype × archive × standby × width × height × usemap × name ○ tabindex × PARAM × id × name × value × valuetype × type × 7.2.2. HTML タグセットの運用 (1) object 要素

type 属性には、プラグインの MIME Type が記載されていなければならない。 (2) param 要素 param 要素は使用しない。 7.2.3. DOM HTML インタフェース ICカードアクセスプラグインに対するDOM HTMLインタフェースを規定する。表 7-2 の「ネットTV」欄にICカードアクセス機能を搭載したネットTVブラウザが読み取りと書 き込みを実装すべきインタフェース、読み取りのみを実装すべきインタフェース、実装 しないインタフェースを以下の記号で示す。 ICカードアクセス機能を搭載したネットTVブラウザは、表 7-2で規定するようにイン タフェースを実装しなければならない。 RW IC カードアクセス機能を搭載したネット TV ブラウザは、このインタ フェースの読み取りと書き込みとを実装しなければならない。 R IC カードアクセス機能を搭載したネット TV ブラウザは、このインタ フェースの読み取りを実装しなければならない。 × ネットTV 端末は、このインタフェースを実装する必要はない。 表 7-2 使用できる DOM HTML インタフェース(要素部分) インタフェース メソッド、プロパティ ネットTV HTMLObjectElement form ×

(10)

インタフェース メソッド、プロパティ ネットTV code × align × archive × border × codeBase × codeType × data × declare × height × hspace × name × standby × tabIndex × type R useMap × vspace × width × HTMLParamElement name × type × value × valueType × 7.3. スクリプト記述仕様 IC カードアクセスプラグインに対する HTMLObjectElement オブジェクトは、次に定 義するメソッドを持つ。

long request(String command);

ICカード種別によって、文字列を返すメソッドが必要となる場合は、[付録 A] の定義 を使用すること。

7.3.1. request()メソッドの詳細

概要:IC カードアクセスプラグインに対して要求を行い、その結果を数値で得る。 文法:long request(String command);

引数: command IC カードアクセスプラグインに対するコマンド文字列 戻り値: -1: コマンド文字列が不正 その他は各コマンドごとに異なる。(負の値はエラーを意味する) 説明: IC カードアクセスプラグインに対して、開始要求、終了要求、ステータス取得要求、 制御データ送信要求、または制御データ受信要求を行い、その結果を数値で得る。

(11)

コマンド文字列が、開始要求コマンド、終了要求コマンド、ステータス取得要求コ マンド、制御データ送信要求コマンド、制御データ受信要求コマンドのいずれでも ない場合は、戻り値-1 を返す。 各コマンドにおいて、本仕様書で規定する以外の戻り値を、別途 IC カード種別ご とに規定してもよい。 7.3.2. request()メソッドの引数に与えるコマンド文字列フォーマット 7.3.2.1. 開始要求コマンド 概要:プラグインの状態をアクセス中にする。 フォーマット:

"start" SP CARD_TYPE [SP START_PARAM] SP = <US-ASCII SP, スペース (0x20)> CARD_TYPE = 1*NON_SP_CHAR NON_SP_CHAR = <US-ASCII SP 以外の文字> START_PARAM = 0*CHAR CHAR = <文字> パラメータ: CARD_TYPE IC カード種別 START_PARAM 開始要求パラメータ 戻り値: 0: 成功 -2: アクセス中 -6: サポートしていないIC カード種別 -100 以下: (IC カード種別に依存) 判定: request()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 request()メソッドは開始要求コマンドが指定されたとみなす。文字列の比較は、ア ルファベットの大文字と小文字を区別して行うことに注意すること。 説明: 開始要求コマンドにより、ICカードアクセスプラグインの状態はアクセス中になる。 コマンドが成功すると戻り値として0 を返す。すでにICカードアクセスプラグイン がアクセス中である場合は、コマンドは失敗し、戻り値として-2 を返す。プラグイ ンの状態遷移の詳細については、「8. ICカードアクセスプラグインの状態遷移」を 参照のこと。 ICカード種別に指定する値およびICカード種別ごとのプラグインの振る舞いは、本

(12)

仕様書では規定しない。 ICカードアクセスプラグインが、指定されたICカード種別に対応していない場合は、 コマンドは失敗し、戻り値として-6 を返す。 開始要求パラメータについては、ICカード種別ごとに規定されるものとし、本仕様 書では規定しない。 7.3.2.2. 終了要求コマンド 概要:プラグインの状態を非アクセス中にする。 フォーマット: "stop" パラメータ: なし 戻り値: 0: 成功 -3: 非アクセス中 -100 以下: (IC カード種別に依存) 判定: request()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 request()メソッドは終了要求コマンドが指定されたとみなす。文字列の比較は、ア ルファベットの大文字と小文字を区別して行うことに注意すること。 説明: 終了要求コマンドにより、IC カードアクセスプラグインの状態は非アクセス中にな る。コマンドが成功すると戻り値として0 を返す。IC カードアクセスプラグインが 非アクセス中である場合は、コマンドは失敗し、戻り値として-3 を返す。 7.3.2.3. ステータス取得要求コマンド 概要:プラグインのステータスを取得する。 フォーマット: "status" パラメータ: なし 戻り値: 2: アクセス中 3: 非アクセス中 4: 制御データ受信待ち 5: 制御データ処理中

(13)

100 以上: (IC カード種別に依存) 判定: request()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 request()メソッドはステータス取得要求コマンドが指定されたとみなす。文字列の 比較は、アルファベットの大文字と小文字を区別して行うことに注意すること。 説明: ステータス取得要求コマンドが指定されると、戻り値としての IC カードアクセス プラグインのステータスを返す。 IC カードアクセスプラグインがアクセス中である場合は、戻り値として 2 を返す。 IC カードアクセスプラグインが非アクセス中である場合は、戻り値として 3 を返す。 IC カードアクセスプラグインがスクリプトに送信したい制御データを保持してい る場合は、戻り値として4 を返す。 IC カードアクセスプラグインがスクリプトから送信された制御データを保持して いる場合は、戻り値として5 を返す。 7.3.2.4. 制御データ送信要求コマンド 概要:プラグインに制御データを送信する。 フォーマット: "send" SP CTRL_DATA SP = <US-ASCII SP, スペース (0x20)> CTRL_DATA = 0*CHAR CHAR = <文字> パラメータ: CTRL_DATA 制御データ 戻り値: 0: 成功 -3: 非アクセス中 -100 以下: (IC カード種別に依存) 判定: request()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 request()メソッドは制御データ送信要求コマンドが指定されたとみなす。文字列の 比較は、アルファベットの大文字と小文字を区別して行うことに注意すること。 説明: 制御データ送信要求コマンドにより、IC カードアクセスプラグインは指定された制 御データを受信する。制御データの内容およびプラグインが受信した制御データの

(14)

取り扱いについては、開始要求コマンドに指定された IC カード種別ごとに規定さ れるものとし、本仕様書では規定しない。 コマンドが成功すると戻り値として0 を返し、IC カードアクセスプラグインは制御 データ処理中になる。 IC カードアクセスプラグインが非アクセス中である場合は、コマンドは失敗し、戻 り値として-3 を返す。 7.3.2.5. 制御データ受信要求コマンド 概要:プラグインから制御データを受信する。 フォーマット: "receive" パラメータ: なし 戻り値: -3: 非アクセス中 -7: 制御データなし 0 以上、または-100 以下: (IC カード種別に依存) 判定: request()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 request()メソッドは制御データ受信要求コマンドが指定されたとみなす。文字列の 比較は、アルファベットの大文字と小文字を区別して行うことに注意すること。 説明: 制御データ受信要求コマンドにより、request()は IC カードアクセスプラグインが 保持している制御データを0 以上の数値として返す。プラグインが制御データを保 持していない場合は戻り値として-7 を返す。 IC カードアクセスプラグインが非アクセス中である場合は、戻り値として-3 を返す。 制御データの数値の意味については、開始要求コマンドに指定された IC カード種 別ごとに規定されるものとし、本仕様書では規定しない。

8. ICカードアクセスプラグインの状態遷移

IC カードアクセスプラグインは、アクセス中と非アクセス中の 2 つの状態を持ち、初 期状態では非アクセス中の状態をとる。非アクセス中の状態では、プラグインに対して 開始要求、ステータス取得要求を行うことができる。 IC カードへのアクセスを行うには、まず、IC カードアクセスプラグインに対して開始 要求を行わなければならない。開始要求コマンドが成功すると、IC カードアクセスプラ

(15)

グインはアクセス中になる。 アクセス中の状態では、プラグインに対して終了要求、ステータス取得要求、制御デ ータ送信要求、制御データ受信要求を行うことができる。 終了要求コマンドが成功すると、IC カードアクセスプラグインは非アクセス中になる。 図 8-1 IC カードアクセスプラグインの状態遷移 開始要求 非アクセス中 終了要求 ※初期状態 アクセス中 状態取得要求 制御データ送信要求 制御データ受信要求 状態取得要求

9. コマンド発行シーケンス

コマンド発行の基本シーケンスを、図 9-1に示す。

(16)

図 9-1 基本シーケンス スクリプトはまず、IC カードアクセスプラグインに対して開始要求を行う。 開始要求を行ったあと制御データ送信要求を行うと、IC カードアクセスプラグインは その制御データの内容に基いてIC カードへのアクセスなどの処理を実行する。 スクリプトは定期的にステータス取得要求を行うことによって、処理が完了したかど うかを調べることができる。処理がまだ終わっていなければ、ステータス取得要求コマ ンドは制御データ処理中を返す。処理が正常に終了すると、ステータス取得要求コマン ドはアクセス中を返すようになる。 IC カードへのアクセスなどの処理の結果として、IC カードアクセスプラグインが制御 データを保持するようになると、ステータス取得要求コマンドは制御データ受信待ちを 返すようになる。このとき、制御データ受信要求によって制御データを取得することが できる。 最後に、スクリプトはIC カードアクセスプラグインに対して終了要求を行い、一連の 処理を終了させる。 スクリプト IC カードアクセスプラグイン 開始要求 (アクセス中) ステータス取得要求 終了要求 制御データ受信要求 制御データ処理中 ステータス取得要求 アクセス中 ステータス取得要求 制御データ 制御データ受信待ち 制御データ送信要求 (制御データ処理中) (制御データ受信待ち)

(17)

10. 制限および留意事項

10.1. 複数のOBJECT要素が記述された場合

同一の HTML 文書に、IC カードアクセスプラグインの MIME Type を指定した OBJECT 要素が複数書かれている場合のブラウザの挙動は実装依存とする。

10.2. ICカードへのアクセス時間

IC カードに対するアクセスは、数百ミリ秒から数秒以上かかることがある。通信を同 期的に行うと、その間ブラウザの動作が停止してしまう可能性があるため、IC カードへ のアクセスは非同期で行うことが望ましい。

(18)

[付録 A]

制御データとして文字列を受信する場合

IC カードアクセスプラグインに対する HTMLObjectElement オブジェクトは、次に定 義するメソッドを持つ。

String getString(String command);

A.1 getString()メソッドの詳細

概要:IC カードアクセスプラグインに対して要求を行い、その結果を文字列で得る。 文法:String getString(String command);

引数: command IC カードアクセスプラグインに対するコマンド文字列 戻り値: 最大4096 文字の文字列、または空文字列 (長さ 0 の文字列)。 説明: IC カードアクセスプラグインに対して、制御データ受信要求を行い、その結果を文 字列で得る。 コマンド文字列が、制御データ受信要求コマンドでない場合は、戻り値として空文 字列を返す。そうでなければ、最大4096 文字の文字列を返す。返される文字列は、 16384 バイトを超えることはないものとする。 A.1.1 getString()メソッドの引数に与えるコマンド文字列フォーマット A.1.1.1. 制御データ受信要求コマンド 概要:プラグインから制御データを受信する。 フォーマット: "receive" パラメータ: なし 戻り値: 最大4096 文字の文字列、または空文字列 (長さ 0 の文字列)。 判定: getString()の引数に指定された文字列が上記フォーマットの条件に合致する場合、 getString()メソッドは制御データ受信要求コマンドが指定されたとみなす。文字列 の比較は、アルファベットの大文字と小文字を区別して行うことに注意すること。 説明: 制御データ受信要求コマンドにより、getString()は IC カードアクセスプラグイン が保持している制御データを、文字列として返す。プラグインが制御データを保持 していない場合、または IC カードアクセスプラグインが非アクセス中である場合

(19)

は、空文字列 (長さ 0 の文字列) を返す。

制御データの内容については、開始要求コマンドに指定された IC カード種別ごと に規定されるものとし、本仕様書では規定しない。

(20)

[付録 B]

シーケンス例

B.1 サーバとの通信を行う場合のシーケンス例 決済サービス事業者のサーバに対し、電子マネー機能を備えたIC カードで決済を行う 例を示す。 この場合、スクリプトからのコマンドによって、図 B-1のように通信コネクションが ICカードアクセスプラグインとサーバとの間で確立される。例えばISO/IEC 7816 や ISO/IEC 14443、JISX6319 等で規定されるICカードに与えるカードコマンドは、サーバ からプラグインに上記通信コネクションを通じて送信され、プラグインがそのコマンド をICカードに発行する。ICカードからのレスポンスも同様に、プラグインが通信コネク ションを通じてサーバに送信する。 図 B-1 サーバとの通信による決済の例 この場合のシーケンス例を、図 B-2 に示す。 決済サービス 事業者サーバ プラグイン 通信コネクション リーダ ライタ IC カード IC カードに対するカードコマンド

(21)

スクリプト IC カードアクセスプラグイン 図 B-2 サーバとの通信による決済のシーケンスの例 開始要求 ステータス取得要求 終了要求 制御データ処理中 ステータス取得要求 制御データ受信待ち 制御データ受信要求 制御データ (メッセージコード) (制御データ処理中) 制御データ送信要求 (サーバの URL) ステータス取得要求 通信切断 (IC カード種別依存) ステータス取得要求 制御データ処理中 (アクセス中) 制御データ送信要求 (返信データ) (制御データ処理中) (制御データ受信待ち) メッセージを表示 「カードをかざしてください」 カードコマンド (カードの認証) ステータス取得要求 アクセス中 IC カード 決済サーバ ←通信が切断される ←返信が完了 通信切断 カードコマンド (残高の減算) カードコマンドを転送 応答を転送 応答 応答を転送 応答 カードコマンドを転送 返信データ ←メッセージコードを保存 メッセージコード 接続完了 サーバに接続

(22)

スクリプトはまず、IC カードアクセスプラグインに対して開始要求を行う。 開始要求を行ったあと、スクリプトが制御データ送信要求を行い、そのパラメータに サーバの URL を指定すると、IC カードアクセスプラグインはサーバとの間で通信コネ クションを確立する。 IC カードによる決済を開始させるために、まずサーバからユーザに IC カードをかざ すよう促すために、「カードをかざしてください」といったメッセージを表示させるため のメッセージコードを通信コネクションを通じてIC カードアクセスプラグインに送信す る。メッセージコードを受信したプラグインは、それを内部に保持する。このときスク リプトがステータス取得要求を行うと、制御データ受信待ちが返されるため、サーバか らのメッセージコードが受信されていることが分かる。スクリプトは制御データ受信要 求によってメッセージコードを取得し、そのメッセージコードに応じたメッセージを表 示する。その後スクリプトは、メッセージの表示が完了したことをサーバに伝えるため、 制御データ送信要求によって返信データをプラグインに渡す。プラグインは、その返信 データを通信コネクションを通じてサーバに送信する。 ([付録 A]に記載のメソッドを利用して制御データ受信要求を行う場合には、メッセー ジコードではなくメッセージデータそのものをやりとりすることも可能である。) 次にサーバは、IC カードの認証や、残高の減算といった、決済を行うためのカードコ マンドを通信コネクションを通じてIC カードアクセスプラグインに送信する。カードコ マンドを受信したプラグインは、それを IC カードに転送する。IC カードはカードコマ ンドを処理し、応答を返す。IC カードから応答を受信したプラグインは、その応答を通 信コネクションを通じてサーバに送信する。カードコマンドの処理は、スクリプトとは 並行して実行される。 決済が終わると、サーバはサーバ側から通信コネクションを切断する。通信コネクシ ョンが切断されると、ステータス取得要求は、IC カード種別依存のステータスとして、 通信切断を返す。 最後に、スクリプトはIC カードアクセスプラグインに対して終了要求を行い、一連の 処理を終了させる。 B.2 サーバとの通信を行わない場合のシーケンス例 サーバとの通信を行わない場合のシーケンスとして、例えば電子マネー機能を備えた IC カードに記録されている残高データを照会する場合のシーケンス例を示す。この例で は、残高が数値として取得される。

(23)

IC カードアクセスプラグイン スクリプト 開始要求 終了要求 ステータス取得要求 制御データ受信待ち 制御データ受信要求 制御データ (残高) 制御データ送信要求 (残高読み出し指示) ステータス取得要求 (アクセス中) (制御データ処理中) (制御データ受信待ち) 応答 (残高) カードコマンド (残高読み出し) IC カード 制御データ処理中 図 B-3 残高照会のシーケンス例 スクリプトはまず、IC カードアクセスプラグインに対して開始要求を行う。 開始要求を行ったあと、スクリプトがIC カードへの残高の読み出しの指示をパラメー タとする制御データ送信要求を行うと、IC カードアクセスプラグインはその制御データ の内容に基いて IC カードに残高を読み出すためのカードコマンドを発行する。IC カー ドはカードコマンドを処理し、残高が含まれた応答を返す。IC カードから応答を受信し たプラグインは、その応答に含まれる残高を内部に保持する。カードコマンドの発行は、 スクリプトとは並行して実行される。 スクリプトはステータス取得要求によって、IC カードからの残高の読み出しが完了し たかどうかを調べることができる。IC カードからの読み出しがまだ終わっていなければ、 ステータス取得要求コマンドは制御データ処理中を返す。IC カードからの読み出しが正 常に終了すると、ステータス取得要求コマンドは制御データ受信待ちを返すようになる。 このとき、スクリプトが制御データ受信要求を発行すると、残高が数値として返される。 最後に、スクリプトはIC カードアクセスプラグインに対して終了要求を行い、一連の 処理を終了させる。

図 9-1  基本シーケンス  スクリプトはまず、IC カードアクセスプラグインに対して開始要求を行う。  開始要求を行ったあと制御データ送信要求を行うと、 IC カードアクセスプラグインは その制御データの内容に基いて IC カードへのアクセスなどの処理を実行する。  スクリプトは定期的にステータス取得要求を行うことによって、処理が完了したかど うかを調べることができる。処理がまだ終わっていなければ、ステータス取得要求コマ ンドは制御データ処理中を返す。処理が正常に終了すると、ステータス取得要求コマン ド

参照

関連したドキュメント

訂正前

東京電力ホールディングス株式会社(以下,東電HDという。 ) ,東京電力パワーグリ ッド株式会社(以下,東電PGという。

「普通株式対価取得請求日における時価」は、各普通株式対価取得請求日の直前の 5

ダイダン株式会社 北陸支店 野菜の必要性とおいしい食べ方 酒井工業株式会社 歯と口腔の健康について 米沢電気工事株式会社

2022.7.1 東京電力ホールディングス株式会社 東京電力ホールディングス株式会社 渡辺 沖

東京電力パワーグリッド株式会社 東京都千代田区 東電タウンプランニング株式会社 東京都港区 東京電設サービス株式会社

東電不動産株式会社 東京都台東区 株式会社テプコシステムズ 東京都江東区 東京パワーテクノロジー株式会社 東京都江東区

東京電力パワーグリッド株式会社 東京都千代田区 東電タウンプランニング株式会社 東京都港区 東京電設サービス株式会社