mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-08-14 02:26:59 -07:00
Adding native support for HID long-format
Removal of "l" flag for long writes; not needed anymore. Added HID Corporate 1000 48-bit format to known formats list Simulation not yet updated; need to modify ARM commands to support it Completed parity support on all included HID formats
This commit is contained in:
parent
315e18e66c
commit
1ee624fe6a
2 changed files with 203 additions and 146 deletions
|
@ -14,7 +14,7 @@
|
|||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
// Structure for unpacked "short" (<38 bits) HID Prox tags.
|
||||
// Structure for unpacked HID Prox tags.
|
||||
typedef struct {
|
||||
// Format length, in bits.
|
||||
uint8_t fmtLen;
|
||||
|
@ -23,20 +23,21 @@ typedef struct {
|
|||
uint32_t fc;
|
||||
|
||||
// Card number.
|
||||
uint32_t cardnum;
|
||||
uint64_t cardnum;
|
||||
|
||||
// Parity validity.
|
||||
//
|
||||
// When used with pack_short_hid, this determines if we should calculate
|
||||
// When used with pack_hid, this determines if we should calculate
|
||||
// parity values for the ID.
|
||||
//
|
||||
// When used with unpack_short_hid, this indicates if we got valid parity
|
||||
// When used with unpack_hid, this indicates if we got valid parity
|
||||
// values for the ID.
|
||||
bool parityValid;
|
||||
} short_hid_info;
|
||||
} hid_info;
|
||||
|
||||
bool pack_hid(/* out */ uint32_t *hi2, /* out */ uint32_t *hi, /* out */ uint32_t *lo, /* in */ const hid_info *info);
|
||||
bool unpack_hid(hid_info* out, uint32_t hi2, uint32_t hi, uint32_t lo);
|
||||
|
||||
bool pack_short_hid(/* out */ uint32_t *hi, /* out */ uint32_t *lo, /* in */ const short_hid_info *info);
|
||||
bool unpack_short_hid(short_hid_info* out, uint32_t hi, uint32_t lo);
|
||||
|
||||
int CmdLFHID(const char *Cmd);
|
||||
int CmdFSKdemodHID(const char *Cmd);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue