This document provides information on what a TPM is along with tools, tutorials, and examples on how to work with it.
Using the Trusted Platform Module in the New Age of Security
-
https://community.infineon.com/t5/Blogs/What-is-a-TPM-What-is-it-used-for/ba-p/396224
-
https://community.infineon.com/t5/Blogs/TPM-remote-attestation-How-can-I-trust-you/ba-p/452729
https://en.wikipedia.org/wiki/Trusted_Platform_Module
https://uefi.org/sites/default/files/resources/UEFI_Plugfest_Advanced_TPM_Usage_Fall_2018.pdf
https://tpm2-software.github.io/tutorials/
https://tpm2-software.github.io/2020/06/12/Remote-Attestation-With-tpm2-tools.html
https://joholl.github.io/tpm2-tools/tutorial/2019/10/09/Tools-Tutorial.html
Developer community for those implementing APIs and infrastructure from the TCG TSS2 specifications.
https://github.com/tpm2-software
Go-TPM is a Go library that communicates directly with a TPM device on Linux or Windows machines.
https://github.com/google/go-tpm
Go-Attestation abstracts remote attestation operations across a variety of platforms and TPMs, enabling remote validation of machine identity and state. This project attempts to provide high level primitives for both client and server logic.
https://github.com/google/go-attestation
Attest the trustworthiness of a device against a human using time-based one-time passwords
https://github.com/tpm2-software/tpm2-totp
The source repository for the Trusted Platform Module (TPM2.0) tools.
https://github.com/tpm2-software/tpm2-tools
The go-tpm-tools module is a TPM 2.0 support library designed to complement Go-TPM.
https://github.com/google/go-tpm-tools
Use a TPM to store a TOTP token in order to attest boot state to another device
https://github.com/mjg59/tpmtotp
https://github.com/salrashid123/tpm2
https://github.com/salrashid123/signer/blob/master/tpm/tpm.go
https://github.com/salrashid123/go_tpm_https_embed
https://blog.salrashid.dev/articles/2022/golang-jwt-signer/
https://tpm2-software.github.io/software/
https://pkg.go.dev/crypto#Signer
https://pkg.go.dev/crypto/rsa#PrivateKey.Sign
https://pkg.go.dev/crypto#Decrypter
https://pkg.go.dev/crypto/rsa#PrivateKey.Decrypt
- [TCG EK Credential Profile] https://trustedcomputinggroup.org/wp-content/uploads/TCG_IWG_Credential_Profile_EK_V2.1_R13.pdf