Image Credit: Military & Aerospace Electronics, June 6, 2018.
- tpm2-tss v2.0.x
- Enhanced System API (ESAPI): supports cryptographic session operations and reduces programming complexity contributed by Fraunhofer SIT and enabled by Infineon.
- TPM Command Transmission Interface (TCTI): handles communications between the upper and lower layers of the stack.
- System API (SAPI): can provide a smaller footprint than ESPI, but it is more complex to use.
- Marshalling library (LibMU): provides a set of marshaling and unmarshaling functions for all data types defined by the TPM library specification.
- tpm2-tools v3.0.x: both low-level and aggregate command line tools that provide access to a TPM 2.0 compatible device from a shell environment.
- tpm2-abrmd v2.0: a system daemon implementing the TPM2 access broker (TAB) and Resource Manager (RM) specification. It manages multi-process synchronization to the TPM.
- tpm2 kernel driver: provides direct access to the TPM through the operating system kernel
- A test harness with ~80% test coverage between unit and integration tests, benefiting the collective testing and use by all users of the open source software code base.
- Continuous build and integration tasks: every commit and pull request is built automatically and run through our full test harness.
- Support for Linux and Microsoft* Windows operating systems.
- Regular release cadence.
For More Information
- TCG TSS 2.0 Overview and Common Structures Specification
- TCG TSS 2.0 Marshaling/Unmarshaling API Specification
- TCG TSS 2.0 TPM Command Transmission Interface (TCTI) API Specification
- TCG TSS 2.0 System Level API (SAPI) Specification
- TCG TSS 2.0 Enhanced System API (ESAPI) Specification
Editor’s Note: We’ve updated this blog to fix an inaccurate claim, and we would like to acknowledge our partners and contributors to this project.