proxmark3/client/src
Mistial Developer e1598cd620
DESFire: fix value file operations and improve MAC mode compatibility
- Add auto-detection fallback for MAC mode in value operations
  When MAC mode fails with length errors, automatically retry with
  plain mode for better compatibility across different card types

- Fix MAC transmission behavior for value operations
  Remove CREDIT, LIMITED_CREDIT, and DEBIT from EV1D40TransmitMAC
  array to match real card behavior and prevent authentication issues

- Change default algorithm from DES to 2TDEA
  Real DESFire cards seem to use 2TDEA by default, improving
  out-of-the-box compatibility with factory cards

- Update help text for value commands to follow client patterns
  Standardize "Crypt algo (deft: 2TDEA)" format for consistency

- Add online test suite for DESFire value operations
  New pm3_online_tests.sh script validates value file creation,
  credit/debit operations in both plain and MAC modes with real cards
2025-07-19 08:39:47 -04:00
..
cipurse
crypto add aes256 2025-07-13 11:03:20 +02:00
emv added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
fido
iso7816 unify test - step 2 2025-03-25 10:17:42 +01:00
ksx6924
loclass added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
mifare DESFire: fix value file operations and improve MAC mode compatibility 2025-07-19 08:39:47 -04:00
nfc unify test - step 2 2025-03-25 10:17:42 +01:00
uart style 2025-07-10 11:52:39 +02:00
ui
aidsearch.c unify text - step 1 2025-03-25 10:12:16 +01:00
aidsearch.h
atrs.c unify text - step 1 2025-03-25 10:12:16 +01:00
atrs.h updated the ATR list and organized the changelog to prefered style 2025-06-07 12:08:12 +02:00
cmdanalyse.c unify text - step 1 2025-03-25 10:12:16 +01:00
cmdanalyse.h
cmdcrc.c unify text - step 1 2025-03-25 10:12:16 +01:00
cmdcrc.h
cmddata.c style 2025-07-13 15:55:44 +02:00
cmddata.h text 2025-07-13 11:29:29 +02:00
cmdflashmem.c added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdflashmem.h added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdflashmemspiffs.c unify text and hints for static enc nonces a bit more 2025-06-08 21:46:31 +02:00
cmdflashmemspiffs.h
cmdhf.c text 2025-07-01 16:43:42 +02:00
cmdhf.h
cmdhf14a.c hf mf info - dont try fudan cards 2025-06-29 23:38:33 +02:00
cmdhf14a.h reworked and improved the hf mfp chk key handling. reworked the nxp_detect_card technology function to enable other parts of the client to benefit from detecting card types. Like hf mf info or hf mf autopwn - two most common used commands. Now less waiting and more easily to know what next steps to do. 2025-06-09 15:36:44 +02:00
cmdhf14b.c style 2025-07-10 11:52:39 +02:00
cmdhf14b.h Updated hf iclass info for silicon check 2025-05-28 23:59:17 +08:00
cmdhf15.c hf 15 dump had an logic bug when reading the sysinfo response. It is always fixed size but the logic for handling the Information byte flags made it skip bytes when it wasnt 0x0F 2025-07-02 22:05:12 +02:00
cmdhf15.h style 2025-06-30 14:28:24 +02:00
cmdhfcipurse.c unify text and hints for static enc nonces a bit more 2025-06-08 21:46:31 +02:00
cmdhfcipurse.h
cmdhfcryptorf.c style 2025-07-10 11:52:39 +02:00
cmdhfcryptorf.h
cmdhfemrtd.c unify text and hints for static enc nonces a bit more 2025-06-08 21:46:31 +02:00
cmdhfemrtd.h
cmdhfepa.c unify test - step 2 2025-03-25 10:17:42 +01:00
cmdhfepa.h
cmdhffelica.c hf felica litedump: skip blocks that require Read After Authentication 2025-07-19 15:42:00 +09:00
cmdhffelica.h
cmdhffido.c unify text and hints for static enc nonces a bit more 2025-06-08 21:46:31 +02:00
cmdhffido.h
cmdhffudan.c style 2025-07-10 11:52:39 +02:00
cmdhffudan.h
cmdhfgallagher.c unify test - step 2 2025-03-25 10:17:42 +01:00
cmdhfgallagher.h
cmdhficlass.c style 2025-07-08 21:15:09 +02:00
cmdhficlass.h style 2025-02-18 18:41:09 +01:00
cmdhfict.c unify test - step 2 2025-03-25 10:17:42 +01:00
cmdhfict.h
cmdhfjooki.c added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdhfjooki.h
cmdhfksx6924.c unify text and hints for static enc nonces a bit more 2025-06-08 21:46:31 +02:00
cmdhfksx6924.h
cmdhflegic.c style 2025-07-08 21:15:09 +02:00
cmdhflegic.h
cmdhflist.c fix cpp warnings 2025-03-21 13:19:01 +01:00
cmdhflist.h updated trace list -t seos to also annotate ISO7816 2025-03-20 20:01:04 +01:00
cmdhflto.c style 2025-07-10 11:52:39 +02:00
cmdhflto.h
cmdhfmf.c hf mf info: fix backdoor detection when using non-default key 2025-07-15 10:44:19 +02:00
cmdhfmf.h reworked and improved the hf mfp chk key handling. reworked the nxp_detect_card technology function to enable other parts of the client to benefit from detecting card types. Like hf mf info or hf mf autopwn - two most common used commands. Now less waiting and more easily to know what next steps to do. 2025-06-09 15:36:44 +02:00
cmdhfmfdes.c DESFire: fix value file operations and improve MAC mode compatibility 2025-07-19 08:39:47 -04:00
cmdhfmfdes.h reworked and improved the hf mfp chk key handling. reworked the nxp_detect_card technology function to enable other parts of the client to benefit from detecting card types. Like hf mf info or hf mf autopwn - two most common used commands. Now less waiting and more easily to know what next steps to do. 2025-06-09 15:36:44 +02:00
cmdhfmfhard.c text 2025-06-22 20:34:54 +02:00
cmdhfmfhard.h
cmdhfmfp.c added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdhfmfp.h reworked and improved the hf mfp chk key handling. reworked the nxp_detect_card technology function to enable other parts of the client to benefit from detecting card types. Like hf mf info or hf mf autopwn - two most common used commands. Now less waiting and more easily to know what next steps to do. 2025-06-09 15:36:44 +02:00
cmdhfmfu.c added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdhfmfu.h rewrite hf 14a info with full AN10833 Rev 3.8 and a few extra 2025-04-14 10:37:16 +02:00
cmdhfntag424.c fix error: variable length array folded to constant array as an extension [-Werror,-Wgnu-folding-constant] on MAC Xcode26.0 2025-06-12 17:37:02 +02:00
cmdhfntag424.h
cmdhfseos.c cmdhfseos: fix invalid memory access in select_DF_verify 2025-05-09 00:05:43 +02:00
cmdhfseos.h missing defines 2025-03-12 17:40:07 +01:00
cmdhfst.c
cmdhfst.h
cmdhfst25ta.c code style, code clean up of redundant functions, comments, its many minor fixes across the platform. Sorry for not making 20 commits 2025-02-21 15:38:33 +01:00
cmdhfst25ta.h
cmdhftesla.c style 2025-04-13 12:25:14 +02:00
cmdhftesla.h
cmdhftexkom.c style 2025-07-10 11:52:39 +02:00
cmdhftexkom.h
cmdhfthinfilm.c style 2025-05-24 22:49:46 +02:00
cmdhfthinfilm.h
cmdhftopaz.c style 2025-07-10 11:52:39 +02:00
cmdhftopaz.h
cmdhfvas.c unify test - step 2 2025-03-25 10:17:42 +01:00
cmdhfvas.h
cmdhfwaveshare.c
cmdhfwaveshare.h
cmdhfxerox.c style 2025-07-10 11:52:39 +02:00
cmdhfxerox.h
cmdhw.c fix #2900 - bad compare 2025-06-12 13:56:49 +02:00
cmdhw.h
cmdlf.c style 2025-07-08 21:15:09 +02:00
cmdlf.h refactor: lf config renames 2024-08-27 23:45:42 +08:00
cmdlfawid.c style 2025-07-08 21:15:09 +02:00
cmdlfawid.h
cmdlfcotag.c
cmdlfcotag.h
cmdlfdestron.c style 2025-07-10 11:52:39 +02:00
cmdlfdestron.h
cmdlfem.c
cmdlfem.h
cmdlfem4x05.c text 2025-05-25 10:55:11 +02:00
cmdlfem4x05.h
cmdlfem4x50.c Rollback em4x50_read() to remove a segv 2025-06-08 21:10:02 +02:00
cmdlfem4x50.h
cmdlfem4x70.c added Ultralight-C simulation. hf mfu sim -t 13. Use eload first. Also added support to upload UL-C dictionaries and UL-AES to spiffs memory. A lot of textual reworked across client. Unifiy texts and a bit more color ;) 2025-06-19 17:26:20 +02:00
cmdlfem4x70.h functions should be static where possible 2024-05-14 20:22:30 -07:00
cmdlfem410x.c style 2025-07-08 21:15:09 +02:00
cmdlfem410x.h
cmdlffdxb.c style 2025-07-10 11:52:39 +02:00
cmdlffdxb.h
cmdlfgallagher.c style 2025-07-10 11:52:39 +02:00
cmdlfgallagher.h
cmdlfguard.c style 2025-07-08 21:15:09 +02:00
cmdlfguard.h
cmdlfhid.c style 2025-07-08 21:15:09 +02:00
cmdlfhid.h
cmdlfhitag.c style 2025-07-08 21:15:09 +02:00
cmdlfhitag.h Refactor Hitag low-level functions into hitag_common 2025-03-19 17:05:39 +08:00
cmdlfhitaghts.c style 2025-07-10 11:52:39 +02:00
cmdlfhitaghts.h Enhance Hitag S annotation and debugging 2025-03-19 18:12:53 +08:00
cmdlfhitagu.c fix cpp warnings 2025-03-21 13:19:01 +01:00
cmdlfhitagu.h Added lf hitag htu support for Hitag µ/8265 2025-03-19 18:56:23 +08:00
cmdlfidteck.c style 2025-07-10 11:52:39 +02:00
cmdlfidteck.h
cmdlfindala.c style 2025-07-10 11:52:39 +02:00
cmdlfindala.h
cmdlfio.c style 2025-07-10 11:52:39 +02:00
cmdlfio.h
cmdlfjablotron.c style 2025-07-10 11:52:39 +02:00
cmdlfjablotron.h
cmdlfkeri.c style 2025-07-10 11:52:39 +02:00
cmdlfkeri.h
cmdlfmotorola.c style 2025-07-10 11:52:39 +02:00
cmdlfmotorola.h
cmdlfnedap.c style 2025-07-10 11:52:39 +02:00
cmdlfnedap.h
cmdlfnexwatch.c style 2025-07-10 11:52:39 +02:00
cmdlfnexwatch.h
cmdlfnoralsy.c style 2025-07-10 11:52:39 +02:00
cmdlfnoralsy.h
cmdlfpac.c style 2025-07-10 11:52:39 +02:00
cmdlfpac.h
cmdlfparadox.c style 2025-07-10 11:52:39 +02:00
cmdlfparadox.h
cmdlfpcf7931.c style 2025-07-10 11:52:39 +02:00
cmdlfpcf7931.h
cmdlfpresco.c style 2025-07-10 11:52:39 +02:00
cmdlfpresco.h
cmdlfpyramid.c style 2025-07-10 11:52:39 +02:00
cmdlfpyramid.h
cmdlfsecurakey.c style 2025-07-10 11:52:39 +02:00
cmdlfsecurakey.h
cmdlft55xx.c style 2025-05-24 22:49:46 +02:00
cmdlft55xx.h added lf t55 Be-Tech identification 2025-03-19 13:37:53 +01:00
cmdlfti.c style 2025-07-10 11:52:39 +02:00
cmdlfti.h
cmdlfverichip_disabled.c unify hint text 2025-03-20 22:55:26 +01:00
cmdlfverichip_disabled.h
cmdlfviking.c style 2025-07-10 11:52:39 +02:00
cmdlfviking.h
cmdlfvisa2000.c style 2025-07-10 11:52:39 +02:00
cmdlfvisa2000.h
cmdlfzx8211.c style 2025-07-10 11:52:39 +02:00
cmdlfzx8211.h
cmdmain.c Added support for sending and receiving MQTT messages. It enables end user to quickly upload or share JSON files between them. Given the nature of MQTT, I also worked with @KevTheHermit who has proxdump.com site, where you can upload pm3 dump files and browse. He added support for MQTT uploads, so the process to share a file and it gets also uploaded to proxdump.com is very smooth. Feel free to improve this functionality with TLS etc. For now it looks quite promising. 2025-07-08 21:15:09 +02:00
cmdmain.h
cmdmqtt.c style 2025-07-13 15:55:44 +02:00
cmdmqtt.h Added support for sending and receiving MQTT messages. It enables end user to quickly upload or share JSON files between them. Given the nature of MQTT, I also worked with @KevTheHermit who has proxdump.com site, where you can upload pm3 dump files and browse. He added support for MQTT uploads, so the process to share a file and it gets also uploaded to proxdump.com is very smooth. Feel free to improve this functionality with TLS etc. For now it looks quite promising. 2025-07-08 21:15:09 +02:00
cmdnfc.c quick fix for nfc decode to handle ev1 dumps, untested 2025-01-14 23:17:11 +01:00
cmdnfc.h
cmdparser.c text 2025-06-22 20:34:54 +02:00
cmdparser.h
cmdpiv.c unify test - step 2 2025-03-25 10:17:42 +01:00
cmdpiv.h
cmdscript.c Limit pyexception code to Python >= 3.10 2024-11-14 01:44:35 +01:00
cmdscript.h
cmdsmartcard.c style 2025-07-10 11:52:39 +02:00
cmdsmartcard.h
cmdtrace.c text 2025-06-22 20:34:54 +02:00
cmdtrace.h const params, vars, scope, bad if statements 2024-05-14 12:25:00 +02:00
cmdusart.c style 2025-05-24 22:49:46 +02:00
cmdusart.h
cmdwiegand.c text 2025-06-30 14:29:49 +02:00
cmdwiegand.h
comms.c style 2025-05-24 22:49:46 +02:00
comms.h fix const params, logic, casting 2024-05-14 14:13:13 +02:00
elf.h
emojis.h
emojis_alt.h
fileutils.c style 2025-07-10 11:52:39 +02:00
fileutils.h style 2025-07-10 11:52:39 +02:00
flash.c text 2025-07-06 20:12:13 +02:00
flash.h
graph.c unify test - step 2 2025-03-25 10:17:42 +01:00
graph.h Merge branch 'master' into loud-nightingale 2024-05-15 09:41:50 +02:00
guidummy.cpp
hidsio.c rename util_hidsio to hidsio 2025-01-27 20:17:44 +01:00
hidsio.h rename util_hidsio to hidsio 2025-01-27 20:17:44 +01:00
imgutils.c
imgutils.h
iso4217.c
iso4217.h
jansson_path.c
jansson_path.h
lua_bitlib.c style 2024-09-30 10:36:29 +02:00
lua_bitlib.h Add the old bit32 LUA module as a compatiblity shim. 2024-09-20 17:21:17 +02:00
pm3.c pm3_console() in Python/Lua/C: replace passthru by capture and quiet 2024-10-29 21:13:38 +01:00
pm3.i pm3_console() in Python/Lua/C: replace passthru by capture and quiet 2024-10-29 21:13:38 +01:00
pm3_binlib.c
pm3_binlib.h
pm3_bit_limits.h
pm3_bitlib.c
pm3_bitlib.h
pm3_luawrap.c style 2024-11-02 15:13:40 +01:00
pm3_pywrap.c style 2024-11-02 15:13:40 +01:00
pm3line.c
pm3line.h
pm3line_vocabulary.h style 2025-07-13 15:55:44 +02:00
preferences.c preferences and mqtt commands now handles mqtt server/port/topic settings. if mqtt command is called w/o any mqtt and preference is set it takes prio 2025-07-10 14:10:53 +02:00
preferences.h add option --json to pref show 2024-10-14 21:49:40 +02:00
proxendian.h
proxgui.cpp
proxgui.h
proxguiqt.cpp
proxguiqt.h
proxmark3.c style 2025-07-08 21:15:09 +02:00
proxmark3.h fix missing 2024-05-14 15:20:01 +02:00
pthread_spin_lock_shim.h text 2025-06-22 20:34:54 +02:00
scandir.c
scandir.h
scripting.c style 2025-05-24 22:49:46 +02:00
scripting.h
ui.c unify test - step 2 2025-03-25 10:17:42 +01:00
ui.h forget the struct changes 2025-07-10 16:02:18 +02:00
util.c style 2025-07-10 11:52:39 +02:00
util.h support function 2025-07-01 16:45:55 +02:00
util_darwin.h
util_darwin.m
wiegand_formats.c fix parity bit in Sie36 unpack 2025-06-22 21:41:07 +08:00
wiegand_formats.h modified weigand formats to include number of bits 2025-02-22 18:28:38 +01:00
wiegand_formatutils.c text and style 2025-03-02 16:45:01 +01:00
wiegand_formatutils.h text and style 2025-03-02 16:45:01 +01:00