emsec / ChameleonMini

The ChameleonMini is a versatile contactless smartcard emulator compliant to NFC. The ChameleonMini was developed by https://kasper-oswald.de. The device is available at https://shop.kasper.it. For further information see the Getting Started Page https://rawgit.com/emsec/ChameleonMini/master/Doc/Doxygen/html/_page__getting_started.html or the Wiki tab above.
Other
1.74k stars 392 forks source link

Way to set the supported modulations from within the codec code? #280

Open maxieds opened 4 years ago

maxieds commented 4 years ago

There are some current problems with my DESFire emulation mods when trying to detect the tags with libfreefare::mifare-desfire-info and/or a PM3 device. I looked into the libnfc related code that gets called by libfreefare. It looks to me like the mifare_desfire_taste function (source code here) that identifies whether a tag is of a DESFire type compares the ATS bytes, and also requires a supported modulation setting that gets set in the backend code.

I am not able to detect emulated tags with CONFIG=MF_CLASSIC|MF_ULTRALIGHT using the libnfc::nfc-list utility either. Is suspect it's a similar issue with the way this modulation is getting reported. Since it also does not seem to work for PM3 users, I wonder if this is something that should get handled in the Chameleon Mini codec code?

Any input to fix this and get the tags recognized with the libfreefare example utilities is much appreciated. Thanks.