Trusted Platform Module verwenden

Für die sichere Authentifizierung in der Kommunikation mit externen Netzwerken verfügt der RevPi Flat über das Trusted Platform Module Infineon OPTIGA™ TPM SLB 9670.

Dieses Modul ist über die SPI-Schnittstelle mit einer maximalen SPI-Frequenz von 1 MHz angebunden und erfüllt die Anforderungen von TPM 2.0.

Um das Modul benutzen zu können, benötigst Du freie Software. Mit den folgenden Paketen auf Debian-basiertem Linux (Debian, Raspbian, RevPi) triffst Du eine gute Wahl:
tpm_tis_spi.ko: Kernel-Modul als Treiber für Infineon OPTIGA™ TPM SLB9670. Der Knoten des Moduls auf der Benutzerfläche lautet “/dev/tpmX”, wobei X eine Nummer ist, die entsprechend der ID-Vergabe Regel zugewiesen wird (https://www.kernel.org/doc/html/latest/core-api/idr.html). Der Quellcode befindet sich im Linux-Quellcode “drivers/char/tpm/”.
libtss2-udev: damit kannst Du TPM-Geräte anhand ihrer Eigenschaften wie Hersteller- oder Geräte-ID identifizieren.
libtss2-esys0: das sind API-Schichten zur Unterstützung von TPM-2.0-Bausteinen.
tpm2-tools: das sind mehrere Tools, mit denen Du die TPM-2.0-Hardware verwalten und nutzen kannst. Das umfasst z. B. die sichere Erstellung, Speicherung und Verwendung von RSA-Schlüsseln und die Überprüfung des Softwarestatus einer Plattform mittels kryptografischem Hashing.

Das Revolution Pi Repository selbst enthält die tmp2-tools ab dem Image Buster. Du kannst sie einfach mit „apt-get install tpm2-tools“ installieren. Auf dem Stretch‑Image musst Du sie manuell mit dem Binärprogramm (z. B. Debian-Paket) von einer vertrauenswürdigen Quelle installieren oder aus dem Quellcode selbst bauen.

Der Quellcode der oben genannten Komponenten ist hier verfügbar: https://github.com/tpm2-software

Weitere Informationen zu TPM 2.0 findest Du hier: https://trustedcomputinggroup.org/resource/tpm-library-specification/