MagneSafe V5 COMMUNICATION REFERENCE MANUAL PART NUMBER 99875475-10 NOVEMBER 2012 REGISTERED TO ISO 9001:2008 1710 Apollo Court
MagneSafe V5 2 Annex A. Note that data supplied to the MAC algorithm should NOT be converted to the ASCII-Hex, rather it should be supplied in it
MagneSafe V5 92 01 02 05 85 ; Set to read only Tracks 1 & 2 Request : CMND=01, LEN=02, DATA=05 85 Response : RC= 00, LEN=00, DATA=
Appendix D. Command Examples 93 Track 1 Encrypted = 25 42 35 34 35 32 33 30 30 35 35 31 32 32 37 31 38 39 5E 48 4F 47 41 4E 2F 50 41 55 4C 20 20
MagneSafe V5 94 01 02 02 02 ; Set Polling Interval to 2 ms Request : CMND=01, LEN=02, DATA=02 02 Response : RC= 00, LEN=00, DATA= 00
Appendix D. Command Examples 95 00 01 20 ; Get current Pre Track String Request : CMND=00, LEN=01, DATA=20 Response : RC= 00, LEN=0
MagneSafe V5 96 00 01 19 ; Get current CRC Flags (should return 03) Request : CMND=00, LEN=01, DATA=19 Response : RC= 00, LEN=01, D
Appendix D. Command Examples 97 |010002AC501724CC063E08E2C52B53793DD53167753CDC3CE8EBC5C3555E30B68B73E4DB8912E6372CA772E723EFEAADC02F02048C76 |B0
MagneSafe V5 98 840 00 00 00 00 00 00 00 00 00 00 00 00 3C 25 1F 36 According to the USB MagneSafe Swipe Reader Technical Reference Manual th
Appendix D. Command Examples 99 119 - 230 Track 2 encrypted data (37 bytes, not encrypted, no keys yet) 3B 35 34 35 32 33 3
MagneSafe V5 100 00 00 00 00 00 00 00 00 00 00 00 00 844 - 851 Encrypted Session ID (user didn't load, all zeroes)
Appendix D. Command Examples 101 100 63000050000445=000000000000?|0200|%B54523005512271 150 89^HOGAN/PAUL ^08043210000000725000000?|;5
3 SECTION 2. COMMUNICATIONS The USB readers covered in this document conform to the USB specification revision 1.1 and to the Human Interface Devi
MagneSafe V5 102 |0000000000000000 | |6F36 | |1000 Note: The Device Serial Number field is empty because the DSN has not been set.
Appendix D. Command Examples 103 02 00 ; Reset so changes take effect Request : CMND=02, LEN=00, DATA= Response : RC= 00, LEN=0
MagneSafe V5 104 Response : RC= 00, LEN=0A, DATA=FF FF 98 76 54 32 10 E0 00 02 15 00 ; Get current Security Level (Should be 04) Requ
Appendix D. Command Examples 105 Example 9: Configuring a reader after encryption is enabled (Security Level 3 or 4). In this example the reader
MagneSafe V5 106 00 01 20 ; Get current Pre Track String Request : CMND=00, LEN=01, DATA=20 Response : RC= 00, LEN=00, DATA= ; For
Appendix D. Command Examples 107 ; MAC is first four bytes: D1538615 01 09 2C 31303030 D1538615 ; Set to "1000" Request : CMN
MagneSafe V5 108 |------- Current KSN -------| |---- Challenge 1 ----| |---- Challenge 2 ----| Response :
Appendix D. Command Examples 109 ; Build a Deactivate Authenticated Mode command (cmd, len, cryptogram) ; 12 08 XXXXXXXXXXXXXXXX ; ; The clear
MagneSafe V5 110 480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 06 FF FF 98 76 54 500 32 10 E0 00 08 3C 25 1F 25 42 35 34 35 32 30 30 30 30
Appendix D. Command Examples 111 1 Track 2 decode status 00 2 Track 3 decode status
MagneSafe V5 4 MAGNETIC STRIPE READER USAGE PAGE (HID) Magnetic Stripe Reader usage page 0xFF00: Usage ID (Hex) Usage Name Usage Type Report Type
MagneSafe V5 112 25 42 35 34 35 32 30 30 30 30 30 30 30 30 37 31 38 39 5E 48 4F 47 41 4E 2F 50 41 55 4C 20 20
Appendix D. Command Examples 113 As Track 1 Encrypted Data Length cites 64 bytes only, we can eliminate the trailing blocks:
MagneSafe V5 114 Ordering the decrypted blocks 1st to last we get: HEX ASCII 2542353435323330 %B54523
Appendix D. Command Examples 115 Continue on in reverse block order: F0FEAE7908801093 TDES Dec with 27F66D5244FF621E AA6F6120EDEB4
MagneSafe V5 116 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 As MagnePrint Data Length cites 56 bytes only, we can elimin
Appendix D. Command Examples 117 BEA104C4EF584ED5 CE07C0D55B810000 We can ignore the last four bytes because the M
MagneSafe V5 118 [P35] [Encrypted Session ID] [P35] [DUKPT serial number/counter] [P35] [Clear Text CRC] [P35] [Encrypted CRC] [P35] [Format Code]
Appendix D. Command Examples 119 Note that all other fields are represented as Hexadecimal data, that is, two ASCII characters together giv
MagneSafe V5 120 26D9182EC11353C0 TDES Dec with 27F66D5244FF621E AA6F6120EDEB427F gets BF110311E7D5453A XOR 8728
Appendix D. Command Examples 121 F0FEAE7908801093 TDES Dec with 27F66D5244FF621E AA6F6120EDEB427F gets 47796C85E4CE30FF
Section 2. Communications 5 REPORT DESCRIPTOR (HID) The Report Descriptor is made available to the hosting system during USB enumeration. The de
MagneSafe V5 122 We can ignore the last byte because it is hex 00 and falls after the End Sentinel. ASCII string "+
Appendix D. Command Examples 123 010002D4B69CD2C0 C7617D0463316E85 3F9CB00FE2C5A355 6E9CE5A9B2E6D
MagneSafe V5 124
125 APPENDIX E. IDENTIFYING ISO/ABA AND AAMVA CARDS ISO/ABA FINANCIAL CARDS 1. If low level decoding algorithm finds data for available tracks to
MagneSafe V5 126 AAMVA DRIVER LICENSES 1. If the card reader reads three tracks of data and Track 1 is formatted per ISO Track 1 rules, Track 2 i
127 APPENDIX F. LIST OF PROPERTIES This list shows all of the properties that are supported among the MagneSafe reader families. The properties a
MagneSafe V5 128 Properties Default Dynamag Dynamo LCD BulleT SPP BulleT KB Flash iDynamo U-Finity Insert UART RS-232 HID KB 0x14 Track Data
Appendix F. List of Properties 129 Properties Default Dynamag Dynamo LCD BulleT SPP BulleT KB Flash iDynamo U-Finity Insert UART RS-232 HID
MagneSafe V5 130 Properties Default Dynamag Dynamo LCD BulleT SPP BulleT KB Flash iDynamo U-Finity Insert UART RS-232 HID KB 0x44 Hardware Er
MagneSafe V5 6 Item Value (Hex) Report Size (8) 75 08 Usage (MagnePrint data length) 09 2B Report Count (1) 95 01 Input (Data, Variable, Absolu
Section 2. Communications 7 Item Value (Hex) Usage (Track 2 Masked data length) 09 52 Usage (Track 3 Masked data length) 09 53 Usage (MagnePrin
MagneSafe V5 8 Item Value(Hex) Report Count (8) 95 08 Input (Data, Variable, Absolute) 81 02 Report Count (1) 95 01 Report Size (8) 75 08 Input (C
Section 2. Communications 9 Card data is only sent to the host on the Interrupt In pipe using an Input Report. The reader will send only one Inp
MagneSafe V5 10 Track 1 Decode Status Bits 7-1 0 Value Reserved Error This is a one-byte value, which indicates the status of decoding track 1.
Section 2. Communications 11 Track 3 Encrypted Data Length This one-byte value indicates the number of bytes in the Track 3 encrypted data field.
ii Copyright© 2001-2013 MagTek®, Inc. Printed in the United States of America Information in this document is subject to change without notice. N
MagneSafe V5 12 may vary. Therefore, the Input Report always contains the maximum amount of bytes that can be encoded on the card and the number
Section 2. Communications 13 MagnePrint Status This Binary field represents 32 bits of MagnePrint status information. Each character represents
MagneSafe V5 14 Encrypted MagnePrint Data This 128 byte Binary field contains the MagnePrint data. Only the number of bytes specified in the Magn
Section 2. Communications 15 masked; all other card types are either entirely masked or sent totally in the clear. There is a separate masking p
MagneSafe V5 16 For an AAMVA card, the DL/ID# is masked as follows: • The specified number of initial characters are sent unmasked. The specifi
Section 2. Communications 17 MagneSafe Version Number This eight byte field contains the MagneSafe Version Number with at least one terminating
MagneSafe V5 18 For the KB USB model, all data will be sent in upper case regardless of the state of the caps lock key on the keyboard. If no dat
Section 2. Communications 19 Label Property ID P-Value Description Default 0x1E P30 Pre card string 0 (0x00) 0x1F P31 Post card string 0 (0x00)
MagneSafe V5 20 Notes: (1) Encryption will only be performed when Encryption Enabled (bit 2) and Initial DUKPT key Injected (bit 1) are set. Other
Section 2. Communications 21 Low Level Communications It is strongly recommended that application software developers become familiar with the HI
iii LIMITED WARRANTY MagTek warrants that the products sold pursuant to this Agreement will perform in accordance with MagTek’s published specifica
MagneSafe V5 22 Privileged Commands Some commands are, for security purposes, privileged. These commands are: 1. Set Property 2. Reset Device*
Section 2. Communications 23 Value Command Number Description 0x28 Power Down Command (Wireless USB Reader Only) Powers down the MSR circuits (if
MagneSafe V5 24 Get Property Request Data: Data Offset Value 0 Property ID Get Property Response Data: Data Offset Value 0 – n Property Value S
Section 2. Communications 25 Property ID P-Value Property Description HID mode KB mode Other 0x05 0x05 0x05 Track ID Enable Track enable / ID e
MagneSafe V5 26 Property ID P-Value Property Description HID mode KB mode Other - 0x2F 0x2F P47 ES Track 3 End sentinel char for track 3 - 0x30
Section 2. Communications 27 to the host using a USB cable, as is the case when doing firmware updates, this property will return the software ID
MagneSafe V5 28 Polling Interval Property (USB) Property ID: 0x02 Property Type: Byte Length: 1 byte Get Property: Yes Set Property: Yes Defa
Section 2. Communications 29 Device Serial Num Property Property ID: 0x03 Property Type: String Length: 0 – 15 bytes Get Property: Yes Set Pr
MagneSafe V5 30 Example Get MagneSafe Version Number property Request (Hex): Cmd Num Data Len Prp ID 00 01 04 Example Get MagneSafe Version Numbe
Section 2. Communications 31 Example Get Track ID Enable property Response (Hex): Result Code Data Len Prp Value 00 01 95 ISO Track Mask Propert
iv FCC WARNING STATEMENT This equipment has been tested and was found to comply with the limits for a Class B digital device pursuant to Part 15 of
MagneSafe V5 32 o The PAN will be masked according to the rules of this property (the Send Clear AAMVA Card Data property is ignored) o The char
Section 2. Communications 33 Example Set Max Packet Size property Response (Hex): Result Code Data Len Data 00 00 Example Get Max Packet Size p
MagneSafe V5 34 Bit Description 7 6 5 4 3 2 1 0 0 0 0 Baud Rate 2400 0 0 1 Baud Rate 4800 0 1 0 Baud Rate 9600 0 1 1 Baud Rat
Section 2. Communications 35 Bluetooth Disconnect Message Property (BulleT Only) Property ID: 0x0D Property Type: String Length: 7 bytes Get P
MagneSafe V5 36 Example Set Track Data Transmission Delay property Response (Hex): Result Code Data Len Data 00 00 Example Get Track Data Transm
Section 2. Communications 37 This property should be the first property changed so that all other communications will not conflict with other pai
MagneSafe V5 38 Interface Type Property Property ID: 0x10 Property Type: Byte Length: 1 byte Get Property: Yes Set Property: Yes Default Valu
Section 2. Communications 39 Track Data Send Flags Property (KB, BulleT SPP, Bullet KB, UART, RS-232) Property ID: 0x14 Property Type: Byte Len
MagneSafe V5 40 When minimizing key reports, the minimum number of key reports is sent to represent each character. When the ASCII-to-keypress c
Section 2. Communications 41 This property is stored in non-volatile memory, so it will persist when the unit is power cycled. When this proper
v TABLE OF CONTENTS SECTION 1. SECURITY ...
MagneSafe V5 42 Example Get Active Keymap property Response (Hex): Result Code Data Len Prp Value 00 01 00 ASCII to Keypress Conversion Type Pro
Section 2. Communications 43 Example Set ASCII To Keypress Conversion Type property Response (Hex): Result Code Data Len Data 00 00 Example Get
MagneSafe V5 44 Keyboard SureSwipe Flag Property (KB, UART, RS-232) Property ID: 0x1A Property Type: Byte Length: 1 byte Get Property: Yes Set
Section 2. Communications 45 This property is stored in non-volatile memory, so it will persist when the unit is power cycled. When this proper
MagneSafe V5 46 ES JIS Type 2 Property Property ID: 0x1D Property Type: Byte Length: 1 byte Get Property: Yes Set Property: Yes Default Value
Section 2. Communications 47 Post Card String Property (KB, BulleT, UART, RS-232) Property ID: 0x1F Property Type: String Length: 0 – 7 bytes
MagneSafe V5 48 Example Set Pre Track String property Response (Hex): Result Code Data Len Data 00 00 Example Get Pre Track String property Req
Section 2. Communications 49 Termination String Property (KB, BulleT, UART, RS-232) Property ID: 0x22 Property Type: String Length: 0-7 bytes
MagneSafe V5 50 SS Track 2 ISO ABA Property (KB, BulleT, UART, RS-232) Property ID: 0x25 Property Type: Byte Length: 1 byte Get Property: Yes
Section 2. Communications 51 SS Track 2 7bits Property (KB, BulleT, UART, RS-232) Property ID: 0x28 Property Type: Byte Length: 1 byte Get Pro
vi Command Number ... 22 D
MagneSafe V5 52 This property is stored in non-volatile memory, so it will persist when the unit is power cycled. When this property is changed,
Section 2. Communications 53 ES Track 2 Property (KB, BulleT, UART, RS-232) Property ID: 0x2E Property Type: Byte Length: 1 byte Get Property:
MagneSafe V5 54 NOTE: If this property is set to 0x01 and the Format Code is currently “0001”, the Format Code will be changed to “0002”. This pr
Section 2. Communications 55 This property is stored in non-volatile memory, so it will persist when the unit is power cycled. When this prope
MagneSafe V5 56 Send Clear AAMVA Card Data Property Property ID: 0x34 Property Type: Byte Length: 1 byte Get Property: Yes Set Property: Yes
Section 2. Communications 57 This property controls whether, when the reader is configured with Interface Type HID and at Security Level 2, the r
MagneSafe V5 58 wireless reader. To get the software ID from the dongle use the “SOFTWARE ID” property. Example Get Software ID 2 property Reque
Section 2. Communications 59 Example Set Inter-Key Delay property Response (Hex): Result Code Data Len Data 00 00 Example Get Inter-Key Delay p
MagneSafe V5 60 Example Reset Device Response (Hex): Result Code Data Len Data 00 00 Get Keymap Item Command (KB) Command number: 0x03 Descript
Section 2. Communications 61 Response Data: Offset Field Name Description 0 Key Usage ID The value of the USB key usage ID that is mapped to the
vii Card Inserted Property (Insert Reader Only) ... 55 Send Clear
MagneSafe V5 62 Starting with the firmware release with software ID 21042812F01, when both the key usage ID and the key modifier byte are set to
Section 2. Communications 63 Save Custom Keymap Command (KB) Command number: 0x05 Description: This command is used to save the active key map
MagneSafe V5 64 Example Get DUKPT KSN and Counter Request (Hex): Cmd Num Data Len Data 09 00 None Example Get DUKPT KSN and Counter Response (He
Section 2. Communications 65 Activate Authenticated Mode Command Command number: 0x10 Description: This command is used to Activate the Authent
MagneSafe V5 66 Response Data: Offset Field Name Description 0 Current Key Serial Number This eighty-bit field includes the Initial Key Serial Num
Section 2. Communications 67 If the reader decrypts the CR response correctly the Activate Authenticated Mode has succeeded. If the reader can n
MagneSafe V5 68 behavior is intended to discourage denial of service attacks. Exiting the Authenticated Mode by timeout or card swipe always incr
Section 2. Communications 69 Data Structure: Request Data: None Response Data: The first byte specifies the current state as follows: Current Re
MagneSafe V5 70 Set Security Level Command Command number: 0x15 Description: This command is used to set the Security Level (see Section 1). Th
Section 2. Communications 71 Get Transaction Count Command (Flash Reader Only) Command number: 0x16 Description: This command is used to get th
viii
MagneSafe V5 72 Example Response Read Oldest Transaction (Hex): Result Code Data Len Data 00 00 Erase Oldest Transaction Command (Flash Reader O
Section 2. Communications 73 Request Data: None Response Data: Offset Field Name Description 0 Device Serial # 16 bytes, if DSN is shorter th
MagneSafe V5 74 Get Battery Status Command (Wireless USB Reader Only) Command number: 0x29 Description: This command is used to get the status o
Section 2. Communications 75 DSN – Device Serial Number, this data field will always be fixed at 16 bytes. If the serial number is less than 15
MagneSafe V5 76
77 SECTION 3. DEMO PROGRAM The demo program, which is written in Visual Basic, can be used to do the following: • Send command requests to the re
MagneSafe V5 78 • To send commands to the reader, click the Send Commands tab (if not already selected). • Enter a command in the Message edit b
79 APPENDIX A. KEYBOARD USAGE ID DEFINITIONS This appendix is from the following document found on www.usb.org: Universal Serial Bus HID Usage Ta
MagneSafe V5 80 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 12 0C Keyboard i and I 24 √ √ √ 4
Appendix A. Keyboard Usage 81 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 52 34 Keyboard ‘ and “4
1 SECTION 1. SECURITY The readers in the family are intended to be secure readers. Security features include: • Supplies 54 byte MagnePrint valu
MagneSafe V5 82 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 92 5C Keypad 4 and Left Arrow 92 √
Appendix A. Keyboard Usage 83 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 132 84 Keyboard Locking
MagneSafe V5 84 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 182 B6 Keypad ( 183 B7 Key
Appendix A. Keyboard Usage 85 Usage ID (Dec) Usage ID (Hex) Usage Name Ref: Typical AT-101 Position PC-AT Mac UNIX Boot 222-223 DE-DF Reserved
MagneSafe V5 86 29. Used on AS/400 keyboards. 30. Defines the Katakana key for Japanese USB word-processing keyboards. 31. Defines the Hiragana
87 APPENDIX B. MODIFIER BYTE DEFINITIONS This appendix is from the following document found on www.usb.org: Device Class Definition for Human Int
MagneSafe V5 88
89 APPENDIX C. GUIDE ON DECRYPTING DATA The key that was used to encrypt each data block can be determined by using the Key Serial Number field al
MagneSafe V5 90
91 APPENDIX D. COMMAND EXAMPLES This Appendix gives examples of command sequences and cryptographic operations. The intent is to clarify any ambi
Comentários a estes Manuais