wolfTPM version 1.5.0 was recently released, and features many new updates and additions to the wolfTPM library.
Summary:
- Added support for the Microchip ATTPM20 TPM 2.0 module
- Added Barebox bootloader support.
- Added TPM wrappers for HMAC, AES Key Loading.
- Added Benchmarking support for RNG, AES, Hashing and TLS.
- Improvements for TLS client/server examples and overall performance.
Detail:
- Fixed issue with cleanup not unregistering the crypto callback.
- Added support for Microchip ATTPM20 part.
- Added support for Barebox (experimental).
- Added TLS benchmarking for CPS and KB/Sec. Enabled with TLS_BENCH_MODE.
- Added TLS client/server support for symmetric AES/HMAC/RNG. Enabled with WOLFTPM_USE_SYMMETRIC.
- Added TLS client/server support for mutual authentication.
- Added TIS locking protection for concurrent process access. Enabled using WOLFTPM_TIS_LOCK.
- Added symmetric AES encrypt and decrypt wrappers and examples.
- Added HMAC wrappers and examples.
- Added wrappers and examples for loading external HMAC and AES keys.
- Added delete key wrapper and example.
- Added ECDH support for ephemeral key generation and shared secret.
- Added benchmark support for RNG, AES (CTR, CBC, CFB) 128/256 and SHA-1, SHA-256, SHA-384 and SHA-512.
- Added new wolfTPM2_GetCapabilities wrapper API for getting chip info.
- Added command and response logging using ./configure --enable-debug=verbose or #define WOLFTPM_DEBUG_VERBOSE.
- Added option to enable raw IO logging using WOLFTPM_DEBUG_IO.
- Added option to disable TPM Benchmark code using NO_TPM_BENCH.
- Added examples/README.md for setup instructions.
- Tuned max SPI clock and performance for supported TPM 2.0 chips.
- Cleanup to move common test parameters into examples/tpm_test.h.
- Updated benchmarks and console output for examples in README.md.
For more information about wolfTPM or other wolfSSL libraries, please contact facts@wolfssl.com.