apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

Π‘ΠΌΠ°Ρ€Ρ‚-ΠΊΠ°Ρ€Ρ‚Ρ‹. Π§Π°ΡΡ‚ΡŒ 2. APDU

ПослС ΠΎΠ±Ρ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, описанной Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ части, сСгодня ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± APDU Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, описанном Π² стандартС ISO7816-4.

APDU (application protocol data unit) β€” это Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ общСния ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°. Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» посылаСт Command APDU (C-APDU), Π° ΠΊΠ°Ρ€Ρ‚Π° ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ с Response APDU (R-APDU).

C-APDU

Π€ΠΎΡ€ΠΌΠ°Ρ‚ C-APDU Ρ‚Π°ΠΊΠΎΠ²:

HeaderBody
CLA INS P1 P2[Lc field] [Data field] [Le field]

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (header) сохранСн Π½Π° ΠΎΠ΄Π½ΠΎΠΌ Π±Π°ΠΉΡ‚Π΅ ΠΈ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. К Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ вСрнСмся Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅, сСйчас ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ body ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ body ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

Lc ΠΈ Le, Ссли ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚, ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ 1 (Short Length) ΠΈΠ»ΠΈ 3 Π±Π°ΠΉΡ‚Π° (Extended Length) ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ. ΠŸΡ€ΠΈ Short Length ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ значСния ΠΎΡ‚ 1 Π΄ΠΎ 256. Π”Π»ΠΈΠ½Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° 256 Π±Π°ΠΉΡ‚ΠΎΠ² записываСтся ΠΊΠ°ΠΊ Β«00Β». ΠŸΡ€ΠΈ Extended Length ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ значСния ΠΎΡ‚ 1 Π΄ΠΎ 65536. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π°ΠΉΡ‚ всСгда Β«00Β» ΠΈ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ 2 Π±Π°ΠΉΡ‚Π° β€” Π½ΠΎΠΌΠ΅Ρ€ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Big Endian. Когда Lc ΠΈΠ»ΠΈ Le β€” Β«00 00 00Β», Ρ‚ΠΎ Π΄Π»ΠΈΠ½Π° Π΄Π°Π½Π½Ρ‹Ρ… β€” 65536 Π±Π°ΠΉΡ‚ΠΎΠ².

Π’ зависимости ΠΎΡ‚ присутствия ΠΈΠ»ΠΈ отсутствия элСмСнты body ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° 4 ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ:

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
CLAClass Π±Π°ΠΉΡ‚. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ (логичСский ΠΊΠ°Π½Π°Π», Secure Messaging ΠΈ Ρ‚.Π΄.).
INSInstruction Π±Π°ΠΉΡ‚. Код инструкции. Π­Ρ‚ΠΎ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ число, ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Π½ΠΈΠ±Π±Π» ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ 6 ΠΈΠ»ΠΈ 9. ΠŸΡ€ΠΈ этом младший Π½ΠΈΠ±Π±Π» всСгда являСтся Ρ‡Π΅Ρ‚Π½Ρ‹ΠΌ числом.
P1ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Если ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½, Ρ‚ΠΎ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«00Β».
P2Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Если ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½, Ρ‚ΠΎ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ Β«00Β».

Π’Π°ΠΊ ΠΊΠ°ΠΊ сСрия ΠΌΠΎΠΈΡ… статСй Π½Π°Ρ†Π΅Π»Π΅Π½Π° Π½Π° рассмотрСниС Π² подробностях Global Platform, Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ CLA я Π±ΡƒΠ΄Ρƒ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² контСкстС Global Platform.

b5 Π² стандартС ISO7816-4 ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Command Chaining. Π’ Global Platform Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

R-APDU

Π€ΠΎΡ€ΠΌΠ°Ρ‚ R-APDU Ρ‚Π°ΠΊΠΎΠ²:

BodyTrailer
[Data field]SW1 SW2

Body присутствуСт ΠΏΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ исполнСнии (с замСчаниями ΠΈΠ»ΠΈ Π±Π΅Π· Π½ΠΈΡ…) ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Case 2 ΠΈ Case 4. Π•Π³ΠΎ содСрТаниС зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Trailer Π΅ΡΡ‚ΡŒ всСгда ΠΈ содСрТит Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Status Word, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ. Бтатус ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ…:

SW1SW2Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
УспСшноС исполнСниС
9000ОК.
61Π₯Π₯ОК, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Π₯Π₯ Π±Π°ΠΉΡ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….
ИсполнСниС Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»ΠΎΡΡŒ с замСчаниями
62Π₯Π₯SW2 уточняСт ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ замСчания. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°.
63Π₯Π₯SW2 уточняСт ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ замСчания. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°.
Ошибки ΠΏΡ€ΠΈ исполнСнии ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
6400Команда Π½Π΅ Π±Ρ‹Π»Π° исполнСна. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°.
65Π₯Π₯Команда Π½Π΅ Π±Ρ‹Π»Π° исполнСна. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Π°Ρ Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°.
66Π₯Π₯Команда Π½Π΅ Π±Ρ‹Π»Π° исполнСна ΠΏΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ бСзопасности.
Ошибки, связанныС с Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
6700ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
6881ΠšΠ°Ρ€Ρ‚Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ логичСский ΠΊΠ°Π½Π°Π».
6882ΠšΠ°Ρ€Ρ‚Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π²ΠΈΠ΄ Secure Messaging.
69XXКоманда Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π°.
6AΠ₯Π₯ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
6B00ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
6CXXΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Le.
6D00НСизвСстный INS.
6E00НСизвСстный CLA.
6F00Ошибка бСз описания.

Ошибки ΠΈΠ· сСрии 69Π₯Π₯ ΠΈ 6АΠ₯Π₯ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Global Platform ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ описаны Π² подробностях Π² частях ΡΡ‚Π°Ρ‚ΡŒΠΈ, посвящСнных Global Platform.

