Skip to content

Tags

Tags

v1.16.0

Toggle v1.16.0's commit message
Release v1.16.0

v1.15.0

Toggle v1.15.0's commit message
Release v1.15.0

v1.14.0

Toggle v1.14.0's commit message
Release v1.14.0

v1.13.0

Toggle v1.13.0's commit message
Release v1.13.0

v1.12.0

Toggle v1.12.0's commit message
Release v1.12.0

v1.9.0

Toggle v1.9.0's commit message
babelqueue-java v1.9.0

v1.8.0

Toggle v1.8.0's commit message
babelqueue-java v1.8.0

v1.7.0

Toggle v1.7.0's commit message
feat(gdpr): runtime field encryption for x-gdpr-sensitive — Java core…

… (ADR-0030)

The SDK-enforcement half of GDPR governance (mirrors the Go reference). New
com.babelqueue.gdpr: a caller-bound Cipher interface (encrypt/decrypt onto
KMS/Vault) + a JDK-only AesGcmCipher reference (javax.crypto, AES-256-GCM), and
Gdpr.protect/unprotect that encrypt/decrypt exactly the schema's x-gdpr-sensitive
leaves in place (nested + array + root), byte-for-byte round-trip, wrong key ->
DecryptException. SensitivePaths.of parses x-gdpr-sensitive (validation-neutral);
a small public JsonValues bridges the package-private codec for canonical leaf
round-trips. data stays pure JSON (ciphertext string) so the envelope is frozen
(GR-1, schema_version 1, trace_id preserved); the Cipher seam keeps the core
zero-dep (GR-7). Opt-in; schema validation on cleartext. v1.7.0.