Cómo determinar si la computadora tiene TPM (Trusted Platform Module) disponible

9

Con ganas de jugar con Trusted Platform Module , instalé TrouSerS e intenté comenzar tcsd, pero recibí este error:

TCSD TDDL ERROR: Could not find a device to open!

Sin embargo, mi kernel tiene múltiples módulos TPM cargados:

# lsmod | grep tpm
tpm_crb                16384  0
tpm_tis                16384  0
tpm_tis_core           20480  1 tpm_tis
tpm                    40960  3 tpm_tis,tpm_crb,tpm_tis_core

Entonces, ¿cómo puedo determinar si mi computadora carece de TPM o si TrouSerS tiene un error?

Ni dmidecodetampoco cpuidmuestra nada sobre "tpm" o "confianza". Mirando hacia adentro /var/log/messages, por un lado, veo rngd: /dev/tpm0: No such file or directory, pero por otro lado, veo kernel: Initialise system trusted keyringsy de acuerdo con este kernel doc, las claves de confianza usan TPM.

EDITAR : Los menús de configuración del BIOS de mi computadora no mencionan nada sobre TPM.

Además, mirando /proc/keys:

# cat /proc/keys 
******** I--Q---     1 perm 1f3f0000     0 65534 keyring   _uid_ses.0: 1
******** I--Q---     7 perm 3f030000     0     0 keyring   _ses: 1
******** I--Q---     3 perm 1f3f0000     0 65534 keyring   _uid.0: empty
******** I------     2 perm 1f0b0000     0     0 keyring   .builtin_trusted_keys: 1
******** I------     1 perm 1f0b0000     0     0 keyring   .system_blacklist_keyring: empty
******** I------     1 perm 1f0f0000     0     0 keyring   .secondary_trusted_keys: 1
******** I------     1 perm 1f030000     0     0 asymmetri Fedora kernel signing key: 34ae686b57a59c0bf2b8c27b98287634b0f81bf8: X509.rsa b0f81bf8 []
Matthew Cline
fuente
¿Hay una opción en la configuración de su BIOS para habilitar / deshabilitar TPM? Incluso si no puede desactivarlo, puede haber información aquí sobre TPM independientemente.
airhuff
Ah, no, lo comprobé y BIOS no tenía nada sobre TPM. Agregaré eso.
Matthew Cline
1
El TPM generalmente se describe en las tablas ACPI configuradas por la BIOS. Si dmesg | grep -w tpmno da mensajes sobre la inicialización de un tpm, entonces no tiene uno que sea reconocido por el núcleo. La mayoría de las computadoras portátiles y de escritorio no tienen TPM, son bastante estándar en máquinas vendidas como servidores (es decir, lo suficientemente grandes como para ejecutar IPMI), y también en Chromebooks, donde son parte de la historia de seguridad.
icarus
1
Para jugar, ibm desarrolló un tpm suave que puede compilar y ejecutar, y también existe este emulador más fácil de usar.
meuh

Respuestas:

12

Los TPM no necesariamente aparecen en las tablas ACPI, pero los módulos imprimen un mensaje cuando encuentran un módulo compatible; por ejemplo

[  134.026892] tpm_tis 00:08: 1.2 TPM (device-id 0xB, rev-id 16)

Entonces dmesg | grep -i tpmes un buen indicador.

El indicador definitivo es la herramienta de configuración de su firmware: los TPM implican procedimientos de propiedad que se gestionan desde la configuración del firmware. Si su configuración no menciona nada relacionado con TPM, entonces no tiene un TPM.

Los TPM generalmente se encuentran en servidores y computadoras portátiles comerciales (y ChromeBooks, como explica icarus ), son raros en computadoras de escritorio o computadoras portátiles "no comerciales". Cualquier cosa que soporte Intel TXT tiene un TPM.

Stephen Kitt
fuente
Actualización del año 2020: la mayoría de las PC recién fabricadas, incluso los modelos de consumo, ahora se envían con un TPM. Microsoft los recomienda oficialmente en todas las PC nuevas, y un número creciente de características de Windows lo requieren.
Lily Finley