Merge pull request #3252 from team-orangeBlue/fix_mfp_dumping

Fix Mifare Plus dumping (and misc functions)
This commit is contained in:
Iceman
2026-04-20 03:36:58 +07:00
committed by GitHub
2 changed files with 5 additions and 0 deletions
+1
View File
@@ -3,6 +3,7 @@ All notable changes to this project will be documented in this file.
This project uses the changelog in accordance with [keepchangelog](http://keepachangelog.com/). Please use this to write notable changes, which is not the same as git commit log...
## [unreleased][unreleased]
- Fixed `mfpReadSector` function to decrypt received data, fixing commands like `hf mfp dump` (@team-orangeBlue)
- Added `hf mfdes intauth` command (@kormax)
- Improved `hf iclass legbrute` throughput: added a 64-wide bitsliced MAC1 sweep that tests 64 key candidates in parallel per cipher tick. Thanks @chick3nman (@antiklesys)
- Improved `hf iclass legbrute` throughput further: added wider SIMD backends (128-lane NEON, 256-lane AVX2, 512-lane AVX-512F) with a runtime dispatcher that picks the widest one the CPU supports. Thanks @chick3nman (@antiklesys)
+4
View File
@@ -21,6 +21,7 @@
#include "commonutil.h" // ARRAYLEN
#include "comms.h" // DropField
#include "cmdhf14a.h"
#include "cmdhfmfp.h" // mfp_data_crypt
#include "ui.h"
#include "crypto/libpcrypto.h"
@@ -532,6 +533,9 @@ int mfpReadSector(uint8_t sectorNo, uint8_t keyType, uint8_t *key, uint8_t *data
DropField();
return 6;
}
// Encrypted mode is always used. Doing an if to check will waste instructions
mfp_data_crypt(&_session, &data[1], &data[1], true);
memcpy(&dataout[(n - firstBlockNo) * 16], &data[1], 16);