David Garske
592210f321
Expose `TPM2_ASN_TrimZeros`.
2025-06-02 08:11:08 -07:00
David Garske
3e3038854c
Improve input digest size logic for TPM2_Sign and TPM2_Verify. Added test case with interop.
2025-06-02 08:11:08 -07:00
David Garske
7411bc115f
Refactor the TPM2_GetNonce to support a non-locking version for internal use. This avoids all possible recursive mutex calls.
2025-05-27 14:42:43 -07:00
David Garske
86fbaf69a9
wolfTPM v3.9.1 release (post release fixes)
...
- Fixed commercial release bundle (missing `tpm2_asn.h`).
- Fixed wolfTPM DLL revision (was not updated in v3.9.0).
- Added `make distcheck` to GitHub CI.
2025-05-21 10:34:52 -07:00
David Garske
6fbb49a94f
wolfTPM Release v3.9.0. Updated copyright and version.
2025-05-14 15:31:07 -07:00
Aidan Garske
8b8bd479a4
wolfTPM Zephyr Project Port #395 - Work by @aidangarske, @night1rider, and @dgarske
2025-05-14 13:56:08 -07:00
Zackery
33a5f47eaf
Merge pull request #398 from aidangarske/uboot_support
...
wolfTPM Support For Das U-Boot Bootloader
2025-05-06 18:17:56 -06:00
David Garske
9c2ada8a7a
Fixes for spelling and debug.
2025-05-06 16:41:34 -07:00
David Garske
e7aad1ac22
Support for pthread static mutex when building against older wolfSSL versions (like 5.6.6).
2025-05-02 12:48:24 -07:00
Aidan Garske
d463f70975
Removed options.h not used, added TPM2_GetHierarchyDesc, and fixed indentation error
2025-04-30 11:22:13 -07:00
David Garske
d27306b1c9
Improve mutex locking protection for concurrent thread usage. Use a global mutex instead of one that is part of TPM2_CTX. ZD 19771
2025-04-28 23:09:15 -07:00
Aidan Garske
f31929609f
Rebase wolfTPM Support For Das U-Boot Bootloader
2025-04-25 13:28:09 -07:00
Tesfa Mael
7400f0f369
Review comment
2025-03-05 11:52:53 -08:00
Tesfa Mael
ceb2c224d6
Update CMakeLists and move WOLFTPM2_NO_ASN down
2025-03-04 18:55:41 -08:00
Tesfa Mael
bb5eeb8976
Add WOLFTPM2_NO_ASN and move doc to a header file
2025-03-04 14:09:46 -08:00
Tesfa Mael
63385223ca
Refactor ASN.1 parsing for RSA cert
2025-03-03 11:31:43 -08:00
David Garske
2df0af5130
Added missing doxygen to public API's.
2025-02-21 17:12:31 -08:00
David Garske
5bd553a6a3
wolfTPM v3.8.0 release.
2025-01-06 11:46:49 -08:00
Eric Blankenhorn
80da56728c
Merge pull request #389 from dgarske/nv_extend
...
Fix issue with session binding / add NV extend example
2024-12-17 17:00:58 -06:00
David Garske
580b3a779e
Fix issue with session binding. Add example for NV extend based on the TCG "bus protection guidance".
2024-12-16 11:53:52 -08:00
David Garske
7c48b76548
Support for building wolfTPM against older wolfCrypt (like v4.7.0).
2024-12-13 09:45:52 -08:00
David Garske
d986ec73ba
wolfTPM Release v3.6.0 prep.
2024-11-05 11:18:43 -08:00
JacobBarthelmeh
7a6deaa86d
Merge pull request #383 from dgarske/get_caps
...
Add support for TPM2_GetCapability for TPM_CAP_PCRS.
2024-10-31 15:38:40 -06:00
David Garske
ebf7a6c7fb
Add parsing of remaining capabilities.
2024-10-30 13:57:44 -07:00
David Garske
fa1cd521a3
Helper to get wolfCrypt hash type. `TPMI_ALG_HASH TPM2_GetTpmHashType(int hashType)`.
2024-10-24 11:20:19 -07:00
Andras Fekete
3977395738
Minor documentation fixes
2024-08-28 09:13:56 -04:00
David Garske
a6d7ed8695
Added example for `TPM2_Certify`:
...
* Added new build option for TPM provisioning (`--enable-provisioning` on by default).
* Added new `wolfTPM2_CreatePrimaryKey_ex` and `WOLFTPM2_PKEY` that supports returning creation ticket/hash.
* Added key templates for initial device (IDevID) and attestation keys (IAK).
* Extended `create_primary` example to support creation or IDevID and IAK.
* Added new policy hash helper API `wolfTPM2_PolicyHash`
* Switch handle/nvIndex string parsing to use `strtoul`.
ZD 18347
2024-08-22 10:38:01 -07:00
David Garske
a012348fe9
Fixes for `TPM2_SetupPCRSel`. Added test cases. Fixes ZD 18492
2024-08-21 11:29:08 -07:00
David Garske
026c82f799
Fixes and new tests for building wolfCrypt/wolfTPM without ECC or RSA. Fixes ZD 18470. Improved smallstack (eliminated `WOLFTPM2_MAX_BUFFER`). Fixes for building with NO_ASN.
2024-08-19 09:55:15 -07:00
David Garske
6951b8d307
Fix for /dev/tpm0 file descriptor check ( fixes #365 ). Added documentation for /dev/tpm0 permissions ( fixes #358 ). Various spelling and documentation cleanups.
2024-07-31 11:21:53 -07:00
David Garske
62eff27459
Updated CMake to include new examples. Fixed doxygen issue with `wolfTPM2_GetKeyTemplate_EK` -> `curveID`. Fixed issue with possible create key timeout by always adding `XTPM_WAIT` for Linux.
2024-07-30 13:21:45 -07:00
David Garske
95ae2f7459
wolfTPM v3.4.0 release.
...
* Fixes for building without wolfCrypt or heap.
* Fix for building wolfTPM DLL (was missing tbs.lib).
* Fix for `wolfTPM2_New` to provide default TPM2 HAL IO callback.
2024-07-30 09:09:24 -07:00
Eric Blankenhorn
b36f792416
Merge pull request #361 from dgarske/idevid
...
Fixes for latest ST33KTPM IAK/IDevID provisioning
2024-07-26 18:00:46 -05:00
David Garske
dc2b91d056
Fixes for latest ST33KTPM IAK/IDevID provisioning. Added documentation for build options.
2024-07-26 14:49:31 -07:00
David Garske
57f12df97b
Support for getting TPM EK Certificates. Added `wolfTPM2_GetKeyTemplate_EK` and `wolfTPM2_GetKeyTemplate_EK` API's for getting EK public templates for generating the EK primary key. Fix TLS example build issues with wolfSSL not having crypto callback or PK callback enabled.
2024-07-26 13:02:57 -07:00
David Garske
b33e6b3187
Fix issue with Doxygen generation of wolfTPM due to doxybook2 crashing on unnamed enum.
2024-06-05 14:34:05 -07:00
Eric Blankenhorn
61abbc1073
Merge pull request #350 from dgarske/policyauth
...
Improvements in auth handling to support Policy Password and Policy Auth Value
2024-05-24 09:37:37 -05:00
David Garske
9a9ac2aec6
Fix docs.
2024-05-20 17:03:29 -07:00
David Garske
ab45d27217
Cleanup new API's. Add documentation.
2024-05-20 15:35:33 -07:00
David Garske
f65bea0946
Support for NV policy write/read.
2024-05-20 15:08:00 -07:00
David Garske
fe05d93feb
Support for policy auth value and policy password.
2024-05-20 11:16:56 -07:00
gojimmypi
5aff694c3f
XSLEEP_MS is vTaskDelay for all FREERTOS, not just ESPIDF
2024-05-13 13:05:21 -07:00
gojimmypi
fb19d7a0e1
Initial Infineon I2C TPM support for Espressif ESP32
2024-05-10 14:16:39 -07:00
David Garske
81c837189c
Refactor to eliminate confusing cast between TPMS_AUTH_COMMAND and TPM2_AUTH_SESSION.
2024-05-08 15:58:59 -07:00
David Garske
c98ee9a71e
Update copyright date.
2024-04-24 10:42:27 -07:00
David Garske
4157ed5689
Release v3.2.0 prep.
2024-04-24 10:42:25 -07:00
JacobBarthelmeh
1126c2ebfc
Merge pull request #344 from dgarske/nv_auth_policy
...
Added new API for allowing NV creation with policy
2024-04-24 11:02:51 -06:00
David Garske
377099af09
Added new API for allowing NV creation with policy.
2024-04-22 09:58:49 -07:00
David Garske
4a2e2506a4
Add Infineon firmware update recovery support.
2024-04-18 11:02:34 -07:00
David Garske
892726e6b5
Added support for Infineon SLB9672/SLB9673 Firmware upgrade (see examples/firmware/README.md)
...
Added Infineon Modus Toolbox support. See `wolfssl/IDE/Infineon/README.md` for setup instructions.
Added support for Infineon CyHal I2C support.
Added Firmware extraction tool
Added Firmware update example application `examples/firmware/ifx_fw_update`.
Added support for vendor capabilities `TPM_CAP_VENDOR_PROPERTY`.
Added `XSLEEP_MS` macro for firmware update delay.
Added support for getting key group id, operational mode and update counts.
Added support for abandoning an update.
Added support for firmware update done, but not finalized
Fix auto-detect to not define SLB9672/SLB9673.
2024-04-01 17:21:18 -07:00