Chip de hardware Titan

Este contenido se actualizó por última vez en enero del 2025 y representa la situación en el momento en que se redactó. Las políticas y los sistemas de seguridad de Google pueden cambiar en el futuro, ya que mejoramos constantemente la protección que proporcionamos a nuestros clientes.

El chip Titan es un chip diseñado específicamente para establecer la raíz de confianza basada en hardware de las plataformas de los Google Cloud centros de datos. El chip Titan es un microcontrolador de bajo consumo que se implementa en plataformas como servidores, infraestructura de red y otros periféricos de centros de datos.

El chip Titan es un componente importante de la arquitectura de seguridad de hardware Titanium, que proporciona una capa de seguridad fundamental que ayuda a proteger contra ataques físicos y amenazas a los datos de los usuarios. El chip Titan permite a Google identificar y medir de forma segura el firmware y la configuración de la plataforma. Se ha diseñado para proteger frente a ataques de software con privilegios y rootkits desde el proceso de arranque de la máquina.

En este documento se describe la arquitectura del chip y las ventajas de seguridad del chip Titan. El chip Titan admite una base de computación de confianza (TCB) mínima que permite que el chip ofrezca las siguientes ventajas:

  • Una raíz de confianza de hardware que crea una identidad sólida para una máquina
  • Verificación de la integridad del firmware de la plataforma, tanto en el momento del arranque como en el de la actualización
  • Flujos de sellado de credenciales remotas que sustentan el sistema de gestión de credenciales de máquinas de Google

Familia de chips Titan

Los primeros chips Titan se diseñaron en el 2014. Las generaciones posteriores incorporaron la experiencia adquirida durante los procesos iterativos de fabricación, integración e implementación. Para obtener más información sobre cómo ha contribuido Google con sus conocimientos sobre el chip Titan a la comunidad de seguridad de hardware de código abierto, consulta opentitan.org.

Los chips Titan incluyen los siguientes componentes:

  • Procesador seguro
  • Coprocesador criptográfico AES y SHA
  • Generador de números aleatorios de hardware
  • Jerarquía de claves sofisticada
  • RAM estática (SRAM), flash y ROM integradas

Identidad de fabricación de Titan

Durante el proceso de fabricación del chip Titan, cada chip genera material de clave único. Este material de claves está certificado y se usa para generar registros de confirmación. Estos registros de confirmación se almacenan en una o varias bases de datos de registro y están protegidos criptográficamente mediante controles aislados y multipartitos.

Cuando las plataformas habilitadas para Titan se integran en la red de producción de Google, los sistemas backend pueden verificar que estas plataformas estén equipadas con chips Titan auténticos. Los chips Titan auténticos se suministran con claves que se registraron y certificaron durante el proceso de fabricación de Titan. Para obtener más información sobre cómo usan los servicios el sistema de identidad de Titan, consulta el proceso de sellado de credenciales.

Las identidades de los chips Titan de generaciones posteriores se generan y certifican de acuerdo con los estándares del sector, como Device Identifier Composition Engine (DICE). Los chips Titan originales se certificaron con un diseño personalizado de Google, ya que se fabricaron antes de que se introdujeran los estándares del sector pertinentes. La experiencia de Google en la fabricación e implementación de hardware seguro nos motiva a aumentar nuestra participación en los procesos de estandarización. Además, los estándares más recientes, como DICE, Trusted Platform Module (TPM) y Security Protocol and Data Mode (SPDM), incluyen cambios que reflejan nuestra experiencia.

Integración de Titan

Cuando el chip Titan se integra en una plataforma, proporciona protecciones de seguridad a un procesador de aplicaciones (AP). Por ejemplo, Titan se puede emparejar con una CPU que ejecute cargas de trabajo, un controlador de gestión de placa base (BMC) o un acelerador para cargas de trabajo como el aprendizaje automático.

Titan se comunica con el AP mediante el bus de interfaz periférica serie (SPI). Titan se interpone entre el AP y el chip flash del firmware de arranque del AP, lo que garantiza que Titan pueda leer y medir cada byte de ese firmware antes de que se ejecute en el momento del arranque.

