Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AUTOCALIBRATE command for Sniff-ISO15693 application #318

Merged
merged 10 commits into from
Mar 1, 2022

Conversation

cacke-r
Copy link
Contributor

@cacke-r cacke-r commented Feb 8, 2022

This adds code to the Sniff15693 Application to run the AUTOCALIBRATE command.
But default, the Sniff15693 codec uses an Autothreshold detection - if this works fine, it shall be used.
If not you can disable it by un-commenting this line in the Makefile:
#CONFIG_SETTINGS += -DSNIFF15693_DISABLE_AUTO_THRESHOLD

The AUTOCALIBRATION algorithm itself is explained in the source code (Application/Sniff15693.c)

@cacke-r cacke-r changed the title Master AUTOCALIBRATE command for Sniff-ISO15693 application Feb 8, 2022
@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 8, 2022

@ceres-c @fptrs pls find the PR here.
Looking forward for your review comments.
(I*ll be on vacation for few days - so i'll work on the findings only b/o next week)

@ceres-c
Copy link
Contributor

ceres-c commented Feb 11, 2022

I've got a question: if we're going for compile time #ifdefs, why having the disable_autothreshold boolean variable, if it is read only? If compile time switches are the way to go, everything could be put in preprocessor branches and only one of the two versions would be compiled.

TBH I believe that compile time switches are not the way to go. I think it'd be easier for users (albeit experienced users) to understand how to use the auto threshold for ISO15 if it was actually possible to use the command in a normal way. If I was the user and I had not followed this discussion I'd find this behavior unexpected and quite confusing

@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 14, 2022

@ceres-c
I think I got your point - espacially the 'how to make others aware in how to use it'
I'm happy to add a command here - but I'm not fully convinced if it solves the problem.

After reading your comment - I though about it - and I think the real dilemma we are in is "We have 2 commands/parameters/#ifdefs which are somehow independent of each other ... and somehow not :-("
To make it clear:

  • the 'always switch off the autothreshold of the codec
  • run the autocalibrate command

I've got a question: if we're going for compile time #ifdefs, why having the disable_autothreshold boolean variable, if it is read only? If compile time switches are the way to go, everything could be put in preprocessor branches and only one of the two versions would be compiled.

While implementing, I had the goal to keep both independent. Means - even if someone whats to go with
autothreshold - it should be possible to run the autocalibrate command (maybe, just to find out how big the threshold is) ..... this means, during the command execution - we need to switch off autothreshold

TBH I believe that compile time switches are not the way to go. I think it'd be easier for users (albeit experienced users) to understand how to use the auto threshold for ISO15 if it was actually possible to use the command in a normal way. If I was the user and I had not followed this discussion I'd find this behavior unexpected and quite confusing

OK, makes sense - but will not completely solve the dilemma described above.
What do you think of the follwoing approach:

  • implement command to 'disable autothreshold'
  • implement command to 'autocalibrate'
  • 'autocalibrate' will throw an error if the 'disable autothreshold' was not executed bofore
  • I'd say that is more transparent to the user - the alternative would be to en-/dis-abling it automatically - but I feel this would cause even more confusion.

I would appreciate if you have any advise if the approach above makes sense for you.

@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 14, 2022

@ceres-c @fptrs
The PR was updated automatically. I've added the command - but I'm not yet done.
I need to rework the other patches as well. Will do this tomorrow and send you a ping here, once I'm done.
If you want you can already review the 2 new patches - they are ready. It is just the rest which needs rework now.

@ceres-c
Copy link
Contributor

ceres-c commented Feb 14, 2022

Hi, sorry for the delay,
I like this approach, it now sounds user-friendly enough to me :)

@cacke-r cacke-r force-pushed the master branch 2 times, most recently from 67539d9 to 57a953c Compare February 15, 2022 19:56
@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 15, 2022

@ceres-c @fptrs
so, finally I've added a command to control the autothreshold feature of the codec and removed the ifdefs.
I needed to re-arrange the patches a bit.
Looking forward for further feedback ... or a merge :-)

@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 20, 2022

@ceres-c @fptrs
Hey guys, I don't want to appear pushy 😀 but could you let me know I which timeframe I could expect further feedback ?

@fptrs
Copy link
Collaborator