Бтатусы ΠΈΠ· сСрии 61Π₯Π₯ ΠΈ 6CXX Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ особСнного внимания. Код 61Π₯Π₯ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°Ρ€Ρ‚Π° исполнила ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈΠ· ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Case 2 ΠΈΠ»ΠΈ Case 4 ΠΈ послала Π½Π΅ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚. Π’ этом случаС, SW2 ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ остатка ΠΎΡ‚Π²Π΅Ρ‚Π° (Β«00Β» = 256). Π’ ΠΎΡ‚Π²Π΅Ρ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ GET RESPONSE для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅. Π­Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ нСсколько Ρ€Π°Π·, Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΊΠ°Ρ€Ρ‚Π° Π½Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚. Настоящий Status Word β€” это статус, содСрТащийся Π² послСднСм ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ GET RESPONSE. Подобная ситуация встрСчаСтся прСимущСствСнно, ΠΊΠΎΠ³Π΄Π° APDU пСрСдаСтся Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ISO7816-3 T=0 Π²Π²ΠΈΠ΄Ρƒ особСнности ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Case 4 (ΠΎΠ± этом ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅). Код 6CXX встрСчаСтся, ΠΊΠΎΠ³Π΄Π° ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Le Π½Π΅ соотвСтствуСт Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π°. Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ этом ΠΊΠ°Ρ€Ρ‚Π° Π½Π΅ посылаСт Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Π² R-APDU, Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΠ» ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ с Le Ρ€Π°Π²Π½Ρ‹ΠΌ числу, Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ Π² SW2.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Case 4 Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π’=0

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» T=0 ΠΎΡ‡Π΅Π½ΡŒ распространСн, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² SIMΠΊΠ°Ρ…. Π•Π³ΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ header всСгда состоит ΠΈΠ· 5 Π±Π°ΠΉΡ‚ΠΎΠ²: CLA, INS, P1, P2, P3. P3 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ Lc Π»ΠΈΠ±ΠΎ Le. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½, Π±ΡƒΠ΄Π΅Ρ‚ лишним для ΠΊΠΎΠΌΠ°Π½Π΄ Case 1, ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΊΠΎΠΌΠ°Π½Π΄ Case 2 ΠΈ Case 3, Π½ΠΎ нСдостаточСн для ΠΊΠΎΠΌΠ°Π½Π΄ Case 4, Π³Π΄Π΅ Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠ°ΠΊ Lc, Ρ‚Π°ΠΊ ΠΈ Le. Как ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ?

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Case 4 ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ с P3=Lc, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ это ΠΊΠΎΠΌΠ°Π½Π΄Π° Case 3. Π’ΠΎΠ³Π΄Π° ΠΊΠ°Ρ€Ρ‚Π°, ΠΏΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ исполнСнии ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π±Π΅Π· Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ со статусом 61Π₯Π₯. Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» посылаСт ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ GET RESPONSE (ΠΈΠ· ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Case 2), Π° Π·Π°Ρ‚Π΅ΠΌ ΠΊΠ°Ρ€Ρ‚Π° посылаСт настоящий ΠΎΡ‚Π²Π΅Ρ‚.

GET RESPONSE

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
CLAΠΊΠ°ΠΊ прСдыдущая ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π½ΠΎ Π±Π΅Π· Secure Messaging ΠΈ Π±ΠΈΡ‚8 = 0 (хотя ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΠΈ Π±ΠΈΡ‚8 = 1)
INSC0
P100
P200
Lc
Data
LeXX (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ SW2 ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ общСния с ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ

НаконСц-Ρ‚ΠΎ, ΠΌΡ‹ подошли ΠΊ самой интСрСсной части ΡΡ‚Π°Ρ‚ΡŒΠΈ β€” ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹.

GET DATA (Card Production Life Cycle)

C-APDU => 80 CA 9F 7F 00
R-APDU 80 CA 9F 7F 2D
R-APDU 80 F2 40 00 08 4F 06 31 32 33 34 35 36 09
R-APDU 80 F2 40 00 08 4F 06 31 32 33 34 35 36
R-APDU => 61 09
C-APDU => 00 C0 00 00 09
R-APDU

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π­ΠΊΠ²Π°ΠΉΡ€ΠΈΠ½Π³: EMV-транзакция (EMV Transaction Flow). Π§Π°ΡΡ‚ΡŒ 1: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ основы APDU

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ Ρ€Π°Π±ΠΎΡ‚ постараСмся просто ΠΈ доступно Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ происходит ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ ΠΈ устройством Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ ΠΏΠΎ POS-Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρƒ, Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈ обслуТивании Π² ATM. ΠŸΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ рассмотрим всС шаги ΠΎΠ±ΠΌΠ΅Π½Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‡ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ ΠΈ устройством. Π’ΠΎ Π΅ΡΡ‚ΡŒ, расскаТСм ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Β«EMV Transaction flowΒ» (Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» EMV). ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ посвящСна ΠΎΠ±Π·ΠΎΡ€Ρƒ интСрфСйсов ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° APDU.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΎΠ±ΠΌΠ΅Π½Π°

Β«Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠΎΠΌΒ» принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ способ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ ΠΈ устройством. Π’ контСкстС POS ΠΈΠ»ΠΈ ATM слСдуСт ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Ρ‚Ρ€ΠΈ основныС интСрфСйса:

1. MS/MStripe, ΠΈΠ»ΠΈ Magnetic Stripe (ΠœΠ°Π³Π½ΠΈΡ‚Π½Π°Ρ полоса) β€” Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ старый интСрфСйс ΠΎΠ±ΠΌΠ΅Π½Π°, постСпСнно «уходящий Π² Π»Π΅Ρ‚ΡƒΒ». Π“Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ тСхнологичСского Π½Π΅ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π° ΠΈ логичСски Π²Ρ‹Ρ‚Π΅ΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΈΠ· Π½Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ. Π’ силу Π΅Π³ΠΎ бСспСрспСктивности (Π° Ρ‚Π°ΠΊΠΆΠ΅ простоты) ограничимся лишь сТатым ΠΎΠ±Π·ΠΎΡ€ΠΎΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π’ основС Β«ΠΌΠ°Π³Π½ΠΈΡ‚ΠΊΠΈΒ» Π»Π΅ΠΆΠΈΡ‚ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, состоящий ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… «трэков»). Они Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя Π½ΠΎΠΌΠ΅Ρ€ ΠΊΠ°Ρ€Ρ‚Ρ‹, срок Π΅Π΅ дСйствия, Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ/имя ΠΊΠ°Ρ€Π΄Ρ…ΠΎΠ»Π΄Π΅Ρ€Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ сСрвис-ΠΊΠΎΠ΄ ΠΈ Π½Π΅ΠΊΠΈΠΉ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ валидности ΠΊΠ°Ρ€Ρ‚Ρ‹ (Ρ‚.Π½. CVV, Card Verification Value). БСрвис-ΠΊΠΎΠ΄, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, содСрТит ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ использованиС ΠΊΠ°Ρ€Ρ‚Ρ‹ (Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ страны, ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Ρ‚.Π΄.), ΠΎΠ½Π»Π°ΠΉΠ½-запросы ΠΊ эмитСнту, Π° Ρ‚Π°ΠΊΠΆΠ΅ допустимыС сСрвисы (POS/ATM) ΠΈ условия запроса ΠΏΠΈΠ½-ΠΊΠΎΠ΄Π°. Как ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ структура Π΄Π°Π½Π½Ρ‹Ρ… достаточно проста, Π° объСм ΠΈΡ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½, магнитная ΠΊΠ°Ρ€Ρ‚Π° Π»Π΅Π³ΠΊΠΎ копируСтся мошСнниками. Π§Ρ‚ΠΎ ΠΈ являСтся основной ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ ΠΎΡ‚ΠΊΠ°Π·Π° ΠΎΡ‚ использования Π΄Π°Π½Π½ΠΎΠ³ΠΎ интСрфСйса Π² настоящСС врСмя.

