Ich habe SPR332 Pinpad Reader und ich muss Programm auf Java schreiben, die Pin von Bankkarten verifizieren.Verify Pin mit Java Returns 6a86
Das ist also mein PINverifyStructure:
bTimeOut = 0х00
bTimeOut2 = 0х00
bmFormatString = 0x82
bmPINBlockString = 0x47
bmPINLengthFormat = 0x04
wPINMaxExtraDigitMax = 0x0c
wPINMaxExtraDigitMin = 0x00
bEntryValidationCondition = 0x02
bNumberMessage = 0x01
wLangId = 0x09 0x04
bMsgIndex = 0x00
bTeoPrologue = 0x00 0x00 0x00
ulDataLength = apduLength 0x00 0x00 0x00
Überprüfen APDU-Befehl ist:
CLA = 0x00
INS = 0x20
P1 = 0x00
P2 = 0x00
LC = 0x08
0x20
0xff
0xff
0xff
0xff
0xff
0xff
0xff
Danach i Stift auf pinpad eingeben, dann erhalten i APDU Antwort 6A86. In der APDU-Antwortspezifikation bedeutet dies "Falscher P1- oder P2-Parameter".
Bitte, Hilfe, was ist falsch mit meinem Befehl?
Ich änderte P2 auf 0x01, Antwort die gleiche 6A86
1) Holen Sie sich die Verify-Befehl im direkten Modus arbeiten. 2) Lesen Sie das Handbuch des Lesers sorgfältig, wie Sie diese APDU umhüllen, damit der Leser die eingegebene PIN eingeben kann. (Dies kann ein VERIFY-Befehl sein, könnte aber etwas völlig anderes sein). 3) Versuchen Sie dann, eine APDU-Modifikation durch den Leser zu erreichen. – guidot
1) Direkter Modus gibt die gleiche Antwort ** 6a81 ** 2) Ich habe kein Handbuch von Identive SPR332 Pinpad und Google-Suche war nicht erfolgreich –