User guide

ACR83 Reference Manual info@acs.com.hk
Version 1.05
www.acs.com.hk
Page 36 of 49
And then, handle the New PIN.
New PIN (Byte)
Original
00 24 00 01 12 08 06 12 34 56 30 30 30 30 09 03 30 30 30 30
30 30 30h
Input 12 34 56 78 90h
Result PIN
00 24 00 01 12 08 06 12 34 56 30 30 30 30 09 0A 12 34 56 78
90 30 30h
The whole APDU after the format will be:
00 24 00 01 12 08 06 12 34 56 30 30 30 30 09 0A 12 34 56 78 90 30 30h
12.13. Modification Example 5
BConfirmPIN Bit1 = 1
(Current/Old PIN entry requested)
System unit is byte.
APDU Command
SpeOffsetOld
Offset SpePINPos
SpePINLen
APDU Header
APDU
Lc
Maybe not Offset SpePINPos Old PIN
CLA INS P1 P2 Lc
Exists
Offset
SpePINLenPos
SpePINSize
Not used
field
Old PIN
SpeOffsetNew
Offset SpePINPos
SpePINLen
Maybe not Offset SpePINPos New PIN
Exists
Offset
SpePINLenPos
SpePINSize
Not used field New PIN
Check points in implementing the PIN Modification Data Structure:
SpePINLen + SpeOffsetNew + SpePINPos must be equal to Lc
SpeOffsetNew >= SpeOffsetOld + SpePINPos + SpePINLen
SpePINPos must be equal or larger than SpePINLenPos + SpePINSize
SpePINLenSpePINPos must be larger or equal to SpePinMax (if BCD, need multiple 4)
SpePinMax must be equal or larger than SpePinMin
SpePinMax cannot be larger than 16 digits because LCD one row only have 16 digits
SpePinMin must be equal or larger than 1
abPINApdu = 00 24 00 01 12 2F 0A A6 30 30 30 30 30 30 2E FB C7 30 30 30 30 30 30h
bConfirmPIN = 03h (if bConfirmPIN = 03h, bNumberMessage must equal to 03h or FFh)