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
Metadata
Release files for ml-crypto 0.7.811
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ml-crypto-0.7.811.tar.gz | 6.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ml_crypto-0.7.811-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 17.1 kB
Release files / ml-crypto-0.7.811.tar.gz
| Download URL | ml-crypto-0.7.811.tar.gz |
|---|---|
| Size | 6.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
72e34db649592b47fff62ad6e0430bf10e5f9983cbea3f74907bb646b3ea4e6d
|
|
BLAKE2b-256 checksum How to use checksums |
cf17693c96e79903ec9804c2c1667e11486a8ae14b719f2646957c5eab09029a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / ml_crypto-0.7.811-py2.py3-none-any.whl
| Download URL | ml_crypto-0.7.811-py2.py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
ddfe1b43b35b9b0f2991e4157a7e0e3eb48447b69d12809181b9ebe091821e85
|
|
BLAKE2b-256 checksum How to use checksums |
e97d45ab0a053049a82e165f1f163038ca9a664bb4de40e130bcd016bd8af024
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|