CHG: added a verification to see if the found candidate key was able to validate against tag. If not ok, start darkside attack again.

This commit is contained in:
iceman1001 2016-08-24 14:10:30 +02:00
parent 63a1d80130
commit 760157f50b

View file

@ -239,6 +239,17 @@ start:
c.arg[0] = false;
goto start;
} else {
// nonce2key found a candidate key. Lets verify it.
uint8_t keyblock[] = {0,0,0,0,0,0};
num_to_bytes(r_key, 6, keyblock);
uint64_t key64 = 0;
int res = mfCheckKeys(blockNo, keytype - 0x60 , false, 1, keyblock, &key64);
if ( res > 0 ) {
PrintAndLog("Candidate Key found (%012"llx")", r_key);
PrintAndLog("Failing is expected to happen. Trying again ...");
goto start;
}
PrintAndLog("Found valid key: %012"llx" \n", r_key);
}
END: