私はSCOSTAスマートカードを使用しています。MF、DF、EFファイル構造を正常に作成しました。スマートカードでEFファイル形式を正常に作成しました。コードは次のとおりです。
SendBuff[0] = 0x00; //CLA
SendBuff[1] = 0xE0; //INS
SendBuff[2] = 0x00; //p1
SendBuff[3] = 0x00; //p2
SendBuff[4] = 0x1A; //len
SendBuff[5] = 0x62; //T
SendBuff[6] = 0x18; //L
SendBuff[7] = 0x80; //T
SendBuff[8] = 0x02; //Len
SendBuff[9] = 0x02; //Value,File size
SendBuff[10] = 0x08; //value,File size
SendBuff[11] = 0x82; //T
SendBuff[12] = 0x01; //Len
SendBuff[13] = 0x01; //FDB (Transparent Working EF)
SendBuff[14] = 0x83; //T
SendBuff[15] = 0x02; //Len
SendBuff[16] = 0xE0; //EF INDENTIFIER
SendBuff[17] = 0x07;
SendBuff[18] = 0x88; //T
SendBuff[19] = 0x01; //Len
SendBuff[20] = 0x09; //Value
SendBuff[21] = 0x8A; //T
SendBuff[22] = 0x01;
SendBuff[23] = 0x01; //LCSI. When file is created first, it will be in 01
SendBuff[24] = 0x8C; //T
SendBuff[25] = 0x05; //Len
SendBuff[26] = 0x6A; //Security Attributes
SendBuff[27] = 0xFF; //Delete File: Never
SendBuff[28] = 0xFF; //Terminate EF: Never
SendBuff[29] = 0xFF; //Deactivate EF: Never
SendBuff[30] = 0x23; //Update Binary: SE#3`
APDU 00 D0 00 04 10+Data.so を使用してスマート カードにバイナリ コマンドを書き込みました。これを使用して、バイナリ コマンドを読み取る前に、スマート カードにデータを正常に書き込みました。スマート カードに書き込まれたファイルを選択しました。 、その後、READ Binary APDU コマンド 00 B0 00 00 00 を使用しました。応答ステータスは次のとおりです。
6986 コマンドは許可されていません (現在の EF がありません)。
バイナリコードを読む:
ModWinsCard.SCARD_IO_REQUEST SendRequest;
SendRequest.dwProtocol = 1;
SendRequest.cbPciLength = 8;
ModWinsCard.SCARD_IO_REQUEST RecvRequest;
RecvRequest.dwProtocol = 1;
RecvRequest.cbPciLength = 8;
byte[] SendBuff = new byte[255];
byte[] RecvBuff = new byte[255];
int SendBuffLen = 0x5;
int RecvBuffLen = 0x12;
//Byte currentBlock = (byte)(int.Parse(strBlock));
//Byte currentBlock = Convert.ToByte(strBlock, 16);
//Byte len = Convert.ToByte(Len);
SendBuff[0] = 0x00;
SendBuff[1] = 0xB0;
SendBuff[2] = 0x00;
SendBuff[3] = 0x00;
SendBuff[4] = 0x00;
status = ModWinsCard.SCardTransmit(hCard, ref SendRequest, ref SendBuff[0], SendBuffLen, ref RecvRequest, ref RecvBuff[0], ref RecvBuffLen);
参照用に次の 2 つの外部ツールがあります。
- スマート カード ツールセット PRO v3.4
- クリプトウェア スマート カード コンソール
これらのツールを利用することで、バイナリの書き込み、バイナリの更新、バイナリの読み取り、データの取得ができるため、上記のツールを使用してこれらの操作を正常に実行でき、応答は「9000」ですが、コード化されたスマートカードアプリケーションではありませんつまり、バイナリの書き込み、バイナリの更新、バイナリの読み取りコマンド。スマート カードの操作の開始から終了までの順序は?