This commit is contained in:
iceman1001 2020-09-07 10:39:15 +02:00
commit 5d357a6039
13 changed files with 30 additions and 30 deletions

View file

@ -101,7 +101,7 @@ int gLow = 0;
static void init_tag(void) { static void init_tag(void) {
// iceman: memset(tag.sectors, 0x00, sizeof)); // iceman: memset(tag.sectors, 0x00, sizeof));
// initialize global tag structure // initialize global tag structure
for (int i = 0; i < 34; i++) for (int i = 0; i < 34; i++)
for (int j = 0; j < 7; j++) for (int j = 0; j < 7; j++)
@ -324,7 +324,7 @@ static uint32_t get_pulse_length(void) {
while (sample > gLow && (timeout--)) { while (sample > gLow && (timeout--)) {
sample = (uint8_t)AT91C_BASE_SSC->SSC_RHR; sample = (uint8_t)AT91C_BASE_SSC->SSC_RHR;
} }
if (timeout == 0) if (timeout == 0)
return 0; return 0;
@ -346,7 +346,7 @@ static uint32_t get_pulse_length(void) {
if (timeout == 0) if (timeout == 0)
return 0; return 0;
return (uint32_t)AT91C_BASE_TC1->TC_CV; return (uint32_t)AT91C_BASE_TC1->TC_CV;
} }
@ -836,7 +836,7 @@ void em4x50_read(em4x50_data_t *etd) {
// set gHigh and gLow // set gHigh and gLow
if (get_signalproperties() && find_em4x50_tag()) { if (get_signalproperties() && find_em4x50_tag()) {
if (etd->addr_given) { if (etd->addr_given) {
// selective read mode // selective read mode

View file

@ -84,7 +84,7 @@
#define ISO15693_READER_TIMEOUT 330 // 330/212kHz = 1558us #define ISO15693_READER_TIMEOUT 330 // 330/212kHz = 1558us
#define ISO15693_READER_TIMEOUT_WRITE 4700 // 4700/212kHz = 22ms, nominal 20ms #define ISO15693_READER_TIMEOUT_WRITE 4700 // 4700/212kHz = 22ms, nominal 20ms
// iceman: This defines below exists in the header file, just here for my easy reading // iceman: This defines below exists in the header file, just here for my easy reading
// Delays in SSP_CLK ticks. // Delays in SSP_CLK ticks.
// SSP_CLK runs at 13,56MHz / 32 = 423.75kHz when simulating a tag // SSP_CLK runs at 13,56MHz / 32 = 423.75kHz when simulating a tag
//#define DELAY_ISO15693_VCD_TO_VICC_SIM 132 // 132/423.75kHz = 311.5us from end of command EOF to start of tag response //#define DELAY_ISO15693_VCD_TO_VICC_SIM 132 // 132/423.75kHz = 311.5us from end of command EOF to start of tag response
@ -700,7 +700,7 @@ int GetIso15693AnswerFromTag(uint8_t *response, uint16_t max_len, uint16_t timeo
AT91C_BASE_PDC_SSC->PDC_RNPR = (uint32_t) dma->buf; AT91C_BASE_PDC_SSC->PDC_RNPR = (uint32_t) dma->buf;
AT91C_BASE_PDC_SSC->PDC_RNCR = DMA_BUFFER_SIZE; AT91C_BASE_PDC_SSC->PDC_RNCR = DMA_BUFFER_SIZE;
} }
WDT_HIT(); WDT_HIT();
if (BUTTON_PRESS()) { if (BUTTON_PRESS()) {
DbpString("stopped"); DbpString("stopped");
@ -725,7 +725,7 @@ int GetIso15693AnswerFromTag(uint8_t *response, uint16_t max_len, uint16_t timeo
// timeout // timeout
if (samples > timeout && dt->state < STATE_TAG_RECEIVING_DATA) { if (samples > timeout && dt->state < STATE_TAG_RECEIVING_DATA) {
ret = -3; ret = -3;
break; break;
} }
@ -1735,7 +1735,7 @@ void SimTagIso15693(uint8_t *uid) {
if (button_pressed) if (button_pressed)
DbpString("button pressed"); DbpString("button pressed");
reply_ng(CMD_HF_ISO15693_SIMULATE, PM3_SUCCESS, NULL, 0); reply_ng(CMD_HF_ISO15693_SIMULATE, PM3_SUCCESS, NULL, 0);
} }
@ -1880,7 +1880,7 @@ SLIx functions from official master forks.
void LockPassSlixIso15693(uint32_t pass_id, uint32_t password) { void LockPassSlixIso15693(uint32_t pass_id, uint32_t password) {
LED_A_ON(); LED_A_ON();
uint8_t cmd_inventory[] = {ISO15693_REQ_DATARATE_HIGH | ISO15693_REQ_INVENTORY | ISO15693_REQINV_SLOT1, 0x01, 0x00, 0x00, 0x00 }; uint8_t cmd_inventory[] = {ISO15693_REQ_DATARATE_HIGH | ISO15693_REQ_INVENTORY | ISO15693_REQINV_SLOT1, 0x01, 0x00, 0x00, 0x00 };
uint8_t cmd_get_rnd[] = {ISO15693_REQ_DATARATE_HIGH, 0xB2, 0x04, 0x00, 0x00 }; uint8_t cmd_get_rnd[] = {ISO15693_REQ_DATARATE_HIGH, 0xB2, 0x04, 0x00, 0x00 };
uint8_t cmd_set_pass[] = {ISO15693_REQ_DATARATE_HIGH, 0xB3, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; uint8_t cmd_set_pass[] = {ISO15693_REQ_DATARATE_HIGH, 0xB3, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
@ -1892,7 +1892,7 @@ void LockPassSlixIso15693(uint32_t pass_id, uint32_t password) {
uint32_t start_time = 0; uint32_t start_time = 0;
bool done = false; bool done = false;
// setup 'get random number' command // setup 'get random number' command
crc = Iso15693Crc(cmd_get_rnd, 3); crc = Iso15693Crc(cmd_get_rnd, 3);
cmd_get_rnd[3] = crc & 0xff; cmd_get_rnd[3] = crc & 0xff;
cmd_get_rnd[4] = crc >> 8; cmd_get_rnd[4] = crc >> 8;
@ -1900,7 +1900,7 @@ void LockPassSlixIso15693(uint32_t pass_id, uint32_t password) {
Dbprintf("LockPass: Press button lock password, long-press to terminate."); Dbprintf("LockPass: Press button lock password, long-press to terminate.");
while (!done) { while (!done) {
LED_D_ON(); LED_D_ON();
switch(BUTTON_HELD(1000)) { switch(BUTTON_HELD(1000)) {
case BUTTON_SINGLE_CLICK: case BUTTON_SINGLE_CLICK:
@ -2032,7 +2032,7 @@ void SetTag15693Uid(uint8_t *uid) {
SendDataTag(cmd[i], sizeof(cmd[i]), i == 0 ? true : false, true, recvbuf, sizeof(recvbuf), start_time, ISO15693_READER_TIMEOUT_WRITE, &eof_time); SendDataTag(cmd[i], sizeof(cmd[i]), i == 0 ? true : false, true, recvbuf, sizeof(recvbuf), start_time, ISO15693_READER_TIMEOUT_WRITE, &eof_time);
start_time = eof_time + DELAY_ISO15693_VICC_TO_VCD_READER; start_time = eof_time + DELAY_ISO15693_VICC_TO_VCD_READER;
} }
reply_ng(CMD_HF_ISO15693_CSETUID, PM3_SUCCESS, NULL, 0); reply_ng(CMD_HF_ISO15693_CSETUID, PM3_SUCCESS, NULL, 0);
switch_off(); switch_off();
} }

View file

@ -534,7 +534,7 @@ void Mifare1ksim(uint16_t flags, uint8_t exitAfterNReads, uint8_t *datain, uint1
while (!button_pushed && !finished) { while (!button_pushed && !finished) {
WDT_HIT(); WDT_HIT();
if (counter == 2000) { if (counter == 2000) {
if (data_available()) { if (data_available()) {
break; break;

View file

@ -56,7 +56,7 @@ static void usart_fill_rxfifo(void) {
rxfifo_free = us_rxfifo_low - us_rxfifo_high; rxfifo_free = us_rxfifo_low - us_rxfifo_high;
else else
rxfifo_free = sizeof(us_rxfifo) - us_rxfifo_high + us_rxfifo_low; rxfifo_free = sizeof(us_rxfifo) - us_rxfifo_high + us_rxfifo_low;
uint16_t available = USART_BUFFLEN - usart_cur_inbuf_off; uint16_t available = USART_BUFFLEN - usart_cur_inbuf_off;
if (available <= rxfifo_free) { if (available <= rxfifo_free) {

View file

@ -47,9 +47,9 @@ desc = [[
5. Erase all data at the card and set the FF FF FF FF FF FF keys, and Access Conditions to 78778800. 5. Erase all data at the card and set the FF FF FF FF FF FF keys, and Access Conditions to 78778800.
Script works in a wizard styled way. Script works in a wizard styled way.
Author Youtube channel: https://yev.ooo/ Author Youtube channel: https://yev.ooo/
Many Thanks, Many Thanks,
Best Regards Best Regards
]] ]]
@ -261,7 +261,7 @@ local function main(args)
end end
else else
dumpEML = "find '.' -iname '*dump.eml' -type f" dumpEML = "find '.' -iname '*dump.eml' -type f"
if string.len(GetUID()) == 14 then if string.len(GetUID()) == 14 then
eml_file_uid_start = 9 eml_file_uid_start = 9
eml_file_uid_end = 22 eml_file_uid_end = 22
eml_file_lengt = 31 eml_file_lengt = 31

View file

@ -951,7 +951,7 @@ static command_t CommandTable[] = {
{"lfsr", CmdAnalyseLfsr, AlwaysAvailable, "LFSR tests"}, {"lfsr", CmdAnalyseLfsr, AlwaysAvailable, "LFSR tests"},
{"a", CmdAnalyseA, AlwaysAvailable, "num bits test"}, {"a", CmdAnalyseA, AlwaysAvailable, "num bits test"},
{"nuid", CmdAnalyseNuid, AlwaysAvailable, "create NUID from 7byte UID"}, {"nuid", CmdAnalyseNuid, AlwaysAvailable, "create NUID from 7byte UID"},
{"demodbuff", CmdAnalyseDemodBuffer, AlwaysAvailable, "Load binary string to demodbuffer"}, {"demodbuff", CmdAnalyseDemodBuffer, AlwaysAvailable, "Load binary string to demodbuffer"},
{"freq", CmdAnalyseFreq, AlwaysAvailable, "Calc wave lengths"}, {"freq", CmdAnalyseFreq, AlwaysAvailable, "Calc wave lengths"},
{NULL, NULL, NULL, NULL} {NULL, NULL, NULL, NULL}
}; };

View file

@ -1643,9 +1643,9 @@ static int CmdHFFelicaDumpLite(const char *Cmd) {
return PM3_ETIMEOUT; return PM3_ETIMEOUT;
} }
} }
PrintAndLogEx(NORMAL, ""); PrintAndLogEx(NORMAL, "");
if (resp.oldarg[0] == 0) { if (resp.oldarg[0] == 0) {
PrintAndLogEx(WARNING, "Button pressed, aborted"); PrintAndLogEx(WARNING, "Button pressed, aborted");
return PM3_EOPABORTED; return PM3_EOPABORTED;

View file

@ -4395,7 +4395,7 @@ static int CmdHF14aDesChk(const char *Cmd) {
if (pattern2b && startPattern < 0x10000) { if (pattern2b && startPattern < 0x10000) {
if (verbose == false) if (verbose == false)
PrintAndLogEx(NORMAL, "p" NOLF); PrintAndLogEx(NORMAL, "p" NOLF);
aeskeyListLen = 0; aeskeyListLen = 0;
deskeyListLen = 0; deskeyListLen = 0;
k3kkeyListLen = 0; k3kkeyListLen = 0;

View file

@ -615,8 +615,8 @@ int lf_read(bool verbose, uint32_t samples) {
} }
} }
// response is number of bits read // response is number of bits read
uint32_t size = (resp.data.asDwords[0] / 8); uint32_t size = (resp.data.asDwords[0] / 8);
getSamples(size, verbose); getSamples(size, verbose);
return PM3_SUCCESS; return PM3_SUCCESS;
} }

View file

@ -71,7 +71,7 @@ static mbedtls_mpi_uint mpi_get_uint(const mbedtls_mpi *X) {
if (X->n == 1 && X->s > 0) { if (X->n == 1 && X->s > 0) {
return X->p[0]; return X->p[0];
} }
PrintAndLogEx(WARNING, "ZERRRRO!!!\n"); PrintAndLogEx(WARNING, "ZERRRRO!!!\n");
return 0; return 0;
} }

View file

@ -49,7 +49,7 @@ static CborError dumpelm(CborValue *it, bool *got_next, int nestingLevel) {
*got_next = true; *got_next = true;
if (err) if (err)
return err; // parse error return err; // parse error
PrintAndLogEx(NORMAL, "%s" NOLF, sprint_hex(buf, n)); PrintAndLogEx(NORMAL, "%s" NOLF, sprint_hex(buf, n));
free(buf); free(buf);
break; break;

View file

@ -690,7 +690,7 @@ int mfStaticNested(uint8_t blockNo, uint8_t keyType, uint8_t *key, uint8_t trgBl
// check a block of generated key candidates. // check a block of generated key candidates.
if (IfPm3Flash()) { if (IfPm3Flash()) {
mem[3] = ((chunk >> 8) & 0xFF); mem[3] = ((chunk >> 8) & 0xFF);
mem[4] = (chunk & 0xFF); mem[4] = (chunk & 0xFF);
@ -915,7 +915,7 @@ int mfCSetBlock(uint8_t blockNo, uint8_t *data, uint8_t *uid, uint8_t params) {
clearCommandBuffer(); clearCommandBuffer();
SendCommandMIX(CMD_HF_MIFARE_CSETBL, params, blockNo, 0, data, 16); SendCommandMIX(CMD_HF_MIFARE_CSETBL, params, blockNo, 0, data, 16);
PacketResponseNG resp; PacketResponseNG resp;
if (WaitForResponseTimeout(CMD_ACK, &resp, 1500)) { if (WaitForResponseTimeout(CMD_ACK, &resp, 3500)) {
uint8_t isOK = resp.oldarg[0] & 0xff; uint8_t isOK = resp.oldarg[0] & 0xff;
if (uid != NULL) if (uid != NULL)
memcpy(uid, resp.data.asBytes, 4); memcpy(uid, resp.data.asBytes, 4);
@ -1078,7 +1078,7 @@ int detect_classic_nackbug(bool verbose) {
PrintAndLogEx(SUCCESS, "press pm3-button on the Proxmark3 device to abort both Proxmark3 and client.\n"); PrintAndLogEx(SUCCESS, "press pm3-button on the Proxmark3 device to abort both Proxmark3 and client.\n");
while (true) { while (true) {
PrintAndLogEx(NORMAL, "." NOLF); PrintAndLogEx(NORMAL, "." NOLF);
if (kbd_enter_pressed()) { if (kbd_enter_pressed()) {
return PM3_EOPABORTED; return PM3_EOPABORTED;

View file

@ -15,7 +15,7 @@ ISO14443A (usually NFC tags)
95 20 = Anticollision of cascade level2 95 20 = Anticollision of cascade level2
95 70 = Select of cascade level2 95 70 = Select of cascade level2
50 00 = Halt (usage: 5000+2bytes ISO14443A-CRC - no answer from card) 50 00 = Halt (usage: 5000+2bytes ISO14443A-CRC - no answer from card)
E0 = RATS E0 = RATS
D0 = PPS D0 = PPS
Mifare Mifare