Commit Graph

22 Commits (4de58e6d602cad834361fe387d677fdf68074d5f)

Author SHA1 Message Date
David Garske 4de58e6d60 Remove execute bit on .c/.h files. 2019-05-14 13:58:06 -07:00
David Garske 74e561f825 TPM improvements and fixes for testing hardware. Optimization to init mutex and rng on use only. 2019-05-08 11:41:09 -07:00
David Garske 5f0c7ba6c1 Fix printf type warnings. Added missing stdio.h for printf in examples. Added new API's `TPM2_SetActiveCtx`, `TPM2_ChipStartup`, `TPM2_SetHalIoCb` and `TPM2_Init_ex`. Fix to make sure TPM2_CTX is cleaned up after `wolfTPM2_Test`. Allowed way to indicate `BOOL` type already defined. 2019-05-07 14:35:23 -07:00
David Garske 70b354677e Implemented workaround for TPM2_EncryptDecrypt. Improved ATTPM20 workarounds for backwards compatibility. Added README.md notes for ATTPM20. 2019-02-01 11:01:40 -08:00
David Garske 6090e4bff6 Implemented workarounds for known ATTPM20 issues. Changes the default algo for PCR read to SHA1. Clear the sign obj attrib on symmetric key creation template (both sign and decrypt cannot be set at same time). 2019-02-01 10:28:11 -08:00
David Garske dc441a1555 New support for mchp `--enable-mchp`. 2019-01-30 13:41:05 -08:00
David Garske d28e63c72f Added TPM2 wrappers for symmetric AES encrypt and decrypt. Moved common test parameters into examples/tpm_test.h. 2018-12-28 12:15:58 -08:00
David Garske 037c3a2d59 Added ECDH support for ephemeral key generation and shared secret. Adds new wrapper API's `wolfTPM2_ECDHGenKey` and `wolfTPM2_ECDHGenZ`. Added crypto dev (TLS client/server) support for ECDH using TPM. Added ECDH tests in native and wrapper. Added experimental support for the 2-phase ephemeral key support with new wrapper API's `wolfTPM2_ECDHEGenKey` and `wolfTPM2_ECDHEGenZ`. 2018-11-16 13:27:22 -08:00
Eric Blankenhorn 5f2a59179f Read firmware example 2018-10-26 15:20:03 -05:00
David Garske 95a978c37b Added new RNG wrapper API `wolfTPM2_GetRandom`. Added macro for hardware RNG max request as `MAX_RNG_REQ_SIZE`. Trailing whitespace cleanup. 2018-09-20 12:15:03 -07:00
David Garske 0cfe8dd789 Decoupled the fixed algorithms sizes and build options from wolfCrypt. Now wolfCrypt can be built with algos like SHA256 and AES disabled, but they can still be supported in wolfTPM. Updated the README.md with a few additional build details. 2018-09-13 18:41:03 -07:00
David Garske a7f370db2d Added instructions for enabling I2C on the Raspberry Pi. Fix bug with native example where TPM2_Shutdown failure would loop. 2018-09-07 15:51:12 -07:00
David Garske ba48628948 Improved error handling for the case where `TPM2_EncryptDecrypt2` is not supported. Added wrapper to help with creation of symmetric keys `wolfTPM2_GetKeyTemplate_Symmetric`. 2018-08-28 09:09:10 -07:00
David Garske ae57221b4e Improved handling for command code not supported TPM_RC_COMMAND_CODE on TPM2_EncryptDecrypt2 calls. 2018-08-27 14:31:40 -07:00
David Garske 91c4feff2b Completed adding support for symetric AES encrypt/decrypt support. Works on ST33 only. The command is off by default. ST provided details for enabling this command using a vendor sepecific command. 2018-08-27 14:09:34 -07:00
David Garske 765d825dee Improvements to the Native tests. Adding support for `TPM2_EncryptDecrypt2` in native test. Appears to be an unsupported command on the SLB 9670. AES Key creation does work. 2018-08-27 14:09:34 -07:00
David Garske 6fe075911a * Added advanced IO callback support (enabled using `--enable-advio` or `#define WOLFTPM_ADV_IO`).
* Added ST33 TPM 2.0 support (`--enable-st33` or `#define WOLFTPM_ST33`). Only SPI version is tested and verified.
* Experimental TIS I2C support (`--enable-i2c` or `#define WOLFTPM_I2C`).
* Cleanup of the IO callback examples.
* Added support for Atmel ASF SPI.
2018-08-22 16:40:33 -07:00
David Garske d8174d4ef7 Added build option to disable wolfCrypt dependency using `./configure --disable-wolfcrypt` or `#define WOLFTPM2_NO_WOLFCRYPT`. Moved types and configuration/port specific items into new `tpm2_types.h`. Removed execute bit on serveral files. 2018-08-12 15:25:35 -07:00
David Garske 3e462b0172 Added TPM bechmarking support. 2018-05-25 11:59:55 -07:00
Jacob Barthelmeh f9f1c24641 static analysis warnings 2018-05-22 10:45:17 -06:00
David Garske bf725524de Removed the execute bit on new files. 2018-05-21 23:07:26 +00:00
David Garske db49e917ac Split the native and wrapper test code into separate applications. Moved some of the utility wrapper functions into native area to support `WOLFTPM2_NO_WRAPPER`. Fix for storageKey auth in case when it used from NV. 2018-05-01 15:59:54 -07:00