O Trusted Platform Module (TPM) é um dispositivo de hardware integrado a computadores, consistindo em um processador de criptografia dedicado. Ele desempenha várias funções, incluindo:
- Geração Segura de Chaves: O TPM gera chaves de forma segura, contribuindo para a autenticação e a proteção de dados.
- Atestado Remoto: O TPM autentica a configuração de software e hardware para um sistema remoto, permitindo que este determine a integridade do sistema.
- Vinculação e Selagem de Dados: Utilizando a chave secreta do TPM, é possível derivar uma chave exclusiva para criptografar dados, vinculando-os ao TPM e ao sistema em que está instalado. A selagem de dados requer que o TPM esteja em um estado específico para descriptografar os dados.
O TPM é implementado de várias maneiras, incluindo como um chip de hardware discreto, integrado a outro chip, em software de firmware ou virtualizado em um hipervisor. A implementação mais segura é o chip discreto, que oferece resistência física a adulterações.
Elemento Seguro e Trusted Execution Environment (TEE):
Dispositivos móveis possuem um equivalente chamado "elemento seguro," que é um chip resistente a violações incorporado no microprocessador ou na placa principal. Uma evolução disso é o Trusted Execution Environment (TEE), que fornece um ambiente de execução isolado ao lado do sistema operacional principal. O TEE isola aplicativos do sistema operacional e de outros aplicativos instalados, garantindo segurança adicional.
Críticas aos TPMs:
TPMs foram criticados pela confiança nos fabricantes, pois a chave secreta é gravada durante a fabricação, dando ao fabricante potencial acesso a ela. Um ataque físico a um TPM foi relatado, envolvendo um microscópio eletrônico e equipamentos especializados. Apesar da complexidade do ataque, ele demonstrou a possibilidade de violação da segurança do TPM.
Criptografia de Disco Completo (FDE):
A criptografia de disco completo é a prática de criptografar todo o disco no sistema, não apenas arquivos específicos. Opções populares incluem Bitlocker da Microsoft, Filevault 2 da Apple e dm-crypt para sistemas Linux. FDE utiliza uma pequena partição de boot não criptografada para carregar elementos essenciais durante a inicialização.
O uso do TPM no FDE proporciona segurança adicional, protegendo contra adulteração de hardware, roubo ou clonagem do disco. Integridade de plataforma é mantida para evitar o desbloqueio do disco se a configuração do sistema for alterada.
Conceito de Aleatoriedade:
Aleatoriedade é crucial na criptografia. Se a seleção de números não for verdadeiramente aleatória, padrões podem ser descobertos ao longo do tempo. Sistemas operacionais mantêm "pools de entropia" para garantir a verdadeira aleatoriedade, essenciais para geradores de números aleatórios.
Este módulo forneceu uma visão abrangente das aplicações da criptografia, desde dispositivos dedicados como o TPM até práticas como a criptografia de disco completo. O próximo módulo abordará os três A's da segurança: autenticação, autorização e registros (accounting). Antes disso, há um teste final sobre os conceitos de criptografia abordados até agora.