fptrs commented Feb 22, 2022

Hi @cacke-r,
sorry for the late reply. I'm going to test/review it this week. If everything is fine I'm going to merge it.

@fptrs
Copy link
Collaborator

fptrs commented Feb 23, 2022

So I tested the autocalibration and it works fine. Very good job 👍 There is only one final request before I'm going to merge it. Can you change the autothreshold command to accept 1 and 0 as parameters instead of strings, similar to the field command.

Signed-off-by: cacke-r <cresch@gmx.de>
Signed-off-by: cacke-r <cresch@gmx.de>
Signed-off-by: cacke-r <cresch@gmx.de>
Signed-off-by: cacke-r <cresch@gmx.de>
…shold

Signed-off-by: cacke-r <cresch@gmx.de>
Signed-off-by: cacke-r <cresch@gmx.de>
@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 23, 2022

So I tested the autocalibration and it works fine. Very good job +1 There is only one final request before I'm going to merge it. Can you change the autothreshold command to accept 1 and 0 as parameters instead of strings, similar to the field command.

@fptrs
thanks for testing and reviewing this. I've just pushed the changes about ENABLE/DISABLE vs 0,1.

Yesterday I realized that there is still one issue with this autocalibrate. If we never receive
a valid frame - it will set the threshold to (0+0xFFF/2) - which is not so nice.
I'll work to fix it - means detect this as an error case - and set the threshold to the value it was before.

I'd like to raise this as a new PR - just to not open up this one again.
But if you prefer to have it as part of this PR - pls let me know.

Detect the case, that we never receive a valid card frame.
Restore original/recent threshold in this case.

Signed-off-by: cacke-r <cresch@gmx.de>
@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 23, 2022

So I tested the autocalibration and it works fine. Very good job +1 There is only one final request before I'm going to merge it. Can you change the autothreshold command to accept 1 and 0 as parameters instead of strings, similar to the field command.

@fptrs thanks for testing and reviewing this. I've just pushed the changes about ENABLE/DISABLE vs 0,1.

Yesterday I realized that there is still one issue with this autocalibrate. If we never receive a valid frame - it will set the threshold to (0+0xFFF/2) - which is not so nice. I'll work to fix it - means detect this as an error case - and set the threshold to the value it was before.

I'd like to raise this as a new PR - just to not open up this one again. But if you prefer to have it as part of this PR - pls let me know.

I've pushed the fix to a branch in my repo - I'd leave it up to you if I should include it here:
cacke-r@c47974e

@fptrs
Copy link
Collaborator

fptrs commented Feb 24, 2022

I think the best solution is to include it here directly

Sniff15693: Autocalibrate: Detect error case
@cacke-r
Copy link
Contributor Author

cacke-r commented Feb 24, 2022

I think the best solution is to include it here directly

OK, thanks for the feedback. Included the fix as well.
So - I think I'm done now :-)

@fptrs fptrs merged commit 371eaca into emsec:master Mar 1, 2022
cacke-r added a commit to cacke-r/ChameleonMini that referenced this pull request Mar 1, 2022
Merge pull request emsec#318 from cacke-r/master
gcammisa added a commit to gcammisa/ChameleonMini that referenced this pull request Oct 14, 2022
commit 9fbb7fb
Author: Fabian <fabian@kasper-oswald.de>
Date:   Wed Sep 21 11:06:58 2022 +0200

    fix emsec#325

    * remove MemoryClear from ConfigurationSetById

commit 62e2f71
Merge: f5c1347 d5d36fe
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Mon Aug 15 10:45:10 2022 +0200

    Merge pull request emsec#323 from maxieds/ExternalUSBReadersCompat

    DESfire emulation support: Updated support for PM3 and better compatibility with external USB readers

commit d5d36fe
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Wed Aug 3 18:03:28 2022 -0500

    Update BuilingFirmwareBinariesFromSource.md

commit 46a3cc8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 26 01:40:27 2022 -0400

    Small changes to the NAK/ACK return size (4 bits versus 1 byte)

commit eb0d5fd
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Tue Jul 26 00:02:15 2022 -0400

    Update DESFireSupportReadme.md

