pyCrypto wrapper, used by various MissingLink.ai libraries
Project description
ML-Crypto
This library is pycrypto / pycryptodome wrapper that standardises the MissingLink.ai-s encryption and allows easy extentions to support additional encryption schemes.
Overview
- This library contains a set of
Ciphers. EachCipherhasencrpytanddecryptfunctions that MUST return/accept byte array andencrpyt_string/decrypt_stringthat work with string objects that will be abase64representation of the encrypted byte output of the underlying[en|de]crypt functions- If your cipher returns structured data (such as
IVand other data), you SHOULD usenamedtuplesand extend them withMsgPackNamedTuplemixin. This will allow you to easly dump the named tuple into optimised byterarray, in order to be flexable with the object, currently we are converting the named tuple intodictin order to be able to add fields in the feature - You SHOULD provide key generation function as part of the cipher that will generate key (the function may perform external calls in case of cloud kms and etc.)
Current Ciphers
- Symmetric -
AES-CTRencryption with256bits (32 bytes) key length - Asymmetric -
PKCS1_OAEPencryption withSHA512hashAlgo - Envelope - Envelope encryption where the body is encrypted with the
Symmetriccipher. theDEK(data encryption key) is encrypted using non-specific cipher provided during init
PyCryptoDome vs PyCrypto vs None
- When installing, no cryptography package is provided by default. Use
ml-crypto[pycryptodome]orml-crypto[pycrypto]to ensure one is installed or use the default if you know you have one installed - As
pycryptois dead, prefer usingpycryptodomeand expect some issues (The main one is encrypted ssh private keys) not to work
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ml-crypto-0.7.811.tar.gz
(6.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ml-crypto-0.7.811.tar.gz.
File metadata
- Download URL: ml-crypto-0.7.811.tar.gz
- Upload date:
- Size: 6.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72e34db649592b47fff62ad6e0430bf10e5f9983cbea3f74907bb646b3ea4e6d
|
|
| MD5 |
982b7f50b21e569405cca34bfb3f8ee6
|
|
| BLAKE2b-256 |
cf17693c96e79903ec9804c2c1667e11486a8ae14b719f2646957c5eab09029a
|
File details
Details for the file ml_crypto-0.7.811-py2.py3-none-any.whl.
File metadata
- Download URL: ml_crypto-0.7.811-py2.py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ddfe1b43b35b9b0f2991e4157a7e0e3eb48447b69d12809181b9ebe091821e85
|
|
| MD5 |
9a6eda2f668bf7508f79a09e468d8752
|
|
| BLAKE2b-256 |
e97d45ab0a053049a82e165f1f163038ca9a664bb4de40e130bcd016bd8af024
|