2. ICC Contact (Integrated Circuit Card, Contact) β€” ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Π°Ρ ΠΊΠ°Ρ€Ρ‚Π° с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ элСктронными схСмами. Она ΠΆΠ΅ имСнуСтся «смарт-ΠΊΠ°Ρ€Ρ‚ΠΎΠΉΒ», Β«EMV-ΠΊΠ°Ρ€Ρ‚ΠΎΠΉΒ» ΠΈΠ»ΠΈ Β«Ρ‡ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΎΠΉΒ». Π¨ΠΈΡ€ΠΎΠΊΠΎ извСстная классичСская контактная чиповая ΠΊΠ°Ρ€Ρ‚Π°. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Β«ΠΌΠ°Π³Π½ΠΈΡ‚ΠΊΠΈΒ» ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ нСсравнимо Π±ΠΎΠ»Π΅Π΅ высокими тСхнологичСскими возмоТностями, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ бСзопасности (особСнно Ссли эмитСнт слСдуСт всСм трСбованиям ΠΈ рСкомСндациям ПБ). Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π² сравнСнии с Π±ΠΎΠ»Π΅Π΅ соврСмСнным «бСсконтактом», классичСский ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹ΠΉ Ρ‡ΠΈΠΏ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ рядом возмоТностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слоТно Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹ Π½Π° «бСсконтактС» Π² силу особСнностСй послСднСго. К Ρ‚Π°ΠΊΠΈΠΌ слСдуСт отнСсти Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ эмитСнтом Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… «ЭмитСнтских скриптов» (Issuer Scripts)), Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ управлСния ΠΎΡ„Ρ„Π»Π°ΠΉΠ½ΠΎΠ²Ρ‹ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ (Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π»ΠΈΠΌΠΈΡ‚Ρ‹, расчСты комиссии ΠΈ/ΠΈΠ»ΠΈ скидки) ΠΈ ряд Π΄Ρ€ΡƒΠ³ΠΈΡ….

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

H2H (Host to Host)

3. ICC Contactless (Integrated Circuit card, Contactless) β€” БСсконтактная ΠΊΠ°Ρ€Ρ‚Π° с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ элСктронными схСмами. НС ΠΌΠ΅Π½Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ распространСнная Π² нашСм Ρ€Π΅Π³ΠΈΠΎΠ½Π΅ ΠΊΠ°Ρ€Ρ‚Π°, оснащСнная встроСнной Π°Π½Ρ‚Π΅Π½Π½ΠΎΠΉ для ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΠΎ бСсконтактному интСрфСйсу. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΠΎΠΉ EMV-ΠΊΠ°Ρ€Ρ‚Ρ‹, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ ISO 14443. Π›ΠΈΡˆΠ΅Π½Π° Ρ‚Π°ΠΊΠΎΠ³ΠΎ нСдостатка, ΠΊΠ°ΠΊ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π°, Ρ‡Ρ‚ΠΎ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π»ΠΎΡΡŒ ΠΈ подчСркиваСтся ΠŸΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹ΠΌΠΈ систСмами. НапримСр, извСстный слоган для Mastercard Contactless β€” Β«Just Tap & GoΒ». Π₯Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ бСсконтакта ΡΠ²Π»ΡΡŽΡ‚ΡΡ сущСствСнныС отличия ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ПБ. Π˜Π½Ρ‹ΠΌΠΈ словами, Ссли ΠΎΠ±ΠΌΠ΅Π½ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΠΎΠΉ Ρ‡ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Π΅ вСсьма сходСн для ΠΊΠ°Ρ€Ρ‚ всСх ПБ (Ρ‡Ρ‚ΠΎ нСсомнСнно ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ влияСт ΠΏΡ€ΠΈ обСспСчСнии ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΊΠ°Ρ€Ρ‚ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ПБ со стороны Участника), Ρ‚ΠΎ «бСсконтакт» Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Π½, Π² рядС случаСв, ΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. НапримСр, Ссли бСсконтактноС ядро Mastercard ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΎ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния, Ρ‚ΠΎ Contactless Visa ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ рядом Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ…, с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π°, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Ρ‚. Из этого слСдуСт, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ условии Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ POS ΠΈΠ»ΠΈ ATM описаны ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹, ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ устройство Π±ΡƒΠ΄Π΅Ρ‚ способно ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· бСсконтактный интСрфСйс.