Cuando se enciende una plataforma con Titan, se siguen estos pasos:

  1. Titan mantiene la CPU en modo de reinicio mientras el procesador de aplicaciones interno de Titan ejecuta código inmutable (la ROM de arranque) desde su memoria de solo lectura integrada.
  2. Titan ejecuta una autocomprobación integrada para verificar que no se ha manipulado la memoria (incluida la ROM).
  3. La ROM de arranque de Titan verifica el firmware de Titan mediante la criptografía de clave pública y mezcla la identidad del firmware verificado en la jerarquía de claves de Titan.
  4. La ROM de arranque de Titan carga el firmware verificado de Titan.
  5. El firmware de Titan verifica el contenido del flash del firmware de arranque del punto de acceso mediante criptografía de clave pública. Titan bloquea el acceso del PA a su firmware de arranque flash hasta que el proceso de verificación se completa correctamente.
  6. Después de la verificación, el chip Titan libera el AP del restablecimiento, lo que permite que el AP se inicie.
  7. El firmware del punto de acceso realiza una configuración adicional, que puede incluir el lanzamiento de más imágenes de arranque. El AP puede registrar las medidas de estas imágenes de arranque y enviarlas a Titan para monitorizarlas de forma segura.

Con estos pasos se consigue la integridad de la primera instrucción, ya que Google puede identificar el firmware de arranque y el SO que se ha iniciado en la máquina desde la primera instrucción que se ejecuta durante el ciclo de inicio. En el caso de los puntos de acceso con CPUs que aceptan actualizaciones de microcódigo, el proceso de arranque también informa a Google de qué parches de microcódigo se han obtenido antes de la primera instrucción del firmware de arranque. Para obtener más información, consulta el proceso de arranque medido.

Este flujo es similar al proceso de arranque que realizan las plataformas equipadas con un TPM. Sin embargo, los chips Titan incluyen funciones que no suelen estar disponibles en los TPMs estándar, como la autoverificación del firmware interno de Titan o la seguridad de la actualización del firmware de la AP, tal como se describe en las siguientes secciones.

Las integraciones estándar de TPM pueden ser vulnerables a ataques físicos de interposición. Las integraciones más recientes de Titan en Google mitigan estos ataques mediante raíces de confianza integradas. Para obtener más información, consulta TPM Transport Security: Defeating Active Interposers with DICE (YouTube) (Seguridad de transporte de TPM: cómo derrotar a los intermediarios activos con DICE).

Actualización segura del firmware de Titan

El firmware del chip Titan está firmado por una clave que se almacena en un HSM offline, protegido por controles basados en cuórum. La ROM de arranque de Titan verifica la firma del firmware de Titan cada vez que se inicia el chip.

El firmware de Titan se firma con un número de versión de seguridad (SVN), que indica el estado de seguridad de la imagen. Si una imagen de firmware incluye una corrección de vulnerabilidad, se incrementa el SVN de la imagen. El hardware de Titan permite que la red de producción certifique de forma segura el SVN del firmware de Titan, aunque el firmware anterior pueda haber tenido vulnerabilidades. El proceso de actualización nos permite recuperarnos de estas vulnerabilidades a gran escala, incluso si afectan al propio firmware de Titan. Para obtener más información, consulta el artículo sobre cómo recuperarse de vulnerabilidades en el firmware de la raíz de confianza.

Google ha contribuido a la última versión de la especificación de la biblioteca TPM, que ahora incluye funciones que permiten que otros TPMs proporcionen garantías de autoverificación similares. Para obtener más información, consulta la sección Objetos limitados por el firmware de TPM y por SVN (PDF) de la versión 1.83 de la especificación de la arquitectura de TPM. Estas funciones de TPM se han implementado y desplegado en nuestros chips Titan más recientes.

Actualización segura del firmware del punto de acceso

Además del firmware de Titan, también firmamos de forma criptográfica el firmware que se ejecuta en el punto de acceso. Titan verifica esta firma como parte del proceso de arranque de la plataforma. También verifica esta firma cada vez que se actualiza el firmware del punto de acceso, lo que garantiza que solo se puedan escribir imágenes de firmware auténticas en el chip flash del firmware de arranque del punto de acceso. Este proceso de verificación mitiga los ataques que intentan instalar puertas traseras persistentes o hacer que la plataforma no se pueda iniciar. La verificación de firmas también proporciona una defensa en profundidad para las plataformas de Google en caso de que una CPU tenga una vulnerabilidad en su propio mecanismo de autenticación de microcódigo.

Siguientes pasos

Consulta más información sobre nuestro proceso de integridad del arranque.