commit 3a91394
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 20:39:50 2022 -0400

    One more small change to resetting the ATQA value automatically depending on whether the UID is known to be randomly generated

commit 2257c42
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 20:31:29 2022 -0400

    Cleaning up modifications used to test the development code

commit cddb9bd
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 19:41:50 2022 -0400

    Update DESFireSupportReadme.md

commit 63e74f9
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 19:42:29 2022 -0400

    Changes to ISO14443A-4 handlers confirmed to work with the ACS ACR-122U external USB reader ; Updated docs and source code

commit 32277f0
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 19:15:46 2022 -0400

    Update DESFireSupportReadme.md

commit f9e9018
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 18:42:50 2022 -0400

    Update DESFireSupportReadme.md

commit 8fe0e66
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Mon Jul 25 18:40:06 2022 -0400

    Update DESFireSupportReadme.md

commit 15be871
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Jul 23 00:16:22 2022 -0400

    Restore point for changes to the CL1/CL2 exchanges in the anticollision for DF ISO14443A-4 support

commit 2a42b31
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sat Jul 23 00:12:24 2022 -0400

    Update DESFireSupportReadme.md

commit f5c1347
Author: Fabian <fabian@kasper-oswald.de>
Date:   Wed Jul 20 13:42:28 2022 +0200

    fix github action name

commit 78a108b
Author: Fabian <fabian@kasper-oswald.de>
Date:   Wed Jul 20 13:32:06 2022 +0200

    change automated builds

    * make all builds all ISO14443A configs
    * all ISO15693 configs are automatically build with make iso15693

commit 66c2e8b
Merge: 3c01a6c aa20be6
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jul 20 13:08:23 2022 +0200

    Merge pull request emsec#322 from maxieds/DESFireNFCExternalUSBReaderPatches-LibNFCTestCode

    DESFire emulation support: Bug fixes, improvements and updated LibNFC test code

commit aa20be6
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jul 20 06:14:27 2022 -0400

    Current firmware builds tested with PM3 and LibNFC test code ; Still takes too long to verify the file mgmt and data manip programs

commit ffb6683
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Wed Jul 20 05:59:02 2022 -0400

    Update DESFireSupportReadme.md

commit b79d964
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Wed Jul 20 03:25:21 2022 -0400

    Update DESFireSupportReadme.md

commit 5cd6773
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jul 20 03:00:17 2022 -0400

    Restore point for many incremental updates, bug fixes and documentation changes

commit 126189a
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 22:00:24 2022 -0400

    Verified ISODES and legacy DES auth schemes work ; AES-128 auth support is verified with the PM3

commit a050d04
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 20:54:09 2022 -0400

    Multiple code cleanup changes to TransferState -- Enc of transfers is handled by the APDU pre/post process functions -- Restore point for previous functionality

commit 871451a
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 19:14:45 2022 -0400

    Update DESFireSupportReadme.md

commit 512eff3
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 18:53:18 2022 -0400

    Fixing PM3 AES-128 authentication bug

commit 3d86fe4
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 17:46:08 2022 -0400

    Updating TDEA (x3) crypto code to handle uneven buffer sizes ; Changes to DESFire auth instructions reinit / (in)validate state logic

commit 5c894b8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jul 19 15:24:27 2022 -0400

    Updating the AES128 enc/dec code to support ECB mode (default) and handle uneven buffer sizes that are not a multiple of 16

commit ccdc36e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jul 17 16:54:43 2022 -0400

    Removed old AES128 support with AVR libs in place of openssl/EVP ; Bug fix for ISODES auth in the firmware to keep session IV state with multiple auths

commit 3078e7f
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jul 17 14:23:02 2022 -0400

    Stashing working LibNFC test code -- ISO auth is working

commit e7790dc
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jul 17 06:56:28 2022 -0400

    Updates to LibNFC test code (ISO auth works) ; Untested changes to fw source to support recall of header data from EEPROM on power cycle (need to test) ; Other misc minor modifications to stash as a restore point

commit 1c2cf3a
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sun Jul 17 02:09:53 2022 -0400

    Update DESFireSupportReadme.md

commit 306865e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jul 17 01:55:21 2022 -0400

    New DF_ENCMODE command to set ECB/CBC crypto modes ; Incremental changes to LibNFC test code ; Incomplete docs to edit elsewhere

