[tahoe-lafs-trac-stream] [pycryptopp] #94: add ChaCha
pycryptopp
trac at tahoe-lafs.org
Mon Sep 30 14:44:19 UTC 2013
#94: add ChaCha
------------------------+---------------------
Reporter: zooko | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Version: 0.5.29 | Resolution:
Keywords: | Launchpad Bug:
------------------------+---------------------
Comment (by nickm):
You can also use the XSalsa20 construction (the nonce extender that makes
Salsa into XSalsa) with !ChaCha.
As for implementation choice, I had occasion to look around for one
recently. For a simple obvious C implementation, the "merged"
implementation from [http://bench.cr.yp.to/supercop.html SUPERCOP] is a
good choice. The "krovetz" implementation from SUPERCOP is a good C+SIMD
implementation; it gives good performance on Intel, ARM, and PowerPC chips
with vector instructions. (It's [http://bench.cr.yp.to/impl-
stream/chacha20.html competitive with the assembly implementations] on
those systems where it runs.) These both need a little glue code to work,
but only a little. Both are public domain.
In [https://github.com/nmathewson/libottery libottery], I wrote a minimal
pure-Python !ChaCha implementation as part of the tests; you might want to
grab that for testing, though I wouldn't recommend it for real
cryptography.
--
Ticket URL: <https://tahoe-lafs.org/trac/pycryptopp/ticket/94#comment:2>
pycryptopp <https://tahoe-lafs.org/trac/pycryptopp>
More information about the tahoe-lafs-trac-stream
mailing list