self_test(is_file=False) only forwarded is_file to the public-key wrap; decrypt_aes_key_with_rsa had no is_file parameter and always open()'d its argument, so a PEM string was opened as a filename, misdiagnosing a good keypair as non-pairing and leaking the private key PEM into the FileNotFoundError traceback. decrypt_aes_key_with_rsa now takes is_file (default True, preserving current callers), and self_test threads it through to both key loads. encrypt_data json.dumps a dict without checking key types, silently stringifying int/float/bool/None keys (e.g. snowflake-int-keyed dicts), so a decrypt round-trip silently lost the original key. encrypt_data now raises TypeError on a non-str key instead of coercing it. Signed-off-by: disqualifier <dev@disqualifier.me>
16 lines
401 B
TOML
16 lines
401 B
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "envelope_crypto"
|
|
version = "0.1.5"
|
|
description = "Envelope encryption (RSA-OAEP wrapped AES-256-GCM) for dict records — config-free, storage-agnostic, installable."
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"cryptography>=42.0",
|
|
]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/envelope_crypto"]
|