frankmorgner / vsmartcard

umbrella project for emulation of smart card readers or smart cards
http://frankmorgner.github.io/vsmartcard/
684 stars 197 forks source link

Port from PyCrypto to PyCryptodome #232

Closed michaelweghorn closed 1 year ago

michaelweghorn commented 1 year ago

As suggested in https://github.com/frankmorgner/vsmartcard/issues/223#issuecomment-1234280271, this ports from the deprecated and unmaintained PyCrypto to the recommended and maintained PyCryptodome fork, s. discussion there and commit messages for more details.

Further comments:

1) The (only) use case I explicitly tested was retrieving my personal data using the German passport (nPA) with a virtual smartcard reader (Smart Card Reader Android app running under LineageOS, AusweisApp2 and vicc from this repo running under Debian testing, using Python 3.10.7). The PyCryptodome doc says that Python 2.7 is also supported, but I didn't explicitly test that.

2) From how I understand it, generating/updating the docs should be possible by running the corresponding make commands from within the doc subdirectory. However, I got various warnings/errors and a huge diff from what is currently in this repo that looks mostly unrelated to this change when e.g. running make html, so decided to rather manually adapt the places mentioning PyCrypto there as well (and leave automated update to a run done on some "reference machine" or somesuch?).

michaelweghorn commented 1 year ago

The Ubuntu CI failure in compiling ccid C code looks unrelated to me.

frankmorgner commented 1 year ago

Thank you, this looks good. I'll regenerate the documentation with the next release.