commit 3a89c4b
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sat Jul 16 20:57:25 2022 -0400

    Update BuilingFirmwareBinariesFromSource.md

commit 197b958
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sat Jul 16 20:55:20 2022 -0400

    Update and rename BuilingFromSource.md to BuilingFirmwareBinariesFromSource.md

commit 5de0aae
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sat Jul 16 20:54:59 2022 -0400

    New misc-tags target to BuildScripts/custom_build_targets.mk

commit e07823e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Jul 16 20:39:06 2022 -0400

    Stashing in progress changes to the DESFire LibNFC test code ; Adding incomplete documentation for custom build targets

commit 3d19776
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Sat Jul 16 20:27:39 2022 -0400

    Update DESFireSupportReadme.md

commit 4cfea3d
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 15 19:10:30 2022 -0400

    Saving work on the LibNFC testing code for DESFire builds

commit d297a0e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 15 11:04:24 2022 -0400

    Restoring full log buffer space to the default (non dev) desfire target

commit bfac980
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 15 10:20:39 2022 -0400

    Testing code updates with the PM3 -- a few small changes

commit 53de26e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 15 08:50:10 2022 -0400

    Tidying up code, build script fixes for no bc command, preliminary attempts to get CONFIG=MF_DESFIRE compatibility with extrernal USB readers using 'pcsc_spy -v'

commit 3c01a6c
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Fri Jul 8 13:09:53 2022 +0200

    Update firmware-desfire-push.yml

commit bc333f9
Merge: 99dceff 37be68d
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Fri Jul 8 12:24:22 2022 +0200

    Merge pull request emsec#319 from maxieds/DESFire-AuthISO-Patch

    DESFire emulation support: Bug, stability and reliability fixes and PM3 compatible ISO authentication

commit 37be68d
Merge: bc8057b 05eeda6
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 1 08:44:33 2022 -0400

    Merge branch 'DESFire-AuthISO-Patch' of https://github.com/maxieds/ChameleonMini into DESFire-AuthISO-Patch

commit bc8057b
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Jul 1 08:44:21 2022 -0400

    Several fixes to responsiveness and frozen behavior noted in PR emsec#319

commit 93e77a2
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Thu Jun 30 22:42:22 2022 -0400

    Stashing changes to DESFire code -- No PSTR wrappers on command names as this doesn't change the ELF application size

commit 807d4ac
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Thu Jun 30 22:24:07 2022 -0400

    Stashing DESFire updates before tinkering with saving space with PSTR wrappers around the terminal command names

commit 05eeda6
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jun 29 13:12:55 2022 +0200

    Update Log.py

    change DESFire Generic Error decoder

commit 99dceff
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jun 29 11:50:28 2022 +0200

    Update ISO15693-A.c

    add missing VICINITY support statement

commit cda26ee
Merge: c3e1dab b6f4094
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 29 05:44:30 2022 -0400

    Merge branch 'DESFire-AuthISO-Patch' of https://github.com/maxieds/ChameleonMini into DESFire-AuthISO-Patch

commit c3e1dab
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 29 05:44:22 2022 -0400

    Updating the FLASH_DATA_ADDR value to the correct value for 6 slots (versus standard 8)

commit b6f4094
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jun 29 11:36:35 2022 +0200

    add missing sources for ISO15693_SNIFF

commit 3d2a8a6
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jun 29 11:24:39 2022 +0200

    add missing EM4233 statement

commit 40da00a
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Wed Jun 29 11:12:29 2022 +0200

    fix typos

commit 688b494
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 29 04:50:39 2022 -0400

    More typ corrections and build script bug fixes annotated in emsec#319

commit 7f37bfb
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jun 28 11:59:03 2022 -0400

    Updating source after the feedback from @fptrs in PR emsec#319

commit b378b4e
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Wed Jun 22 21:00:18 2022 -0400

    Delete DESFire_example.contents

    This image is out of date -- Created using much older firmware sources. It eventually would be nice to replace it with a better dump using PR emsec#319 sources (or more recent).

commit 3806bcf
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Wed Jun 22 21:00:08 2022 -0400

    Delete DESFire_example.dmp

    This image is out of date -- Created using much older firmware sources. It eventually would be nice to replace it with a better dump using PR emsec#319 sources (or more recent).

commit d29f087
Merge: 149599e 0291b9b
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Thu Jun 16 20:17:00 2022 -0400

    Merge branch 'master' into DESFire-AuthISO-Patch

commit 149599e
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Thu Jun 16 02:32:57 2022 -0400

    Cleaning up some old commented out macro definitions

commit bbc489e
Author: Maxie D. Schmidt <maxieds@gmail.com>
Date:   Thu Jun 16 02:31:32 2022 -0400

    Typo corrected

commit 39de8cc
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 15 18:54:58 2022 -0400

    ACR122U USB/PCSC reader stopped being responsive after all of the PM3 compat changes: Attempt to fix this problem (PM3 command support verified as still working) -- Cf. emsec#313

commit 1ce7b55
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 15 12:20:25 2022 -0400

    Fixing the terminal (echo) printing on MacOS following the last commit for Linux users

commit 68a12e6
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 15 11:42:43 2022 -0400

    Fixing Linux build errors noticed by @colinoflynn in \emsec#313

commit 7b4cdd8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Jun 7 21:56:24 2022 -0400

    Fixing some make build script bugs

commit 024c699
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Jun 4 16:13:01 2022 -0400

    Finalizing the fixes to emsec#313 to verify PM3 support

commit f9c1dab
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Thu Jun 2 00:40:53 2022 -0400

    Updates to make/build scripts ; Partial fixes to @colinoflynn\'s notes in emsec#313 (success with \'hf mfdes info -- Still debugging auth exchanges)

commit 8e77d78
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 1 09:04:53 2022 -0400

    More refinements and efforts to make build output cleaner to read

