The software TPM 2.0 is targeted toward application development,
education, and virtualization.
Software Development
The intent is that an application can be developed using the software
TPM. The application should then run using a hardware TPM without
changes.
Advantages of this approach:
- In contrast to a hardware TPM, it runs on many platforms and it's
generally faster.
- Application software errors are easily reversed by simply removing
the TPM state and starting over.
- Difficult crypto errors are quickly debugged by looking inside the
TPM.
Download
The IBM Software TPM can be
downloaded here.
Application Notes
See also the
IBM TSS.
The TSS offers a simple but complete higher level development
environment. It comes with about 80 command line utilities that can
be used either as sample code or in a script for rapid application
prototyping. The TSS also includes a regression test that can be used
to validate the software TPM build.
The TPM source has been tested on x86 Windows (gcc and Visual Studio)
x86 Linux, 32-bit and 64-bit, little and big endian, Power Linux, ARM
Raspian, and IBM System Z LInux. It can use OpenSSL 1.0 or 1.1.