mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-08-14 18:48:13 -07:00
lf viking clone - now supports clone to EM4305/4469 (untested)
This commit is contained in:
parent
63e92c187c
commit
b7c0d6aa5e
4 changed files with 28 additions and 10 deletions
|
@ -1037,10 +1037,11 @@ static void PacketReceived(PacketCommandNG *packet) {
|
|||
case CMD_LF_VIKING_CLONE: {
|
||||
struct p {
|
||||
bool Q5;
|
||||
bool EM;
|
||||
uint8_t blocks[8];
|
||||
} PACKED;
|
||||
struct p *payload = (struct p *)packet->data.asBytes;
|
||||
CopyVikingtoT55xx(payload->blocks, payload->Q5);
|
||||
CopyVikingtoT55xx(payload->blocks, payload->Q5, payload->EM);
|
||||
break;
|
||||
}
|
||||
case CMD_LF_COTAG_READ: {
|
||||
|
|
|
@ -2252,11 +2252,14 @@ void CopyHIDtoT55x7(uint32_t hi2, uint32_t hi, uint32_t lo, uint8_t longFMT) {
|
|||
}
|
||||
|
||||
// clone viking tag to T55xx
|
||||
void CopyVikingtoT55xx(uint8_t *blocks, uint8_t Q5) {
|
||||
void CopyVikingtoT55xx(uint8_t *blocks, bool q5, bool em) {
|
||||
|
||||
uint32_t data[] = {T55x7_BITRATE_RF_32 | T55x7_MODULATION_MANCHESTER | (2 << T55x7_MAXBLOCK_SHIFT), 0, 0};
|
||||
if (Q5)
|
||||
if (q5) {
|
||||
data[0] = T5555_SET_BITRATE(32) | T5555_MODULATION_MANCHESTER | 2 << T5555_MAXBLOCK_SHIFT;
|
||||
} else if (em) {
|
||||
data[0] = (EM4x05_SET_BITRATE(32) | EM4x05_MODULATION_MANCHESTER | EM4x05_SET_NUM_BLOCKS(2) );
|
||||
}
|
||||
|
||||
data[1] = bytes_to_num(blocks, 4);
|
||||
data[2] = bytes_to_num(blocks + 4, 4);
|
||||
|
|
|
@ -41,7 +41,7 @@ int lf_io_watch(int findone, uint32_t *high, uint32_t *low);
|
|||
|
||||
void CopyHIDtoT55x7(uint32_t hi2, uint32_t hi, uint32_t lo, uint8_t longFMT); // Clone an HID card to T5557/T5567
|
||||
|
||||
void CopyVikingtoT55xx(uint8_t *blocks, uint8_t Q5);
|
||||
void CopyVikingtoT55xx(uint8_t *blocks, bool q5, bool em);
|
||||
|
||||
int copy_em410x_to_t55xx(uint8_t card, uint8_t clock, uint32_t id_hi, uint32_t id_lo);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue