Skip to content

Commit

Permalink
Merge pull request #8 from dgarske/rel_v1.0
Browse files Browse the repository at this point in the history
wolfTPM Release v1.1
  • Loading branch information
JacobBarthelmeh authored Mar 9, 2018
2 parents 3fd7878 + a2785ac commit 0c54010
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 8 deletions.
31 changes: 27 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ Portable TPM 2.0 project designed for embedded use.
* No external dependencies.
* Compact code size and minimal memory use.
* Examples for the Raspberry Pi and STM32 with CubeMX.
* Includes demo code for the most commonly used API’s.
* Includes example code for most TPM2 native API’s.
* Includes wrappers for Key Generation, RSA encrypt/decrypt, ECC sign/verify and ECDH.
* Testing done using the Infineon OPTIGA SLB9670 module.
* Testing done using the Infineon OPTIGA SLB9670 module and LetsTrust TPM for Raspberry Pi.


## TPM 2.0 Overview
Expand Down Expand Up @@ -61,6 +61,7 @@ For interfacing to your hardware platform see the example `tpm2_demo.c` callback
### Hardware

Tested with:

* Infineon OPTIGA (TM) Trusted Platform Module 2.0 SLB 9670.
* LetsTrust: http://letstrust.de (https://buyzero.de/collections/andere-platinen/products/letstrust-hardware-tpm-trusted-platform-module). Compact Raspberry Pi TPM 2.0 board based on Infineon SLB 9670.

Expand All @@ -81,9 +82,31 @@ Build wolfTPM:
```
./autogen.sh
./configure && make
./examples/tpm/tpm2_demo
```


## Release Notes

### wolfTPM Release 1.1 (03/09/2018)

* Added TPM2 wrapper layer to simplify key creation, RSA encrypt/decrypt, ECC sign/verify and ECDH.
* Added TPM2 wrapper example code.
* Added Linux SPI support for running on Raspberry Pi.
* Fixes for TPM2 command and response assembly and parsing.
* Fixes to support authentication for command and response.
* Progress on supporting parameter encryption/decryption.
* Refactor of TIS and Packet layers into new files.
* Fixes/improvements to `wolfTPM2_GetRCString` for error code and string reporting.
* Added new `TPM2_Cleanup` function.
* New tests for TPM2 native API's (test coverage is about 75%).

### wolfTPM Release 1.0 (02/06/2018)

* Support for all TPM2 native API's using TIS and SPI IO callback.
* Helper for getting TPM return code string `TPM2_GetRCString`.
* TPM 2.0 demo code in `examples/tpm/tpm2_demo.c` with support for STM32 CubeMX SPI as reference.


## Examples

Expand Down Expand Up @@ -1772,8 +1795,8 @@ Response: 10


## Todo
* Improve documentation overall including possible return codes.
* Add support for using the TPM with wolfSSL.
* Improve overall documentation.
* Add support for using the TPM with wolfSSL for TLS.
* Add support for encrypting / decrypting parameters. (90% complete)
* Add spi_tis_dev support for Raspberry Pi. This will allow use with Rasbian kernel patches with Infineon.
* Benchmark TPM
4 changes: 2 additions & 2 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Copyright (C) 2018 wolfSSL Inc.
# All right reserved.

AC_INIT([wolftpm],[0.1.0],[https://github.com/wolfssl/wolfTPM/issues],[wolftpm],[http://www.wolfssl.com])
AC_INIT([wolftpm],[1.1.0],[https://github.com/wolfssl/wolfTPM/issues],[wolftpm],[http://www.wolfssl.com])

AC_PREREQ([2.63])
AC_CONFIG_AUX_DIR([build-aux])
Expand All @@ -18,7 +18,7 @@ AC_ARG_PROGRAM
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_HEADERS([src/config.h])

WOLFTPM_LIBRARY_VERSION=1:0:0
WOLFTPM_LIBRARY_VERSION=2:0:0
# | | |
# +------+ | +---+
# | | |
Expand Down
4 changes: 2 additions & 2 deletions wolftpm/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@
extern "C" {
#endif

#define LIBWOLFTPM_VERSION_STRING "0.1.0"
#define LIBWOLFTPM_VERSION_HEX 0x00001000
#define LIBWOLFTPM_VERSION_STRING "1.1.0"
#define LIBWOLFTPM_VERSION_HEX 0x01001000

#ifdef __cplusplus
}
Expand Down

0 comments on commit 0c54010

Please sign in to comment.