//-----------------------------------------------------------------------------\r
// High frequency ISO14443A commands\r
//-----------------------------------------------------------------------------\r
+#ifndef __MIFARE_HOST_H\r
+#define __MIFARE_HOST_H\r
\r
#include <stdio.h>\r
#include <stdlib.h>\r
#include <unistd.h>\r
#include <string.h>\r
#include <pthread.h>\r
-#include "proxmark3.h"\r
-//#include "radixsort.h"\r
-#include <time.h>\r
+\r
+#include "proxmark3.h" // time_t\r
#include "common.h"\r
#include "cmdmain.h"\r
#include "ui.h"\r
#include "data.h"\r
#include "util.h"\r
-//#include "nonce2key/nonce2key.h"\r
#include "nonce2key/crapto1.h"\r
#include "iso14443crc.h"\r
#include "protocols.h"\r
\r
int mfnested(uint8_t blockNo, uint8_t keyType, uint8_t * key, uint8_t trgBlockNo, uint8_t trgKeyType, uint8_t * ResultKeys, bool calibrate);\r
int mfCheckKeys (uint8_t blockNo, uint8_t keyType, bool clear_trace, uint8_t keycnt, uint8_t * keyBlock, uint64_t * key);\r
+int mfKeyBrute(uint8_t blockNo, uint8_t keyType, uint8_t *key, uint64_t *resultkey);\r
\r
int mfEmlGetMem(uint8_t *data, int blockNum, int blocksCount);\r
int mfEmlSetMem(uint8_t *data, int blockNum, int blocksCount);\r
int loadTraceCard(uint8_t *tuid, uint8_t uidlen);\r
int saveTraceCard(void);\r
int tryDecryptWord(uint32_t nt, uint32_t ar_enc, uint32_t at_enc, uint8_t *data, int len);\r
+#endif
\ No newline at end of file