Este conteúdo foi atualizado pela última vez em janeiro de 2025 e representa o status quo no momento em que foi escrito. As políticas e os sistemas de segurança da Google podem mudar no futuro, à medida que melhoramos continuamente a proteção dos nossos clientes.
O chip Titan é um chip criado especificamente que estabelece a raiz de hardware de confiança para plataformas em Google Cloud centros de dados. O chip Titan é um microcontrolador de baixo consumo de energia que é implementado em plataformas como servidores, infraestrutura de rede e outros periféricos de centros de dados.
O chip Titan é um componente importante da arquitetura de segurança de hardware Titanium, que oferece uma camada de segurança fundamental que ajuda a proteger contra ataques físicos e ameaças aos dados do utilizador. O chip Titan permite à Google identificar e medir em segurança o firmware e a configuração da plataforma. Foi concebido para proteger contra ataques de software privilegiado e rootkits, a partir do processo de arranque da máquina em diante.
Este documento descreve a arquitetura do chip e as vantagens de segurança do chip Titan. O chip Titan suporta uma base de computação fidedigna (TCB) mínima que permite ao chip oferecer as seguintes vantagens:
- Uma raiz de confiança de hardware que cria uma identidade forte para uma máquina
- Validação da integridade do firmware da plataforma, tanto no momento do arranque como no momento da atualização
- Fluxos de vedação de credenciais remotas que sustentam o sistema de gestão de credenciais de máquinas da Google
A família de chips Titan
Os primeiros chips Titan foram concebidos em 2014. As gerações posteriores incorporaram a experiência adquirida durante os processos iterativos de fabrico, integração e implementação. Para mais informações sobre como a Google contribuiu com os seus conhecimentos sobre o chip Titan para a comunidade de segurança de hardware de código aberto, consulte opentitan.org.
Os chips Titan incluem os seguintes componentes:
- Processador seguro
- Coprocessador criptográfico AES e SHA
- Gerador de números aleatórios de hardware
- Hierarquia de chaves sofisticada
- RAM estática (SRAM), flash e ROM incorporadas
Identidade de fabrico do Titan
Durante o processo de fabrico do chip Titan, cada chip Titan gera material de chave único. Este material de chave é certificado e usado para produzir registos de aprovação. Estes registos de aprovação são armazenados numa ou mais bases de dados de registo e estão protegidos criptograficamente através de controlos de várias partes e com isolamento físico.
Quando as plataformas com o Titan estão integradas na rede de produção da Google, os sistemas de back-end podem verificar se estas plataformas estão equipadas com chips Titan autênticos. Os chips Titan autênticos são aprovisionados com chaves que foram registadas e certificadas durante o processo de fabrico do Titan. Para mais informações sobre como os serviços usam o sistema de identidade Titan, consulte o processo de selagem de credenciais.
As identidades dos chips Titan de gerações posteriores são geradas e certificadas de acordo com as normas da indústria, como a Device Identifier Composition Engine (DICE). Os chips Titan originais foram certificados através de um design personalizado da Google, uma vez que estes chips foram fabricados antes da introdução das normas da indústria relevantes. A experiência da Google na produção e implementação de hardware seguro motiva-nos a aumentar a participação em processos de normas, e as normas mais recentes, como DICE, Trusted Platform Module (TPM) e Security Protocol and Data Mode (SPDM), incluem alterações que refletem a nossa experiência.
Integração do Titã
Quando o chip Titan está integrado numa plataforma, oferece proteções de segurança a um processador de aplicações (AP). Por exemplo, o Titan pode ser sincronizado com uma CPU que executa cargas de trabalho, um controlador de gestão da placa base (BMC) ou um acelerador para cargas de trabalho, como a aprendizagem automática.
O Titan comunica com o AP através do barramento da interface periférica em série (SPI). O Titan interpõe-se entre o PA e o chip flash do firmware de arranque do PA, garantindo que o Titan pode ler e medir todos os bytes desse firmware antes de o firmware ser executado no momento do arranque.
Os passos seguintes ocorrem quando uma plataforma com o Titan é ligada:
- O Titan mantém a CPU no modo de reposição enquanto o processador de aplicações interno do Titan executa código imutável (a ROM de arranque) a partir da respetiva memória só de leitura incorporada.
- O Titan executa um teste automático incorporado para verificar se toda a memória (incluindo a ROM) não foi adulterada.
- A ROM de arranque do Titan valida o firmware do Titan através da criptografia de chave pública e mistura a identidade do firmware validado na hierarquia de chaves do Titan.
- A ROM de arranque do Titan carrega o firmware validado do Titan.
- O firmware do Titan valida o conteúdo do flash do firmware de arranque do PA através da criptografia de chave pública. O Titan bloqueia o acesso do PA ao flash do firmware de arranque até que o processo de validação seja concluído com êxito.
- Após a validação, o chip Titan liberta o AP da reposição, o que permite o arranque do AP.
- O firmware do PA executa uma configuração adicional, que pode incluir o lançamento de mais imagens de arranque. O PA pode capturar medições destas imagens de arranque e enviar as medições para o Titan para uma monitorização segura.
Estes passos alcançam a integridade da primeira instrução porque a Google consegue identificar o firmware de arranque e o SO que foram iniciados na máquina a partir da primeira instrução executada durante o ciclo de arranque. Para os PAs com CPUs que aceitam atualizações de microcódigo, o processo de arranque também informa a Google sobre que patches de microcódigo foram obtidos antes da primeira instrução do firmware de arranque. Para mais informações, consulte o processo de arranque medido.
Este fluxo é semelhante ao processo de arranque realizado por plataformas equipadas com um TPM. No entanto, os chips Titan incluem funcionalidades que não estão geralmente disponíveis em TPMs padrão, como a autoatestação do firmware interno do Titan ou a segurança de atualização do firmware do AP, conforme descrito nas secções seguintes.
As integrações padrão do TPM podem ser vulneráveis a ataques de interposição física. As integrações mais recentes do Titan na Google mitigam estes ataques através de raízes de confiança integradas. Para mais informações, consulte o artigo Segurança de transporte do TPM: como derrotar os interpositores ativos com o DICE (YouTube).
Atualização segura do firmware Titan
O firmware do chip Titan é assinado por uma chave que é mantida num HSM offline, que está protegido por controlos baseados em quórum. A ROM de arranque do Titan valida a assinatura do firmware do Titan sempre que o chip arranca.
O firmware do Titan está assinado com um número de versão de segurança (SVN), que transmite o estado de segurança da imagem. Se uma imagem de firmware incluir uma correção de vulnerabilidade, o SVN da imagem é incrementado. O hardware Titan permite que a rede de produção ateste fortemente o SVN do firmware do Titan, mesmo que o firmware mais antigo possa ter tido vulnerabilidades. O processo de atualização permite-nos recuperar destas vulnerabilidades em grande escala, mesmo que afetem o firmware do Titan. Para mais informações, consulte o artigo Recuperação de vulnerabilidades no firmware de raiz de confiança.
A Google contribuiu para a versão mais recente da especificação da biblioteca TPM, que agora inclui funcionalidades que permitem que outros TPMs ofereçam garantias de autocertificação semelhantes. Para mais informações, consulte a secção de objetos limitados pelo firmware do TPM e limitados pelo SVN (PDF) da versão 1.83 da especificação da arquitetura do TPM. Estas funcionalidades de TPM foram implementadas e implementadas nos nossos chips Titan mais recentes.
Atualização do firmware do PA segura
Além do firmware do Titan, também assinamos criptograficamente o firmware executado no PA. O Titan valida esta assinatura como parte do processo de arranque da plataforma. Também valida esta assinatura sempre que o firmware do PA é atualizado, o que garante que apenas as imagens de firmware do PA autênticas podem ser escritas no chip flash do firmware de arranque do PA. Este processo de validação mitiga ataques que tentam instalar backdoors persistentes ou tornar a plataforma não inicializável. A validação de assinatura também oferece uma defesa em profundidade para as plataformas da Google no caso de uma CPU ter uma vulnerabilidade no respetivo mecanismo de autenticação de microcódigo.
O que se segue?
Saiba mais sobre o nosso processo de integridade de arranque.