Prodotto · Estensione PostgreSQL open source

pg_vault_tde

Transparent Data Encryption (TDE) per PostgreSQL

PostgreSQL non include una funzione nativa di Transparent Data Encryption. pg_vault_tde cifra i dati delle tabelle a riposo — su disco, nei backup, negli stream di replica logica — senza modificare le query applicative e senza patch al core di PostgreSQL. Si installa come una normale estensione, si integra con il sistema di gestione chiavi già in uso (HashiCorp Vault/OpenBao, wallet locale o HSM) e permette di ruotare le chiavi online, senza downtime.

Scheda tecnica

In sintesi

Prodotto pg_vault_tde
Categoria Estensione PostgreSQL — Transparent Data Encryption (TDE)
Versione corrente 1.7
Autore Miriade S.r.l.
Licenza PostgreSQL License (BSD 2-Clause) — permissiva, compatibile MIT/BSD/ISC/Apache 2.0; nessun codice GPL/AGPL
PostgreSQL supportati 17, 18 (supporto a PostgreSQL 19 in roadmap)
Architetture CPU x86-64, AArch64 (ARM64)
Accelerazione hardware AES-NI, VAES+AVX2 (x86-64); ARM Crypto Extensions
Pacchettizzazione .deb (Ubuntu 22.04/24.04, Debian 11/12), .rpm (Rocky/AlmaLinux 8/9), immagine container
Dipendenze OpenSSL 3.x, libcurl
Installazione shared_preload_libraries + CREATE EXTENSION — nessuna ricompilazione o patch del core
Maturità 7 release incrementali (v1.0 → v1.7); oltre 130 test di regressione automatizzati; zero warning del compilatore su PG 17 e 18
Il problema

PostgreSQL non ha una TDE nativa

Le organizzazioni regolamentate devono dimostrare che i dati sensibili sono illeggibili a chiunque acceda direttamente allo storage — un disco rubato, un backup non cifrato, uno snapshot cloud. Senza TDE nativa, i team hanno finora tre opzioni poco soddisfacenti:

Cifratura disco / filesystem

Protegge da un disco rubato, ma non da chi ha già accesso al sistema operativo, e non protegge nulla mentre il database è in esecuzione.

Cifratura applicativa (colonna)

Sicura, ma richiede riscritture invasive dell'applicazione, rompe indicizzazione e query e sposta la gestione chiavi dentro ogni applicazione.

Fork o patch del core

Potente, ma ogni aggiornamento richiede una nuova patch, i backport di sicurezza arrivano in ritardo e si perde l'accesso ai canali di supporto standard.

pg_vault_tde colma il divario usando le API pubbliche di PostgreSQL per Table Access Method e Index Access Method (esposte dalla versione 12 in poi): cifratura trasparente all'SQL, nessuna modifica applicativa, nessun onere di manutenzione di un fork.

Come funziona

Trasparente all'SQL, chiavi separate dai dati

Tabelle cifrate

Le tabelle si creano con USING encrypted_heap: ogni riga è cifrata prima di toccare il disco e decifrata in modo trasparente su una normale SELECT. Nessuna riscrittura delle query.

Gerarchia di chiavi a due livelli

Una Data Encryption Key (AES-256, per tabella) cifra i dati; una Key Encryption Key custodita nel tuo KMS la "wrappa". Solo la chiave wrappata è salvata nel database.

La master key non lascia il KMS

Un disco rubato, uno snapshot o un pg_basebackup contengono solo testo cifrato e chiavi wrappate: inutilizzabili senza un accesso separato al KMS.

Cifratura autenticata (AEAD)

Se il testo cifrato viene alterato, PostgreSQL genera un errore esplicito invece di restituire silenziosamente dati manomessi o corrotti.

Funzionalità principali

Cosa offre

Motore di cifratura

AES-256-GCM autenticato su ogni riga via OpenSSL 3.x, con rilevamento manomissioni e legame crittografico per tabella. Tutto tramite le API pubbliche, senza patch al core.

Gestione chiavi flessibile

KMS selezionabile per singolo database: HashiCorp Vault/OpenBao, wallet locale o HSM (PKCS#11). Tenant diversi sullo stesso cluster possono usare backend diversi.

Rotazione chiavi online

Rotazione della chiave dati e della master key su traffico di produzione live, senza downtime né riscrittura completa della tabella. Avanzamento tracciabile in tempo reale.

Indici cifrati

tde_btree: indice B-tree su colonne cifrate per ricerche di uguaglianza, con cifratura deterministica misuse-resistant (AES-256-SIV).

Replica logica & backup

Plugin di output per la replica logica standard; strumenti dedicati pg_dump_tde / pg_restore_tde e key sealing autenticato (HMAC) per i backup fisici.

Audit & performance

Audit logging sempre attivo e strutturato (autenticazione KMS, rotazione chiavi, accessi negati); accelerazione hardware (AES-NI, VAES+AVX2, ARM) rilevata a runtime.

Gestione chiavi

Il KMS lo scegli tu

Backend Indicato per Come funziona
HashiCorp Vault / OpenBao Infrastruttura KMS/secrets centralizzata già esistente Motore Transit di Vault via HTTPS; autenticazione Token, AppRole e Kubernetes JWT
Wallet locale Deployment standalone senza infrastruttura KMS esterna File PKCS#12 protetto da passphrase, fuori dalla data directory; derivazione robusta (PBKDF2-SHA256, 600.000 iterazioni, NIST SP 800-132)
PKCS#11 / HSM Ambienti regolamentati con custodia hardware delle chiavi Interfaccia Cryptoki dell'HSM; master key non-estraibile sul dispositivo. Validato con Thales, Utimaco, YubiHSM, AWS CloudHSM
KMIP roadmap v1.9 Interoperabilità con infrastrutture KMS enterprise Non ancora disponibile — voce di roadmap
Modello di sicurezza

Cosa protegge, e cosa no

Essere chiari sul perimetro è un punto di forza, non una debolezza: la TDE protegge i dati a riposo, non durante l'elaborazione o il transito.

Cosa protegge

Un disco o volume di storage rubato o smaltito male.
Un backup logico o snapshot non cifrato o indirizzato per errore.
L'accesso diretto al filesystem senza credenziali SQL.
La manomissione dei dati salvati (rilevata, non accettata).

Cosa è fuori perimetro (per progetto)

I dati in memoria durante l'esecuzione delle query.
Il trasporto di rete: va usato TLS insieme alla TDE.
L'autorizzazione nel database: un utente con SELECT vede i dati in chiaro. La TDE non sostituisce RLS, privilegi e RBAC.
Alcuni casi limite documentati (es. file temporanei da cursori WITH HOLD).
Allineamento normativo

A supporto della compliance

pg_vault_tde non rende un ambiente "conforme" da solo: la compliance è una proprietà dell'intero ambiente. Ciò che si può affermare correttamente:

PCI-DSS Req. 10

L'audit logging sempre attivo mappa direttamente su specifiche sotto-clausole 10.2.1.x: autenticazione, ciclo di vita delle chiavi, accessi negati.

HIPAA §164.312(b)

Lo stesso sistema di audit logging è documentato come allineato ai controlli di audit richiesti dall'HIPAA.

Custodia hardware (HSM)

L'integrazione PKCS#11/HSM soddisfa i requisiti per cui la master key non deve mai esistere fuori da un confine hardware certificato.

FIPS & GDPR

OpenSSL può usare un provider validato FIPS (l'estensione non rivendica una validazione propria). La cifratura a riposo supporta le best practice dell'Art. 32 GDPR.

In una frase

Cifra i dati senza toccare nulla

Cifra i dati PostgreSQL a riposo — senza toccare l'applicazione, il lavoro dei DBA o il codice sorgente di PostgreSQL.

Si installa con shared_preload_libraries e CREATE EXTENSION, senza ricompilazioni. Rilasciata da Miriade con licenza PostgreSQL (BSD 2-Clause): nessun lock-in, nessun codice GPL/AGPL.

Collegato a

Supporto e contesto

FAQ

Domande frequenti

Richiede patch al core di PostgreSQL?

No. Si installa come estensione (shared_preload_libraries + CREATE EXTENSION) usando le API pubbliche di PostgreSQL, senza ricompilare né modificare i binari.

Devo modificare l'applicazione o le query?

No. La cifratura è trasparente all'SQL: le tabelle si creano con USING encrypted_heap e le query restano invariate.

Quali versioni di PostgreSQL supporta?

PostgreSQL 17 e 18; il supporto a PostgreSQL 19 è in roadmap.

Chi custodisce la master key?

Il tuo KMS: HashiCorp Vault/OpenBao, un wallet locale o un HSM. La master key non risiede mai nella data directory né viaggia con i backup.

Mi rende conforme a PCI-DSS o HIPAA?

No: nessun prodotto lo fa da solo. pg_vault_tde fornisce controlli (audit, cifratura, custodia chiavi) che supportano requisiti specifici come PCI-DSS Req. 10 e HIPAA §164.312(b).

Che impatto ha sulle performance?

Il motore sfrutta automaticamente l'accelerazione crittografica della CPU (AES-NI, VAES+AVX2, ARM Crypto) rilevata a runtime, senza configurazione.

Vuoi valutare pg_vault_tde sul tuo PostgreSQL?

Raccontaci il tuo ambiente (versioni, KMS, requisiti di sicurezza): ti aiutiamo a valutare l'estensione e, con MirCrypt, a portarla in produzione con supporto continuativo.

Richiedi informazioni o acquista

Scrivici per valutare pg_vault_tde

Raccontaci il tuo ambiente PostgreSQL e i tuoi obiettivi di compliance. Compilando il modulo, potrai fissare un confronto tecnico con il nostro team per valutare l'integrazione di pg_vault_tde nella tua architettura. Insieme potremo:

Analizzare il tuo ecosistema: versioni di PostgreSQL in uso e KMS da integrare (HashiCorp Vault, HSM o locale).
Esplorare i casi d'uso: performance, impatto sull'infrastruttura e procedure di rotazione delle chiavi senza downtime.
Valutare il passaggio in produzione: scoprendo i vantaggi del supporto continuativo e commerciale offerto da MirCrypt.

Nota privacy e sicurezza. Non inserire credenziali, password o dati sensibili nel form. Documenti, dati o accessi necessari all'assessment verranno gestiti successivamente tramite canali sicuri concordati.