Challenge Response Block
Jump to navigation
Jump to search
Smart Device Protocol Block | |
---|---|
Name | CHALLENGE-RESPONSE |
BType | 0xEF |
BData Count | 2 |
Sent By | Device |
This block is sent by the device in response to the Challenge Code block to authenticate itself to the tagger.
- BData0—Response code (most significant byte)
- BData1—Response code (least significant byte)
The following code will generate the correct response for a given challenge code:
shifted = challenge << 1; shifted |= (challenge & 0x8) >> 3 ^ (challenge & 0x1000) >> 12 ^ (challenge & 0x4000) >> 14 ^ (challenge & 0x8000) >> 15; response = (shifted & 0xf) << 12 | (shifted & 0xf0) << 4 | (shifted & 0xf00) >> 4 | (shifted & 0xf000) >> 12;