/crypto.py

A collection of pure Python crypto implementations. All modules are standalone. Available in Python 2 and Python 3 flavors!

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

crypto.py

A collection of pure Python crypto implementations. All modules are standalone. Available in Python 2 and Python 3 flavors!

Travis status

Implementation details

This code is slow. Obviously it is meant for educational purposes, if you need performance or simply go in production you should use standard library or OpenSSL.

So, readability is prioritized and there are no optimizations. However, all data is stored as bytes strings and bit masks are used as appropriate. (i.e. No bits stored as Unicode strings or such.)

License

I'm a MIT license lover, but in order to collect the most pieces of code, I choose the GPLv3 for this project.

All the modules should be considered derivated work released under the GPLv3. Original source is stated where relevant along with its license.