Crypto Benchmark on PIC32CX-BZ2 MCU
ARM Cortex-M4F @ 64 MHz

This benchmark conducted on PIC32CX-BZ2 and WBZ451 Curiosity Development Board (EV96B94A) 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 PIC32CX-BZ2 microcontroller.

PIC32CX-BZ2 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.

Cipher Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.183 MB/s0.18 MB/s--
3DES-CTR0.188 MB/s0.188 MB/s--
AES128-CBC0.772 MB/s0.626 MB/s8.333 MB/s8.333 MB/s
AES192-CBC0.68 MB/s0.549 MB/s7.886 MB/s7.836 MB/s
AES256-CBC0.607 MB/s0.489 MB/s7.457 MB/s7.423 MB/s
AES128-CTR0.871 MB/s0.871 MB/s--
AES192-CTR0.756 MB/s0.755 MB/s--
AES256-CTR0.668 MB/s0.667 MB/s--
SM4-CBC0.81 MB/s0.76 MB/s--
SM4-CTR0.906 MB/s0.906 MB/s--

AEAD Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM0.482 MB/s0.479 MB/s7.496 MB/s7.552 MB/s
AES192-GCM0.443 MB/s0.441 MB/s7.067 MB/s7.127 MB/s
AES256-GCM0.411 MB/s0.409 MB/s6.734 MB/s6.756 MB/s
AES128-CCM0.479 MB/s0.478 MB/s--
AES192-CCM0.407 MB/s0.407 MB/s--
AES256-CCM0.354 MB/s0.354 MB/s--
SM4-GCM0.497 MB/s0.496 MB/s--
SM4-CCM0.505 MB/s0.505 MB/s--
Ascon-AEAD1280.746 MB/s0.756 MB/s--
ChaCha20Poly13050.933 MB/s0.933 MB/s--

Hash Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Speed
(Software)
Speed
(Hardware)
MD53.011 MB/s-
SHA-10.952 MB/s28.571 MB/s
SHA-2240.719 MB/s31.347 MB/s
SHA-2560.719 MB/s31.347 MB/s
SHA-3840.424 MB/s-
SHA-5120.424 MB/s-
SHA3-2240.354 MB/s-
SHA3-2560.335 MB/s-
SHA3-3840.26 MB/s-
SHA3-5120.182 MB/s-
SM30.55 MB/s-
Ascon-Hash2560.278 MB/s-

Signature Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)247.6 ms38.7 ms22.1 ms2 ms
RSA (2048 bits)1326.7 ms142.5 ms127.7 ms6.3 ms
RSA (3072 bits)3799.6 ms305.8 ms386.3 ms13 ms
RSA (4096 bits)8251.7 ms540.3 ms874.7 ms22.2 ms
DSA (1024 bits)137.5 ms287.1 ms29.8 ms79.6 ms
DSA (2048 bits)644 ms1362.3 ms123.8 ms335.6 ms

EC Signature Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)223.7 ms201.6 ms43.8 ms86.7 ms
ECDSA (secp384r1)559.3 ms507.6 ms100 ms197.9 ms
ECDSA (secp521r1)1165.4 ms1027.1 ms213.6 ms424.6 ms
ECDSA (brainpoolP256r1)421.6 ms420.7 ms43.7 ms86.2 ms
ECDSA (brainpoolP384r1)1106.6 ms1104.5 ms99.4 ms197.7 ms
ECDSA (brainpoolP512r1)2294 ms2328.1 ms189.9 ms383.4 ms
SM2197.1 ms197.1 ms42.6 ms42.6 ms
EdDSA (Ed25519)59.9 ms54.4 ms--
EdDSA (Ed448)247.2 ms219.7 ms--

Key Exchange Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
Diffie-Hellman (1024 bits)526.8 ms526.9 ms60.7 ms60.6 ms
Diffie-Hellman (2048 bits)3615.3 ms3615.6 ms426.5 ms426.4 ms

EC Key Exchange Algorithms

PIC32CX-BZ @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using XC32 with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)198.1 ms197.7 ms42.9 ms42.6 ms
ECDH (secp384r1)492.6 ms491.9 ms97.4 ms96.8 ms
ECDH (secp521r1)1006.5 ms1005.4 ms210.7 ms209.7 ms
ECDH (brainpoolP256r1)392 ms391.6 ms42.1 ms41.6 ms
ECDH (brainpoolP384r1)1027.8 ms1027.1 ms96.6 ms96 ms
ECDH (brainpoolP512r1)2128.8 ms2128.1 ms190.5 ms189.8 ms
ECDH (SM2)197 ms196.6 ms42.9 ms42.5 ms
ECDH (X25519)32.5 ms32.4 ms--
ECDH (X448)124.7 ms124.6 ms--