Cryptographic library with really simple API.
Includes functions for hashes, symmetric and asymmetric crypto, along with helper functions. Acts as a wrapper for PyCrypto and a few standard libraries.
Documentation
Documentation is available at http://simplecrypto.readthedocs.org.
The full source code repository is at https://github.com/boppreh/simplecrypto.
Installation
pip install simplecrypto
This library depends on PyCrypto. On Linux this is installed automatically by pip. If the dependency installation fail on Windows, you may want to use a prebuilt installer. If you wish to compile it I suggest using the Mingw tools as indicated here.
Usage
from simplecrypto import sha1, encrypt, decrypt, RsaKeypair, base64
sha1('The quick brown fox jumps over the lazy dog')
# '2fd4e1c67a2d28fced849ee1bb76e7391b93eb12'
# `encrypt` and `decrypt` use AES-256.
m = encrypt('secret message', 'secret key')
print(m)
# 'uRKa9xX7zW6QT1yJxIQb5E/0DzaxQglVggnFam5K'
decrypt(m, 'secret key')
# b'secret message'
skey = RsaKeypair(2048)
pkey = skey.publickey
m = pkey.encrypt('secret message')
skey.decrypt(m)
# b'secret message'
s = skey.sign('authenticated message')
pkey.verify('authenticated message', s)
# True
base64('message')
# 'bWVzc2FnZQ=='
Last Updates
0.3.4 (2022-08-24)
Update metadata.
0.3.3 (2015-8-07)
Package tests.
0.3.2 (2014-3-30)
Add HMAC support.
Use SHA256 as default RSA hash
Allow selection of PRNG used for RSA key generation
Minor changes for better Python2 support
0.3.1 (2013-12-06)
Add project to Travis and Coverall.
Increase test coverage to 100%.
Add installation instructions.
Rename guess_hash to guess_transformation.
0.3.0 (2013-12-05)
Add serialize to RSA keys.
Allow RSA keys to receive PEM encoded keys in the constructor.
Implement __repr__ method in base Key class (you can now print keys).
Split package into modules key, formats, hashes, random and exceptions.
0.2.3 (2013-12-05)
Update project information (keywords, classifiers, description, etc).
0.2.2 (2013-12-04)
Add send and receive functions for secure message building.
Raise EncryptionError instead of generic errors.
Slightly better test coverage.
0.2.1 (2013-12-03)
Add base Key class.
Introduce raw versions of encrypt and decrypt.
Implemented key printing and comparison.
0.2.0 (2013-12-03)
Return str from to_base64 and allow from_base64 to receive str.
Create classes for different key types.
Change return from to_hex to str for consistency with base64.
guess_hash function moved to different module.
Automatically use session keys when encrypting large messages.
0.1.0 (2013-11-26)
Initial release.
Metadata
Release files for simplecrypto 0.3.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| simplecrypto-0.3.4.tar.gz | 11.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| simplecrypto-0.3.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.6 kB
Release files / simplecrypto-0.3.4.tar.gz
| Download URL | simplecrypto-0.3.4.tar.gz |
|---|---|
| Size | 11.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f75c7612bc4e160c7549a2524e9f984aad0e3957e7c0b216d669b2fc8f2acc0c
|
|
BLAKE2b-256 checksum How to use checksums |
c630c8fe43d38a06a750392ad60babbc4d438c52f6bdbb30dab9d7ffd53062ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|
Release files / simplecrypto-0.3.4-py3-none-any.whl
| Download URL | simplecrypto-0.3.4-py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8c7e6defe8f936f6587ad02d89d84f3003000a8b24116a861969efabf1783c8
|
|
BLAKE2b-256 checksum How to use checksums |
d64865e88236fcbc19fd6ada22b766f3b0ec072528f3540cc393e2dc67b5d8e2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.6
|