Iclass decrypt error, shouldn't have decrypted block 6 according to Heart of darkness-paper

This commit is contained in:
Martin Holst Swende 2015-02-17 23:17:43 +01:00
parent 41524d8a39
commit 9a9bcea82b

View file

@ -451,11 +451,12 @@ int usage_hf_iclass_decrypt()
{
PrintAndLog("Usage: hf iclass decrypt f <tagdump> o ");
PrintAndLog("");
PrintAndLog("In order to use this function, the file 'iclass_decryptionkey.bin must reside");
PrintAndLog("OBS! In order to use this function, the file 'iclass_decryptionkey.bin' must reside");
PrintAndLog("in the working directory. The file should be 16 bytes binary data");
PrintAndLog("");
PrintAndLog("example: hf iclass decrypt tagdump_12312342343.bin");
PrintAndLog("");
PrintAndLog("OBS! This is pretty stupid implementation, it tries to decrypt every block after block 5. ");
PrintAndLog("OBS! This is pretty stupid implementation, it tries to decrypt every block after block 6. ");
PrintAndLog("Correct behaviour would be to decrypt only the application areas where the key is valid,");
PrintAndLog("which is defined by the configuration block.");
return 1;
@ -527,7 +528,7 @@ int CmdHFiClassDecrypt(const char *Cmd)
size_t blocknum =0;
while(bytes_read == 8)
{
if(blocknum < 6)
if(blocknum < 7)
{
memcpy(decrypted+(blocknum*8), enc_dump, 8);
}else{