Cryptographic Performances on STM32L5 Series

Revision as of 10:49, 11 May 2021 by Registered User

This page reports measured performances when using the Cryptographic Library pure software algorithms with a STM32L5 MCU. In addition to performances, required code footprint and memory are also given.


1. Measurement configuration

1.1. Hardware configuration

STM32 MCU STM32L552ZET6Q
Device ID 0x472
Revision ID 0x2000
Board NUCLEO-L552ZE-Q

1.2. Firmware Configuration

Cryptographic Library version 040000B1[ver. 1]
  1. This value corresponds to the information returned by a call to cmox_getInfos

1.3. System Configuration

System Core Clock Frequency 110 MHz
Flash latency 5 wait states
Voltage scaling Range 0
Dual bank 0 (0: Single / 1: Dual)
ICACHE peripheral 1 (0: disabled / 1: enabled)

1.4. Development Toolchains and Compilers

IAR Embedded Workbench IAR ANSI C/C++ Compiler V8.50.4.261/W32 for ARM
Info white.png Information
NOTE: The measurements are done using a project built with High Speed optimization setting enabled.


2. Performances Values

2.1. AES Symmetric key encryption & decryption

In this section we provide the performance results for AES-CBC using different modes of operation:

  • Sole buffer: one sole buffer is encrypted or decrypted. Time to perform is given in µs.
  • Data flow: a big message is encrypted or decrypted by chunk. Bit rate is given in Kbytes per s.

2.1.1. Sole buffer mode

In this mode, the entire encryption or decryption process, for the whole message size, is managed through a single API call provided by the CMOX library.

Table below shows the clock cycles and time (in us) needed to perform the described operation in small and in fast configuration.

AES Mode Key size Buffer Size Cipher Operation Configuration Cycles Time
AES CBC 128Bits 32 bytes Encryption Small 5,299 48 µs
AES CBC 128Bits 32 bytes Encryption Fast 4,870 44 µs
AES CBC 128Bits 64 bytes Encryption Small 8,692 79 µs
AES CBC 128Bits 64 bytes Encryption Fast 7,466 67 µs
AES CBC 128Bits 128 bytes Encryption Small 15,483 140 µs
AES CBC 128Bits 128 bytes Encryption Fast 12,725 115 µs
AES CBC 192Bits 32 bytes Encryption Small 5,922 53 µs
AES CBC 192Bits 32 bytes Encryption Fast 5,221 47 µs
AES CBC 192Bits 64 bytes Encryption Small 9,887 89 µs
AES CBC 192Bits 64 bytes Encryption Fast 8,218 74 µs
AES CBC 192Bits 128 bytes Encryption Small 17,820 162 µs
AES CBC 192Bits 128 bytes Encryption Fast 14,277 129 µs
AES CBC 256Bits 32 bytes Encryption Small 6,751 61 µs
AES CBC 256Bits 32 bytes Encryption Fast 6,164 56 µs
AES CBC 256Bits 64 bytes Encryption Small 11,308 102 µs
AES CBC 256Bits 64 bytes Encryption Fast 9,629 87 µs
AES CBC 256Bits 128 bytes Encryption Small 20,400 185 µs
AES CBC 256Bits 128 bytes Encryption Fast 16,467 149 µs
AES CBC 128Bits 32 bytes Decryption Small 8,968 81 µs
AES CBC 128Bits 32 bytes Decryption Fast 6,198 56 µs
AES CBC 128Bits 64 bytes Decryption Small 15,907 144 µs
AES CBC 128Bits 64 bytes Decryption Fast 8,827 80 µs
AES CBC 128Bits 128 bytes Decryption Small 29,785 270 µs
AES CBC 128Bits 128 bytes Decryption Fast 14,122 128 µs
AES CBC 192Bits 32 bytes Decryption Small 10,428 94 µs
AES CBC 192Bits 32 bytes Decryption Fast 6,919 62 µs
AES CBC 192Bits 64 bytes Decryption Small 18,739 170 µs
AES CBC 192Bits 64 bytes Decryption Fast 9,986 90 µs
AES CBC 192Bits 128 bytes Decryption Small 35,345 321 µs
AES CBC 192Bits 128 bytes Decryption Fast 16,093 146 µs
AES CBC 256Bits 32 bytes Decryption Small 12,165 110 µs
AES CBC 256Bits 32 bytes Decryption Fast 7,648 69 µs
AES CBC 256Bits 64 bytes Decryption Small 21,838 198 µs
AES CBC 256Bits 64 bytes Decryption Fast 11,082 100 µs
AES CBC 256Bits 128 bytes Decryption Small 41,185 374 µs
AES CBC 256Bits 128 bytes Decryption Fast 18,073 164 µs
Cryptolib STM32L552 AES CBC SB Enc.svg
Cryptolib STM32L552 AES CBC SB Dec.svg