Π”Ρ€ΡƒΠ³ΠΎΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ, логичСски Π²Ρ‹Ρ‚Π΅ΠΊΠ°ΡŽΡ‰Π΅ΠΉ ΠΈΠ· всСго Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ, являСтся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Β«ΡƒΡ€Π΅Π·Π°Π½ΠΈΠ΅Β» тСхничСского Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° бСсконтактных ядСр ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ‡ΠΈΠΏΠ°, ΠΏΡ€ΠΎΠ΄ΠΈΠΊΡ‚ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ сообраТСниями скорости ΠΈ бСзопасности. К Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ отнСсти: ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ„Ρ„Π»Π°ΠΉΠ½ΠΎΠ²Ρ‹Ρ… ΠΏΠΈΠ½-ΠΊΠΎΠ΄ΠΎΠ² ΠΈΠ· списка CVM-ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ хранСния ΠΈΠΌΠ΅Π½ΠΈ/Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ ΠΊΠ°Ρ€Π΄Ρ…ΠΎΠ»Π΄Π΅Ρ€Π° Π² бСсконтактном ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΌ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ ΠΈ ряд Π΄Ρ€ΡƒΠ³ΠΈΡ…, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Ρ… для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ПБ.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ бСсконтакт ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ Β«Ρ‡ΠΈΠΏΠΎΠ²Ρ‹ΠΌΒ», Ρ‚Π°ΠΊ ΠΈ Β«ΠΌΠ°Π³Π½ΠΈΡ‚Π½Ρ‹ΠΌΒ». Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ бСсконтактная ΠΊΠ°Ρ€Ρ‚Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² сСбС Π΄Π²Π° профиля, способных Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… эмуляции Π»ΠΈΠ±ΠΎ Ρ‡ΠΈΠΏΠ° (EMV-Mode), Π»ΠΈΠ±ΠΎ ΠΌΠ°Π³Π½ΠΈΡ‚Π½ΠΎΠΉ полосы (MSripe-Mode). ΠŸΡ€ΠΈ этой EMV-Mode являСтся ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌ способом, Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° MStripe-Mode Π² нашСм Ρ€Π΅Π³ΠΈΠΎΠ½Π΅ постСпСнно ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈΠ· устройств Π² соотвСтствии с Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ПБ. РазумССтся, Β«ΠΌΠ°Π³Π½ΠΈΡ‚Π½Ρ‹ΠΉ бСсконтакт» Π² этом случаС ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ достаточным ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ бСзопасности Π² сравнСнии с физичСской Β«ΠΌΠ°Π³Π½ΠΈΡ‚ΠΊΠΎΠΉΒ», ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ возмоТностями хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ подлинности ΠΊΠ°Ρ€Ρ‚Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ APDU Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ EToken

«β€¦ ΠŸΡƒΡ‚ΡŒ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ слоТСн для понимания. Π‘ΠΈΠ»Ρ‹ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρ‹, СстСствСнныС наклонности, схСмы событий…
ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΌΠΈΡ€ΠΎΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ стихии ΠΈ дальшС этого Π½Π΅ ΠΈΠ΄Ρ‘Ρ‚. Π‘Π»ΠΎΠ²Π½ΠΎ всСлСнная сводится ΠΊ Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘ΠΌ доступным ΡΠΎΠ·Π΅Ρ€Ρ†Π°Π½ΠΈΡŽ понятным явлСниям.»
Π‘Ρ‚ΠΈΠ²Π΅Π½ Эриксон.
Β«ΠŸΠΎΠ»Π½ΠΎΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ»ΠΈΠ²Β».

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

Π’Π΅ΠΌΠ° APDU здСсь поднималась Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ, Π½ΠΎ Π² основном касалась смарт ΠΊΠ°Ρ€Ρ‚, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡƒΠΆΠ΅Π½ ΠΊΠ°Ρ€Ρ‚ Ρ€ΠΈΠ΄Π΅Ρ€ ΠΈ ΠΊΠ°Ρ€Ρ‚Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ ΠΆΠ°Π»ΠΊΠΎ, плюс софт, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΌ интСрфСйсом OpenSC, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π² Window$, мягко говоря Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ.
Для этого я написал Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌ интСрфСсом, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· winscard.
Π˜ΡΡ…ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ здСсь.
ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ это ΠΏΠΎΠ΄ Visual studio 2008, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ WinSCard.Lib ΠΈΠ· Microsoft Windows SDK.

