#include "crapto1.h"\r
#include "mifareutil.h"\r
\r
+int MF_DBGLEVEL = MF_DBG_ALL;\r
+\r
uint8_t* mifare_get_bigbufptr(void) {\r
return (((uint8_t *)BigBuf) + 3560); // was 3560 - tied to other size changes\r
}\r
\r
// Transmit MIFARE_CLASSIC_AUTH\r
len = mifare_sendcmd_short(pcs, isNested, 0x60 + (keyType & 0x01), blockNo, receivedAnswer);\r
-// Dbprintf("rand nonce len: %x", len); \r
+ if (MF_DBGLEVEL >= 4) Dbprintf("rand nonce len: %x", len); \r
if (len != 4) return 1;\r
\r
ar[0] = 0x55;\r
}\r
\r
// some statistic\r
- if (!ntptr)\r
+ if (!ntptr && (MF_DBGLEVEL >= 3))\r
Dbprintf("auth uid: %08x nt: %08x", uid, nt); \r
\r
// save Nt\r
len = ReaderReceive(receivedAnswer);\r
if (!len)\r
{\r
- Dbprintf("Authentication failed. Card timeout.");\r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Authentication failed. Card timeout.");\r
return 2;\r
}\r
\r
ntpp = prng_successor(nt, 32) ^ crypto1_word(pcs, 0,0);\r
\r
if (ntpp != bytes_to_num(tmp4, 4)) {\r
- Dbprintf("Authentication failed. Error card response.");\r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Authentication failed. Error card response.");\r
return 3;\r
}\r
\r
// command MIFARE_CLASSIC_READBLOCK\r
len = mifare_sendcmd_short(pcs, 1, 0x30, blockNo, receivedAnswer);\r
if (len == 1) {\r
- Dbprintf("Cmd Error: %02x", receivedAnswer[0]); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Cmd Error: %02x", receivedAnswer[0]); \r
return 1;\r
}\r
if (len != 18) {\r
- Dbprintf("Cmd Error: card timeout. len: %x", len); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Cmd Error: card timeout. len: %x", len); \r
return 2;\r
}\r
\r
memcpy(bt, receivedAnswer + 16, 2);\r
AppendCrc14443a(receivedAnswer, 16);\r
if (bt[0] != receivedAnswer[16] || bt[1] != receivedAnswer[17]) {\r
- Dbprintf("Cmd CRC response error."); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Cmd CRC response error."); \r
return 3;\r
}\r
\r
len = mifare_sendcmd_short(pcs, 1, 0xA0, blockNo, receivedAnswer);\r
\r
if ((len != 1) || (receivedAnswer[0] != 0x0A)) { // 0x0a - ACK\r
- Dbprintf("Cmd Error: %02x", receivedAnswer[0]); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Cmd Error: %02x", receivedAnswer[0]); \r
return 1;\r
}\r
\r
res |= (crypto1_bit(pcs, 0, 0) ^ BIT(receivedAnswer[0], i)) << i;\r
\r
if ((len != 1) || (res != 0x0A)) {\r
- Dbprintf("Cmd send data2 Error: %02x", res); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("Cmd send data2 Error: %02x", res); \r
return 2;\r
}\r
\r
\r
len = mifare_sendcmd_short(pcs, 1, 0x50, 0x00, receivedAnswer);\r
if (len != 0) {\r
- Dbprintf("halt error. response len: %x", len); \r
+ if (MF_DBGLEVEL >= 1) Dbprintf("halt error. response len: %x", len); \r
return 1;\r
}\r
\r
return 0;\r
}\r
+\r