X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/a61b4976bd2085bf0495855b48fcad0d9ed4572e..680433820190cca9441042cb835fb0d229f674a3:/client/loclass/ikeys.c?ds=sidebyside diff --git a/client/loclass/ikeys.c b/client/loclass/ikeys.c index a55227ef..0ba788d7 100644 --- a/client/loclass/ikeys.c +++ b/client/loclass/ikeys.c @@ -403,7 +403,7 @@ void diversifyKey(uint8_t csn[8], uint8_t key[8], uint8_t div_key[8]) //Calculate HASH0(DES)) uint64_t crypt_csn = x_bytes_to_num(crypted_csn, 8); - uint64_t crypted_csn_swapped = swapZvalues(crypt_csn); + //uint64_t crypted_csn_swapped = swapZvalues(crypt_csn); hash0(crypt_csn,div_key); } @@ -740,9 +740,17 @@ int readKeyFile(uint8_t key[8]) FILE *f; int retval = 1; f = fopen("iclass_key.bin", "rb"); - if (f) - { - if(fread(key, sizeof(key), 1, f) == 1) return 0; + if (!f) { + return 0; + } + + size_t bytes_read = fread(key, sizeof(uint8_t), 8, f); + if ( bytes_read == 1) { + retval = 0; + } + if (f) { + fclose(f); + f = NULL; } return retval; } @@ -754,11 +762,9 @@ int doKeyTests(uint8_t debuglevel) prnlog("[+] Checking if the master key is present (iclass_key.bin)..."); uint8_t key[8] = {0}; - if(readKeyFile(key)) - { + if(readKeyFile(key)) { prnlog("[+] Master key not present, will not be able to do all testcases"); - }else - { + } else { //Test if it's the right key... uint8_t i;