НавСрноС Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΡ… найдутся синиС Ρ€Ρ‹Π±ΠΊΠΈ EToken PRO Java 72 K с ΠΈΡΡ‚Ρ‘ΠΊΡˆΠΈΠΌΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ сСртификатами ЭЦП (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Β«Π±ΠΎΠ΅Π²ΠΎΠΉΒ», с Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ЭЦП, Ρ‚ΠΎΠΊΠ΅Π½ для экспСримСнтов Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ рСкомСндуСтся!).
ΠŸΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ JaCarta Pro, ΠΎΡ‚ Π΅Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ внСшнС.
МоТно Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Gemalto SafeNet eToken 5100, Ρƒ Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ содСрТимоС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ, Π½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π½Π΅ получится ΠΈΠ·-Π·Π° ΠΎΡ‡Π΅Π½ΡŒ малСнького (вСроятно нСсколько миллисСкунд) Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ», Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈ Ρ€ΡƒΡ‡Π½ΠΎΠΌ Π²Π²ΠΎΠ΄Π΅ ссылаСтся ΡƒΠΆΠ΅ Π½Π° пустоС мСсто (ошибка с ΠΊΠΎΠ΄ΠΎΠΌ 69 85). Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ это ΠΎΠ΄Π½Π° ΠΈΠ· ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Π½Π° этих Ρ‚ΠΎΠΊΠ΅Π½Π°Ρ… ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ. ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ SafeNet eToken 5100 (с чСстной надписью Π½Π° Π±ΠΎΠΊΡƒ Β«Made in ChinaΒ») Π·Π°ΠΌΠ΅Ρ‡Ρƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: Β«Π•Π΄ΠΈΠ½Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ JaCartaΒ» Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½ΠΈΠΌ Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС, Ρ‡Ρ‚ΠΎ сиС ΠΈΠ·Π΄Π΅Π»ΠΈΠ΅ Π½Π΅ поддСрТиваСтся, 64-Ρ… разрядный eToken PKI Client 5.1 ΠΎΡ‚ Aladdin Π΅Π³ΠΎ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚, Π½ΠΎ 32 вСрсия ΠΏΠΎΠ΄ Win XP с Π½ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, хотя для этого Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ SafeNet Authentication Client.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, Π² Ρ‚ΠΎΠΌ числС сСмСйства JaCarta, Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ APDU Ρƒ Π½ΠΈΡ… всСх Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΈ ΠΈΡ… Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ описанному Π² стандартС ISO7816 Π½Π΅ соотвСтствуСт.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄ APDU ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ здСсь.
Π§ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ синюю Ρ€Ρ‹Π±ΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ APDU Π½Π΅ вставая с Π΄ΠΈΠ²Π°Π½Π°.
НСобходимо ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для eToken eToken PKI Client 5.1 ΠΈΠ»ΠΈ Β«Π•Π΄ΠΈΠ½Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ JaCartaΒ» ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½.

Для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ просмотра содСрТимого Ρ‚ΠΎΠΊΠ΅Π½Π° Π² ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΈ свСрки с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π°ΡŽΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ APDU ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ написанный ΠΌΠ½ΠΎΠΉ Π½Π° Autoit JaCarta Editor.

ЗапускаСм APDUExplorer, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π² спискС Ρ€ΠΈΠ΄Π΅Ρ€ΠΎΠ² Β«Aladdin Token JC 0Β» ΠΈΠ»ΠΈ Β«ARDS JaCarta 0Β» ΠΈΠ»ΠΈ Β«SafeNet Token JC 0Β» ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
Π’Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· двоСточия Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ»ΠΈ всё слитно.

Для Π½Π°Ρ‡Π°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ, ΠΊΠ»ΠΈΠΊΠ½ΡƒΠ² Β«Check ATRΒ» ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½Π°.

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° β€” Π²Ρ‹Π±ΠΎΡ€ Π°ΠΏΠΏΠ»Π΅Ρ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ 3f00 (этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ СдинствСнноС ΠΎΠ±Ρ‰Π΅Π΅ Ρƒ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π»ΡŽΠ±Ρ‹Ρ… Π²Π΅Π½Π΄ΠΎΡ€ΠΎΠ²).
00:A4:00:04:00

Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список ΠΏΠ°ΠΏΠΎΠΊ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
80:01:01:00:04:09:02:00:00:CD (ΠΊΠΎΠΌΠ°Π½Π΄Π° являСтся константой Β«Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊΒ»).
Π”ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΎΡ‚Π²Π΅Ρ‚:
0a 02 66 66 0b 01 00 90 00

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎ счёту Π±Π°ΠΉΡ‚ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… β€” Π΄Π²Π° Π±Π°ΠΉΡ‚Π°, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΏΠ°ΠΏΠΊΠ° (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ Π² APDU всСгда Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π±Π°ΠΉΡ‚Π°).
И ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΏΠ°ΠΏΠΊΡƒ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ 66 66, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Aladdin AID directory.

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ² (Ρ‚ΠΎΠΆΠ΅ константа)
80:01:02:00:04:09:02:00:00:CD
Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ
0a 00 0b 01 00 90 00
ΠžΡ‚Π²Π΅Ρ‚ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 01 β€” Ρ„Π°ΠΉΠ»ΠΎΠ² 00.

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ 66 66
00 A4 08 04 02 66 66 00
Π­Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT FILE, Π΅Ρ‘ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚: Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π±Π°ΠΉΡ‚Π° сама ΠΊΠΎΠΌΠ°Π½Π΄Π° 00 A4 08 04, Π΄Π°Π»Π΅Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ поля Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 02 Π±Π°ΠΉΡ‚Π°), Π·Π°Ρ‚Π΅ΠΌ сам ΠΏΡƒΡ‚ΡŒ (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 66 66) ΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ 00.

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 66 66
80:01:01:00:04:09:02:00:00:CD
Resv bytes:
0a 04 50 01 50 00 0b 01 00 90 00
Π’ ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01 (Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π°) ΡƒΠΊΠ°Π·Π°Π½ΠΎ 04, Ρ‚.Π΅. 4 Π±Π°ΠΉΡ‚Π° = Π΄Π²Π΅ ΠΏΠ°ΠΏΠΊΠΈ 50 01 ΠΈ 50 00, ΠΏΡ€ΠΈ этом 50 01 β€” слуТСбная, Π° 50 00 основная, называСмая PKCS#11 directory, Π³Π΄Π΅ хранятся всС Π΄Π°Π½Π½Ρ‹Π΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 66 66
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 00 0b 01 00 90 00
Π€Π°ΠΉΠ»ΠΎΠ² здСсь Π½Π΅Ρ‚.

