diff --git a/armsrc/Standalone/hf_tcprst.c b/armsrc/Standalone/hf_tcprst.c index f5943bda2..10a19bd10 100644 --- a/armsrc/Standalone/hf_tcprst.c +++ b/armsrc/Standalone/hf_tcprst.c @@ -26,7 +26,7 @@ void ModInfo(void) { /* This standalone implements four different modes: reading, simulating, dumping, & emulating. * -* The initial mode is reading with LEDs A & D. +* The initial mode is reading with LEDs A & D. * In this mode, the Proxmark is looking for an ST25TA card like those used by the IKEA Rothult, * it will act as reader, and store the UID for simulation. * @@ -37,8 +37,8 @@ void ModInfo(void) { * Once it gets the key, it will switch to dump mode (LEDs C & D) automatically. During this mode the Proxmark * will act as a reader once again, but now we know the Read Protection key to authenticate to the card to dump * it's contents so we can achieve full emulation. -* -* Once it dumps the contents of the card, it will switch to emulation mode (LED C) automatically. +* +* Once it dumps the contents of the card, it will switch to emulation mode (LED C) automatically. * During this mode the Proxmark should function as the original ST25TA IKEA Rothult Master Key * * Keep pressing the button down will quit the standalone cycle. @@ -68,13 +68,13 @@ void RunMod(void) { // APDUs necessary to dump NDEF // ---------------------------- // Select NDEF Application - uint8_t ndef_app[13] = {0x00, 0xa4, 0x04, 0x00, 0x07, 0xd2, 0x76, 0x00, 0x00, 0x85, 0x01, 0x01, 0x00}; + uint8_t ndef_app[13] = {0x00, 0xa4, 0x04, 0x00, 0x07, 0xd2, 0x76, 0x00, 0x00, 0x85, 0x01, 0x01, 0x00}; // Select NDEF File - uint8_t ndef_sel[7] = {0x00, 0xa4, 0x00, 0x0c, 0x02, 0x00, 0x01}; + uint8_t ndef_sel[7] = {0x00, 0xa4, 0x00, 0x0c, 0x02, 0x00, 0x01}; // Read verification without password - uint8_t verify[5] = {0x00, 0x20, 0x00, 0x01, 0x00}; + uint8_t verify[5] = {0x00, 0x20, 0x00, 0x01, 0x00}; // Read verification with password - uint8_t verify_pwd[21] = {0x00, 0x20, 0x00, 0x01, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; + uint8_t verify_pwd[21] = {0x00, 0x20, 0x00, 0x01, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; // Read NDEF file contents uint8_t ndef_read[5] = {0x00, 0xb0, 0x00, 0x00, 0x1d}; @@ -173,12 +173,12 @@ void RunMod(void) { DbpString(_YELLOW_("+") "Found ISO 14443 Type A!"); if (card_a_info.sak == SAK && card_a_info.atqa[0] == ATQA0 && card_a_info.atqa[1] == ATQA1 && card_a_info.uidlen == 7) { - DbpString(_YELLOW_("+") "Found ST25TA with UID: "); - Dbhexdump(card_a_info.uidlen, card_a_info.uid, 0); - memcpy(stuid, card_a_info.uid, card_a_info.uidlen); - state = STATE_SIM; + DbpString(_YELLOW_("+") "Found ST25TA with UID: "); + Dbhexdump(card_a_info.uidlen, card_a_info.uid, 0); + memcpy(stuid, card_a_info.uid, card_a_info.uidlen); + state = STATE_SIM; } else { - DbpString("Found non-ST25TA card, ignoring."); + DbpString("Found non-ST25TA card, ignoring."); } } FpgaWriteConfWord(FPGA_MAJOR_MODE_OFF); @@ -235,7 +235,7 @@ void RunMod(void) { p_response = &responses[ATQA]; } else if (receivedCmd[0] == ISO14443A_CMD_HALT && len == 4) { // Received a HALT p_response = NULL; - } else if (receivedCmd[0] == ISO14443A_CMD_WUPA && len == 1) { // Received a WAKEUP + } else if (receivedCmd[0] == ISO14443A_CMD_WUPA && len == 1) { // Received a WAKEUP p_response = &responses[ATQA]; } else if (receivedCmd[1] == 0x20 && receivedCmd[0] == ISO14443A_CMD_ANTICOLL_OR_SELECT && len == 2) { // Received request for UID (cascade 1) p_response = &responses[UIDC1]; @@ -337,7 +337,7 @@ void RunMod(void) { Dbhexdump(apdulen - 2, apdubuffer, false); DbpString("----"); - + if (i == 4) { if (apdubuffer[1] == 0x1b && apdubuffer[2] == 0xd1 && !gotndef) { //Get NDEF Data gotndef = true; @@ -345,7 +345,7 @@ void RunMod(void) { break; } } - + } else { DbpString(_YELLOW_("!!") "Error reading the card"); } @@ -416,7 +416,7 @@ void RunMod(void) { p_response = &responses[ATQA]; } else if (receivedCmd[0] == ISO14443A_CMD_HALT && len == 4) { // Received a HALT p_response = NULL; - } else if (receivedCmd[0] == ISO14443A_CMD_WUPA && len == 1) { // Received a WAKEUP + } else if (receivedCmd[0] == ISO14443A_CMD_WUPA && len == 1) { // Received a WAKEUP p_response = &responses[ATQA]; } else if (receivedCmd[1] == 0x20 && receivedCmd[0] == ISO14443A_CMD_ANTICOLL_OR_SELECT && len == 2) { // Received request for UID (cascade 1) p_response = &responses[UIDC1]; diff --git a/armsrc/appmain.c b/armsrc/appmain.c index 4ee594414..51cbb2770 100644 --- a/armsrc/appmain.c +++ b/armsrc/appmain.c @@ -1644,7 +1644,7 @@ static void PacketReceived(PacketCommandNG *packet) { struct p *payload = (struct p *)packet->data.asBytes; uint8_t *mem = BigBuf_get_addr(); memcpy(mem + payload->idx, payload->data, payload->bytes_in_packet); - + uint8_t a = 0, b = 0; compute_crc(CRC_14443_A, mem + payload->idx, payload->bytes_in_packet, &a, &b); int res = PM3_SUCCESS; @@ -1662,14 +1662,14 @@ static void PacketReceived(PacketCommandNG *packet) { } PACKED; struct p *payload = (struct p *)packet->data.asBytes; - uint8_t *fwdata = BigBuf_get_addr(); + uint8_t *fwdata = BigBuf_get_addr(); uint8_t a = 0, b = 0; compute_crc(CRC_14443_A, fwdata, payload->fw_size, &a, &b); if (payload->crc != (a << 8 | b)) { Dbprintf("CRC Failed, 0x[%04x] != 0x[%02x%02x]", payload->crc, a, b); reply_ng(CMD_SMART_UPGRADE, PM3_ESOFT, NULL, 0); - } else { + } else { SmartCardUpgrade(payload->fw_size); } fwdata = NULL; diff --git a/armsrc/i2c.c b/armsrc/i2c.c index 085f9e633..162126d76 100644 --- a/armsrc/i2c.c +++ b/armsrc/i2c.c @@ -670,7 +670,7 @@ bool GetATR(smart_card_atr_t *card_ptr, bool verbose) { // 1byte = 1ms , max frame 256bytes. Should wait 256ms atleast just in case. if (I2C_WaitForSim() == false) return false; - + // read bytes from module uint8_t len = sizeof(card_ptr->atr); if (sc_rx_bytes(card_ptr->atr, &len) == false) @@ -713,8 +713,8 @@ void SmartCardAtr(void) { set_tracing(true); I2C_Reset_EnterMainProgram(); smart_card_atr_t card; - int res = GetATR(&card, true) ? PM3_SUCCESS : PM3_ETIMEOUT; - reply_ng(CMD_SMART_ATR, res, (uint8_t*)&card, sizeof(smart_card_atr_t)); + int res = GetATR(&card, true) ? PM3_SUCCESS : PM3_ETIMEOUT; + reply_ng(CMD_SMART_ATR, res, (uint8_t *)&card, sizeof(smart_card_atr_t)); set_tracing(false); LEDsoff(); } @@ -827,7 +827,7 @@ void SmartCardUpgrade(uint64_t arg0) { length -= size; pos += size; } - + reply_ng(CMD_SMART_UPGRADE, (isOK) ? PM3_SUCCESS : PM3_ESOFT, NULL, 0); LED_C_OFF(); BigBuf_free(); diff --git a/armsrc/iso14443a.c b/armsrc/iso14443a.c index 2926306c9..8cf4ee838 100644 --- a/armsrc/iso14443a.c +++ b/armsrc/iso14443a.c @@ -1633,7 +1633,7 @@ void SimulateIso14443aTag(uint8_t tagType, uint8_t flags, uint8_t *data) { dynamic_response_info.response[0] = receivedCmd[0]; dynamic_response_info.response[1] = 0x90; dynamic_response_info.response[2] = 0x00; - dynamic_response_info.response_n = 3; + dynamic_response_info.response_n = 3; } else { dynamic_response_info.response[0] = receivedCmd[0]; dynamic_response_info.response[1] = 0x90; @@ -2337,7 +2337,7 @@ void iso14443a_antifuzz(uint32_t flags) { uint8_t *received = BigBuf_malloc(MAX_FRAME_SIZE); uint8_t *receivedPar = BigBuf_malloc(MAX_PARITY_SIZE); uint8_t *resp = BigBuf_malloc(20); - + memset(received, 0x00, MAX_FRAME_SIZE); memset(received, 0x00, MAX_PARITY_SIZE); memset(resp, 0xFF, 20); diff --git a/armsrc/iso14443b.c b/armsrc/iso14443b.c index eab139ea9..3445dde9b 100644 --- a/armsrc/iso14443b.c +++ b/armsrc/iso14443b.c @@ -1541,7 +1541,7 @@ void iso14443b_setup(void) { // I tried to be systematic and check every answer of the tag, every CRC, etc... //----------------------------------------------------------------------------- static int read_srx_block(uint8_t blocknr, uint8_t *block) { - + uint8_t cmd[] = {ISO14443B_READ_BLK, blocknr, 0x00, 0x00}; AddCrc14B(cmd, 2); @@ -1572,10 +1572,10 @@ static int read_srx_block(uint8_t blocknr, uint8_t *block) { if (DBGLEVEL >= DBG_DEBUG) { Dbprintf("Address=%02x, Contents=%08x, CRC=%04x", - blocknr, - (r_block[3] << 24) + (r_block[2] << 16) + (r_block[1] << 8) + r_block[0], - (r_block[4] << 8) + r_block[5] - ); + blocknr, + (r_block[3] << 24) + (r_block[2] << 16) + (r_block[1] << 8) + r_block[0], + (r_block[4] << 8) + r_block[5] + ); } return PM3_SUCCESS; @@ -1586,7 +1586,7 @@ void ReadSTBlock(uint8_t blocknr) { iso14b_card_select_t card; int res = iso14443b_select_srx_card(&card); // 0: OK -1 wrong len, -2: attrib fail, -3:crc fail, - switch(res) { + switch (res) { case -1: case -3: { reply_ng(CMD_HF_SRI_READ, PM3_EWRONGANSWER, NULL, 0); diff --git a/armsrc/mifarecmd.c b/armsrc/mifarecmd.c index 6f33e623d..75de380c4 100644 --- a/armsrc/mifarecmd.c +++ b/armsrc/mifarecmd.c @@ -2283,7 +2283,7 @@ void MifareCIdent(bool is_mfc) { ReaderTransmit(rats, sizeof(rats), NULL); res = ReaderReceive(buf, par); - if (res ) { + if (res) { // test for some MFC gen2 if (memcmp(buf, "\x09\x78\x00\x91\x02\xDA\xBC\x19\x10\xF0\x05", 11) == 0) { diff --git a/client/android/pm3_main.c b/client/android/pm3_main.c index f7627658f..5fa056a44 100644 --- a/client/android/pm3_main.c +++ b/client/android/pm3_main.c @@ -86,7 +86,7 @@ jint Console(JNIEnv *env, jobject instance, jstring cmd_) { PrintAndLogEx(NORMAL, ""); - char *cmd = (char *) ((*env)->GetStringUTFChars(env, cmd_, 0)); + char *cmd = (char *)((*env)->GetStringUTFChars(env, cmd_, 0)); int ret = CommandReceived(cmd); if (ret == 99) { // exit / quit @@ -102,7 +102,7 @@ jint Console(JNIEnv *env, jobject instance, jstring cmd_) { * Is client running! * */ jboolean IsClientRunning(JNIEnv *env, jobject instance) { - return (jboolean) ((jboolean) conn.run); + return (jboolean)((jboolean) conn.run); } /* @@ -114,7 +114,7 @@ jboolean TestPm3(JNIEnv *env, jobject instance) { return false; } bool ret = (TestProxmark() == PM3_SUCCESS); - return (jboolean) (ret); + return (jboolean)(ret); } /* @@ -141,18 +141,18 @@ JNIEXPORT jint JNI_OnLoad(JavaVM *vm, void *reserved) { } jclass clz_test = (*jniEnv)->FindClass(jniEnv, "cn/rrg/devices/Proxmark3RRGRdv4"); JNINativeMethod methods[] = { - {"startExecute", "(Ljava/lang/String;)I", (void *) Console}, - {"stopExecute", "()V", (void *) ClosePm3}, - {"isExecuting", "()Z", (void *) IsClientRunning} + {"startExecute", "(Ljava/lang/String;)I", (void *) Console}, + {"stopExecute", "()V", (void *) ClosePm3}, + {"isExecuting", "()Z", (void *) IsClientRunning} }; JNINativeMethod methods1[] = { - {"testPm3", "()Z", (void *) TestPm3}, - {"closePm3", "()V", ClosePm3} + {"testPm3", "()Z", (void *) TestPm3}, + {"closePm3", "()V", ClosePm3} }; if ((*jniEnv)->RegisterNatives(jniEnv, clazz, methods, sizeof(methods) / sizeof(methods[0])) != - JNI_OK) { + JNI_OK) { return -1; } diff --git a/client/deps/cliparser/cliparser.c b/client/deps/cliparser/cliparser.c index e96f100bb..f2d9fa8fd 100644 --- a/client/deps/cliparser/cliparser.c +++ b/client/deps/cliparser/cliparser.c @@ -285,7 +285,7 @@ uint64_t arg_get_u64_hexstr_def(CLIParserContext *ctx, uint8_t paramnum, uint64_ } } else { rv = def; - } + } return rv; } diff --git a/client/src/cmdhf.c b/client/src/cmdhf.c index 8249c28af..fa100e13d 100644 --- a/client/src/cmdhf.c +++ b/client/src/cmdhf.c @@ -312,7 +312,7 @@ int CmdHFSniff(const char *Cmd) { } int handle_hf_plot(void) { - + uint8_t buf[FPGA_TRACE_SIZE]; PacketResponseNG response; @@ -355,7 +355,7 @@ int CmdHFPlot(const char *Cmd) { } static command_t CommandTable[] = { - + {"--------", CmdHelp, AlwaysAvailable, "----------------------- " _CYAN_("High Frequency") " -----------------------"}, {"14a", CmdHF14A, AlwaysAvailable, "{ ISO14443A RFIDs... }"}, {"14b", CmdHF14B, AlwaysAvailable, "{ ISO14443B RFIDs... }"}, @@ -375,7 +375,7 @@ static command_t CommandTable[] = { {"thinfilm", CmdHFThinfilm, AlwaysAvailable, "{ Thinfilm RFIDs... }"}, {"topaz", CmdHFTopaz, AlwaysAvailable, "{ TOPAZ (NFC Type 1) RFIDs... }"}, {"waveshare", CmdHFWaveshare, AlwaysAvailable, "{ Waveshare NFC ePaper... }"}, - {"-----------", CmdHelp, AlwaysAvailable, "--------------------- " _CYAN_("General") " ---------------------"}, + {"-----------", CmdHelp, AlwaysAvailable, "--------------------- " _CYAN_("General") " ---------------------"}, {"help", CmdHelp, AlwaysAvailable, "This help"}, {"list", CmdTraceList, AlwaysAvailable, "List protocol data in trace buffer"}, {"plot", CmdHFPlot, IfPm3Hfplot, "Plot signal"}, diff --git a/client/src/cmdhf14a.c b/client/src/cmdhf14a.c index 0d1a2df9f..7e9d45255 100644 --- a/client/src/cmdhf14a.c +++ b/client/src/cmdhf14a.c @@ -566,7 +566,7 @@ static int CmdHF14AReader(const char *Cmd) { } } plot: - if (continuous) { + if (continuous) { res = handle_hf_plot(); if (res != PM3_SUCCESS) { break; @@ -1442,7 +1442,7 @@ static int CmdHF14AAntiFuzz(const char *Cmd) { CLIParserFree(ctx); clearCommandBuffer(); - SendCommandNG(CMD_HF_ISO14443A_ANTIFUZZ, (uint8_t*)¶m, sizeof(param)); + SendCommandNG(CMD_HF_ISO14443A_ANTIFUZZ, (uint8_t *)¶m, sizeof(param)); return PM3_SUCCESS; } @@ -1494,9 +1494,9 @@ typedef enum { // Based on NXP AN10833 Rev 3.6 and NXP AN10834 Rev 4.1 static int detect_nxp_card(uint8_t sak, uint16_t atqa, uint64_t select_status) { int type = MTNONE; - + PrintAndLogEx(SUCCESS, "Possible types:"); - + if ((sak & 0x02) != 0x02) { if ((sak & 0x19) == 0x19) { printTag("MIFARE Classic 2K"); @@ -1515,7 +1515,7 @@ static int detect_nxp_card(uint8_t sak, uint16_t atqa, uint64_t select_status) { printTag("MIFARE Plus S 4K in SL1"); printTag("MIFARE Plus X 4K in SL1"); } - + type |= MTPLUS; } else { if ((atqa & 0x0040) == 0x0040) { @@ -1550,7 +1550,7 @@ static int detect_nxp_card(uint8_t sak, uint16_t atqa, uint64_t select_status) { printTag("MIFARE Plus X 2K in SL1"); printTag("MIFARE Plus SE 1K"); } - + type |= MTPLUS; } else { if ((atqa & 0x0040) == 0x0040) { @@ -1596,7 +1596,7 @@ static int detect_nxp_card(uint8_t sak, uint16_t atqa, uint64_t select_status) { printTag("MIFARE Plus SE 1K"); type |= MTPLUS; } - + printTag("NTAG 4xx"); type |= MTDESFIRE; } @@ -1613,7 +1613,7 @@ static int detect_nxp_card(uint8_t sak, uint16_t atqa, uint64_t select_status) { type |= MTULTRALIGHT; } } - + if (type == MTNONE) { PrintAndLogEx(WARNING, " failed to fingerprint"); } diff --git a/client/src/cmdhf14b.c b/client/src/cmdhf14b.c index 9912cd40e..3f4890581 100644 --- a/client/src/cmdhf14b.c +++ b/client/src/cmdhf14b.c @@ -977,33 +977,33 @@ static int CmdHF14BSriRdBl(const char *Cmd) { int blockno = arg_get_int_def(ctx, 1, -1); CLIParserFree(ctx); -/* - iso14b_card_select_t card; - if (get_14b_UID(&card) == false) { - PrintAndLogEx(WARNING, "no tag found"); - return PM3_SUCCESS; - } + /* + iso14b_card_select_t card; + if (get_14b_UID(&card) == false) { + PrintAndLogEx(WARNING, "no tag found"); + return PM3_SUCCESS; + } - if (card.uidlen != 8) { - PrintAndLogEx(FAILED, "current read command only work with SRI4K / SRI512 tags"); - return PM3_SUCCESS; - } + if (card.uidlen != 8) { + PrintAndLogEx(FAILED, "current read command only work with SRI4K / SRI512 tags"); + return PM3_SUCCESS; + } - // detect cardsize - // 1 = 4096 - // 2 = 512 - uint8_t cardtype = get_st_cardsize(card.uid); - uint8_t blocks = (cardtype == 1) ? 0x7F : 0x0F; -*/ + // detect cardsize + // 1 = 4096 + // 2 = 512 + uint8_t cardtype = get_st_cardsize(card.uid); + uint8_t blocks = (cardtype == 1) ? 0x7F : 0x0F; + */ struct { uint8_t blockno; } PACKED payload; - + payload.blockno = blockno; PacketResponseNG resp; clearCommandBuffer(); - SendCommandNG(CMD_HF_SRI_READ, (uint8_t*)&payload, sizeof(payload)); + SendCommandNG(CMD_HF_SRI_READ, (uint8_t *)&payload, sizeof(payload)); if (WaitForResponseTimeout(CMD_HF_SRI_READ, &resp, TIMEOUT) == false) { return PM3_ETIMEOUT; } diff --git a/client/src/cmdhflto.c b/client/src/cmdhflto.c index a4b7d1f03..c452cc0a5 100644 --- a/client/src/cmdhflto.c +++ b/client/src/cmdhflto.c @@ -26,10 +26,10 @@ iceman notes We can't dump LTO 5 or 6 tags yet since we don't have a datasheet. If you have access to datasheet, le me know! - - LTO w Type info 00 01 has 101 blocks. + + LTO w Type info 00 01 has 101 blocks. LTO w Type info 00 03 has 255 blocks. - LTO w Type info 00 xx has NN blocks. + LTO w Type info 00 xx has NN blocks. */ #define CM_MEM_MAX_SIZE 0x1FE0 // (32byte/block * 255block = 8160byte) @@ -194,8 +194,8 @@ static int CmdHfLTOInfo(const char *Cmd) { return infoLTO(true); } -static const char* lto_print_size(uint8_t ti) { - switch(ti) { +static const char *lto_print_size(uint8_t ti) { + switch (ti) { case 1: return "101 blocks / 3232 bytes"; case 3: diff --git a/client/src/cmdhfmf.c b/client/src/cmdhfmf.c index bbc74957f..b6a1592bb 100644 --- a/client/src/cmdhfmf.c +++ b/client/src/cmdhfmf.c @@ -5296,7 +5296,7 @@ static int CmdHf14AMfSuperCard(const char *Cmd) { if (reset_card) { keep_field_on = false; - uint8_t response[6]; + uint8_t response[6]; int resplen = 0; // --------------- RESET CARD ---------------- @@ -5312,7 +5312,7 @@ static int CmdHf14AMfSuperCard(const char *Cmd) { } - uint8_t responseA[22]; + uint8_t responseA[22]; uint8_t responseB[22]; int respAlen = 0; int respBlen = 0; @@ -5328,21 +5328,21 @@ static int CmdHf14AMfSuperCard(const char *Cmd) { // --------------- Second ---------------- activate_field = false; keep_field_on = false; - + uint8_t aSECOND[] = { 0x00, 0xa6, 0xb0, 0x01, 0x10 }; res = ExchangeAPDU14a(aSECOND, sizeof(aSECOND), activate_field, keep_field_on, responseB, sizeof(responseB), &respBlen); if (res) { DropField(); return res; } - -// uint8_t inA[] = { 0x72, 0xD7, 0xF4, 0x3E, 0xFD, 0xAB, 0xF2, 0x35, 0xFD, 0x49, 0xEE, 0xDC, 0x44, 0x95, 0x43, 0xC4}; + +// uint8_t inA[] = { 0x72, 0xD7, 0xF4, 0x3E, 0xFD, 0xAB, 0xF2, 0x35, 0xFD, 0x49, 0xEE, 0xDC, 0x44, 0x95, 0x43, 0xC4}; // uint8_t inB[] = { 0xF0, 0xA2, 0x67, 0x6A, 0x04, 0x6A, 0x72, 0x12, 0x76, 0xA4, 0x1D, 0x02, 0x1F, 0xEA, 0x20, 0x85}; uint8_t outA[16] = {0}; uint8_t outB[16] = {0}; - uint8_t key[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88}; + uint8_t key[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88}; for (uint8_t i = 0; i < 16; i += 8) { des_decrypt(outA + i, responseA + i, key); des_decrypt(outB + i, responseB + i, key); @@ -5362,12 +5362,12 @@ static int CmdHf14AMfSuperCard(const char *Cmd) { if (memcmp(outB, "\x01\x01\x01\x01\x01\x01\x01\x01", 8) == 0) { PrintAndLogEx(INFO, "Only one trace recorded"); return PM3_SUCCESS; - } + } + + nonces_t data; - nonces_t data; - // first - uint16_t NT0 = (outA[6] << 8) | outA[7]; + uint16_t NT0 = (outA[6] << 8) | outA[7]; data.cuid = bytes_to_num(outA, 4); data.nonce = prng_successor(NT0, 31); data.nr = bytes_to_num(outA + 8, 4); @@ -5394,13 +5394,13 @@ static int CmdHf14AMfSuperCard(const char *Cmd) { uint64_t key64 = -1; res = mfkey32_moebius(&data, &key64); - + if (res) { PrintAndLogEx(SUCCESS, "UID: %s Sector %02x key %c [ " _GREEN_("%12" PRIX64) " ]" - , sprint_hex_inrow(outA, 4) - , data.sector - , (data.keytype == 0x60) ? 'A' : 'B' - , key64); + , sprint_hex_inrow(outA, 4) + , data.sector + , (data.keytype == 0x60) ? 'A' : 'B' + , key64); } else { PrintAndLogEx(FAILED, "failed to recover any key"); } diff --git a/client/src/cmdhfmfdes.c b/client/src/cmdhfmfdes.c index ae2049e83..5ea303f6d 100644 --- a/client/src/cmdhfmfdes.c +++ b/client/src/cmdhfmfdes.c @@ -2122,7 +2122,7 @@ static int desfire_authenticate(int cmdAuthMode, int cmdAuthAlgo, uint8_t *aid, PrintAndLogEx(FAILED, "Crypto algo not valid for the KDF AN10922 algo."); return PM3_EINVARG; } - // KDF input arg is ignored as it'll be generated. + // KDF input arg is ignored as it'll be generated. case MFDES_KDF_ALGO_NONE: break; default: diff --git a/client/src/cmdhw.c b/client/src/cmdhw.c index 4acd6c8df..2743df820 100644 --- a/client/src/cmdhw.c +++ b/client/src/cmdhw.c @@ -681,7 +681,7 @@ static int CmdConnect(const char *Cmd) { } static command_t CommandTable[] = { - {"-------------", CmdHelp, AlwaysAvailable, "----------------------- " _CYAN_("Hardware") " -----------------------"}, + {"-------------", CmdHelp, AlwaysAvailable, "----------------------- " _CYAN_("Hardware") " -----------------------"}, {"help", CmdHelp, AlwaysAvailable, "This help"}, {"connect", CmdConnect, AlwaysAvailable, "connect Proxmark3 to serial port"}, {"dbg", CmdDbg, IfPm3Present, "Set Proxmark3 debug level"}, diff --git a/client/src/cmdlfem4x05.c b/client/src/cmdlfem4x05.c index c3cf2c99b..134cbaa9f 100644 --- a/client/src/cmdlfem4x05.c +++ b/client/src/cmdlfem4x05.c @@ -223,7 +223,7 @@ static bool detectPSK(void) { // In order to hit the INVERT, we need to demod here if (DemodBufferLen < 11) { - PrintAndLogEx(INFO," demod buff len less than PREAMBLE lEN"); + PrintAndLogEx(INFO, " demod buff len less than PREAMBLE lEN"); } size_t size = (11 > DemodBufferLen) ? DemodBufferLen : 11; @@ -388,7 +388,7 @@ static bool em4x05_verify_write(uint8_t addr, uint32_t pwd, bool use_pwd, uint32 int res = em4x05_read_word_ext(addr, pwd, use_pwd, &r); if (res == PM3_SUCCESS) { return (r == data); - } + } return false; } @@ -409,7 +409,7 @@ int em4x05_clone_tag(uint32_t *blockdata, uint8_t numblocks, uint32_t pwd, bool if (i == numblocks - 1) { conn.block_after_ACK = false; } - + if (i != 0) { blockdata[i] = reflect(blockdata[i], 32); } @@ -910,7 +910,7 @@ int CmdEM4x05Wipe(const char *Cmd) { static const char *printEM4x05_known(uint32_t word) { - switch(word) { + switch (word) { // case EM4305_DEFAULT_CONFIG_BLOCK: case EM4305_PRESCO_CONFIG_BLOCK: { return "EM4305 DEFAULT / PRESCO"; @@ -1066,7 +1066,7 @@ static void printEM4x05config(em_tech_type_t card_type, uint32_t wordData) { PrintAndLogEx(NORMAL, ""); PrintAndLogEx(INFO, "--- " _CYAN_("Config Information") " ------------------------"); - PrintAndLogEx(INFO, "ConfigWord: %08X ( " _YELLOW_("%s") " )", wordData, printEM4x05_known(wordData) ); + PrintAndLogEx(INFO, "ConfigWord: %08X ( " _YELLOW_("%s") " )", wordData, printEM4x05_known(wordData)); PrintAndLogEx(INFO, " Data Rate: %02u | "_YELLOW_("RF/%u"), wordData & 0x3F, datarate); PrintAndLogEx(INFO, " Encoder: %u | " _YELLOW_("%s"), encoder, enc); @@ -1820,7 +1820,7 @@ int CmdEM4x05Unlock(const char *Cmd) { return exit_code; } -static size_t em4x05_Sniff_GetNextBitStart (size_t idx, size_t sc, int *data, size_t *pulsesamples) { +static size_t em4x05_Sniff_GetNextBitStart(size_t idx, size_t sc, int *data, size_t *pulsesamples) { while ((idx < sc) && (data[idx] <= 10)) // find a going high idx++; @@ -1828,7 +1828,7 @@ static size_t em4x05_Sniff_GetNextBitStart (size_t idx, size_t sc, int *data, si idx++; (*pulsesamples) = 0; - while ((idx < sc) && ((data[idx+1] - data[idx]) < 10 )) { // find "sharp rise" + while ((idx < sc) && ((data[idx + 1] - data[idx]) < 10)) { // find "sharp rise" (*pulsesamples)++; idx++; } @@ -1836,7 +1836,7 @@ static size_t em4x05_Sniff_GetNextBitStart (size_t idx, size_t sc, int *data, si return idx; } -uint32_t static em4x05_Sniff_GetBlock (char *bits, bool fwd) { +uint32_t static em4x05_Sniff_GetBlock(char *bits, bool fwd) { uint32_t value = 0; uint8_t idx; bool parityerror = false; @@ -1882,7 +1882,7 @@ uint32_t static em4x05_Sniff_GetBlock (char *bits, bool fwd) { if (parity != (bits[35] - '0')) parityerror = true; - if (parityerror) printf ("parity error : "); + if (parityerror) printf("parity error : "); if (!fwd) { uint32_t t1 = value; @@ -1923,14 +1923,14 @@ int CmdEM4x05Sniff(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_lit0("1", "buf","Use the data in the buffer"), + arg_lit0("1", "buf", "Use the data in the buffer"), arg_lit0("r", "rev", "Reverse the bit order for data blocks"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); - sampleData = !arg_get_lit(ctx,1); - fwd = arg_get_lit(ctx,2); + sampleData = !arg_get_lit(ctx, 1); + fwd = arg_get_lit(ctx, 2); // setup and sample data from Proxmark // if not directed to existing sample/graphbuffer @@ -1955,26 +1955,26 @@ int CmdEM4x05Sniff(const char *Cmd) { haveData = false; pwd = false; - idx = em4x05_Sniff_GetNextBitStart (idx, GraphTraceLen, GraphBuffer, &pulseSamples); + idx = em4x05_Sniff_GetNextBitStart(idx, GraphTraceLen, GraphBuffer, &pulseSamples); pktOffset = idx; if (pulseSamples >= 10) { // Should be 18 so a bit less to allow for processing - + // Use first bit to get "0" bit samples as a reference ZeroWidth = idx; - idx = em4x05_Sniff_GetNextBitStart (idx, GraphTraceLen, GraphBuffer, &pulseSamples); + idx = em4x05_Sniff_GetNextBitStart(idx, GraphTraceLen, GraphBuffer, &pulseSamples); ZeroWidth = idx - ZeroWidth; if (ZeroWidth <= 50) { pktOffset -= ZeroWidth; - memset(bits,0x00,sizeof(bits)); + memset(bits, 0x00, sizeof(bits)); bitidx = 0; while ((idx < GraphTraceLen) && !eop) { CycleWidth = idx; - idx = em4x05_Sniff_GetNextBitStart (idx, GraphTraceLen, GraphBuffer, &pulseSamples); + idx = em4x05_Sniff_GetNextBitStart(idx, GraphTraceLen, GraphBuffer, &pulseSamples); CycleWidth = idx - CycleWidth; - if ((CycleWidth > 300) || (CycleWidth < (ZeroWidth-5))) { // to long or too short + if ((CycleWidth > 300) || (CycleWidth < (ZeroWidth - 5))) { // to long or too short eop = true; bits[bitidx++] = '0'; // Append last zero from the last bit find cmdText[0] = 0; @@ -1988,70 +1988,70 @@ int CmdEM4x05Sniff(const char *Cmd) { // -> disable 1010 11111111 0 11111111 0 11111111 0 11111111 0 00000000 0 // Check to see if we got the leading 0 - if (((strncmp (bits,"00011",5) == 0)&& (bitidx == 50)) || - ((strncmp (bits,"00101",5) == 0)&& (bitidx == 57)) || - ((strncmp (bits,"01001",5) == 0)&& (bitidx == 12)) || - ((strncmp (bits,"01100",5) == 0)&& (bitidx == 50)) || - ((strncmp (bits,"01010",5) == 0)&& (bitidx == 50))) { - memcpy (bits,&bits[1],bitidx-1); - bitidx--; - printf ("Trim leading 0\n"); + if (((strncmp(bits, "00011", 5) == 0) && (bitidx == 50)) || + ((strncmp(bits, "00101", 5) == 0) && (bitidx == 57)) || + ((strncmp(bits, "01001", 5) == 0) && (bitidx == 12)) || + ((strncmp(bits, "01100", 5) == 0) && (bitidx == 50)) || + ((strncmp(bits, "01010", 5) == 0) && (bitidx == 50))) { + memcpy(bits, &bits[1], bitidx - 1); + bitidx--; + printf("Trim leading 0\n"); } bits[bitidx] = 0; - // printf ("==> %s\n",bits); + // printf ("==> %s\n",bits); // logon - if ((strncmp (bits,"0011",4) == 0) && (bitidx == 49)) { + if ((strncmp(bits, "0011", 4) == 0) && (bitidx == 49)) { haveData = true; pwd = true; - sprintf (cmdText,"Logon"); - sprintf (blkAddr," "); - tmpValue = em4x05_Sniff_GetBlock (&bits[4], fwd); - sprintf (dataText,"%08X",tmpValue); + sprintf(cmdText, "Logon"); + sprintf(blkAddr, " "); + tmpValue = em4x05_Sniff_GetBlock(&bits[4], fwd); + sprintf(dataText, "%08X", tmpValue); } // write - if ((strncmp (bits,"0101",4) == 0) && (bitidx == 56)) { + if ((strncmp(bits, "0101", 4) == 0) && (bitidx == 56)) { haveData = true; - sprintf (cmdText,"Write"); + sprintf(cmdText, "Write"); tmpValue = (bits[4] - '0') + ((bits[5] - '0') << 1) + ((bits[6] - '0') << 2) + ((bits[7] - '0') << 3); - sprintf (blkAddr,"%d",tmpValue); + sprintf(blkAddr, "%d", tmpValue); if (tmpValue == 2) pwd = true; - tmpValue = em4x05_Sniff_GetBlock (&bits[11], fwd); - sprintf (dataText,"%08X",tmpValue); + tmpValue = em4x05_Sniff_GetBlock(&bits[11], fwd); + sprintf(dataText, "%08X", tmpValue); } // read - if ((strncmp (bits,"1001",4) == 0) && (bitidx == 11)) { + if ((strncmp(bits, "1001", 4) == 0) && (bitidx == 11)) { haveData = true; pwd = false; - sprintf (cmdText,"Read"); + sprintf(cmdText, "Read"); tmpValue = (bits[4] - '0') + ((bits[5] - '0') << 1) + ((bits[6] - '0') << 2) + ((bits[7] - '0') << 3); - sprintf (blkAddr,"%d",tmpValue); - sprintf (dataText," "); + sprintf(blkAddr, "%d", tmpValue); + sprintf(dataText, " "); } // protect - if ((strncmp (bits,"1100",4) == 0) && (bitidx == 49)) { + if ((strncmp(bits, "1100", 4) == 0) && (bitidx == 49)) { haveData = true; pwd = false; - sprintf (cmdText,"Protect"); - sprintf (blkAddr," "); - tmpValue = em4x05_Sniff_GetBlock (&bits[11], fwd); - sprintf (dataText,"%08X",tmpValue); + sprintf(cmdText, "Protect"); + sprintf(blkAddr, " "); + tmpValue = em4x05_Sniff_GetBlock(&bits[11], fwd); + sprintf(dataText, "%08X", tmpValue); } // disable - if ((strncmp (bits,"1010",4) == 0) && (bitidx == 49)) { + if ((strncmp(bits, "1010", 4) == 0) && (bitidx == 49)) { haveData = true; pwd = false; - sprintf (cmdText,"Disable"); - sprintf (blkAddr," "); - tmpValue = em4x05_Sniff_GetBlock (&bits[11], fwd); - sprintf (dataText,"%08X",tmpValue); + sprintf(cmdText, "Disable"); + sprintf(blkAddr, " "); + tmpValue = em4x05_Sniff_GetBlock(&bits[11], fwd); + sprintf(dataText, "%08X", tmpValue); } - // bits[bitidx] = 0; + // bits[bitidx] = 0; } else { i = (CycleWidth - ZeroWidth) / 28; bits[bitidx++] = '0'; diff --git a/client/src/cmdlfhid.c b/client/src/cmdlfhid.c index 893b0fc1b..05a8c7dff 100644 --- a/client/src/cmdlfhid.c +++ b/client/src/cmdlfhid.c @@ -442,7 +442,7 @@ static int CmdHIDBrute(const char *Cmd) { } CLIParserFree(ctx); - + if (verbose) { PrintAndLogEx(INFO, "Wiegand format#.. %i", format_idx); PrintAndLogEx(INFO, "OEM#............. %u", cn_hi.OEM); diff --git a/client/src/cmdlfkeri.c b/client/src/cmdlfkeri.c index c0749976b..c482a7941 100644 --- a/client/src/cmdlfkeri.c +++ b/client/src/cmdlfkeri.c @@ -22,7 +22,7 @@ #include "protocols.h" // for T55xx config register definitions #include "lfdemod.h" // preamble test #include "cmdlft55xx.h" // verifywrite -#include "cmdlfem4x05.h" // +#include "cmdlfem4x05.h" // static int CmdHelp(const char *Cmd); typedef enum {Scramble = 0, Descramble = 1} KeriMSScramble_t; @@ -154,7 +154,7 @@ int demodKeri(bool verbose) { raw1 = bytebits_to_byte(DemodBuffer, 32); raw2 = bytebits_to_byte(DemodBuffer + 32, 32); - + CmdPrintDemodBuff("x"); } @@ -166,7 +166,7 @@ int demodKeri(bool verbose) { ID &= 0x7FFFFFFF; PrintAndLogEx(SUCCESS, "KERI - Internal ID: " _GREEN_("%u") ", Raw: %08X%08X", ID, raw1, raw2); - + // Just need to the low 32 bits without the 111 trailer CmdKeriMSScramble(Descramble, &fc, &cardid, &raw2); @@ -227,12 +227,12 @@ static int CmdKeriClone(const char *Cmd) { char cardtype[16] = {"T55x7"}; if (arg_get_lit(ctx, 1)) { blocks[0] = T5555_FIXED | T5555_MODULATION_PSK1 | T5555_SET_BITRATE(32) | T5555_PSK_RF_2 | 2 << T5555_MAXBLOCK_SHIFT; - snprintf(cardtype, sizeof(cardtype) ,"Q5/T5555"); + snprintf(cardtype, sizeof(cardtype), "Q5/T5555"); q5 = true; } if (arg_get_lit(ctx, 5)) { blocks[0] = EM4305_KERI_CONFIG_BLOCK; - snprintf(cardtype, sizeof(cardtype) ,"EM4305/4469"); + snprintf(cardtype, sizeof(cardtype), "EM4305/4469"); em = true; } @@ -242,7 +242,7 @@ static int CmdKeriClone(const char *Cmd) { fc = arg_get_int_def(ctx, 3, 0); cid = arg_get_int_def(ctx, 4, 0); CLIParserFree(ctx); - + if (q5 && em) { PrintAndLogEx(FAILED, "Can't specify both Q5 and EM4305 at the same time"); return PM3_EINVARG; @@ -278,7 +278,7 @@ static int CmdKeriClone(const char *Cmd) { } else { res = clone_t55xx_tag(blocks, ARRAYLEN(blocks)); } - + PrintAndLogEx(SUCCESS, "Done"); PrintAndLogEx(HINT, "Hint: try " _YELLOW_("`lf keri read`") " to verify"); return res; diff --git a/client/src/cmdlft55xx.c b/client/src/cmdlft55xx.c index 17c2373e0..ab1a86fbd 100644 --- a/client/src/cmdlft55xx.c +++ b/client/src/cmdlft55xx.c @@ -3041,8 +3041,8 @@ static int CmdT55xxChkPwds(const char *Cmd) { } if (errors) return usage_t55xx_chk(); - - if (strlen(filename) == 0){ + + if (strlen(filename) == 0) { snprintf(filename, sizeof(filename), "t55xx_default_pwds"); use_pwd_file = true; } @@ -3133,9 +3133,9 @@ static int CmdT55xxChkPwds(const char *Cmd) { return PM3_ESOFT; } - + PrintAndLogEx(INFO, "press " _YELLOW_("'enter'") " to cancel the command"); - + for (uint32_t c = 0; c < keycount; ++c) { if (!session.pm3_present) { diff --git a/client/src/cmdlfvisa2000.c b/client/src/cmdlfvisa2000.c index 5b6715ab6..7fc3f89a5 100644 --- a/client/src/cmdlfvisa2000.c +++ b/client/src/cmdlfvisa2000.c @@ -187,21 +187,21 @@ static int CmdVisa2kClone(const char *Cmd) { bool q5 = tolower(param_getchar(Cmd, 1)) == 'q'; if (q5) { blocks[0] = T5555_FIXED | T5555_MODULATION_MANCHESTER | T5555_SET_BITRATE(64) | T5555_ST_TERMINATOR | 3 << T5555_MAXBLOCK_SHIFT; - snprintf(cardtype, sizeof(cardtype) ,"Q5/T5555"); + snprintf(cardtype, sizeof(cardtype), "Q5/T5555"); } // EM4305 bool em = tolower(param_getchar(Cmd, 1)) == 'e'; if (em) { blocks[0] = EM4305_VISA2000_CONFIG_BLOCK; - snprintf(cardtype, sizeof(cardtype) ,"EM4305/4469"); + snprintf(cardtype, sizeof(cardtype), "EM4305/4469"); } - + if (q5 && em) { PrintAndLogEx(FAILED, "Can't specify both Q5 and EM4305 at the same time"); return PM3_EINVARG; } - + blocks[2] = id; blocks[3] = (visa_parity(id) << 4) | visa_chksum(id); diff --git a/client/src/cmdsmartcard.c b/client/src/cmdsmartcard.c index 9959fe49b..90bbed6e6 100644 --- a/client/src/cmdsmartcard.c +++ b/client/src/cmdsmartcard.c @@ -633,24 +633,24 @@ static int CmdSmartUpgrade(const char *Cmd) { uint32_t bytes_remaining = firmware_size; while (bytes_remaining > 0) { - + struct { uint32_t idx; uint32_t bytes_in_packet; uint16_t crc; - uint8_t data[400]; + uint8_t data[400]; } PACKED upload; - + uint32_t bytes_in_packet = MIN(sizeof(upload.data), bytes_remaining); upload.idx = index + bytes_sent; upload.bytes_in_packet = bytes_in_packet; memcpy(upload.data, firmware + bytes_sent, bytes_in_packet); - + uint8_t a = 0, b = 0; compute_crc(CRC_14443_A, upload.data, bytes_in_packet, &a, &b); upload.crc = (a << 8 | b); - + clearCommandBuffer(); SendCommandNG(CMD_SMART_UPLOAD, (uint8_t *)&upload, sizeof(upload)); if (!WaitForResponseTimeout(CMD_SMART_UPLOAD, &resp, 2000)) { @@ -658,7 +658,7 @@ static int CmdSmartUpgrade(const char *Cmd) { free(firmware); return PM3_ETIMEOUT; } - + if (resp.status != PM3_SUCCESS) { PrintAndLogEx(WARNING, "uploading to device failed"); free(firmware); @@ -671,25 +671,25 @@ static int CmdSmartUpgrade(const char *Cmd) { PrintAndLogEx(NORMAL, ""); PrintAndLogEx(SUCCESS, "Sim module firmware updating, don\'t turn off your PM3!"); - // trigger the firmware upgrade + // trigger the firmware upgrade clearCommandBuffer(); struct { uint16_t fw_size; uint16_t crc; } PACKED payload; - payload.fw_size = firmware_size; + payload.fw_size = firmware_size; uint8_t a = 0, b = 0; compute_crc(CRC_14443_A, firmware, firmware_size, &a, &b); payload.crc = (a << 8 | b); - + free(firmware); SendCommandNG(CMD_SMART_UPGRADE, (uint8_t *)&payload, sizeof(payload)); if (!WaitForResponseTimeout(CMD_SMART_UPGRADE, &resp, 2500)) { PrintAndLogEx(WARNING, "timeout while waiting for reply."); return PM3_ETIMEOUT; } - + if (resp.status == PM3_SUCCESS) { PrintAndLogEx(SUCCESS, "Sim module firmware upgrade " _GREEN_("successful")); PrintAndLogEx(HINT, "run " _YELLOW_("`hw status`") " to validate the fw version "); @@ -843,7 +843,7 @@ static int CmdSmartSetClock(const char *Cmd) { payload.new_clk = new_clk; clearCommandBuffer(); - SendCommandNG(CMD_SMART_SETCLOCK, (uint8_t*)&payload, sizeof(payload)); + SendCommandNG(CMD_SMART_SETCLOCK, (uint8_t *)&payload, sizeof(payload)); PacketResponseNG resp; if (!WaitForResponseTimeout(CMD_SMART_SETCLOCK, &resp, 2500)) { PrintAndLogEx(WARNING, "smart card select failed"); diff --git a/client/src/wiegand_formats.c b/client/src/wiegand_formats.c index c716cc57f..cd02370c0 100644 --- a/client/src/wiegand_formats.c +++ b/client/src/wiegand_formats.c @@ -618,7 +618,7 @@ static bool Pack_Optus(wiegand_card_t *card, wiegand_message_t *packed) { packed->Length = 34; // Set number of bits set_linear_field(packed, card->CardNumber, 1, 16); set_linear_field(packed, card->FacilityCode, 22, 11); - + return add_HID_header(packed); } @@ -673,14 +673,14 @@ static bool Pack_bqt(wiegand_card_t *card, wiegand_message_t *packed) { set_linear_field(packed, card->FacilityCode, 1, 8); set_linear_field(packed, card->CardNumber, 9, 24); - + set_bit_by_position(packed, evenparity32(get_linear_field(packed, 1, 16)) , 0); set_bit_by_position(packed, oddparity32(get_linear_field(packed, 17, 16)) , 33); - + return add_HID_header(packed); } @@ -691,7 +691,7 @@ static bool Unpack_bqt(wiegand_message_t *packed, wiegand_card_t *card) { card->FacilityCode = get_linear_field(packed, 1, 8); card->CardNumber = get_linear_field(packed, 9, 24); - + card->ParityValid = (get_bit_by_position(packed, 0) == evenparity32(get_linear_field(packed, 1, 16))) && (get_bit_by_position(packed, 33) == oddparity32(get_linear_field(packed, 17, 16))); @@ -707,9 +707,9 @@ static const cardformat_t FormatTable[] = { {"Kastle", Pack_Kastle, Unpack_Kastle, "Kastle 32-bit", {1, 1, 1, 0, 1}}, // from @xilni; PR #23 on RfidResearchGroup/proxmark3 {"D10202", Pack_D10202, Unpack_D10202, "HID D10202 33-bit", {1, 1, 0, 0, 1}}, // from cardinfo.barkweb.com.au {"H10306", Pack_H10306, Unpack_H10306, "HID H10306 34-bit", {1, 1, 0, 0, 1}}, // imported from old pack/unpack - {"N10002", Pack_N10002, Unpack_N10002, "HID N10002 34-bit", {1, 1, 0, 0, 0}}, // from cardinfo.barkweb.com.au + {"N10002", Pack_N10002, Unpack_N10002, "HID N10002 34-bit", {1, 1, 0, 0, 0}}, // from cardinfo.barkweb.com.au {"Optus34", Pack_Optus, Unpack_Optus, "Indala Optus 34-bit", {1, 1, 0, 0, 0}}, // from cardinfo.barkweb.com.au - {"Smartpass", Pack_Smartpass, Unpack_Smartpass, "Cardkey Smartpass 34-bit", {1, 1, 1, 0, 0}}, // from cardinfo.barkweb.com.au + {"Smartpass", Pack_Smartpass, Unpack_Smartpass, "Cardkey Smartpass 34-bit", {1, 1, 1, 0, 0}}, // from cardinfo.barkweb.com.au {"BQT", Pack_bqt, Unpack_bqt, "BQT 34-bit", {1, 1, 0, 0, 1}}, // from cardinfo.barkweb.com.au {"C1k35s", Pack_C1k35s, Unpack_C1k35s, "HID Corporate 1000 35-bit standard layout", {1, 1, 0, 0, 1}}, // imported from old pack/unpack {"C15001", Pack_C15001, Unpack_C15001, "HID KeyScan 36-bit", {1, 1, 0, 1, 1}}, // from Proxmark forums diff --git a/doc/commands.md b/doc/commands.md index e2ca72107..22149f373 100644 --- a/doc/commands.md +++ b/doc/commands.md @@ -160,7 +160,7 @@ Check column "offline" for their availability. |`hf 14b reader `|N |`Act as a 14443B reader to identify a tag` |`hf 14b sim `|N |`Fake ISO 14443B tag` |`hf 14b sniff `|N |`Eavesdrop ISO 14443B` -|`hf 14b sriread `|N |`Read contents of a SRI512 | SRIX4K tag` +|`hf 14b rdbl `|N |`Read SRI512/SRIX4x block` |`hf 14b sriwrite `|N |`Write data to a SRI512 | SRIX4K tag` @@ -203,7 +203,7 @@ Check column "offline" for their availability. ### hf felica - { ISO18092 / Felica RFIDs... } + { ISO18092 / FeliCa RFIDs... } |command |offline |description |------- |------- |----------- @@ -325,6 +325,7 @@ Check column "offline" for their availability. |`hf mf chk `|N |`Check keys` |`hf mf fchk `|N |`Check keys fast, targets all keys on card` |`hf mf decrypt `|Y |`[nt] [ar_enc] [at_enc] [data] - to decrypt sniff or trace` +|`hf mf supercard `|N |`Extract info from a `super card`` |`hf mf auth4 `|N |`ISO14443-4 AES authentication` |`hf mf dump `|N |`Dump MIFARE Classic tag to binary file` |`hf mf mad `|N |`Checks and prints MAD` @@ -591,10 +592,12 @@ Check column "offline" for their availability. |`lf em 4x05_read `|N |`read word data from EM4x05/EM4x69` |`lf em 4x05_write `|N |`write word data to EM4x05/EM4x69` |`lf em 4x05_unlock `|N |`execute tear off against EM4x05/EM4x69` +|`lf em 4x05_sniff `|Y |`Attempt to recover em4x05 commands from sample buffer` +|`lf em 4x05_brute `|N |`Bruteforce password` |`lf em 4x50_dump `|N |`dump EM4x50 tag` |`lf em 4x50_info `|N |`tag information EM4x50` |`lf em 4x50_write `|N |`write word data to EM4x50` -|`lf em 4x50_write_password`|N |`change passwword of EM4x50 tag` +|`lf em 4x50_write_password`|N |`change password of EM4x50 tag` |`lf em 4x50_read `|N |`read word data from EM4x50` |`lf em 4x50_wipe `|N |`wipe data from EM4x50`