Table below shows flash and RAM usage (in bytes).

Cipher Operation Configuration Code Constant data Global Data Stack usage
Encryption Small 2,960 bytes 380 bytes 1 bytes 524 bytes
Encryption Fast 3,292 bytes 1,404 bytes 1 bytes 548 bytes
Decryption Small 3,056 bytes 636 bytes 1 bytes 552 bytes
Decryption Fast 3,716 bytes 1,660 bytes 1 bytes 556 bytes
Cryptolib STM32L552 AES CBC SB Enc FP.svg
Cryptolib STM32L552 AES CBC SB Dec FP.svg


2.1.2. Data flow mode

In this mode, operation is performed in several calls to the CMOX library APIs, as below:

  • cmox_cipher_init
  • cmox_cipher_setKey
  • cmox_cipher_setIV
  • cmox_cipher_append: called several times to encrypt or decrypt the whole message by chunk of fixed size

Table below shows the clock cycles and bit rate (in KBytes per second) needed to perform described operation in small and in fast configuration.

AES Mode Key size Message size Chunk Size Cipher Operation Configuration Cycles Bit Rate
AES CBC 128Bits 8,000 bytes 128 bytes Encryption Small 859,280 1,024 kB/s
AES CBC 128Bits 8,000 bytes 128 bytes Encryption Fast 669,184 1,315 kB/s
AES CBC 128Bits 8,000 bytes 512 bytes Encryption Small 852,768 1,031 kB/s
AES CBC 128Bits 8,000 bytes 512 bytes Encryption Fast 663,696 1,325 kB/s
AES CBC 128Bits 8,000 bytes 1024 bytes Encryption Small 851,624 1,033 kB/s
AES CBC 128Bits 8,000 bytes 1024 bytes Encryption Fast 662,616 1,328 kB/s
AES CBC 128Bits 8,000 bytes 2048 bytes Encryption Small 851,056 1,034 kB/s
AES CBC 128Bits 8,000 bytes 2048 bytes Encryption Fast 662,112 1,329 kB/s
AES CBC 192Bits 8,000 bytes 128 bytes Encryption Small 1,004,288 876 kB/s
AES CBC 192Bits 8,000 bytes 128 bytes Encryption Fast 769,432 1,143 kB/s
AES CBC 192Bits 8,000 bytes 512 bytes Encryption Small 997,784 881 kB/s
AES CBC 192Bits 8,000 bytes 512 bytes Encryption Fast 764,032 1,151 kB/s
AES CBC 192Bits 8,000 bytes 1024 bytes Encryption Small 996,632 882 kB/s
AES CBC 192Bits 8,000 bytes 1024 bytes Encryption Fast 763,008 1,153 kB/s
AES CBC 192Bits 8,000 bytes 2048 bytes Encryption Small 996,064 883 kB/s
AES CBC 192Bits 8,000 bytes 2048 bytes Encryption Fast 762,504 1,154 kB/s
AES CBC 256Bits 8,000 bytes 128 bytes Encryption Small 1,149,240 765 kB/s
AES CBC 256Bits 8,000 bytes 128 bytes Encryption Fast 869,920 1,011 kB/s
AES CBC 256Bits 8,000 bytes 512 bytes Encryption Small 1,142,736 770 kB/s
AES CBC 256Bits 8,000 bytes 512 bytes Encryption Fast 864,416 1,018 kB/s
AES CBC 256Bits 8,000 bytes 1024 bytes Encryption Small 1,141,592 770 kB/s
AES CBC 256Bits 8,000 bytes 1024 bytes Encryption Fast 863,400 1,019 kB/s
AES CBC 256Bits 8,000 bytes 2048 bytes Encryption Small 1,141,008 771 kB/s
AES CBC 256Bits 8,000 bytes 2048 bytes Encryption Fast 862,904 1,019 kB/s
AES CBC 128Bits 8,000 bytes 128 bytes Decryption Small 1,765,960 498 kB/s
AES CBC 128Bits 8,000 bytes 128 bytes Decryption Fast 703,032 1,251 kB/s
AES CBC 128Bits 8,000 bytes 512 bytes Decryption Small 1,758,240 500 kB/s
AES CBC 128Bits 8,000 bytes 512 bytes Decryption Fast 689,304 1,276 kB/s
AES CBC 128Bits 8,000 bytes 1024 bytes Decryption Small 1,755,760 501 kB/s
AES CBC 128Bits 8,000 bytes 1024 bytes Decryption Fast 685,704 1,283 kB/s
AES CBC 128Bits 8,000 bytes 2048 bytes Decryption Small 1,752,592 502 kB/s
AES CBC 128Bits 8,000 bytes 2048 bytes Decryption Fast 681,856 1,290 kB/s
AES CBC 192Bits 8,000 bytes 128 bytes Decryption Small 2,107,136 417 kB/s
AES CBC 192Bits 8,000 bytes 128 bytes Decryption Fast 804,624 1,093 kB/s
AES CBC 192Bits 8,000 bytes 512 bytes Decryption Small 2,099,456 419 kB/s
AES CBC 192Bits 8,000 bytes 512 bytes Decryption Fast 790,792 1,112 kB/s
AES CBC 192Bits 8,000 bytes 1024 bytes Decryption Small 2,096,880 419 kB/s
AES CBC 192Bits 8,000 bytes 1024 bytes Decryption Fast 787,216 1,117 kB/s
AES CBC 192Bits 8,000 bytes 2048 bytes Decryption Small 2,093,720 420 kB/s
AES CBC 192Bits 8,000 bytes 2048 bytes Decryption Fast 783,304 1,123 kB/s
AES CBC 256Bits 8,000 bytes 128 bytes Decryption Small 2,447,976 359 kB/s
AES CBC 256Bits 8,000 bytes 128 bytes Decryption Fast 907,496 969 kB/s
AES CBC 256Bits 8,000 bytes 512 bytes Decryption Small 2,440,272 360 kB/s
AES CBC 256Bits 8,000 bytes 512 bytes Decryption Fast 892,664 985 kB/s
AES CBC 256Bits 8,000 bytes 1024 bytes Decryption Small 2,437,816 360 kB/s
AES CBC 256Bits 8,000 bytes 1024 bytes Decryption Fast 888,864 990 kB/s
AES CBC 256Bits 8,000 bytes 2048 bytes Decryption Small 2,434,672 361 kB/s
AES CBC 256Bits 8,000 bytes 2048 bytes Decryption Fast 884,960 994 kB/s
Cryptolib STM32L552 AES CBC DF Enc.svg
Cryptolib STM32L552 AES CBC DF Dec.svg


Table below shows flash and RAM usage (in bytes).

Cipher Operation Configuration Code Constant data Global Data Stack usage
Encryption Small 2,852 bytes 372 bytes 1 bytes 140 bytes
Encryption Fast 3,184 bytes 1,396 bytes 1 bytes 172 bytes
Decryption Small 2,948 bytes 628 bytes 1 bytes 176 bytes
Decryption Fast 3,608 bytes 1,652 bytes 1 bytes 180 bytes
Cryptolib STM32L552 AES CBC DF Enc FP.svg
Cryptolib STM32L552 AES CBC DF Dec FP.svg


2.2. HASH Digest

In this section we provide the performance results for HASH using different modes of operation:

  • Sole buffer: one sole buffer is hashed. Time to perform is given in us.
  • Data flow: a big message is hashed by chunk. Bit rate is given in bytes per s.

2.2.1. Sole buffer mode

In this mode, the entire message hashing process is managed through a single API call provided by the CMOX library.

Table below shows the clock cycles and time (in µs) needed to perform described operation.

HASH Mode Buffer Size Cycles Time
SHA256 32 bytes 5,337 48 µs
SHA256 64 bytes 8,507 77 µs
SHA256 128 bytes 11,413 103 µs
SHA384 32 bytes 16,969 154 µs
SHA384 64 bytes 17,165 156 µs
SHA384 128 bytes 30,803 280 µs
Cryptolib STM32L552 HASH SB Dig.svg


