Cloudproof Python Library
The library provides a Python API to the Cloudproof Encryption product of the Cosmian Ubiquitous Encryption platform.
- Licensing
- Cryptographic primitives
- Getting started
- Demo
- Building and testing
- Versions Correspondence
Licensing
The library is available under a dual licensing scheme Affero GPL/v3 and commercial. See LICENSE.md for details.
Cryptographic primitives
The library is based on:
-
Covercrypt algorithm which allows creating ciphertexts for a set of attributes and issuing user keys with access policies over these attributes.
Covercryptoffers Post-Quantum resistance. -
Findex which is a cryptographic protocol designed to securely make search queries on an untrusted cloud server. Thanks to its encrypted indexes, large databases can
Getting started
This library requires Python >= 3.7.
To install the current release:
pip install cloudproof_py
Code examples are available in ./examples to get you started. Please check the online documentation for more details on using the CloudProof APIs.
Demo
An interactive CLI demo combining policy-based encryption with searchable keywords.
Users data from ./examples/cli_demo/data.json are encrypted using Covercrypt and indexed via Findex.
Try the demo:
examples/cli_demo/run_demo.sh
Building and testing
To build from source:
scripts/build.sh
To build and run the tests:
scripts/build.sh -t
With PyO3 packages from package.cosmian.com:
scripts/build.sh -it
Note: edit scripts/ci_install_pyo3_builds.sh with the right build name.
To build the documentation:
scripts/build.sh -d
The generated documentation will be in ./docs/_build/html.
Versions Correspondence
This library depends on Covercrypt and Findex.
This table shows the minimum version correspondence between the various components.
cloudproof_py |
Covercrypt | Findex | KMS |
|---|---|---|---|
| >=4.2.0 | 13.0.0 | 6.0.0 | 4.10.0 |
| >=4.1.0 | 12.0.0 | 5.0.0 | 4.5.0 |
| >=4.0.2 | 11.0.0 | 4.0.1 | 4.4.3 |
| >=4.0.1 | 11.0.0 | 4.0.1 | 4.4.2 |
| >=4.0.0 | 11.0.0 | 4.0.0,4.0.1 | 4.3.3 |
| >=3.0.0 | 11.0.0 | 3.0.0 | 4.3.3 |
| >=2.0.0 | 10.0.0 | 2.0.1,2.1.0 | 4.2.0 |
| >=1.0.0 | 8.0.1 | 2.0.0 | - |
Metadata
Release files for cloudproof-py 5.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| cloudproof_py-5.0.0.tar.gz | 25.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cloudproof_py-5.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.8 kB
Release files / cloudproof_py-5.0.0.tar.gz
| Download URL | cloudproof_py-5.0.0.tar.gz |
|---|---|
| Size | 25.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
054bfa12bb7350f230c575b1e560d78ed43b908dcb344cbfa94abb27d0052869
|
|
BLAKE2b-256 checksum How to use checksums |
f17712e1aa423f6311cdd080dccff302a0088621f46e567bebaab354f68197c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Release files / cloudproof_py-5.0.0-py3-none-any.whl
| Download URL | cloudproof_py-5.0.0-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b4c4b8964ea119c0c4329ec04606ea218d5ed43b0239ac7734459852cedbd4c
|
|
BLAKE2b-256 checksum How to use checksums |
bce22212c4c61b00cfe4deae5d2ca9573bab808b55fa16d16889cbc1b9e07bf7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Security for cloudproof-py 5.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.