1# STM Benchmarks 2 3## STM32H753ZI 4 5Supports RNG, AES CBC/GCM and SHA-2 acceleration. 6Note: HW RNG on for all tests 7 8Board: NUCLEO-H753ZI 9CPU: Cortex-M7 at 480 MHz 10IDE: STM32CubeIDE 11RTOS: FreeRTOS 12 13### STM32H753ZI (STM Crypto/Hash Acceleration, -Os, SP-ASM Cortex-M) 14 15``` 16------------------------------------------------------------------------------ 17 wolfSSL version 4.4.1 18------------------------------------------------------------------------------ 19wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 20RNG 875 KB took 1.019 seconds, 858.685 KB/s 21AES-128-CBC-enc 10 MB took 1.000 seconds, 10.400 MB/s 22AES-128-CBC-dec 10 MB took 1.000 seconds, 10.327 MB/s 23AES-192-CBC-enc 10 MB took 1.000 seconds, 10.425 MB/s 24AES-192-CBC-dec 10 MB took 1.000 seconds, 10.278 MB/s 25AES-256-CBC-enc 10 MB took 1.000 seconds, 10.376 MB/s 26AES-256-CBC-dec 10 MB took 1.000 seconds, 10.278 MB/s 27AES-128-GCM-enc 9 MB took 1.000 seconds, 8.789 MB/s 28AES-128-GCM-dec 9 MB took 1.000 seconds, 8.716 MB/s 29AES-192-GCM-enc 9 MB took 1.000 seconds, 8.740 MB/s 30AES-192-GCM-dec 9 MB took 1.000 seconds, 8.691 MB/s 31AES-256-GCM-enc 9 MB took 1.000 seconds, 8.765 MB/s 32AES-256-GCM-dec 9 MB took 1.000 seconds, 8.691 MB/s 33CHACHA 4 MB took 1.000 seconds, 4.443 MB/s 34CHA-POLY 3 MB took 1.004 seconds, 3.040 MB/s 35POLY1305 13 MB took 1.000 seconds, 12.671 MB/s 36SHA-256 9 MB took 1.000 seconds, 8.691 MB/s 37HMAC-SHA256 8 MB took 1.000 seconds, 8.496 MB/s 38RSA 2048 public 82 ops took 1.019 sec, avg 12.427 ms, 80.471 ops/sec 39RSA 2048 private 4 ops took 1.749 sec, avg 437.250 ms, 2.287 ops/sec 40DH 2048 key gen 5 ops took 1.000 sec, avg 200.000 ms, 5.000 ops/sec 41DH 2048 agree 6 ops took 1.200 sec, avg 200.000 ms, 5.000 ops/sec 42ECC 256 key gen 121 ops took 1.000 sec, avg 8.264 ms, 121.000 ops/sec 43ECDHE 256 agree 56 ops took 1.016 sec, avg 18.143 ms, 55.118 ops/sec 44ECDSA 256 sign 78 ops took 1.007 sec, avg 12.910 ms, 77.458 ops/sec 45ECDSA 256 verify 36 ops took 1.004 sec, avg 27.889 ms, 35.857 ops/sec 46Benchmark complete 47Benchmark Test: Return code 0 48``` 49 50### STM32H753ZI (No HW Crypto, -Os, FastMath) 51 52``` 53------------------------------------------------------------------------------ 54 wolfSSL version 4.4.1 55------------------------------------------------------------------------------ 56wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 57RNG 1 MB took 1.015 seconds, 1.010 MB/s 58AES-128-CBC-enc 1 MB took 1.012 seconds, 1.399 MB/s 59AES-128-CBC-dec 1 MB took 1.000 seconds, 1.318 MB/s 60AES-192-CBC-enc 1 MB took 1.019 seconds, 1.198 MB/s 61AES-192-CBC-dec 1 MB took 1.012 seconds, 1.134 MB/s 62AES-256-CBC-enc 1 MB took 1.000 seconds, 1.050 MB/s 63AES-256-CBC-dec 1 MB took 1.012 seconds, 0.989 MB/s 64AES-128-GCM-enc 75 KB took 1.125 seconds, 66.667 KB/s 65AES-128-GCM-dec 75 KB took 1.125 seconds, 66.667 KB/s 66AES-192-GCM-enc 75 KB took 1.149 seconds, 65.274 KB/s 67AES-192-GCM-dec 75 KB took 1.149 seconds, 65.274 KB/s 68AES-256-GCM-enc 75 KB took 1.161 seconds, 64.599 KB/s 69AES-256-GCM-dec 75 KB took 1.165 seconds, 64.378 KB/s 70CHACHA 5 MB took 1.000 seconds, 4.858 MB/s 71CHA-POLY 3 MB took 1.003 seconds, 3.140 MB/s 72POLY1305 13 MB took 1.000 seconds, 12.671 MB/s 73SHA-256 3 MB took 1.004 seconds, 2.845 MB/s 74HMAC-SHA256 3 MB took 1.004 seconds, 2.821 MB/s 75RSA 2048 public 38 ops took 1.012 sec, avg 26.632 ms, 37.549 ops/sec 76RSA 2048 private 2 ops took 3.267 sec, avg 1633.500 ms, 0.612 ops/sec 77DH 2048 key gen 4 ops took 1.184 sec, avg 296.000 ms, 3.378 ops/sec 78DH 2048 agree 2 ops took 1.259 sec, avg 629.500 ms, 1.589 ops/sec 79ECC 256 key gen 4 ops took 1.070 sec, avg 267.500 ms, 3.738 ops/sec 80ECDHE 256 agree 4 ops took 1.070 sec, avg 267.500 ms, 3.738 ops/sec 81ECDSA 256 sign 4 ops took 1.082 sec, avg 270.500 ms, 3.697 ops/sec 82ECDSA 256 verify 6 ops took 1.016 sec, avg 169.333 ms, 5.906 ops/sec 83Benchmark complete 84Benchmark Test: Return code 0 85``` 86 87## STM32WB55 88 89Supports RNG, ECC P-256, AES-CBC and SHA-256 acceleration. 90Note: SP math beats PKA HW. HW RNG on for all tests 91 92Board: P-NUCLEO-WB55 (MB1355C-02) 93CPU: Cortex-M4 at 64 MHz 94IDE: STM32CubeIDE 95RTOS: FreeRTOS 96 97### STM32WB55 (STM AES-CBC/Hash Acceleration, -Os, SP-ASM Cortex-M) 98 99``` 100------------------------------------------------------------------------------ 101 wolfSSL version 4.4.1 102------------------------------------------------------------------------------ 103wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 104RNG 375 KB took 1.008 seconds, 372.024 KB/s 105AES-128-CBC-enc 4 MB took 1.000 seconds, 3.882 MB/s 106AES-128-CBC-dec 4 MB took 1.000 seconds, 3.955 MB/s 107AES-256-CBC-enc 4 MB took 1.004 seconds, 3.550 MB/s 108AES-256-CBC-dec 4 MB took 1.004 seconds, 3.599 MB/s 109AES-128-GCM-enc 50 KB took 1.800 seconds, 27.778 KB/s 110AES-128-GCM-dec 50 KB took 1.804 seconds, 27.716 KB/s 111AES-256-GCM-enc 50 KB took 1.828 seconds, 27.352 KB/s 112AES-256-GCM-dec 50 KB took 1.831 seconds, 27.307 KB/s 113CHACHA 2 MB took 1.008 seconds, 1.574 MB/s 114CHA-POLY 1 MB took 1.004 seconds, 1.046 MB/s 115POLY1305 5 MB took 1.000 seconds, 4.663 MB/s 116SHA-256 1000 KB took 1.015 seconds, 985.222 KB/s 117HMAC-SHA256 975 KB took 1.000 seconds, 975.000 KB/s 118RSA 2048 public 28 ops took 1.016 sec, avg 36.286 ms, 27.559 ops/sec 119RSA 2048 private 2 ops took 2.522 sec, avg 1261.000 ms, 0.793 ops/sec 120DH 2048 key gen 2 ops took 1.184 sec, avg 592.000 ms, 1.689 ops/sec 121DH 2048 agree 2 ops took 1.181 sec, avg 590.500 ms, 1.693 ops/sec 122ECC 256 key gen 37 ops took 1.008 sec, avg 27.243 ms, 36.706 ops/sec 123ECDHE 256 agree 18 ops took 1.071 sec, avg 59.500 ms, 16.807 ops/sec 124ECDSA 256 sign 14 ops took 1.130 sec, avg 80.714 ms, 12.389 ops/sec 125ECDSA 256 verify 8 ops took 1.305 sec, avg 163.125 ms, 6.130 ops/sec 126Benchmark complete 127Benchmark Test: Return code 0 128``` 129 130### STM32WB55 (STM PKA only, -Os, FastMath) 131 132``` 133------------------------------------------------------------------------------ 134 wolfSSL version 4.4.1 135------------------------------------------------------------------------------ 136wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 137RNG 375 KB took 1.008 seconds, 372.024 KB/s 138AES-128-CBC-enc 600 KB took 1.020 seconds, 588.235 KB/s 139AES-128-CBC-dec 575 KB took 1.007 seconds, 571.003 KB/s 140AES-192-CBC-enc 525 KB took 1.043 seconds, 503.356 KB/s 141AES-192-CBC-dec 500 KB took 1.028 seconds, 486.381 KB/s 142AES-256-CBC-enc 450 KB took 1.027 seconds, 438.169 KB/s 143AES-256-CBC-dec 425 KB took 1.000 seconds, 425.000 KB/s 144AES-128-GCM-enc 50 KB took 1.819 seconds, 27.488 KB/s 145AES-128-GCM-dec 50 KB took 1.820 seconds, 27.473 KB/s 146AES-192-GCM-enc 50 KB took 1.855 seconds, 26.954 KB/s 147AES-192-GCM-dec 50 KB took 1.851 seconds, 27.012 KB/s 148AES-256-GCM-enc 50 KB took 1.874 seconds, 26.681 KB/s 149AES-256-GCM-dec 50 KB took 1.875 seconds, 26.667 KB/s 150CHACHA 2 MB took 1.004 seconds, 1.581 MB/s 151CHA-POLY 1 MB took 1.000 seconds, 1.050 MB/s 152POLY1305 5 MB took 1.000 seconds, 4.663 MB/s 153SHA-256 1000 KB took 1.016 seconds, 984.252 KB/s 154HMAC-SHA256 1000 KB took 1.024 seconds, 976.562 KB/s 155RSA 2048 public 14 ops took 1.121 sec, avg 80.071 ms, 12.489 ops/sec 156RSA 2048 private 2 ops took 9.428 sec, avg 4714.000 ms, 0.212 ops/sec 157DH 2048 key gen 2 ops took 1.807 sec, avg 903.500 ms, 1.107 ops/sec 158DH 2048 agree 2 ops took 3.643 sec, avg 1821.500 ms, 0.549 ops/sec 159ECC 256 key gen 9 ops took 1.024 sec, avg 113.778 ms, 8.789 ops/sec 160ECDHE 256 agree 10 ops took 1.129 sec, avg 112.900 ms, 8.857 ops/sec 161ECDSA 256 sign 14 ops took 1.157 sec, avg 82.643 ms, 12.100 ops/sec 162ECDSA 256 verify 8 ops took 1.282 sec, avg 160.250 ms, 6.240 ops/sec 163Benchmark complete 164Benchmark Test: Return code 0 165``` 166 167### STM32WB55 (No HW Crypto, -Os, FastMath) 168 169``` 170------------------------------------------------------------------------------ 171 wolfSSL version 4.4.1 172------------------------------------------------------------------------------ 173wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 174RNG 375 KB took 1.004 seconds, 373.506 KB/s 175AES-128-CBC-enc 600 KB took 1.024 seconds, 585.937 KB/s 176AES-128-CBC-dec 575 KB took 1.008 seconds, 570.437 KB/s 177AES-192-CBC-enc 525 KB took 1.047 seconds, 501.433 KB/s 178AES-192-CBC-dec 500 KB took 1.028 seconds, 486.381 KB/s 179AES-256-CBC-enc 450 KB took 1.028 seconds, 437.743 KB/s 180AES-256-CBC-dec 450 KB took 1.055 seconds, 426.540 KB/s 181AES-128-GCM-enc 50 KB took 1.816 seconds, 27.533 KB/s 182AES-128-GCM-dec 50 KB took 1.820 seconds, 27.473 KB/s 183AES-192-GCM-enc 50 KB took 1.851 seconds, 27.012 KB/s 184AES-192-GCM-dec 50 KB took 1.851 seconds, 27.012 KB/s 185AES-256-GCM-enc 50 KB took 1.875 seconds, 26.667 KB/s 186AES-256-GCM-dec 50 KB took 1.874 seconds, 26.681 KB/s 187CHACHA 2 MB took 1.004 seconds, 1.581 MB/s 188CHA-POLY 1 MB took 1.012 seconds, 1.061 MB/s 189POLY1305 5 MB took 1.004 seconds, 4.693 MB/s 190SHA-256 1000 KB took 1.016 seconds, 984.252 KB/s 191HMAC-SHA256 1000 KB took 1.023 seconds, 977.517 KB/s 192RSA 2048 public 14 ops took 1.141 sec, avg 81.500 ms, 12.270 ops/sec 193RSA 2048 private 2 ops took 9.498 sec, avg 4749.000 ms, 0.211 ops/sec 194DH 2048 key gen 2 ops took 1.839 sec, avg 919.500 ms, 1.088 ops/sec 195DH 2048 agree 2 ops took 3.674 sec, avg 1837.000 ms, 0.544 ops/sec 196ECC 256 key gen 1 ops took 1.130 sec, avg 1130.000 ms, 0.885 ops/sec 197ECDHE 256 agree 2 ops took 2.251 sec, avg 1125.500 ms, 0.888 ops/sec 198ECDSA 256 sign 2 ops took 2.275 sec, avg 1137.500 ms, 0.879 ops/sec 199ECDSA 256 verify 2 ops took 1.490 sec, avg 745.000 ms, 1.342 ops/sec 200Benchmark complete 201Benchmark Test: Return code 0 202``` 203 204## STM32F437 205 206Supports RNG, AES-CBC/GCM and SHA-256 acceleration. 207Note: HW RNG on for all tests 208 209Board: STM32F437I-EVAL 210CPU: Cortex-M4 at 160 MHz 211IDE: STM32CubeIDE 212RTOS: FreeRTOS 213 214### STM32F437 (STM Crypto/Hash Acceleration, -Os, SP-ASM Cortex-M) 215 216``` 217------------------------------------------------------------------------------ 218 wolfSSL version 4.4.1 219------------------------------------------------------------------------------ 220wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 221RNG 500 KB took 1.000 seconds, 500.000 KB/s 222AES-128-CBC-enc 9 MB took 1.000 seconds, 8.716 MB/s 223AES-128-CBC-dec 9 MB took 1.004 seconds, 8.681 MB/s 224AES-192-CBC-enc 9 MB took 1.000 seconds, 8.740 MB/s 225AES-192-CBC-dec 9 MB took 1.000 seconds, 8.667 MB/s 226AES-256-CBC-enc 9 MB took 1.000 seconds, 8.740 MB/s 227AES-256-CBC-dec 9 MB took 1.004 seconds, 8.681 MB/s 228AES-128-GCM-enc 8 MB took 1.000 seconds, 7.837 MB/s 229AES-128-GCM-dec 8 MB took 1.000 seconds, 7.812 MB/s 230AES-192-GCM-enc 8 MB took 1.000 seconds, 7.812 MB/s 231AES-192-GCM-dec 8 MB took 1.000 seconds, 7.788 MB/s 232AES-256-GCM-enc 8 MB took 1.000 seconds, 7.837 MB/s 233AES-256-GCM-dec 8 MB took 1.000 seconds, 7.764 MB/s 234CHACHA 4 MB took 1.000 seconds, 4.150 MB/s 235CHA-POLY 3 MB took 1.004 seconds, 2.821 MB/s 236POLY1305 13 MB took 1.000 seconds, 12.646 MB/s 237SHA-256 7 MB took 1.000 seconds, 7.446 MB/s 238HMAC-SHA256 7 MB took 1.000 seconds, 7.251 MB/s 239RSA 2048 public 74 ops took 1.000 sec, avg 13.514 ms, 74.000 ops/sec 240RSA 2048 private 4 ops took 1.933 sec, avg 483.250 ms, 2.069 ops/sec 241DH 2048 key gen 5 ops took 1.075 sec, avg 215.000 ms, 4.651 ops/sec 242DH 2048 agree 6 ops took 1.282 sec, avg 213.667 ms, 4.680 ops/sec 243ECC 256 key gen 123 ops took 1.004 sec, avg 8.163 ms, 122.510 ops/sec 244ECDHE 256 agree 58 ops took 1.019 sec, avg 17.569 ms, 56.919 ops/sec 245ECDSA 256 sign 82 ops took 1.016 sec, avg 12.390 ms, 80.709 ops/sec 246ECDSA 256 verify 38 ops took 1.015 sec, avg 26.711 ms, 37.438 ops/sec 247Benchmark complete 248Benchmark Test: Return code 0 249``` 250 251### STM32F437 (No HW Crypto, -Os, FastMath) 252 253``` 254------------------------------------------------------------------------------ 255 wolfSSL version 4.4.1 256------------------------------------------------------------------------------ 257wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 258RNG 1 MB took 1.024 seconds, 0.978 MB/s 259AES-128-CBC-enc 1 MB took 1.012 seconds, 1.303 MB/s 260AES-128-CBC-dec 1 MB took 1.004 seconds, 1.264 MB/s 261AES-192-CBC-enc 1 MB took 1.012 seconds, 1.110 MB/s 262AES-192-CBC-dec 1 MB took 1.016 seconds, 1.081 MB/s 263AES-256-CBC-enc 1000 KB took 1.011 seconds, 989.120 KB/s 264AES-256-CBC-dec 975 KB took 1.008 seconds, 967.262 KB/s 265AES-128-GCM-enc 75 KB took 1.024 seconds, 73.242 KB/s 266AES-128-GCM-dec 75 KB took 1.024 seconds, 73.242 KB/s 267AES-192-GCM-enc 75 KB took 1.043 seconds, 71.908 KB/s 268AES-192-GCM-dec 75 KB took 1.047 seconds, 71.633 KB/s 269AES-256-GCM-enc 75 KB took 1.059 seconds, 70.822 KB/s 270AES-256-GCM-dec 75 KB took 1.058 seconds, 70.888 KB/s 271CHACHA 4 MB took 1.004 seconds, 4.158 MB/s 272CHA-POLY 3 MB took 1.004 seconds, 2.821 MB/s 273POLY1305 13 MB took 1.000 seconds, 12.598 MB/s 274SHA-256 3 MB took 1.004 seconds, 2.602 MB/s 275HMAC-SHA256 3 MB took 1.000 seconds, 2.588 MB/s 276RSA 2048 public 34 ops took 1.039 sec, avg 30.559 ms, 32.724 ops/sec 277RSA 2048 private 2 ops took 3.635 sec, avg 1817.500 ms, 0.550 ops/sec 278DH 2048 key gen 3 ops took 1.039 sec, avg 346.333 ms, 2.887 ops/sec 279DH 2048 agree 2 ops took 1.416 sec, avg 708.000 ms, 1.412 ops/sec 280ECC 256 key gen 3 ops took 1.248 sec, avg 416.000 ms, 2.404 ops/sec 281ECDHE 256 agree 4 ops took 1.662 sec, avg 415.500 ms, 2.407 ops/sec 282ECDSA 256 sign 4 ops took 1.691 sec, avg 422.750 ms, 2.365 ops/sec 283ECDSA 256 verify 4 ops took 1.091 sec, avg 272.750 ms, 3.666 ops/sec 284Benchmark complete 285Benchmark Test: Return code 0 286``` 287 288## STM32L4A6Z 289 290Supports RNG, AES-CBC/GCM and SHA-256 acceleration. 291Note: HW RNG on for all tests 292 293Board: NUCLEO-L4A6ZG 294CPU: Cortex-M4 at 80 MHz 295IDE: STM32CubeIDE 296RTOS: FreeRTOS 297 298### STM32L4A6Z (STM Crypto/Hash Acceleration, -Os, SP-ASM Cortex-M) 299 300 301``` 302------------------------------------------------------------------------------ 303 wolfSSL version 4.4.1 304------------------------------------------------------------------------------ 305wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 306RNG 250 KB took 1.083 seconds, 230.840 KB/s 307AES-128-CBC-enc 4 MB took 1.000 seconds, 4.175 MB/s 308AES-128-CBC-dec 3 MB took 1.000 seconds, 3.442 MB/s 309AES-256-CBC-enc 3 MB took 1.000 seconds, 3.247 MB/s 310AES-256-CBC-dec 3 MB took 1.008 seconds, 2.664 MB/s 311AES-128-GCM-enc 4 MB took 1.000 seconds, 3.589 MB/s 312AES-128-GCM-dec 4 MB took 1.004 seconds, 3.575 MB/s 313AES-256-GCM-enc 3 MB took 1.004 seconds, 2.869 MB/s 314AES-256-GCM-dec 3 MB took 1.000 seconds, 2.856 MB/s 315CHACHA 2 MB took 1.008 seconds, 2.010 MB/s 316CHA-POLY 1 MB took 1.004 seconds, 1.337 MB/s 317POLY1305 6 MB took 1.000 seconds, 6.030 MB/s 318SHA-256 4 MB took 1.004 seconds, 3.623 MB/s 319HMAC-SHA256 4 MB took 1.000 seconds, 3.540 MB/s 320RSA 2048 public 36 ops took 1.020 sec, avg 28.333 ms, 35.294 ops/sec 321RSA 2048 private 2 ops took 2.031 sec, avg 1015.500 ms, 0.985 ops/sec 322DH 2048 key gen 3 ops took 1.353 sec, avg 451.000 ms, 2.217 ops/sec 323DH 2048 agree 4 ops took 1.804 sec, avg 451.000 ms, 2.217 ops/sec 324ECC 256 key gen 33 ops took 1.011 sec, avg 30.636 ms, 32.641 ops/sec 325ECDHE 256 agree 16 ops took 1.078 sec, avg 67.375 ms, 14.842 ops/sec 326ECDSA 256 sign 24 ops took 1.012 sec, avg 42.167 ms, 23.715 ops/sec 327ECDSA 256 verify 12 ops took 1.165 sec, avg 97.083 ms, 10.300 ops/sec 328Benchmark complete 329Benchmark Test: Return code 0 330``` 331 332### STM32L4A6Z (No HW Crypto, -Os, FastMath) 333 334``` 335------------------------------------------------------------------------------ 336 wolfSSL version 4.4.1 337------------------------------------------------------------------------------ 338wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 339RNG 450 KB took 1.048 seconds, 429.389 KB/s 340AES-128-CBC-enc 625 KB took 1.008 seconds, 620.040 KB/s 341AES-128-CBC-dec 675 KB took 1.008 seconds, 669.643 KB/s 342AES-192-CBC-enc 550 KB took 1.023 seconds, 537.634 KB/s 343AES-192-CBC-dec 575 KB took 1.012 seconds, 568.182 KB/s 344AES-256-CBC-enc 475 KB took 1.004 seconds, 473.108 KB/s 345AES-256-CBC-dec 500 KB took 1.008 seconds, 496.032 KB/s 346AES-128-GCM-enc 50 KB took 1.440 seconds, 34.722 KB/s 347AES-128-GCM-dec 50 KB took 1.435 seconds, 34.843 KB/s 348AES-192-GCM-enc 50 KB took 1.466 seconds, 34.106 KB/s 349AES-192-GCM-dec 50 KB took 1.463 seconds, 34.176 KB/s 350AES-256-GCM-enc 50 KB took 1.482 seconds, 33.738 KB/s 351AES-256-GCM-dec 50 KB took 1.478 seconds, 33.829 KB/s 352CHACHA 2 MB took 1.008 seconds, 2.010 MB/s 353CHA-POLY 1 MB took 1.008 seconds, 1.332 MB/s 354POLY1305 6 MB took 1.000 seconds, 6.006 MB/s 355SHA-256 1 MB took 1.000 seconds, 1.123 MB/s 356HMAC-SHA256 1 MB took 1.008 seconds, 1.114 MB/s 357RSA 2048 public 16 ops took 1.028 sec, avg 64.250 ms, 15.564 ops/sec 358RSA 2048 private 2 ops took 7.491 sec, avg 3745.500 ms, 0.267 ops/sec 359DH 2048 key gen 2 ops took 1.440 sec, avg 720.000 ms, 1.389 ops/sec 360DH 2048 agree 2 ops took 2.882 sec, avg 1441.000 ms, 0.694 ops/sec 361ECC 256 key gen 2 ops took 1.918 sec, avg 959.000 ms, 1.043 ops/sec 362ECDHE 256 agree 2 ops took 1.914 sec, avg 957.000 ms, 1.045 ops/sec 363ECDSA 256 sign 2 ops took 1.941 sec, avg 970.500 ms, 1.030 ops/sec 364ECDSA 256 verify 2 ops took 1.294 sec, avg 647.000 ms, 1.546 ops/sec 365Benchmark complete 366Benchmark Test: Return code 0 367``` 368 369## STM32L562E 370 371Supports RNG, AES-CBC/GCM and SHA-256 acceleration. 372Note: HW RNG on for all tests 373 374Board: STM32L562E-DK 375CPU: Cortex-M33 at 110 MHz 376IDE: STM32CubeIDE 377RTOS: FreeRTOS 378 379### STM32L562E (STM AES-CBC/Hash Acceleration, -Os, SP-ASM Cortex-M) 380 381``` 382------------------------------------------------------------------------------ 383 wolfSSL version 4.4.1 384------------------------------------------------------------------------------ 385wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 386RNG 150 KB took 1.105 seconds, 135.747 KB/s 387AES-128-CBC-enc 4 MB took 1.000 seconds, 4.468 MB/s 388AES-128-CBC-dec 4 MB took 1.000 seconds, 4.297 MB/s 389AES-256-CBC-enc 4 MB took 1.000 seconds, 3.857 MB/s 390AES-256-CBC-dec 4 MB took 1.004 seconds, 3.745 MB/s 391AES-128-GCM-enc 4 MB took 1.000 seconds, 3.662 MB/s 392AES-128-GCM-dec 4 MB took 1.004 seconds, 3.648 MB/s 393AES-256-GCM-enc 3 MB took 1.004 seconds, 3.258 MB/s 394AES-256-GCM-dec 3 MB took 1.000 seconds, 3.247 MB/s 395CHACHA 1 MB took 1.008 seconds, 1.138 MB/s 396CHA-POLY 825 KB took 1.023 seconds, 806.452 KB/s 397POLY1305 4 MB took 1.000 seconds, 3.711 MB/s 398SHA-256 2 MB took 1.000 seconds, 1.855 MB/s 399HMAC-SHA256 2 MB took 1.008 seconds, 1.817 MB/s 400RSA 2048 public 20 ops took 1.106 sec, avg 55.300 ms, 18.083 ops/sec 401RSA 2048 private 2 ops took 3.804 sec, avg 1902.000 ms, 0.526 ops/sec 402DH 2048 key gen 2 ops took 1.772 sec, avg 886.000 ms, 1.129 ops/sec 403DH 2048 agree 2 ops took 1.773 sec, avg 886.500 ms, 1.128 ops/sec 404ECC 256 key gen 36 ops took 1.011 sec, avg 28.083 ms, 35.608 ops/sec 405ECDHE 256 agree 18 ops took 1.086 sec, avg 60.333 ms, 16.575 ops/sec 406ECDSA 256 sign 22 ops took 1.004 sec, avg 45.636 ms, 21.912 ops/sec 407ECDSA 256 verify 12 ops took 1.133 sec, avg 94.417 ms, 10.591 ops/sec 408Benchmark complete 409Benchmark Test: Return code 0 410``` 411 412### STM32L562E (STM PKA ECC/AES-CBC/Hash Acceleration, -Os, SP-ASM Cortex-M) 413 414``` 415------------------------------------------------------------------------------ 416 wolfSSL version 4.4.1 417------------------------------------------------------------------------------ 418wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 419RNG 150 KB took 1.105 seconds, 135.747 KB/s 420AES-128-CBC-enc 4 MB took 1.000 seconds, 4.468 MB/s 421AES-128-CBC-dec 4 MB took 1.000 seconds, 4.297 MB/s 422AES-256-CBC-enc 4 MB took 1.000 seconds, 3.857 MB/s 423AES-256-CBC-dec 4 MB took 1.004 seconds, 3.745 MB/s 424AES-128-GCM-enc 4 MB took 1.000 seconds, 3.662 MB/s 425AES-128-GCM-dec 4 MB took 1.004 seconds, 3.648 MB/s 426AES-256-GCM-enc 3 MB took 1.004 seconds, 3.258 MB/s 427AES-256-GCM-dec 3 MB took 1.000 seconds, 3.247 MB/s 428CHACHA 1 MB took 1.008 seconds, 1.138 MB/s 429CHA-POLY 825 KB took 1.023 seconds, 806.452 KB/s 430POLY1305 4 MB took 1.000 seconds, 3.711 MB/s 431SHA-256 2 MB took 1.000 seconds, 1.855 MB/s 432HMAC-SHA256 2 MB took 1.008 seconds, 1.817 MB/s 433RSA 2048 public 20 ops took 1.106 sec, avg 55.300 ms, 18.083 ops/sec 434RSA 2048 private 2 ops took 3.804 sec, avg 1902.000 ms, 0.526 ops/sec 435DH 2048 key gen 2 ops took 1.772 sec, avg 886.000 ms, 1.129 ops/sec 436DH 2048 agree 2 ops took 1.773 sec, avg 886.500 ms, 1.128 ops/sec 437ECC 256 key gen 11 ops took 1.067 sec, avg 97.000 ms, 10.309 ops/sec 438ECDHE 256 agree 12 ops took 1.130 sec, avg 94.167 ms, 10.619 ops/sec 439ECDSA 256 sign 22 ops took 1.071 sec, avg 48.682 ms, 20.542 ops/sec 440ECDSA 256 verify 12 ops took 1.125 sec, avg 93.750 ms, 10.667 ops/sec 441Benchmark complete 442Benchmark Test: Return code 0 443``` 444 445### STM32L562E (No HW Crypto, -Os, FastMath) 446 447``` 448------------------------------------------------------------------------------ 449 wolfSSL version 4.4.1 450------------------------------------------------------------------------------ 451wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 452RNG 75 KB took 1.274 seconds, 58.870 KB/s 453AES-128-CBC-enc 475 KB took 1.036 seconds, 458.494 KB/s 454AES-128-CBC-dec 450 KB took 1.007 seconds, 446.872 KB/s 455AES-192-CBC-enc 400 KB took 1.024 seconds, 390.625 KB/s 456AES-192-CBC-dec 400 KB took 1.047 seconds, 382.044 KB/s 457AES-256-CBC-enc 350 KB took 1.023 seconds, 342.131 KB/s 458AES-256-CBC-dec 350 KB took 1.051 seconds, 333.016 KB/s 459AES-128-GCM-enc 25 KB took 1.310 seconds, 19.084 KB/s 460AES-128-GCM-dec 25 KB took 1.306 seconds, 19.142 KB/s 461AES-192-GCM-enc 25 KB took 1.330 seconds, 18.797 KB/s 462AES-192-GCM-dec 25 KB took 1.329 seconds, 18.811 KB/s 463AES-256-GCM-enc 25 KB took 1.341 seconds, 18.643 KB/s 464AES-256-GCM-dec 25 KB took 1.345 seconds, 18.587 KB/s 465CHACHA 1 MB took 1.012 seconds, 1.230 MB/s 466CHA-POLY 850 KB took 1.000 seconds, 850.000 KB/s 467POLY1305 4 MB took 1.004 seconds, 3.672 MB/s 468SHA-256 750 KB took 1.020 seconds, 735.294 KB/s 469HMAC-SHA256 750 KB took 1.031 seconds, 727.449 KB/s 470RSA 2048 public 10 ops took 1.086 sec, avg 108.600 ms, 9.208 ops/sec 471RSA 2048 private 2 ops took 12.894 sec, avg 6447.000 ms, 0.155 ops/sec 472DH 2048 key gen 1 ops took 1.200 sec, avg 1200.000 ms, 0.833 ops/sec 473DH 2048 agree 2 ops took 4.867 sec, avg 2433.500 ms, 0.411 ops/sec 474ECC 256 key gen 1 ops took 1.514 sec, avg 1514.000 ms, 0.661 ops/sec 475ECDHE 256 agree 2 ops took 3.028 sec, avg 1514.000 ms, 0.661 ops/sec 476ECDSA 256 sign 2 ops took 3.066 sec, avg 1533.000 ms, 0.652 ops/sec 477ECDSA 256 verify 2 ops took 1.973 sec, avg 986.500 ms, 1.014 ops/sec 478Benchmark complete 479Benchmark Test: Return code 0 480``` 481 482## STM32F777 483 484Supports RNG, AES-CBC/GCM and SHA-256 acceleration. 485Note: HW RNG on for all tests 486 487Board: Custom STM32F777 488CPU: Cortex-M7 at 216 MHz 489IDE: STM32CubeIDE 490RTOS: FreeRTOS 491 492### STM32F777 (STM AES-CBC/Hash Acceleration, -Os, SP-ASM Cortex-M) 493 494``` 495------------------------------------------------------------------------------ 496 wolfSSL version 4.4.1 497------------------------------------------------------------------------------ 498wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 499RNG 525 KB took 1.012 seconds, 518.775 KB/s 500AES-128-CBC-enc 8 MB took 1.000 seconds, 8.350 MB/s 501AES-128-CBC-dec 8 MB took 1.000 seconds, 8.203 MB/s 502AES-192-CBC-enc 8 MB took 1.000 seconds, 8.325 MB/s 503AES-192-CBC-dec 8 MB took 1.000 seconds, 8.179 MB/s 504AES-256-CBC-enc 8 MB took 1.000 seconds, 8.325 MB/s 505AES-256-CBC-dec 8 MB took 1.000 seconds, 8.154 MB/s 506AES-128-GCM-enc 6 MB took 1.000 seconds, 6.494 MB/s 507AES-128-GCM-dec 6 MB took 1.000 seconds, 6.494 MB/s 508AES-192-GCM-enc 6 MB took 1.000 seconds, 6.470 MB/s 509AES-192-GCM-dec 6 MB took 1.000 seconds, 6.494 MB/s 510AES-256-GCM-enc 6 MB took 1.000 seconds, 6.494 MB/s 511AES-256-GCM-dec 6 MB took 1.000 seconds, 6.494 MB/s 512CHACHA 4 MB took 1.004 seconds, 4.182 MB/s 513CHA-POLY 3 MB took 1.004 seconds, 2.505 MB/s 514POLY1305 9 MB took 1.000 seconds, 9.204 MB/s 515SHA-256 3 MB took 1.000 seconds, 3.467 MB/s 516HMAC-SHA256 3 MB took 1.004 seconds, 3.404 MB/s 517RSA 2048 public 54 ops took 1.028 sec, avg 19.037 ms, 52.529 ops/sec 518RSA 2048 private 2 ops took 1.262 sec, avg 631.000 ms, 1.585 ops/sec 519DH 2048 key gen 4 ops took 1.220 sec, avg 305.000 ms, 3.279 ops/sec 520DH 2048 agree 4 ops took 1.215 sec, avg 303.750 ms, 3.292 ops/sec 521ECC 256 key gen 130 ops took 1.000 sec, avg 7.692 ms, 130.000 ops/sec 522ECDHE 256 agree 60 ops took 1.003 sec, avg 16.717 ms, 59.821 ops/sec 523ECDSA 256 sign 70 ops took 1.024 sec, avg 14.629 ms, 68.359 ops/sec 524ECDSA 256 verify 36 ops took 1.015 sec, avg 28.194 ms, 35.468 ops/sec 525Benchmark complete 526Benchmark Test: Return code 0 527``` 528 529### STM32F777 (No HW Crypto, -Os, FastMath) 530 531``` 532------------------------------------------------------------------------------ 533 wolfSSL version 4.4.1 534------------------------------------------------------------------------------ 535wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each) 536RNG 700 KB took 1.016 seconds, 688.976 KB/s 537AES-128-CBC-enc 1 MB took 1.019 seconds, 1.006 MB/s 538AES-128-CBC-dec 950 KB took 1.000 seconds, 950.000 KB/s 539AES-192-CBC-enc 900 KB took 1.016 seconds, 885.827 KB/s 540AES-192-CBC-dec 825 KB took 1.011 seconds, 816.024 KB/s 541AES-256-CBC-enc 800 KB took 1.028 seconds, 778.210 KB/s 542AES-256-CBC-dec 725 KB took 1.008 seconds, 719.246 KB/s 543AES-128-GCM-enc 50 KB took 1.223 seconds, 40.883 KB/s 544AES-128-GCM-dec 50 KB took 1.220 seconds, 40.984 KB/s 545AES-192-GCM-enc 50 KB took 1.251 seconds, 39.968 KB/s 546AES-192-GCM-dec 50 KB took 1.247 seconds, 40.096 KB/s 547AES-256-GCM-enc 50 KB took 1.267 seconds, 39.463 KB/s 548AES-256-GCM-dec 50 KB took 1.263 seconds, 39.588 KB/s 549CHACHA 4 MB took 1.000 seconds, 4.175 MB/s 550CHA-POLY 2 MB took 1.000 seconds, 2.417 MB/s 551POLY1305 10 MB took 1.000 seconds, 10.132 MB/s 552SHA-256 2 MB took 1.000 seconds, 1.782 MB/s 553HMAC-SHA256 2 MB took 1.004 seconds, 1.775 MB/s 554RSA 2048 public 22 ops took 1.067 sec, avg 48.500 ms, 20.619 ops/sec 555RSA 2048 private 2 ops took 5.549 sec, avg 2774.500 ms, 0.360 ops/sec 556DH 2048 key gen 3 ops took 1.483 sec, avg 494.333 ms, 2.023 ops/sec 557DH 2048 agree 2 ops took 1.866 sec, avg 933.000 ms, 1.072 ops/sec 558ECC 256 key gen 1 ops took 1.090 sec, avg 1090.000 ms, 0.917 ops/sec 559ECDHE 256 agree 2 ops took 2.180 sec, avg 1090.000 ms, 0.917 ops/sec 560ECDSA 256 sign 2 ops took 2.208 sec, avg 1104.000 ms, 0.906 ops/sec 561ECDSA 256 verify 2 ops took 1.463 sec, avg 731.500 ms, 1.367 ops/sec 562Benchmark complete 563Benchmark Test: Return code 0 564``` 565