Table below shows flash and RAM usage (in bytes).

HASH Mode Code Constant data Global Data Stack usage
SHA256 1,780 296 bytes 1 bytes 564 bytes
SHA384 3,012 744 bytes 1 bytes 1,124 bytes
Cryptolib STM32L552 HASH SB Dig FP.svg


2.2.2. Data flow mode

In this mode, operation is performed in several calls to the CMOX library APIs, as below:

  • cmox_hash_init
  • cmox_hash_append: called several times to hash the whole message by chunk of fixed size
  • cmox_hash_generateTag

Table below shows the clock cycles and bit rate (in KBytes per second) needed to perform described operation.

HASH Mode Message size Chunk Size Cycles Bit Rate
SHA256 8,000 bytes 128 bytes 402,655 2,185 kB/s
SHA256 8,000 bytes 512 bytes 378,001 2,328 kB/s
SHA256 8,000 bytes 1024 bytes 373,926 2,353 kB/s
SHA256 8,000 bytes 2048 bytes 371,867 2,366 kB/s
SHA384 8,000 bytes 128 bytes 881,240 998 kB/s
SHA384 8,000 bytes 512 bytes 840,224 1,047 kB/s
SHA384 8,000 bytes 1024 bytes 833,191 1,056 kB/s
SHA384 8,000 bytes 2048 bytes 829,645 1,060 kB/s
Cryptolib STM32L552 HASH DF Dig.svg


Table below shows final tag generation done through the call to cmox_hash_generateTag.

HASH Mode Cycles Time
SHA256 4,370 39 µs
SHA384 15,552 141 µs

Table below shows flash and RAM usage (in bytes).

HASH Mode Code Constant data Global Data Stack usage
SHA256 1,788 bytes 288 bytes 1 bytes 372 bytes
SHA384 3,020 bytes 736 bytes 1 bytes 828 bytes
Cryptolib STM32L552 HASH DF Dig FP.svg


2.3. ECDSA Signature & Verification

In this section we provide the performance results for ECDSA Signature & Verification.

Table below shows the clock cycles and time (in ms) needed to perform described operation in different configurations.

Curve Operation ECC Mathematics configuration Curve definition Cycles Time
SECP256R1 Signature Small Low 2,924,624 26 ms
SECP256R1 Signature Small High 2,833,152 25 ms
SECP256R1 Signature SuperFast Low 1,914,056 17 ms
SECP256R1 Signature SuperFast High 1,856,016 16 ms
SECP256R1 Verification Small Low 7,008,992 63 ms
SECP256R1 Verification Small High 6,237,136 56 ms
SECP256R1 Verification SuperFast Low 4,680,328 42 ms
SECP256R1 Verification SuperFast High 4,119,384 37 ms
SECP384R1 Signature Small Low 8,249,576 74 ms
SECP384R1 Signature Small High 7,884,680 71 ms
SECP384R1 Signature Fast Low 7,034,360 63 ms
SECP384R1 Signature Fast High 6,713,312 61 ms
SECP384R1 Verification Small Low 19,730,496 179 ms
SECP384R1 Verification Small High 17,141,648 155 ms
SECP384R1 Verification Fast Low 17,015,888 154 ms
SECP384R1 Verification Fast High 14,637,488 133 ms
Cryptolib STM32L552 ECDSA Sig.svg
Cryptolib STM32L552 ECDSA Ver.svg


Table below shows ECDSA flash and RAM usage (in bytes).

