Metadata-Version: 2.4
Name: deml-crypto
Version: 0.1.0
Summary: AES-256-GCM + GCP KMS envelope encryption with DEK rotation for DEML Platform
Project-URL: Homepage, https://dataengineeringformachinelearning.com
Project-URL: Documentation, https://dataengineeringformachinelearning.com/documentation
Project-URL: Repository, https://github.com/dataengineeringformachinelearning/dataengineeringformachinelearning
Project-URL: Issues, https://github.com/dataengineeringformachinelearning/dataengineeringformachinelearning/issues
Author-email: Joe Alongi <joe@dataengineeringformachinelearning.com>
License-Expression: MIT
License-File: LICENSE
Keywords: aes,crypto,encryption,envelope,gcm,gcp,kms
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Security :: Cryptography
Requires-Python: >=3.10
Requires-Dist: cryptography>=41.0.0
Requires-Dist: google-cloud-kms>=3.0.0; extra == 'gcp'
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Requires-Dist: ruff>=0.4.0; extra == 'dev'
Provides-Extra: gcp
Requires-Dist: google-cloud-kms>=3.0.0; extra == 'gcp'
Description-Content-Type: text/markdown

# DEML Crypto

AES-256-GCM + GCP KMS envelope encryption with DEK rotation.

## Installation

```bash
pip install deml-crypto
# With GCP KMS support:
pip install deml-crypto[gcp]
```

## Usage

```python
from deml_crypto import encrypt, decrypt, generate_key

# Encrypt data
encrypted_data, encrypted_dek = encrypt(b"my secret data")

# Decrypt data
decrypted = decrypt(encrypted_data, encrypted_dek)
```

## Features

- Envelope encryption with GCP KMS or local KEK
- Automatic key rotation support
- UUID-scoped tenant encryption compatible
- No pickle serialization (safe for security-critical contexts)

## License

MIT
