X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/7c91c8bf24e2879751a23232b84077f459ee8789..5e1de05ab0119304b78f810e09e6407ebe1a32ca:/common/protocols.h?ds=sidebyside diff --git a/common/protocols.h b/common/protocols.h index 6ac6bc78..96a4b178 100644 --- a/common/protocols.h +++ b/common/protocols.h @@ -1,6 +1,11 @@ #ifndef PROTOCOLS_H #define PROTOCOLS_H +#include +#include +#include + + //The following data is taken from http://www.proxmark.org/forum/viewtopic.php?pid=13501#p13501 /* ISO14443A (usually NFC tags) @@ -389,5 +394,27 @@ void getMemConfig(uint8_t mem_cfg, uint8_t chip_cfg, uint8_t *max_blk, uint8_t * uint32_t GetT55xxClockBit(uint32_t clock); +// iclass / picopass chip config structures and shared routines +typedef struct { + uint8_t app_limit; //[8] + uint8_t otp[2]; //[9-10] + uint8_t block_writelock;//[11] + uint8_t chip_config; //[12] + uint8_t mem_config; //[13] + uint8_t eas; //[14] + uint8_t fuses; //[15] +} picopass_conf_block; + + +typedef struct { + uint8_t csn[8]; + picopass_conf_block conf; + uint8_t epurse[8]; + uint8_t key_d[8]; + uint8_t key_c[8]; + uint8_t app_issuer_area[8]; +} picopass_hdr; + + #endif // PROTOCOLS_H