]> git.zerfleddert.de Git - proxmark3-svn/commitdiff
added cmdhflist file
authormerlokk <olegmsn@gmail.com>
Fri, 9 Feb 2018 15:37:31 +0000 (17:37 +0200)
committermerlokk <olegmsn@gmail.com>
Fri, 9 Feb 2018 15:37:31 +0000 (17:37 +0200)
client/Makefile
client/cmdhf.c
client/cmdhflist.c [new file with mode: 0644]
client/cmdhflist.h [new file with mode: 0644]
common/protocols.h

index bf64280304c5683212529ad2fa82f8de9e123074..bf3c8d36376c8a12157ad9062a2f9fdaddf6867a 100644 (file)
@@ -128,6 +128,7 @@ CMDSRCS =   crapto1/crapto1.c\
                        emv/test/cda_test.c\
                        emv/cmdemv.c\
                        cmdhf.c \
+                       cmdhflist.c \
                        cmdhf14a.c \
                        cmdhf14b.c \
                        cmdhf15.c \
index 7a2f3252f368e0648e28b68eaeb693af01a27c21..34d95c50028b93e60016ac6d54226e4dff0b9e0e 100644 (file)
@@ -1,5 +1,6 @@
 //-----------------------------------------------------------------------------
 // Copyright (C) 2010 iZsh <izsh at fail0verflow.com>
+// Merlok - 2017
 //
 // This code is licensed to you under the terms of the GNU GPL, version 2 or,
 // at your option, any later version. See the LICENSE.txt file for the text of
@@ -31,6 +32,7 @@
 #include "cmdhftopaz.h"
 #include "protocols.h"
 #include "emv/cmdemv.h"
+#include "cmdhflist.h"
 
 static int CmdHelp(const char *Cmd);
 
@@ -466,6 +468,7 @@ uint16_t printTraceLine(uint16_t tracepos, uint16_t traceLen, uint8_t *trace, ui
                        case TOPAZ:
                                crcStatus = iso14443B_CRC_check(isResponse, frame, data_len); 
                                break;
+                       case PROTO_MIFARE:
                        case ISO_14443A:
                                crcStatus = iso14443A_CRC_check(isResponse, frame, data_len);
                                break;
@@ -518,6 +521,7 @@ uint16_t printTraceLine(uint16_t tracepos, uint16_t traceLen, uint8_t *trace, ui
        {
                switch(protocol) {
                        case ICLASS:            annotateIclass(explanation,sizeof(explanation),frame,data_len); break;
+                       case PROTO_MIFARE:
                        case ISO_14443A:        annotateIso14443a(explanation,sizeof(explanation),frame,data_len); break;
                        case ISO_14443B:        annotateIso14443b(explanation,sizeof(explanation),frame,data_len); break;
                        case TOPAZ:                     annotateTopaz(explanation,sizeof(explanation),frame,data_len); break;
@@ -583,6 +587,8 @@ int CmdHFList(const char *Cmd)
        if(!errors) {
                if(strcmp(type, "iclass") == 0) {
                        protocol = ICLASS;
+               } else if(strcmp(type, "mf") == 0) {
+                       protocol = PROTO_MIFARE;
                } else if(strcmp(type, "14a") == 0) {
                        protocol = ISO_14443A;
                } else if(strcmp(type, "14b") == 0)     {
@@ -604,6 +610,7 @@ int CmdHFList(const char *Cmd)
                PrintAndLog("Supported <protocol> values:");
                PrintAndLog("    raw    - just show raw data without annotations");
                PrintAndLog("    14a    - interpret data as iso14443a communications");
+               PrintAndLog("    mf     - interpret data as iso14443a communications and decrypt crypto1 stream");
                PrintAndLog("    14b    - interpret data as iso14443b communications");
                PrintAndLog("    iclass - interpret data as iclass communications");
                PrintAndLog("    topaz  - interpret data as topaz communications");
diff --git a/client/cmdhflist.c b/client/cmdhflist.c
new file mode 100644 (file)
index 0000000..86562e4
--- /dev/null
@@ -0,0 +1,17 @@
+//-----------------------------------------------------------------------------
+// Copyright (C) Merlok - 2017
+//
+// This code is licensed to you under the terms of the GNU GPL, version 2 or,
+// at your option, any later version. See the LICENSE.txt file for the text of
+// the license.
+//-----------------------------------------------------------------------------
+// Command: hf mf list. It shows data from arm buffer.
+//-----------------------------------------------------------------------------
+
+#include "cmdhflist.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+
+
diff --git a/client/cmdhflist.h b/client/cmdhflist.h
new file mode 100644 (file)
index 0000000..138e559
--- /dev/null
@@ -0,0 +1,11 @@
+//-----------------------------------------------------------------------------
+// Copyright (C) Merlok - 2017
+//
+// This code is licensed to you under the terms of the GNU GPL, version 2 or,
+// at your option, any later version. See the LICENSE.txt file for the text of
+// the license.
+//-----------------------------------------------------------------------------
+// Command: hf mf list. It shows data from arm buffer.
+//-----------------------------------------------------------------------------
+
+
index 31252ad380fd3dc153518c91001ac46f42e22b97..57e6011f595a25279e21700de3998ede088d6d21 100644 (file)
@@ -200,10 +200,11 @@ NXP/Philips CUSTOM COMMANDS
 #define TOPAZ_WRITE_NE8                                        0x1B    // Write-no-erase (eight bytes)
 
 
-#define ISO_14443A     0
-#define ICLASS         1
-#define ISO_14443B     2
-#define TOPAZ          3
+#define ISO_14443A             0
+#define ICLASS                 1
+#define ISO_14443B             2
+#define TOPAZ                  3
+#define PROTO_MIFARE   4
 
 //-- Picopass fuses
 #define FUSE_FPERS   0x80
Impressum, Datenschutz