Criptografia de dados em trânsito
Db2® usa o protocolo Transport Layer Security (TLS) para transmitir dados de forma segura entre servidores e clientes. A tecnologia TLS usa a criptografia assimétrica (por exemplo, criptografia de chave pública) e criptografia simétrica para fazer esse trabalho.
É possível usar TLS para proteger dados em trânsito em todas as redes que usam TCP/IP. Em outras palavras, uma conexão TLS é uma conexão TCP/IP segura.
Criptografia de chave pública para autenticação de servidor
O TLS usa algoritmos de chave pública para trocar informações de chave de criptografia e informações de certificado digital. A criptografia de chave pública é usada para garantir que um cliente possa confiar no certificado que é usado por um servidor.
- Uma chave pública para criptografar dados.
- Uma chave privada associada para decriptografá-lo.
Os algoritmos de chave pública sozinhos não garantem a comunicação segura, você também precisa verificar a identidade de quem está se comunicando com você. Para fazer essa autenticação, o TLS usa certificados digitais.
Distribuição e utilização de certificados digitais
- Um membro de sua organização usa IBM Global Security Kit (GSKit) para criar um par de chaves públicas e privadas.
- A chave pública é enviada para uma autoridade de certificação (CA) na qual um certificado é criado e assinado.
- O certificado do servidor (que inclui a chave pública do servidor) é distribuído para todos os clientes Db2 (e servidores) dentro de sua organização para o armazenamento dentro de suas keystores locais.
Uma vez que os certificados para cada servidor foram distribuídos dentro da sua rede, todas as partes necessárias para fazer o trabalho TLS estão em vigor.
Antes de os dados serem criptografados para transmissão entre os nós Db2 em sua rede, ocorre um handshake TLS . Isso possibilita que um cliente verifique a validade do certificado de um servidor e, caso o certificado seja confiável, crie uma chave de sessão usando a chave pública do servidor. A chave de sessão é usada para criptografar dados que viajam entre o cliente e servidor para a duração da conexão.