]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - tools/nonce2key/nonce2key.c
Keep the PM3 code repo clean of website/wiki stuff.
[proxmark3-svn] / tools / nonce2key / nonce2key.c
index afe1b7ef800c87be2286277ffb077fb90cb5d9d0..32ea0a68dd454d2a77a335b93c31f2aca9d2ea0e 100644 (file)
@@ -1,5 +1,7 @@
 #include "crapto1.h"
 #include "crapto1.h"
+#define __STDC_FORMAT_MACROS
 #include <inttypes.h>
 #include <inttypes.h>
+#define llx PRIx64
 #include <stdio.h>
 typedef unsigned char byte_t;
 
 #include <stdio.h>
 typedef unsigned char byte_t;
 
@@ -18,13 +20,13 @@ int main(const int argc, const char* argv[]) {
   }
   sscanf(argv[1],"%08x",&uid);
   sscanf(argv[2],"%08x",&nt);
   }
   sscanf(argv[1],"%08x",&uid);
   sscanf(argv[2],"%08x",&nt);
-  sscanf(argv[3],"%016llx",&par_info);
-  sscanf(argv[4],"%016llx",&ks_info);
+  sscanf(argv[3],"%016"llx,&par_info);
+  sscanf(argv[4],"%016"llx,&ks_info);
   
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
   
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
-  printf("\nuid(%08x) nt(%08x) par(%016llx) ks(%016llx)\n\n",uid,nt,par_info,ks_info);
+  printf("\nuid(%08x) nt(%08x) par(%016"llx") ks(%016"llx")\n\n",uid,nt,par_info,ks_info);
 
   for (pos=0; pos<8; pos++)
   {
 
   for (pos=0; pos<8; pos++)
   {
@@ -50,7 +52,7 @@ int main(const int argc, const char* argv[]) {
   state = lfsr_common_prefix(nr,rr,ks3x,par);
   lfsr_rollback_word(state,uid^nt,0);
   crypto1_get_lfsr(state,&key_recovered);
   state = lfsr_common_prefix(nr,rr,ks3x,par);
   lfsr_rollback_word(state,uid^nt,0);
   crypto1_get_lfsr(state,&key_recovered);
-  printf("\nkey recovered: %012llx\n\n",key_recovered);
+  printf("\nkey recovered: %012"llx"\n\n",key_recovered);
   crypto1_destroy(state);
   
   return 0;
   crypto1_destroy(state);
   
   return 0;
Impressum, Datenschutz