Как ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ исслСдования Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠ°ΠΏΠΎΠΊ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 50 01 Π½Π΅Ρ‚, поэтому ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ 50 00
00 A4 08 04 04 66 66 50 00 00
Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊ
80:01:01:00:04:09:02:00:00:CD
ΠžΡ‚Π²Π΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠΈΡ‚ΡŒ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ хранится Π½Π° Ρ‚ΠΎΠΊΠ΅Π½Π΅.
Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ²
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 14 00 0f 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 0b 01 00 90 00
ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ 14 Ρ„Π°ΠΉΠ»ΠΎΠ² (ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01), Π΄Π°Π»Π΅Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 2 Π±Π°ΠΉΡ‚Π° это ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ², Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ΄Ρ‘Ρ‚ слуТСбная информация.

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΈΠ·ΡƒΡ‡Π°Π΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ всСгда пристутствуСт систСмная дирСктория b000 ΠΈ Π² Π½Π΅ΠΉ систСмный Ρ„Π°ΠΉΠ» 0002, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎ этому ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹.
ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ b0 00
00 A4 08 04 06 66 66 50 00 B0 00 00
ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список Ρ„Π°ΠΉΠ»ΠΎΠ²
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 02 00 02 0b 01 00 90 00
Π’ΠΈΠ΄ΠΈΠΌ Ρ„Π°ΠΉΠ» 00 02 (Π±Π°ΠΉΡ‚ Π² ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01 β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΠΌΠ΅Π½ΠΈ (ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ имя всСгда Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π±Π°ΠΉΡ‚Π°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ поля β€” ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ², Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ„Π°ΠΉΠ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½, Ρ‡Ρ‚ΠΎ опрСдСляСм ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ поля 01).

Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» 0002 ΠΈΠ· B000 ΠΏΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΠΏΡƒΡ‚ΠΈ
00 A4 08 04 08 66 66 50 00 B0 00 00 02 00
Resv bytes:
01 01 02 02 02 00 02 03 02 00 10 04 08 00 ff 00 00 ff ff ff ff 05 00 90 00
Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π° здСсь ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ‚ΠΈΠΏ Ρ„Π°ΠΉΠ»Π° β€” 1 Π±Π°ΠΉΡ‚ (02 Ρ„Π°ΠΉΠ», 01 ΠΏΠ°ΠΏΠΊΠ°), Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, имя Ρ„Π°ΠΉΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, ΠΏΡ€Π°Π²Π° доступа β€” 1 Π±Π°ΠΉΡ‚ (00 β€” доступСн для всСх, 63 Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½ ΠΏΠΈΠ½ ΠΊΠΎΠ΄ΠΎΠΌ). Π”Π°Π»Π΅Π΅ ΠΈΠ΄Ρ‘Ρ‚ нСкая слуТСбная информация, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π°ΡΡΡ ΠΊΠΎΠ΄ΠΎΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния APDU ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ β€” 90 00.

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ», послСдниС Π΄Π²Π° Π±Π°ΠΉΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±ΡƒΡ„Π΅Ρ€Π° сколько Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ€Π°Π²Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Ρ„Π°ΠΉΠ»Π°).
80 18 00 00 04 0E 02 00 00 10
Resv bytes: (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ своё):
00 06 63 61 72 64 63 66 00 00 00 00 00 00 00 00 90 00

ΠΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π½Π° Π΅Ρ‚ΠΎΠΊΠ΅Π½Π΅ я здСсь Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° состоит ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ вопрос-ΠΎΡ‚Π²Π΅Ρ‚ ΠΈ происходит Π² Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ (сущСствуСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Antitoken Π³Π΄Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° этих издСлиях Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ).
НСкоторыС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ JaCarta Π“ΠžΠ‘Π’-2 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ простой ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΏΠΈΠ½ ΠΊΠΎΠ΄Π°.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния APDU ΠΊΠΎΠΌΠ°Π½Π΄ Π»ΡŽΠ±Ρ‹Ρ… смарт-ΠΊΠ°Ρ€Ρ‚ ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° WinSCard.dll, запустив сниффСр, скомпилированный ΠΎΡ‚ΡΡŽΠ΄Π° (ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ экспСримСнты, этот сниффСр устанавливаСтся ΠΈ запускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ Win XP).

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния APDU ΠΊΠΎΠΌΠ°Π½Π΄:
90 00 β€” OK
69 85 β€” Conditions of use not stisfied
63 00 β€” Authentication of host cryptogram failed (Ext auth)
64 00 β€” No specific diagnosis
67 00 β€” Wrong length in Lc
67 XX β€” Error, incorrect parameter P3 (ISO code)
68 81 β€” Logical channel not supported or is not active
69 82 β€” Security status not satisfied
69 83 β€” Secret code locked
69 85 β€” No currently selected EF, no command to monitor / no Transaction Manager File
6A 80 β€” The parameters in the data field are incorrect
6A 81 β€” Card is blocked or command not supported
6A 82 β€” File not found
6A 85 β€” Lc inconsistent with TLV structure
6A 86 β€” Incorrect P1 P2
6A 88 β€” Referenced data not found (Init upd)
6D 00 β€” Invalid instruction
6E 00 β€” Invalid class

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РусскиС Π‘Π»ΠΎΠ³ΠΈ

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎ использованию SIM-ΠΊΠ°Ρ€Ρ‚Ρ‹ APDU

APDU ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

ΠžΠ±Ρ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ APDU: CLA INS P1 P1 P2 P3 P3 Data

ΠžΠ±Ρ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° APDU: Π΄Π°Π½Π½Ρ‹Π΅, SW1, SW1, SW2

INS: ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅.

SW1, SW2: ΡƒΡΠΏΠ΅ΡˆΠ΅Π½ Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

5 случаСв инструкций

