Commit Graph

705 Commits

Author SHA1 Message Date
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
Philippe Teuwen 8f9bb379ad fix client Makefile if no Makefie.platform is provided 2025-07-13 11:57:26 +02:00
iceman1001 65607fc727 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
Jean-Michel Picod f06c2fafbe Fix compilation under termux 2025-06-16 11:52:08 +02:00
Philippe Teuwen 3210384ef9 fm11rf08s: fix prev_lfsr 2025-06-15 12:01:46 +02:00
iceman1001 2699060eeb add missing standalone mode when building a bunch of firmware 2025-06-11 12:22:02 +02:00
Hanra d143d9a65c Update pm3_tests.sh
Added LANG=C to the script to enforce the English language so that it does not break when the system language is not English.

Signed-off-by: Hanra <37299738+HenraL@users.noreply.github.com>
2025-06-11 10:55:35 +02:00
iceman1001 8c880e4a3f missed this one 2025-06-08 16:10:09 +02:00
apply-science 91a16e4d9e Update Makefile
Openssl@1.1 was disabled 2024-10-24 due to not being supported upstream and blocked from install. Updated to openssl@3.5 in order for compilation to be successful on machines installed after that date. Older machines is encouraged to update.

Signed-off-by: apply-science <106422483+apply-science@users.noreply.github.com>
2025-06-01 00:14:23 +02:00
iceman1001 18e4c072e7 style 2025-05-28 20:54:05 +02:00
Xavier 4746e4a2be utilities for twn4
Signed-off-by: Xavier <90627943+kitsunehunter@users.noreply.github.com>
2025-04-29 11:33:22 -04:00
iceman1001 875b3c44b4 unify text - step 1 2025-03-25 10:12:16 +01:00
Philippe Teuwen ad84875afd cppcheck nullPointerOutOfMemory 2025-03-24 23:46:43 +01:00
Philippe Teuwen e42932738e cppcheck: a few static & const stuff 2025-03-24 22:42:13 +01:00
Philippe Teuwen 85ed469340 cppcheck const 2025-03-24 21:59:02 +01:00
Philippe Teuwen f1b7454fcd Fix pm3_tests for OSX 2025-03-24 09:53:44 +01:00
Philippe Teuwen b2a7a91bbd cppcheck memory leak 2025-03-23 23:38:50 +01:00
iceman1001 98f6b263ff wiegand decode now accepts --new parameter to decode new padding format <len 1byte><pacs bytes> where len denotes number of zeros bits added in the end of the pacs bytes. You will need to shift accordingly. 2025-02-23 23:10:13 +01:00
n-hutton 982bef6705 fix build failure on linux machines with fwd decl 2025-02-20 15:55:43 +00:00
n-hutton 3e9de01303 PR feedback 2025-02-18 15:49:33 +00:00
Iceman 76ad5a5b51 Merge branch 'master' into cherry_pick_emv
Signed-off-by: Iceman <iceman@iuse.se>
2025-01-14 16:26:35 +01:00
Philippe Teuwen c07b9f740d Add SLIX2 sample to recover_pk.py 2025-01-05 14:25:31 +01:00
Philippe Teuwen 86de7f512c rcovered_pk: fix c/h for partial in selftests 2024-12-14 14:39:34 +01:00
Philippe Teuwen 93639e16a5 recover_pk selftests: show curve & hash 2024-12-14 02:17:39 +01:00
Philippe Teuwen 16424a83c9 recover_pk Flake8 ignore E501 2024-12-13 11:47:38 +01:00
Philippe Teuwen 0e819f75a4 UL AES alt pk 2024-12-13 10:32:07 +01:00
Philippe Teuwen d39775ca46 recover_pk.py: replace secp192r1 by prime192v1 2024-11-26 12:41:05 +01:00
Philippe Teuwen 7c95488035 Avoid stupid cppcheck warning 2024-11-21 23:05:59 +01:00
n-hutton 4a23fb05f0 Cherry pick POC of emv simulation 2024-11-21 19:23:03 +00:00
Philippe Teuwen 6c8a4972b1 mfd_aes_brute: fix deprecated flags warning & stop showinfo photobombing 2024-11-15 23:04:32 +01:00
Philippe Teuwen e6876f4b73 mfkey32v2 typo 2024-10-18 19:44:38 +02:00
Cryolitia PukNgae 79540b1d33 feat(mfd_aes_brute): detect march and mcpu
fix build on riscv64
2024-10-17 15:14:41 +08:00
Philippe Teuwen fbef3c0a21 Should allow reproducible builds 2024-09-15 14:10:08 +02:00
Philippe Teuwen 17bfed94da mfkey64: abort if key recovery failed 2024-09-15 00:10:21 +02:00
iceman1001 9ebe5ae8dd text 2024-09-14 14:55:23 +02:00
iceman1001 0fe568970b style 2024-09-13 13:44:16 +02:00
Arnaud Rebillout 09bcc13f2b mkversion: Fix readme location
While building proxmark3 in an environment without `git` installed, I
noticed the following errors on stderr:

```
mkversion create test                   env: 'git': No such file or directory
stat: cannot statx '../README.md': No such file or directory
```

The first line "env: 'git': No such file or directory" is expected, as
git is not installed.

However, the second line "stat: cannot statx '../README.md': No such
file or directory" is a real error: we're running from top-level
directory, so the correct path for README.md is just "README.md".
2024-09-13 10:44:39 +07:00
Rick Farina (Zero_Chaos) cd90af34a0 add opencl support to CheckFileExist()
CheckExecute() has a flag to tell it if a check needs opencl support or
not and can automatically disable the check if opencl checks are not
requested.  Mostly copy and paste the same feature into CheckFileExist
and add it where needed.
2024-09-11 16:21:29 -04:00
iceman1001 85ccccdce6 fix missing gitignore 2024-09-10 15:33:26 +02:00
iceman1001 e50459b2c5 style 2024-09-06 22:59:23 +02:00
iceman1001 ca0c662c22 bad char 2024-09-06 10:51:09 +02:00
iceman1001 b05ccae642 text, string formatter, and something still complains in the GH actions 2024-09-06 10:47:08 +02:00
iceman1001 abb8a72bb6 fixes 2024-09-06 10:13:19 +02:00
iceman1001 0b2081ff32 fix bad string formatters, we use calloc 2024-09-06 10:04:48 +02:00
iceman1001 d5015c8ba0 fix bad string formatters and pointer is always NULL no need to check 2024-09-06 10:01:32 +02:00
iceman1001 53c64858ef fix wrong string formatters 2024-09-06 09:58:25 +02:00
iceman1001 183b078969 text 2024-09-06 09:40:37 +02:00
iceman1001 713b6f80c4 fix consts 2024-09-06 09:35:30 +02:00
iceman1001 e7e836e33f fix memleak 2024-09-06 09:33:40 +02:00
iceman1001 68693ae187 adapt test 2024-09-05 22:41:32 +02:00