Testing perfs on an old 8-core laptop:
BZ2 : 2 Mb, average decompression time: 5514 ms
LZ4 -9: 9 Mb, average decompression time: 837 ms
RAW : 704 Mb, average decompression time: 368 ms
Other LZ4 options don't help: -1 is slower and bigger, --favor-decSpeed does not do anything
To enable:
apt install liblz4-dev
cd client/resources/hardnested_tables
for i in *bz2; do bunzip2 $i; lz4 -9 --rm ${i%.bz2}; done
Both `hf mfdes auth` and `hf mfdes chk` now support Key Diversification for
AN10922 and as special treat, Gallagher issued cards.
For `hf mfdes auth`:
```
-d, --kdf <kdf> Key Derivation Function (KDF) (0=None, 1=AN10922, 2=Gallagher)
-i, --kdfi <kdfi> KDF input (HEX 1-31 bytes)
```
And for `hf mfdes chk`:
```
-f, --kdf <kdf> Key Derivation Function (KDF) (0=None, 1=AN10922, Gallagher)
-i, --kdfi <kdfi> KDF input (HEX 1-31 bytes)
```
Examples:
- `hf mfdes auth -a 2081f4 -m 3 -t 4 -d 2 -n 2 -k 00112233445566778899aabbccddeeff`
Will diversify the key for key `2` on AID `2081F4` for Gallagher issued cards
- `hf mfdes chk -f 1 -i 00112233 -d mfdes_default_keys`
Will read in all the default keys from the dictionary, and diversify them
using AN10922 with the input data `00112233`
- `hf mfdes chk -f 2 -d mfdes_default_keys`
Will read in all the default keys from the dictionary, and diversify them
using AN10922 but with input data generated from the card's UID, AID and
key number.