Modification example 1 – ACS ACR83 PINeasy Smart Card Reader User Manual
Page 27

ACR83 – Reference Manual
Version 1.05
www.acs.com.hk
Page 27 of 49
•
SpePINLen – SpePINPos 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
12.9. Modification Example 1
Modification bConfirmPIN Bit1 = 0
(No current/Old PIN entry requested)
System unit is bit.
APDU Command
SpeOffsetNew
SpePINLen
APDU Header
APDU
Lc
Maybe not
Offset SpePINPos
PIN
CLA INS P1 P2
Lc
Exists
Offset
SpePINLenPos SpePINSize
Not used field/Does
not exist
PIN
Check points in implementing the PIN Modification Data Structure:
•
SpePINLen + SpeOffsetNew must be equal to Lc
•
SpePINPos must be equal or larger than SpePINLenPos + SpePINSize
•
SpePINLen – SpePINPos 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 0A 20 57 30 30 30 30 30 30 30 30h
bConfirmPIN = 00h (if bConfirmPIN = 00h, the bNumberMessage must equal to 01h, 00h)
Enter the New PIN once.
bmFormatString=39h
SpePinPos=7 bits because bmFormatString bit 7 = 0
SpeLeftRight=Left
SpePINTyp=BCD
bmPINBlockString=49h
SpePINSize=4 bits
SpePINLen=9 bytes
bmPINLengthFormat=02h
SpePINLenPos=2 bits