Curve Operation ECC Mathematics configuration Curve definition Code Constant data Global Data Stack usage Working buffer
SECP256R1 Signature Small Low 11,636 bytes 1,184 bytes 1 bytes 328 bytes 628 bytes
SECP256R1 Signature Small High 11,636 bytes 1,568 bytes 1 bytes 328 bytes 696 bytes
SECP256R1 Signature SuperFast Low 12,946 bytes 1,184 bytes 1 bytes 332 bytes 628 bytes
SECP256R1 Signature SuperFast High 12,946 bytes 1,568 bytes 1 bytes 332 bytes 696 bytes
SECP256R1 Verification Small Low 12,158 bytes 1,200 bytes 1 bytes 424 bytes 856 bytes
SECP256R1 Verification Small High 12,158 bytes 1,584 bytes 1 bytes 424 bytes 1,648 bytes
SECP256R1 Verification SuperFast Low 13,468 bytes 1,200 bytes 1 bytes 428 bytes 856 bytes
SECP256R1 Verification SuperFast High 13,468 bytes 1,584 bytes 1 bytes 428 bytes 1,648 bytes
SECP384R1 Signature Small Low 11,636 bytes 1,664 bytes 1 bytes 328 bytes 884 bytes
SECP384R1 Signature Small High 11,636 bytes 2,240 bytes 1 bytes 328 bytes 984 bytes
SECP384R1 Signature Fast Low 12,006 bytes 1,664 bytes 1 bytes 344 bytes 884 bytes
SECP384R1 Signature Fast High 12,006 bytes 2,240 bytes 1 bytes 344 bytes 984 bytes
SECP384R1 Verification Small Low 12,158 bytes 1,680 bytes 1 bytes 424 bytes 1,192 bytes
SECP384R1 Verification Small High 12,158 bytes 2,256 bytes 1 bytes 424 bytes 2,272 bytes
SECP384R1 Verification Fast Low 12,528 bytes 1,680 bytes 1 bytes 440 bytes 1,192 bytes
SECP384R1 Verification Fast High 12,528 bytes 2,256 bytes 1 bytes 440 bytes 2,272 bytes
Cryptolib STM32L552 ECDSA SECP256R1 Sig FP.svg
Cryptolib STM32L552 ECDSA SECP256R1 Ver FP.svg
Cryptolib STM32L552 ECDSA SECP384R1 Sig FP.svg
Cryptolib STM32L552 ECDSA SECP384R1 Ver FP.svg


2.4. EdDSA Signature & Verification

In this section we provide the performance results for EdDSA Signature & Verification.

Table below shows the clock cycles and time (in ms) needed to perform described operation in different configurations.

Curve Message size Operation ECC Mathematics configuration Curve definition Cycles Time
Ed25519 1,023 bytes Signature Small OptLow 4,511,896 41 ms
Ed25519 1,023 bytes Signature Small OptHigh 2,632,648 23 ms
Ed25519 1,023 bytes Signature SuperFast OptLow 3,242,920 29 ms
Ed25519 1,023 bytes Signature SuperFast OptHigh 1,919,992 17 ms
Ed25519 1,023 bytes Verification Small OptLow 6,792,304 61 ms
Ed25519 1,023 bytes Verification Small OptHigh 5,958,792 54 ms
Ed25519 1,023 bytes Verification SuperFast OptLow 4,654,664 42 ms
Ed25519 1,023 bytes Verification SuperFast OptHigh 4,072,960 37 ms
Cryptolib STM32L552 EdDSA Sig.svg
Cryptolib STM32L552 EdDSA Ver.svg


Table below shows EdDSA flash and RAM usage (in bytes).

Curve Message size Operation ECC Mathematics configuration Curve definition Code Constant data Global Data Stack usage Working buffer
Ed25519 1,023 bytes Signature Small OptLow 14,100 bytes 1,744 bytes 1 bytes 1,236 bytes 1,388 bytes
Ed25519 1,023 bytes Signature Small OptHigh 14,506 bytes 2,896 bytes 1 bytes 1,236 bytes 1,388 bytes
Ed25519 1,023 bytes Signature SuperFast OptLow 15,410 bytes 1,744 bytes 1 bytes 1,236 bytes 1,388 bytes
Ed25519 1,023 bytes Signature SuperFast OptHigh 15,816 bytes 2,896 bytes 1 bytes 1,236 bytes 1,388 bytes
Ed25519 1,023 bytes Verification Small OptLow 14,186 bytes 1,748 bytes 1 bytes 1,244 bytes 1,152 bytes
Ed25519 1,023 bytes Verification Small OptHigh 14,592 bytes 2,900 bytes 1 bytes 1,244 bytes 1,992 bytes
Ed25519 1,023 bytes Verification SuperFast OptLow 15,496 bytes 1,748 bytes 1 bytes 1,244 bytes 1,152 bytes
Ed25519 1,023 bytes Verification SuperFast OptHigh 15,902 bytes 2,900 bytes 1 bytes 1,244 bytes 1,992 bytes
Cryptolib STM32L552 EdDSA Sig FP.svg
Cryptolib STM32L552 EdDSA Ver FP.svg