commit 8a823c8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Jun 1 00:39:24 2022 -0400

    A few improvements to Makefile and build scripts (cf. previous issue emsec#283)

commit 8e25538
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri May 13 08:27:42 2022 -0400

    Attempt to fix bug with `pm3 --> hf mfdes info` reported in emsec#313

commit 83ce182
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed May 11 00:43:28 2022 -0400

    Fix Makefile bugs noticed in emsec#313

commit 4536789
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Apr 22 13:43:40 2022 -0400

    Incorporating bug fixes by @colinoflynn at https://github.com/colinoflynn/ChameleonMini/commits/desfire-fixes (see message in emsec#313)

commit 19e0d1c
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Mar 30 12:46:06 2022 -0400

    Stashing LibNFC external USB reader test code online to test on Linux (builds on MacOS)

commit f4faaa7
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Mar 30 10:00:26 2022 -0400

    Working ISO authentication on the PM3 : cf. emsec#313

commit 45a6c3f
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Mar 29 23:30:46 2022 -0400

    Stashing more working code to test PM3 compatibility (ISO/EV1 auth)

commit 7ecf3cb
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Mar 26 18:25:54 2022 -0400

    Stuck on debugging issue with PM3 -- Posted to discord -- awaiting fix before this can get fixed

commit fecf5cb
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Mar 26 10:44:07 2022 -0400

    More progress towards PM3 compatible auth II

commit b873261
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Mar 26 10:23:55 2022 -0400

    More progress towards PM3 compatible auth

commit bccf579
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Mar 22 06:36:24 2022 -0400

    Proposed PM3 ISO auth compliant fwmod -- pending testing

commit 1be7688
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Mar 21 21:05:16 2022 -0400

    Adding more complete support for PM3 ISO auth (stashing incremental changes as reference point -- II)

commit bb7d46f
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Mar 21 18:34:11 2022 -0400

    Adding more complete support for PM3 ISO auth (stashing incremental changes as reference point)

commit 0291b9b
Author: Fabian <fabian@kasper-oswald.de>
Date:   Thu Mar 17 12:04:40 2022 +0100

    update Doxygen

commit aafc5ab
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Wed Mar 16 03:03:03 2022 -0400

    Stashing more incremental updates to the code to get/verify PM3 compatibility

commit 64d1fff
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Tue Mar 15 17:48:29 2022 -0400

    Stashing incremental changes from Arch for compilation on Mac

commit 371eaca
Merge: 94aeb3c 14537ac
Author: fptrs <48245105+fptrs@users.noreply.github.com>
Date:   Tue Mar 1 15:31:32 2022 +0100

    Merge pull request emsec#318 from cacke-r/master

    AUTOCALIBRATE command for Sniff-ISO15693 application

commit 14537ac
Merge: a212bbb c47974e
Author: cacke-r <96484810+cacke-r@users.noreply.github.com>
Date:   Thu Feb 24 15:40:22 2022 +0100

    Merge pull request #2 from cacke-r/fix_autothreshold

    Sniff15693: Autocalibrate: Detect error case

commit c47974e
Author: cacke-r <cresch@gmx.de>
Date:   Wed Feb 23 21:03:17 2022 +0100

    Sniff15693: Autocalibrate: Detect error case

    Detect the case, that we never receive a valid card frame.
    Restore original/recent threshold in this case.

    Signed-off-by: cacke-r <cresch@gmx.de>

commit a212bbb
Author: cacke-r <cresch@gmx.de>
Date:   Tue Feb 15 20:56:36 2022 +0100

    Chamtool: Add Autothreshold command

    Signed-off-by: cacke-r <cresch@gmx.de>

commit c686040
Author: cacke-r <cresch@gmx.de>
Date:   Tue Feb 15 20:15:15 2022 +0100

    Commands: Autocalibrate: Dont execute if ISO15693 codec uses autothreshold

    Signed-off-by: cacke-r <cresch@gmx.de>

commit b8fec22
Author: cacke-r <cresch@gmx.de>
Date:   Mon Feb 14 21:01:46 2022 +0100

    Terminal: Add commands to control Sniff15693 autothreshold feature

    Signed-off-by: cacke-r <cresch@gmx.de>

commit b04351b
Author: cacke-r <cresch@gmx.de>
Date:   Wed Feb 9 21:46:30 2022 +0100

    Sniff15693: Add CRC Check on received data

    Signed-off-by: cacke-r <cresch@gmx.de>

commit ad16434
Author: cacke-r <cresch@gmx.de>
Date:   Tue Feb 15 20:07:25 2022 +0100

    Sniff15693: Implementation of Autocalibration command

    Signed-off-by: cacke-r <cresch@gmx.de>

commit 821de78
Author: cacke-r <cresch@gmx.de>
Date:   Tue Feb 15 20:00:22 2022 +0100

    SniffISO15693: Add functions to codec to enable autocalibration

    Signed-off-by: cacke-r <cresch@gmx.de>

commit 97d7ad8
Author: cacke-r <cresch@gmx.de>
Date:   Sun Jan 30 21:21:39 2022 +0100

    Hook Sniff15693 App to the AutoCalibration command

    Signed-off-by: cacke-r <cresch@gmx.de>

commit 5f8d0ec
Author: cacke-r <cresch@gmx.de>
Date:   Sun Jan 30 21:20:38 2022 +0100

    Add Autocalibrate command to chamtool

    Signed-off-by: cacke-r <cresch@gmx.de>

commit 8f5053f
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Feb 14 12:54:05 2022 -0500

    *Should* finally be working now -- Problem was that the SETTINGS memory remapped the FLASH memory space used by avr-gcc\'s __flash to a custom .flashdata section after the LUFA build by a second call to avr-objcopy -- Clever way to maximize slot space, but the previous code was not aware of that causing apparently quasi-non-deterministic behavior with some readers -- Cf. emsec#313 and emsec#315

commit 2d54740
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Feb 14 12:32:10 2022 -0500

    Separate section to store in flash not working -- Beginning new approach to put reduced size massive structure into plain old data mem

commit 138a174
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Feb 14 08:19:23 2022 -0500

    Swapping out previous __flash settings for commands lookup table into last half of LOG_FRAM (code and Makefile defines -- may still need to extract this new section using avr-objcopy -- pending testing)

commit ac265b4
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Feb 13 03:54:01 2022 -0500

    Out of hell ... Everything seems to be working again with the MEMORY_LIMITED_TESTING define set in the Makefile :)

commit 65766e1
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Feb 13 02:41:53 2022 -0500

    Incremental backup -- Auth schemes should be working -- New CommMode checksum functions DO NOT fit into text/data (yet)

