X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/c872d8c1773591e976a508755ce43664f4083da6..73a2a84f75f37c4c4397e06b825d4356507d497b:/client/nonce2key/nonce2key.c

diff --git a/client/nonce2key/nonce2key.c b/client/nonce2key/nonce2key.c
index 3750366b..5647c424 100644
--- a/client/nonce2key/nonce2key.c
+++ b/client/nonce2key/nonce2key.c
@@ -164,14 +164,6 @@ bool mfkey32(nonces_t data, uint64_t *outputkey) {
 	clock_t t1 = clock();
 	bool isSuccess = FALSE;
 	uint8_t counter=0;
-	//PrintAndLog("Enter mfkey32");
-	//PrintAndLog("Trying sector %d, cuid %08x, nt %08x, nr %08x, ar %08x, nr2 %08x, ar2 %08x",data.sector, uid, nt,nr0_enc,ar0_enc,nr1_enc,ar1_enc);
-	// Generate lfsr succesors of the tag challenge
-	//prng_successor(nt, 64);
-	//prng_successor(nt, 96);
-
-	// Extract the keystream from the messages
-	//ks2 = ar0_enc ^ prng_successor(nt, 64);
 
 	s = lfsr_recovery32(ar0_enc ^ prng_successor(nt, 64), 0);
 
@@ -189,19 +181,20 @@ bool mfkey32(nonces_t data, uint64_t *outputkey) {
 			if (counter==20) break;
 		}
 	}
-	//free(s);
 	isSuccess = (counter == 1);
 	t1 = clock() - t1;
 	//if ( t1 > 0 ) PrintAndLog("Time in mfkey32: %.0f ticks \nFound %d possible keys", (float)t1, counter);
 	*outputkey = ( isSuccess ) ? outkey : 0;
 	crypto1_destroy(s);
+	/* //un-comment to save all keys to a stats.txt file 
 	FILE *fout;
 	if ((fout = fopen("stats.txt","ab")) == NULL) { 
 		PrintAndLog("Could not create file name stats.txt");
 		return 1;
 	}
-	fprintf(fout, "mfkey32,%d,%d,%s,%04x%08x,%.0Lf\r\n",counter,data.sector,(data.keytype) ? "B" : "A", (uint32_t)(outkey>>32) & 0xFFFF,(uint32_t)(outkey&0xFFFFFFFF),(long double)t1);
+	fprintf(fout, "mfkey32,%d,%08x,%d,%s,%04x%08x,%.0Lf\r\n", counter, data.cuid, data.sector, (data.keytype) ? "B" : "A", (uint32_t)(outkey>>32) & 0xFFFF,(uint32_t)(outkey&0xFFFFFFFF),(long double)t1);
 	fclose(fout);
+	*/
 	return isSuccess;
 }
 
@@ -213,7 +206,6 @@ bool tryMfk32_moebius(nonces_t data, uint64_t *outputkey) {
 	uint32_t nt0     = data.nonce;  // first tag challenge (nonce)
 	uint32_t nr0_enc = data.nr;  // first encrypted reader challenge
 	uint32_t ar0_enc = data.ar; // first encrypted reader response
-	//uint32_t uid1    = le32toh(data+16);
 	uint32_t nt1     = data.nonce2; // second tag challenge (nonce)
 	uint32_t nr1_enc = data.nr2; // second encrypted reader challenge
 	uint32_t ar1_enc = data.ar2; // second encrypted reader response	
@@ -246,13 +238,15 @@ bool tryMfk32_moebius(nonces_t data, uint64_t *outputkey) {
 	//if ( t1 > 0 ) PrintAndLog("Time in mfkey32_moebius: %.0f ticks \nFound %d possible keys", (float)t1,counter);
 	*outputkey = ( isSuccess ) ? outkey : 0;
 	crypto1_destroy(s);
+	/* // un-comment to output all keys to stats.txt
 	FILE *fout;
 	if ((fout = fopen("stats.txt","ab")) == NULL) { 
 		PrintAndLog("Could not create file name stats.txt");
 		return 1;
 	}
-	fprintf(fout, "moebius,%d,%d,%s,%04x%08x,%0.Lf\r\n",counter,data.sector, (data.keytype) ? "B" : "A", (uint32_t) (outkey>>32),(uint32_t)(outkey&0xFFFFFFFF),(long double)t1);
+	fprintf(fout, "moebius,%d,%08x,%d,%s,%04x%08x,%0.Lf\r\n", counter, data.cuid, data.sector, (data.keytype) ? "B" : "A", (uint32_t) (outkey>>32),(uint32_t)(outkey&0xFFFFFFFF),(long double)t1);
 	fclose(fout);
+	*/
 	return isSuccess;
 }