2.5. RSA Signature & Verification

In this section we provide the performance results for RSA Signature & Verification.

Table below shows the clock cycles and time (in ms) needed to perform described operation in different configurations.

PKCS#1 Priv. key mod. exp. method Hash method Modulus size Operation RSA Mathematics configuration Priv. key mod. exp.implementation Cycles Time
v2.2 CRT SHA-256 3K Signature Small Low 198,353,328 1,803 ms
v2.2 CRT SHA-256 3K Signature Small Mid 149,293,056 1,357 ms
v2.2 CRT SHA-256 3K Signature Small High 125,370,232 1,139 ms
v2.2 CRT SHA-256 3K Signature Fast Low 158,894,368 1,444 ms
v2.2 CRT SHA-256 3K Signature Fast Mid 119,683,376 1,088 ms
v2.2 CRT SHA-256 3K Signature Fast High 100,074,160 909 ms
v2.2 No CRT SHA-256 3K Signature Small Low 763,443,336 6,940 ms
v2.2 No CRT SHA-256 3K Signature Small Mid 573,386,688 5,212 ms
v2.2 No CRT SHA-256 3K Signature Small High 479,617,744 4,360 ms
v2.2 No CRT SHA-256 3K Signature Fast Low 606,866,800 5,516 ms
v2.2 No CRT SHA-256 3K Signature Fast Mid 455,903,856 4,144 ms
v2.2 No CRT SHA-256 3K Signature Fast High 380,471,192 3,458 ms
v2.2 n/a SHA-256 3K Verification Small n/a 3,813,464 34 ms
v2.2 n/a SHA-256 3K Verification Fast n/a 3,286,840 29 ms
Cryptolib STM32L552 RSA Sig.svg
Cryptolib STM32L552 RSA Ver.svg


Table below shows RSA flash and RAM usage (in bytes).

PKCS#1 Priv. key mod. exp. method Hash method Modulus size Operation RSA Mathematics configuration Priv. key mod. exp.implementation Code Constant data Global Data Stack usage Working buffer
v2.2 CRT SHA-256 3K Signature Small Low 6,986 bytes 371 bytes 5 bytes 700 bytes 3,704 bytes
v2.2 CRT SHA-256 3K Signature Small Mid 7,234 bytes 371 bytes 5 bytes 700 bytes 4,308 bytes
v2.2 CRT SHA-256 3K Signature Small High 7,234 bytes 371 bytes 5 bytes 700 bytes 6,708 bytes
v2.2 CRT SHA-256 3K Signature Fast Low 7,356 bytes 371 bytes 5 bytes 700 bytes 3,704 bytes
v2.2 CRT SHA-256 3K Signature Fast Mid 7,604 bytes 371 bytes 5 bytes 700 bytes 4,308 bytes
v2.2 CRT SHA-256 3K Signature Fast High 7,604 bytes 371 bytes 5 bytes 700 bytes 6,708 bytes
v2.2 No CRT SHA-256 3K Signature Small Low 6,016 bytes 363 bytes 5 bytes 700 bytes 3,484 bytes
v2.2 No CRT SHA-256 3K Signature Small Mid 6,264 bytes 363 bytes 5 bytes 700 bytes 4,664 bytes
v2.2 No CRT SHA-256 3K Signature Small High 6,264 bytes 363 bytes 5 bytes 700 bytes 9,368 bytes
v2.2 No CRT SHA-256 3K Signature Fast Low 6,386 bytes 363 bytes 5 bytes 700 bytes 3,484 bytes
v2.2 No CRT SHA-256 3K Signature Fast Mid 6,634 bytes 363 bytes 5 bytes 700 bytes 4,664 bytes
v2.2 No CRT SHA-256 3K Signature Fast High 6,634 bytes 363 bytes 5 bytes 700 bytes 9,368 bytes
v2.2 n/a SHA-256 3K Verification Small n/a 6,762 bytes 367 bytes 5 bytes 716 bytes 3,108 bytes
v2.2 n/a SHA-256 3K Verification Fast n/a 7,132 bytes 367 bytes 5 bytes 716 bytes 3,108 bytes
Cryptolib STM32L552 RSA 3K CRT Sig FP.svg
Cryptolib STM32L552 RSA 3K NoCRT Sig FP.svg
Cryptolib STM32L552 RSA 3K Ver FP.svg