Files
proxmark3/armsrc
Mistial DeveloperandClaude Fable 5.1 e588085c10 hf mfdes sim: host driven test hook with injectable randomness
The DESFire simulation could only be reached over the air. A conformance
suite that has recorded a genuine card's session needs to replay it byte
for byte, which takes two things the simulation did not have: a way in
over USB, and control of the card's random draws.

CMD_HF_DESFIRE_SIM_TEST carries one operation per packet into the same
state machine the RF loop drives: BEGIN, SCAN, APDU, RANDOM, FIELDOFF,
STATE, END. SCAN runs the RF-reset path (init, reset, random id, FSD) and
APDU goes through desfire_sim_apdu(), so native and ISO 7816 wrapped
commands answer exactly as they do on air. No FPGA involvement.

Randomness goes through a small host-fed byte queue: RndB and the random
id draw from it first and fall back to the existing fixed value or tick
counter when it is short, raising a sticky underflow flag. With nothing
queued the RF simulation is byte-identical to before; SimulateDesfireTag()
clears the queue so a host session cannot leak into a reader session.

Co-Authored-By: Claude Fable 5.1 (claude-fable-5-1) <noreply@anthropic.com>
2026-09-16 22:04:01 +02:00
..
…
2026-09-16 19:00:50 +02:00
2026-08-19 15:32:39 +02:00
2026-09-05 18:09:46 +02:00
2026-09-15 23:59:01 +02:00
2026-08-28 13:10:24 +02:00
2026-08-28 13:10:24 +02:00
2026-09-04 06:21:20 +02:00
2026-09-16 19:00:50 +02:00
2025-12-21 02:58:56 -07:00
2025-12-21 00:34:11 -07:00
2026-03-24 14:21:54 +07:00
2026-09-01 17:57:31 +02:00
2024-05-14 12:32:57 +02:00
2026-09-15 08:36:13 +02:00
2023-08-08 23:03:34 -07:00
2025-03-16 01:05:55 -07:00
2026-09-15 20:41:22 +02:00
2025-03-21 11:25:31 +01:00
2026-03-29 09:38:09 +07:00
2026-09-15 08:10:09 +02:00
2023-08-08 23:38:26 -07:00
2026-08-28 22:35:08 +02:00
2026-06-12 18:31:57 +03:00
2026-08-19 15:32:39 +02:00
2026-06-12 18:31:57 +03:00
2022-01-06 02:20:38 +01:00
2022-01-06 02:20:38 +01:00
2026-09-16 19:00:50 +02:00
2022-01-06 02:20:38 +01:00
2026-09-15 08:36:13 +02:00
2023-08-09 00:03:48 -07:00
2026-09-15 08:36:13 +02:00
2026-09-15 08:21:25 +02:00
2026-09-16 19:00:50 +02:00
2026-09-16 19:00:50 +02:00
2026-09-16 19:00:50 +02:00
2024-11-21 19:23:03 +00:00
2026-09-16 19:00:50 +02:00
2026-09-16 11:26:16 +02:00
2026-08-29 15:00:03 +02:00
2026-09-16 19:00:50 +02:00
2026-09-15 22:57:37 +02:00
2026-09-15 08:10:09 +02:00
2026-09-15 08:21:25 +02:00
2026-08-19 15:32:39 +02:00
2022-01-06 02:20:38 +01:00
2026-09-16 19:00:50 +02:00
2026-08-19 15:32:39 +02:00
2026-09-15 08:17:05 +02:00
2026-09-14 19:56:57 +02:00
2022-01-06 02:20:38 +01:00
2026-09-16 11:00:31 +02:00
2026-08-29 16:03:00 +02:00
2026-08-19 15:32:39 +02:00
2022-01-06 18:18:48 +01:00
2022-01-06 20:05:26 +01:00
2024-05-14 10:10:44 +02:00
2022-01-06 15:40:11 +01:00
2025-03-18 08:11:06 +01:00
2025-03-25 10:12:16 +01:00
2022-01-06 02:20:38 +01:00
2026-09-16 19:00:50 +02:00
2026-08-28 13:10:24 +02:00
2026-09-15 08:21:25 +02:00
2026-09-01 13:34:02 +02:00
2026-09-08 16:04:45 +08:00
2026-09-05 22:31:52 +08:00
2026-09-15 08:17:05 +02:00
2026-04-13 09:35:02 +02:00
2026-08-19 15:32:39 +02:00
2025-12-21 04:26:44 -07:00
2022-01-06 02:20:38 +01:00
2022-01-06 02:20:38 +01:00
2025-01-14 18:01:09 -08:00
2025-01-14 18:01:09 -08:00
2022-01-06 02:20:38 +01:00
2026-09-15 08:17:05 +02:00
2026-08-19 15:32:39 +02:00
2022-01-06 02:20:38 +01:00
2026-09-15 08:36:13 +02:00
2026-09-01 13:34:23 +02:00
2025-04-21 23:17:47 +10:00
2026-09-01 13:32:49 +02:00
2022-01-06 02:20:38 +01:00
2022-01-06 02:20:38 +01:00
2022-01-06 15:40:11 +01:00
2022-01-06 15:40:11 +01:00