Π‘Π»ΡƒΡ‡Π°ΠΉ 1: Π½Π΅Ρ‚ Π²Ρ…ΠΎΠ΄Π° / Π½Π΅Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄Π° CLA INS P1 P2 P3 (lgth = 0x00) SW1 = 0x90 SW2 = 0x00

Π‘Π»ΡƒΡ‡Π°ΠΉ 2: Π΄Π»ΠΈΠ½Π° Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ / Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ сигнала нСизвСстна CLA INS P1 P2 P3 (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ lgth) DATA (Π΄Π»ΠΈΠ½Π° lgth) SW1 = 0x90 SW2 = 0x00

Π‘Π»ΡƒΡ‡Π°ΠΉ 3: Π΄Π»ΠΈΠ½Π° Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ / Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ сигнала нСизвСстна CLA INS P1 P2 P3 (lgth = 0) SW1 = 0x9F SW2 = lgth1 ΠŸΠžΠ›Π£Π§Π˜Π’Π¬ ΠžΠ’Π’Π•Π’ CLA INS INS P1 P2 P3 (lgth2) ДАННЫЕ (Lengthleth1

Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ рСкомСндация

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

vs2015 + opencv3.3 + libfacedetectcnn распознаваниС Π»ΠΈΡ†

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

Android Drawable основы (4)

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

PAT A1099 ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° поиска (30 Π±Π°Π»Π»ΠΎΠ²)

A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties: The left subtree of a node contains only nodes with keys less than the node’s key. The righ.

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

Под Linux ΠΊΠ°ΠΌΠ΅Ρ€Π° относится ΠΊ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ V4L2, ΠΈ ΠΎΠ±Ρ‰Π΅Π΅ ядро ​​имССт связанныС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹, ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ нСпосрСдствСнно Π² слоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π· Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ оборудования; НапримСр / Dev / Vid.

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

django queryset values&values_list

Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ значСнийБписок словаря; Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ список значСнийБписок ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉοΌŒ values_list plus 1 Π—Π°Ρ‚Π΅ΠΌ Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ΡΡŒΠ‘ΠΏΠΈΡΠΎΠΊ цСнностСй # _obj = <'netStates':HostInfo['NetStates'],'ip':HostInfo['i.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ APDU Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ EToken

apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. Π€ΠΎΡ‚ΠΎ apdu ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, Π² Ρ‚ΠΎΠΌ числС сСмСйства JaCarta, Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ APDU Ρƒ Π½ΠΈΡ… всСх Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΈ ΠΈΡ… Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ описанному Π² стандартС ISO7816 Π½Π΅ соотвСтствуСт.

ЗапускаСм APDUExplorer, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π² спискС Ρ€ΠΈΠ΄Π΅Ρ€ΠΎΠ² Β«Aladdin Token JC 0Β» ΠΈΠ»ΠΈ Β«ARDS JaCarta 0Β» ΠΈΠ»ΠΈ Β«SafeNet Token JC 0Β» ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.
Π’Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· двоСточия Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ»ΠΈ всё слитно.

Для Π½Π°Ρ‡Π°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ, ΠΊΠ»ΠΈΠΊΠ½ΡƒΠ² Β«Check ATRΒ» ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½Π°.

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° β€” Π²Ρ‹Π±ΠΎΡ€ Π°ΠΏΠΏΠ»Π΅Ρ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ 3f00 (этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ СдинствСнноС ΠΎΠ±Ρ‰Π΅Π΅ Ρƒ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π»ΡŽΠ±Ρ‹Ρ… Π²Π΅Π½Π΄ΠΎΡ€ΠΎΠ²).
00:A4:00:04:00

Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список ΠΏΠ°ΠΏΠΎΠΊ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
80:01:01:00:04:09:02:00:00:CD (ΠΊΠΎΠΌΠ°Π½Π΄Π° являСтся константой Β«Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊΒ»).
Π”ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΎΡ‚Π²Π΅Ρ‚:
0a 02 66 66 0b 01 00 90 00

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎ счёту Π±Π°ΠΉΡ‚ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… β€” Π΄Π²Π° Π±Π°ΠΉΡ‚Π°, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΏΠ°ΠΏΠΊΠ° (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ Π² APDU всСгда Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π±Π°ΠΉΡ‚Π°).
И ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΏΠ°ΠΏΠΊΡƒ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ 66 66, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Aladdin AID directory.

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ² (Ρ‚ΠΎΠΆΠ΅ константа)
80:01:02:00:04:09:02:00:00:CD
Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ
0a 00 0b 01 00 90 00
ΠžΡ‚Π²Π΅Ρ‚ Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 01 β€” Ρ„Π°ΠΉΠ»ΠΎΠ² 00.

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ 66 66
00 A4 08 04 02 66 66 00
Π­Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° SELECT FILE, Π΅Ρ‘ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚: Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π±Π°ΠΉΡ‚Π° сама ΠΊΠΎΠΌΠ°Π½Π΄Π° 00 A4 08 04, Π΄Π°Π»Π΅Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ поля Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 02 Π±Π°ΠΉΡ‚Π°), Π·Π°Ρ‚Π΅ΠΌ сам ΠΏΡƒΡ‚ΡŒ (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 66 66) ΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ 00.

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 66 66
80:01:01:00:04:09:02:00:00:CD
Resv bytes:
0a 04 50 01 50 00 0b 01 00 90 00
Π’ ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01 (Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π°) ΡƒΠΊΠ°Π·Π°Π½ΠΎ 04, Ρ‚.Π΅. 4 Π±Π°ΠΉΡ‚Π° = Π΄Π²Π΅ ΠΏΠ°ΠΏΠΊΠΈ 50 01 ΠΈ 50 00, ΠΏΡ€ΠΈ этом 50 01 β€” слуТСбная, Π° 50 00 основная, называСмая PKCS#11 directory, Π³Π΄Π΅ хранятся всС Π΄Π°Π½Π½Ρ‹Π΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 66 66
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 00 0b 01 00 90 00
Π€Π°ΠΉΠ»ΠΎΠ² здСсь Π½Π΅Ρ‚.

Как ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ исслСдования Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΠ°ΠΏΠΎΠΊ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ 50 01 Π½Π΅Ρ‚, поэтому ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ 50 00
00 A4 08 04 04 66 66 50 00 00
Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список ΠΏΠ°ΠΏΠΎΠΊ
80:01:01:00:04:09:02:00:00:CD
ΠžΡ‚Π²Π΅Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠΈΡ‚ΡŒ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ хранится Π½Π° Ρ‚ΠΎΠΊΠ΅Π½Π΅.
Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ список Ρ„Π°ΠΉΠ»ΠΎΠ²
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 14 00 0f 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0a 0b 01 00 90 00
ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ 14 Ρ„Π°ΠΉΠ»ΠΎΠ² (ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01), Π΄Π°Π»Π΅Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 2 Π±Π°ΠΉΡ‚Π° это ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ², Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ΄Ρ‘Ρ‚ слуТСбная информация.

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΈΠ·ΡƒΡ‡Π°Π΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ всСгда пристутствуСт систСмная дирСктория b000 ΠΈ Π² Π½Π΅ΠΉ систСмный Ρ„Π°ΠΉΠ» 0002, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎ этому ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹.
ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ b0 00
00 A4 08 04 06 66 66 50 00 B0 00 00
ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список Ρ„Π°ΠΉΠ»ΠΎΠ²
80:01:02:00:04:09:02:00:00:CD
Resv bytes:
0a 02 00 02 0b 01 00 90 00
Π’ΠΈΠ΄ΠΈΠΌ Ρ„Π°ΠΉΠ» 00 02 (Π±Π°ΠΉΡ‚ Π² ΠΏΠΎΠ»Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° 01 β€” Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΠΌΠ΅Π½ΠΈ (ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ имя всСгда Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π±Π°ΠΉΡ‚Π°, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ поля β€” ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ², Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ„Π°ΠΉΠ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½, Ρ‡Ρ‚ΠΎ опрСдСляСм ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ поля 01).

Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» 0002 ΠΈΠ· B000 ΠΏΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΠΏΡƒΡ‚ΠΈ
00 A4 08 04 08 66 66 50 00 B0 00 00 02 00
Resv bytes:
01 01 02 02 02 00 02 03 02 00 10 04 08 00 ff 00 00 ff ff ff ff 05 00 90 00
Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π° здСсь ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: ΠΏΡ€Π΅Π°ΠΌΠ±ΡƒΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ‚ΠΈΠΏ Ρ„Π°ΠΉΠ»Π° β€” 1 Π±Π°ΠΉΡ‚ (02 Ρ„Π°ΠΉΠ», 01 ΠΏΠ°ΠΏΠΊΠ°), Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, имя Ρ„Π°ΠΉΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° β€” 2 Π±Π°ΠΉΡ‚Π°, Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ β€” 2 Π±Π°ΠΉΡ‚Π°, ΠΏΡ€Π°Π²Π° доступа β€” 1 Π±Π°ΠΉΡ‚ (00 β€” доступСн для всСх, 63 Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½ ΠΏΠΈΠ½ ΠΊΠΎΠ΄ΠΎΠΌ). Π”Π°Π»Π΅Π΅ ΠΈΠ΄Ρ‘Ρ‚ нСкая слуТСбная информация, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π°ΡΡΡ ΠΊΠΎΠ΄ΠΎΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния APDU ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ β€” 90 00.

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ», послСдниС Π΄Π²Π° Π±Π°ΠΉΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±ΡƒΡ„Π΅Ρ€Π° сколько Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ€Π°Π²Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Ρ„Π°ΠΉΠ»Π°).
80 18 00 00 04 0E 02 00 00 10
Resv bytes: (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ своё):
00 06 63 61 72 64 63 66 00 00 00 00 00 00 00 00 90 00

ΠΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π½Π° Π΅Ρ‚ΠΎΠΊΠ΅Π½Π΅ я здСсь Π½Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° состоит ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ вопрос-ΠΎΡ‚Π²Π΅Ρ‚ ΠΈ происходит Π² Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ (сущСствуСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Antitoken Π³Π΄Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° этих издСлиях Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ).
НСкоторыС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ JaCarta Π“ΠžΠ‘Π’-2 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ простой ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΏΠΈΠ½ ΠΊΠΎΠ΄Π°.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния APDU ΠΊΠΎΠΌΠ°Π½Π΄ Π»ΡŽΠ±Ρ‹Ρ… смарт-ΠΊΠ°Ρ€Ρ‚ ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° WinSCard.dll, запустив сниффСр, скомпилированный ΠΎΡ‚ΡΡŽΠ΄Π° (ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ экспСримСнты, этот сниффСр устанавливаСтся ΠΈ запускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄ Win XP).

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния APDU ΠΊΠΎΠΌΠ°Π½Π΄:
90 00 β€” OK
69 85 β€” Conditions of use not stisfied
63 00 β€” Authentication of host cryptogram failed (Ext auth)
64 00 β€” No specific diagnosis
67 00 β€” Wrong length in Lc
67 XX β€” Error, incorrect parameter P3 (ISO code)
68 81 β€” Logical channel not supported or is not active
69 82 β€” Security status not satisfied
69 83 β€” Secret code locked
69 85 β€” No currently selected EF, no command to monitor / no Transaction Manager File
6A 80 β€” The parameters in the data field are incorrect
6A 81 β€” Card is blocked or command not supported
6A 82 β€” File not found
6A 85 β€” Lc inconsistent with TLV structure
6A 86 β€” Incorrect P1 P2
6A 88 β€” Referenced data not found (Init upd)
6D 00 β€” Invalid instruction
6E 00 β€” Invalid class

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *