Crittografia dei dati in transito

Db2® utilizza il protocollo Transport Layer Security (TLS) per trasmettere in modo sicuro i dati tra server e client. La tecnologia TLS utilizza sia la crittografia asimmetrica (ad esempio la crittografia a chiave pubblica) che la crittografia simmetrica per rendere questo lavoro.

È possibile utilizzare TLS per proteggere i dati in transito su tutte le reti che utilizzano TCP/IP. In altre parole, una connessione TLS è una connessione TCP/IP protetta.

Crittografia chiave pubblica per l'autenticazione del server

TLS utilizza algoritmi di chiave pubblica per scambiare informazioni chiave di codifica e informazioni sul certificato digitale. La crittografia a chiave pubblica viene utilizzata per garantire che un client possa fidarsi del certificato utilizzato da un server.

La crittografia a chiave pubblica utilizza due diverse chiavi di codifica durante una sessione TLS:
  • Una chiave pubblica per criptare i dati.
  • Una chiave privata associata per decodificarlo.
Con la crittografia a chiave pubblica, la chiave pubblica non è segreta, ma i messaggi che codifica possono essere decodificati solo utilizzando la chiave privata associata. La chiave privata deve essere protetta in modo sicuro in un file che si chiama memorizzazione chiave.

Gli algoritmi di chiave pubblica da soli non garantiscono una comunicazione sicura, devi anche verificare l'identità di chi comunica con te. Per effettuare questa autenticazione, TLS utilizza certificati digitali.

Distribuzione e utilizzo dei certificati digitali

Per facilitare la crittografia dei dati in un ambiente Db2 , le seguenti attività devono avvenire per ogni server Db2 all'interno della propria organizzazione:
  1. Un membro della tua organizzazione utilizza IBM Global Security Kit (GSKit) per creare una coppia di chiavi pubblica e privata.
  2. La chiave pubblica viene inviata a una CA (Certificate Authority) dove viene creato e firmato un certificato.
  3. Il certificato del server (che include la chiave pubblica del server) è distribuito a tutti i client Db2 (e server) all'interno della propria organizzazione per storage all'interno dei propri keystores locali.

Una volta che i certificati per ogni server sono stati distribuiti all'interno della tua rete, sono in vigore tutte le parti necessarie per far funzionare TLS.

Prima che i dati siano crittografati per la trasmissione tra i nodi Db2 nella tua rete, si verifica un handshake TLS . Ciò consente ad un client di verificare la validità del certificato di un server e, se il certificato è attendibile, creare una chiave di sessione utilizzando la chiave pubblica del server. Il tasto di sessione viene utilizzato per crittografare i dati che viaggiano tra il client e il server per la durata della connessione.