@@ -84,11 +84,12 @@ We also support an advanced IO option (`--enable-advio`/`WOLFTPM_ADV_IO`), which
8484
8585Tested with:
8686
87- * Infineon OPTIGA (TM) Trusted Platform Module 2.0 SLB 9670 and SLB9672 .
88- - 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 .
87+ * Infineon OPTIGA (TM) Trusted Platform Module 2.0 SLB9670, SLB9672 and SLB9673 (I2C) .
88+ - LetsTrust: Vendor for TPM development boards [ http://letstrust.de ] ( http ://letstrust .de) .
8989* STMicro STSAFE-TPM, ST33TPHF2XSPI/2XI2C and ST33KTPM2X
9090* Microchip ATTPM20 module
9191* Nuvoton NPCT65X or NPCT75x TPM2.0 module
92+ * Nations Technologies Z32H330 TPM 2.0 module
9293
9394#### Device Identification
9495
@@ -100,6 +101,10 @@ Infineon SLB9672:
100101TPM2: Caps 0x30000697, Did 0x001d, Vid 0x15d1, Rid 0x36
101102Mfg IFX (1), Vendor SLB9672, Fw 16.10 (0x4068), FIPS 140-2 1, CC-EAL4 1
102103
104+ Infineon SLB9673:
105+ TPM2: Caps 0x1ae00082, Did 0x001c, Vid 0x15d1, Rid 0x16
106+ Mfg IFX (1), Vendor SLB9673, Fw 26.13 (0x456a), FIPS 140-2 1, CC-EAL4 1
107+
103108STMicro ST33TPHF2XSPI
104109TPM2: Caps 0x1a7e2882, Did 0x0000, Vid 0x104a, Rid 0x4e
105110Mfg STM (2), Vendor , Fw 74.8 (1151341959), FIPS 140-2 1, CC-EAL4 0
@@ -152,7 +157,7 @@ autogen.sh requires: automake and libtool: `sudo apt-get install automake libtoo
152157--enable-tislock Enable Linux Named Semaphore for locking access to SPI device for concurrent access between processes - WOLFTPM_TIS_LOCK
153158
154159--enable-autodetect Enable Runtime Module Detection (default: enable - when no module specified) - WOLFTPM_AUTODETECT
155- --enable-infineon Enable Infineon SLB9670/SLB9672 TPM Support (default: disabled)
160+ --enable-infineon Enable Infineon SLB9670/SLB9672/SLB9673 TPM Support (default: disabled) - WOLFTPM_SLB9670 / WOLFTPM_SLB9672
156161--enable-st Enable ST ST33 Support (default: disabled) - WOLFTPM_ST33
157162--enable-microchip Enable Microchip ATTPM20 Support (default: disabled) - WOLFTPM_MICROCHIP
158163--enable-nuvoton Enable Nuvoton NPCT65x/NPCT75x Support (default: disabled) - WOLFTPM_NUVOTON
@@ -167,15 +172,23 @@ TLS_BENCH_MODE Enables TLS benchmarking mode.
167172NO_TPM_BENCH Disables the TPM benchmarking example.
168173```
169174
170- ### Building Infineon SLB9670/SLB9672
175+ Note: For the I2C support on Raspberry Pi you may need to enable I2C. Here are the steps:
176+ 1 . Edit ` sudo vim /boot/config.txt `
177+ 2 . Uncomment ` dtparam=i2c_arm=on `
178+ 3 . Reboot ` sudo reboot `
179+
180+
181+ ### Building Infineon
182+
183+ Support for SLB9670 or SLB9672 (SPI) / SLB9673 (I2C)
171184
172185Build wolfTPM:
173186
174187```
175188git clone https://github.com/wolfSSL/wolfTPM.git
176189cd wolfTPM
177190./autogen.sh
178- ./configure --enable-infineon
191+ ./configure --enable-infineon [--enable-i2c]
179192make
180193```
181194
@@ -189,11 +202,6 @@ Build wolfTPM:
189202make
190203```
191204
192- For the I2C support on Raspberry Pi you may need to enable I2C. Here are the steps:
193- 1 . Edit ` sudo vim /boot/config.txt `
194- 2 . Uncomment ` dtparam=i2c_arm=on `
195- 3 . Reboot ` sudo reboot `
196-
197205### Building Microchip ATTPM20
198206
199207Build wolfTPM:
@@ -437,6 +445,40 @@ ECDSA 256 verify 42 ops took 1.013 sec, avg 24.114 ms, 41.470 ops/sec
437445ECDHE 256 agree 16 ops took 1.055 sec, avg 65.948 ms, 15.164 ops/sec
438446```
439447
448+ Run on Infineon SLB9673 on I2C at 400kHz:
449+
450+ ```
451+ ./examples/bench/bench
452+ TPM2 Benchmark using Wrapper API's
453+ Use Parameter Encryption: NULL
454+ Loading SRK: Storage 0x81000200 (282 bytes)
455+ RNG 4 KB took 1.429 seconds, 2.799 KB/s
456+ Benchmark symmetric AES-128-CBC-enc not supported!
457+ Benchmark symmetric AES-128-CBC-dec not supported!
458+ Benchmark symmetric AES-256-CBC-enc not supported!
459+ Benchmark symmetric AES-256-CBC-dec not supported!
460+ Benchmark symmetric AES-128-CTR-enc not supported!
461+ Benchmark symmetric AES-128-CTR-dec not supported!
462+ Benchmark symmetric AES-256-CTR-enc not supported!
463+ Benchmark symmetric AES-256-CTR-dec not supported!
464+ AES-128-CFB-enc 4 KB took 1.022 seconds, 3.914 KB/s
465+ AES-128-CFB-dec 4 KB took 1.021 seconds, 3.916 KB/s
466+ AES-256-CFB-enc 4 KB took 1.023 seconds, 3.911 KB/s
467+ AES-256-CFB-dec 4 KB took 1.023 seconds, 3.912 KB/s
468+ SHA1 8 KB took 1.203 seconds, 6.650 KB/s
469+ SHA256 8 KB took 1.208 seconds, 6.623 KB/s
470+ SHA384 8 KB took 1.209 seconds, 6.617 KB/s
471+ RSA 2048 key gen 10 ops took 19.106 sec, avg 1910.554 ms, 0.523 ops/sec
472+ RSA 2048 Public 14 ops took 1.046 sec, avg 74.740 ms, 13.380 ops/sec
473+ RSA 2048 Private 6 ops took 1.008 sec, avg 168.057 ms, 5.950 ops/sec
474+ RSA 2048 Pub OAEP 15 ops took 1.008 sec, avg 67.231 ms, 14.874 ops/sec
475+ RSA 2048 Priv OAEP 7 ops took 1.126 sec, avg 160.789 ms, 6.219 ops/sec
476+ ECC 256 key gen 4 ops took 1.244 sec, avg 311.031 ms, 3.215 ops/sec
477+ ECDSA 256 sign 14 ops took 1.009 sec, avg 72.057 ms, 13.878 ops/sec
478+ ECDSA 256 verify 18 ops took 1.043 sec, avg 57.921 ms, 17.265 ops/sec
479+ ECDHE 256 agree 9 ops took 1.025 sec, avg 113.888 ms, 8.781 ops/sec
480+ ```
481+
440482Run on STMicro ST33TPHF2XSPI at 33MHz:
441483
442484```
0 commit comments