aboutsummaryrefslogtreecommitdiff
path: root/cryptech
AgeCommit message (Collapse)Author
2022-01-04Replace old PyCrypto with PyCryptodomeHEADmasterRob Austein
PyCrypto is no longer present in Debian Bullseye and is abandonware in anycase. PyCryptodome is about 98% of a drop-in replacement (but that last 2% can be tricky), so convert the most critical stuff to use PyCryptodome. A bunch of the test scripts and so forth still need to be converted, for today the goals are just to have the package install properly and to be able to run the unit tests.
2020-06-10Fix remaining Python 3 unit test string encoding bugRob Austein
Really just one bug, but confusingly masked by an interaction between generators and our XDR context manager, so don't use the context manager in the one generator method in the cryptech.libhal API. Also run reindent.py on a few old test modules.
2020-06-09Whack with club until Python 2 works again and Python 3 almost worksRob Austein
There's still something wrong with XDR for attribute lists in Python 3, XDR complains that there's unconsumed data and attributes coming back are (sometimes truncated). Python 2 works. Probably data type issue somewhere but haven't spotted it yet.
2020-05-26Wow, python-version-independent hexadecimal is painfulRob Austein
2020-05-25Untested conversion to support Python 3Rob Austein
2019-04-09Huh, I forgot to add a Python RPC handler for pkey_generate_hashsig,Paul Selkirk
over a year ago.
2018-03-21Supply our own context manager instead of using contextlib.Rob Austein
contextlib is cute, but incompatible with other coroutine schemes like Tornado, so just write our own context manager for xdrlib.Unpacker.
2017-09-154096-bit RSA keys working again, with 8k keystore "blocks".Rob Austein
2017-06-11None is more Pythonic than "" as indicator for "no key"Rob Austein
2017-05-28Almost compiles.Rob Austein
Need to refactor init sequence slightly (again), this time to humor the bootloader, which has its own special read-only view of the PIN block in the token keystore.
2017-04-14Python interface API will need to be cryptech.libhal for installation.Rob Austein