commit bf1eadc
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Feb 13 00:29:24 2022 -0500

    Making a sane backup point while prfusely debugging

commit a24fbe8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 21:47:54 2022 -0500

    Preliminary (partial) support for more CommModes -- This is going to need substantial testing -- III

commit 74f216f
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 19:15:57 2022 -0500

    Preliminary (partial) support for more CommModes -- This is going to need substantial testing -- II

commit e9437a6
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 18:52:10 2022 -0500

    Preliminary (partial) support for more CommModes -- This is going to need substantial testing

commit e9ce4ac
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 14:43:01 2022 -0500

    Untested CMAC implementation for CommMode=FULL exchanges (Enciphered+CMAC'ed data)

commit de798fb
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 10:59:20 2022 -0500

    Adding in preliminary AES transfer functions -- Trying to save space for more where it can be pruned -- III -- cf. emsec#313

commit a0cb74c
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 10:20:10 2022 -0500

    Adding in preliminary AES transfer functions -- Trying to save space for more where it can be pruned -- II

commit 583bb93
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 10:07:37 2022 -0500

    Adding in preliminary AES transfer functions -- Trying to save space for more where it can be pruned

commit 3974786
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 08:47:04 2022 -0500

    Finding other places to squeeze space for the DESFire config (Log and terminal buffers stored on the stack -- adding buffer full messages for INFO)

commit a4672ff
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 08:34:27 2022 -0500

    Finding other places to squeeze space for the DESFire config (Log and terminal buffers stored on the stack)

commit 9ee3236
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 08:02:54 2022 -0500

    Addressing the ACK/NAK keep-alive exchanges from some NXP readers noted by \@lvandenb in emsec#313

commit b6be1b8
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 05:32:37 2022 -0500

    Space saving defines to remove currently unused crypto exchange functionality (will revisit when get to this subproject)

commit 20a6960
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 04:41:40 2022 -0500

    Fixing legacy auth algorithm from 3K3DES -> 2K3DES (cf. emsec#313)

commit 1644a9e
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 00:40:13 2022 -0500

    Making sure the auth AES and auth ISO handlers keep the chain of prior legacy auths intact

commit bcf68d0
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sat Feb 12 00:27:24 2022 -0500

    Last minute modifications to DES/3DES enc/dec routines for data that is not a multiple of the resp. block size

commit e15f8c7
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Feb 11 22:51:37 2022 -0500

    Fixing bug where we must first auth with the legacy command mentioned in emsec#313

commit e22b286
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Feb 11 17:43:41 2022 -0500

    Removing default testing nonce B from auth commands ; Running make style

commit ba3c736
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Feb 11 17:42:20 2022 -0500

    Bug fixes to observations in emsec#313

commit a02f214
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Fri Feb 4 22:17:00 2022 -0500

    Working AES128 auth and ISO auth ; Still need to debug the legacy auth

commit b451e12
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Thu Feb 3 06:52:33 2022 -0500

    Working AES128 auth ; Nearly working ISO auth (still debugging) -- Stashing copy for reference

commit 7176259
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jan 31 12:54:23 2022 -0500

    Stashing incremental testing release code

commit ca0afad
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jan 31 10:54:37 2022 -0500

    Adding support for non-wrapped native commands (I believe)

commit 281d3c7
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jan 31 01:23:50 2022 -0500

    AuthLegacy(0x0A) works using 3DES enc/dec modes -- Makefile no testing -- For emsec#313

commit 195e600
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Mon Jan 31 01:22:07 2022 -0500

    AuthLegacy(0x0A) works using 3DES enc/dec modes

commit 6ee1958
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jan 30 23:03:07 2022 -0500

    AuthISO(0x1A) works tentatively (a little slowly) with the LibNFC test code

commit d20cac4
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jan 30 15:45:27 2022 -0500

    More testing (still doesn't make it through round2 on the Chameleon)

commit 1e542ec
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jan 30 14:53:16 2022 -0500

    Re-implementing the 3DES crypto with CBC

commit fba0ee3
Author: Maxie Dion Schmidt <maxieds@gmail.com>
Date:   Sun Jan 30 12:34:25 2022 -0500

    Debugging ISO authenticate command (0x1a)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants