Crypto Benchmark on PIC32CZ-CA90 MCU
ARM Cortex-M7 @ 300 MHz
This benchmark conducted on PIC32CZ CA90 Curiosity Ultra Board (EV16W43A) will help you in qualifying performance of CycloneCRYPTO (Cryptography library), CycloneSSL (TLS 1.3 & DTLS 1.2 library), CycloneSSH (SSH library with SCP & SFTP protocols), CycloneIPSEC (IPsec/IKEv2 library) and CycloneTCP (TCP/IPv4/IPv6 stack with secure protocols like HTTPS, FTPS, MQTTS, Secure WebSocket, Secure CoAP, Secure Modbus/TCP, SNMPv3...) running on Microchip PIC32CZ-CA90 microcontroller.
PIC32CZ-CA90 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Encryption (Software) | Decryption (Software) | Encryption (Hardware) | Decryption (Hardware) |
---|---|---|---|---|
3DES-CBC | 1.479 MB/s | 1.461 MB/s | - | - |
3DES-CTR | 1.512 MB/s | 1.511 MB/s | - | - |
AES128-CBC | 7.142 MB/s | 5.934 MB/s | 76.923 MB/s | 76.923 MB/s |
AES192-CBC | 6.313 MB/s | 5.208 MB/s | 72.463 MB/s | 72.463 MB/s |
AES256-CBC | 5.665 MB/s | 4.644 MB/s | 68.027 MB/s | 68.027 MB/s |
AES128-CTR | 7.446 MB/s | 7.434 MB/s | - | - |
AES192-CTR | 6.561 MB/s | 6.548 MB/s | - | - |
AES256-CTR | 5.858 MB/s | 5.847 MB/s | - | - |
SM4-CBC | 5.906 MB/s | 5.694 MB/s | - | - |
SM4-CTR | 6.226 MB/s | 6.218 MB/s | - | - |
AEAD Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Encryption (Software) | Decryption (Software) | Encryption (Hardware) | Decryption (Hardware) |
---|---|---|---|---|
AES128-GCM | 4.306 MB/s | 4.304 MB/s | 76.923 MB/s | 76.923 MB/s |
AES192-GCM | 3.992 MB/s | 3.988 MB/s | 71.428 MB/s | 71.428 MB/s |
AES256-GCM | 3.72 MB/s | 3.717 MB/s | 67.567 MB/s | 67.114 MB/s |
AES128-CCM | 4.086 MB/s | 4.111 MB/s | - | - |
AES192-CCM | 3.546 MB/s | 3.565 MB/s | - | - |
AES256-CCM | 3.128 MB/s | 3.143 MB/s | - | - |
SM4-GCM | 3.824 MB/s | 3.808 MB/s | - | - |
SM4-CCM | 3.288 MB/s | 3.287 MB/s | - | - |
Ascon-AEAD128 | 8.169 MB/s | 8.136 MB/s | - | - |
ChaCha20Poly1305 | 9.569 MB/s | 9.569 MB/s | - | - |
Hash Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 31.847 MB/s | - |
SHA-1 | 9.871 MB/s | 57.471 MB/s |
SHA-224 | 6.811 MB/s | 64.102 MB/s |
SHA-256 | 6.807 MB/s | 64.102 MB/s |
SHA-384 | 4.273 MB/s | 71.942 MB/s |
SHA-512 | 4.273 MB/s | 72.463 MB/s |
SHA3-224 | 3.673 MB/s | - |
SHA3-256 | 3.472 MB/s | - |
SHA3-384 | 2.675 MB/s | - |
SHA3-512 | 1.867 MB/s | - |
SM3 | 5.586 MB/s | - |
Ascon-Hash256 | 3.043 MB/s | - |
Signature Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Generation (Software) | Verification (Software) |
---|---|---|
RSA (1024 bits) | 38 ms | 4.9 ms |
RSA (2048 bits) | 225.3 ms | 17.8 ms |
RSA (3072 bits) | 686 ms | 38.2 ms |
RSA (4096 bits) | 1546.5 ms | 67.3 ms |
DSA (1024 bits) | 22 ms | 44.4 ms |
DSA (2048 bits) | 111.7 ms | 229.4 ms |
EC Signature Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Generation (Software) | Verification (Software) |
---|---|---|
ECDSA (secp256r1) | 25.8 ms | 23.1 ms |
ECDSA (secp384r1) | 62.4 ms | 56.5 ms |
ECDSA (secp521r1) | 133.6 ms | 119.8 ms |
ECDSA (brainpoolP256r1) | 50.8 ms | 50.7 ms |
ECDSA (brainpoolP384r1) | 127.8 ms | 127.9 ms |
ECDSA (brainpoolP512r1) | 259.4 ms | 264.5 ms |
SM2 | 49.4 ms | 19.8 ms |
EdDSA (Ed25519) | 6.9 ms | 6.1 ms |
EdDSA (Ed448) | 31.7 ms | 28.5 ms |
Key Exchange Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 97.5 ms | 97.6 ms |
Diffie-Hellman (2048 bits) | 718.8 ms | 718.9 ms |
EC Key Exchange Algorithms
PIC32CZ-CA90 @ 300 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.4
- • Compiled using GCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (secp256r1) | 22.6 ms | 22.6 ms |
ECDH (secp384r1) | 54.3 ms | 54.4 ms |
ECDH (secp521r1) | 114.7 ms | 114.8 ms |
ECDH (brainpoolP256r1) | 47.1 ms | 47.1 ms |
ECDH (brainpoolP384r1) | 118.5 ms | 118.5 ms |
ECDH (brainpoolP512r1) | 240.2 ms | 240.2 ms |
ECDH (SM2) | 22.5 ms | 22.6 ms |
ECDH (X25519) | 3.7 ms | 3.6 ms |
ECDH (X448) | 16.2 ms | 16.1 ms |