]>
Commit | Line | Data |
---|---|---|
bd20f8f4 | 1 | //----------------------------------------------------------------------------- |
d19929cb | 2 | // (c) 2012 Roel Verdult |
bd20f8f4 | 3 | // |
4 | // This code is licensed to you under the terms of the GNU GPL, version 2 or, | |
5 | // at your option, any later version. See the LICENSE.txt file for the text of | |
6 | // the license. | |
7 | //----------------------------------------------------------------------------- | |
d19929cb | 8 | // Hitag2 type prototyping |
bd20f8f4 | 9 | //----------------------------------------------------------------------------- |
0db11b71 | 10 | // HitagS added |
11 | //----------------------------------------------------------------------------- | |
2e68bd40 | 12 | |
d19929cb | 13 | #ifndef _HITAG2_H_ |
14 | #define _HITAG2_H_ | |
e30c654b | 15 | |
d19929cb | 16 | typedef enum { |
0db11b71 | 17 | RHTSF_CHALLENGE = 01, |
18 | RHTSF_KEY = 02, | |
19 | WHTSF_CHALLENGE = 03, | |
20 | WHTSF_KEY = 04, | |
bde10a50 | 21 | RHT2F_PASSWORD = 21, |
22 | RHT2F_AUTHENTICATE = 22, | |
f71f4deb | 23 | RHT2F_CRYPTO = 23, |
24 | RHT2F_TEST_AUTH_ATTEMPTS = 25, | |
d19929cb | 25 | } hitag_function; |
2e68bd40 | 26 | |
d19929cb | 27 | typedef struct { |
28 | byte_t password[4]; | |
29 | } PACKED rht2d_password; | |
30 | ||
31 | typedef struct { | |
32 | byte_t NrAr[8]; | |
0db11b71 | 33 | byte_t data[4]; |
d19929cb | 34 | } PACKED rht2d_authenticate; |
35 | ||
bde10a50 | 36 | typedef struct { |
0db11b71 | 37 | byte_t key[6]; |
38 | byte_t data[4]; | |
bde10a50 | 39 | } PACKED rht2d_crypto; |
40 | ||
d19929cb | 41 | typedef union { |
42 | rht2d_password pwd; | |
43 | rht2d_authenticate auth; | |
f71f4deb | 44 | rht2d_crypto crypto; |
d19929cb | 45 | } hitag_data; |
e30c654b | 46 | |
47 | #endif |