mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-08-19 21:03:23 -07:00
added: readed blocks (password mode) into tag.sectors[]. 'lf hitag sim' simulates the readed blocks.
This commit is contained in:
parent
bde10a5057
commit
219a334de5
2 changed files with 20 additions and 10 deletions
|
@ -477,16 +477,26 @@ bool hitag2_password(byte_t* rx, const size_t rxlen, byte_t* tx, size_t* txlen)
|
|||
*txlen = 32;
|
||||
memcpy(tx,password,4);
|
||||
bPwd = true;
|
||||
memcpy(tag.sectors[blocknr],rx,4);
|
||||
blocknr++;
|
||||
} else {
|
||||
if (blocknr > 7) {
|
||||
DbpString("Read succesful!");
|
||||
// We are done... for now
|
||||
return false;
|
||||
}
|
||||
*txlen = 10;
|
||||
tx[0] = 0xc0 | (blocknr << 3) | ((blocknr^7) >> 2);
|
||||
tx[1] = ((blocknr^7) << 6);
|
||||
blocknr++;
|
||||
|
||||
if(blocknr == 1){
|
||||
//store password in block1, the TAG answers with Block3, but we need the password in memory
|
||||
memcpy(tag.sectors[blocknr],tx,4);
|
||||
}else{
|
||||
memcpy(tag.sectors[blocknr],rx,4);
|
||||
}
|
||||
|
||||
blocknr++;
|
||||
if (blocknr > 7) {
|
||||
DbpString("Read succesful!");
|
||||
// We are done... for now
|
||||
return false;
|
||||
}
|
||||
*txlen = 10;
|
||||
tx[0] = 0xc0 | (blocknr << 3) | ((blocknr^7) >> 2);
|
||||
tx[1] = ((blocknr^7) << 6);
|
||||
}
|
||||
} break;
|
||||
|
||||
|
|
|
@ -199,7 +199,7 @@ int CmdLFHitagReader(const char *Cmd) {
|
|||
PrintAndLog(" Hitag2 (2*)",htf);
|
||||
PrintAndLog(" 21 <password> (password mode)",htf);
|
||||
PrintAndLog(" 22 <nr> <ar> (authentication)",htf);
|
||||
PrintAndLog(" 23 <key> (authentication)",htf);
|
||||
PrintAndLog(" 23 <key> (authentication) key is in format: ISK high + ISK low",htf);
|
||||
PrintAndLog(" 25 (test recorded authentications)",htf);
|
||||
return 1;
|
||||
} break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue