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

This benchmark conducted on WBZ451 / PIC32CX-BZ2 Early Access Development Kit will help you in qualifying performance of CycloneCRYPTO (Crypto Library), CycloneSSL (SSL/TLS Library) and CycloneSSH (SSH Library) running on Microchip PIC32CX MCU. Note: Microchip PIC32CX includes Asymmetric and Symmetric Crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.

Cipher Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

AlgorithmCBC Encrypt (Software)CBC Decrypt (Software)CCM Encrypt (Software)CCM Decrypt (Software)GCM Encrypt (Software)GCM Decrypt (Software)
3DES0.163 MB/s0.159 MB/s----
AES-1280.744 MB/s0.6 MB/s0.462 MB/s0.462 MB/s0.455 MB/s0.454 MB/s
AES-1920.657 MB/s0.529 MB/s0.395 MB/s0.395 MB/s0.42 MB/s0.419 MB/s
AES-2560.589 MB/s0.472 MB/s0.345 MB/s0.345 MB/s0.391 MB/s0.39 MB/s

AlgorithmCBC Encrypt (Hardware)CBC Decrypt (Hardware)CCM Encrypt (Hardware)CCM Decrypt (Hardware)GCM Encrypt (Hardware)GCM Decrypt (Hardware)
3DES------
AES-1288.333 MB/s8.333 MB/s--7.473 MB/s7.552 MB/s
AES-1927.886 MB/s7.836 MB/s--7.067 MB/s7.102 MB/s
AES-2567.457 MB/s7.396 MB/s--6.715 MB/s6.761 MB/s

Hash Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

AlgorithmSpeed (Software)Speed (Hardware)
MD53.355 MB/s-
SHA-10.924 MB/s28.49 MB/s
SHA-2240.705 MB/s31.25 MB/s
SHA-2560.705 MB/s31.347 MB/s
SHA-3840.433 MB/s-
SHA-5120.433 MB/s-
SHA3-2240.357 MB/s-
SHA3-2560.338 MB/s-
SHA3-3840.261 MB/s-
SHA3-5120.183 MB/s-

Signature Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

SignatureSignature Generation (Software)Signature Verification (Software)
RSA (1024 bits)258.6 ms39.8 ms
RSA (2048 bits)1365.3 ms144.7 ms
RSA (3072 bits)3885.5 ms309.5 ms
RSA (4096 bits)8402.2 ms545.7 ms
DSA (1024 bits)149.4 ms305.6 ms
DSA (2048 bits)675.8 ms1414.6 ms
SignatureSignature Generation (Hardware)Signature Verification (Hardware)
RSA (1024 bits)22.4 ms2.1 ms
RSA (2048 bits)128.4 ms6.6 ms
RSA (3072 bits)387.3 ms13.3 ms
RSA (4096 bits)876.2 ms22.7 ms
DSA (1024 bits)30.1 ms80.3 ms
DSA (2048 bits)124.5 ms337.2 ms

EC Signature Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

SignatureSignature Generation (Software)Signature Verification (Software)
ECDSA (P-256)680.5 ms821.1 ms
ECDSA (P-384)1362.1 ms1652.1 ms
ECDSA (P-521)1634.3 ms1924 ms
EdDSA (Ed25519)119.2 ms234.3 ms
EdDSA (Ed448)598.2 ms1187.1 ms
SignatureSignature Generation (Hardware)Signature Verification (Hardware)
ECDSA (P-256)43.5 ms86.6 ms
ECDSA (P-384)99.6 ms197.7 ms
ECDSA (P-521)212.9 ms424.4 ms
EdDSA (Ed25519)--
EdDSA (Ed448)--

Key Exchange Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

AlgorithmPublic Key Generation (Software)Shared Secret Computation (Software)
Diffie-Hellman (1024 bits)564.9 ms564.9 ms
Diffie-Hellman (2048 bits)3767.9 ms3768.2 ms
AlgorithmPublic Key Generation (Hardware)Shared Secret Computation (Hardware)
Diffie-Hellman (1024 bits)60.9 ms60.9 ms
Diffie-Hellman (2048 bits)427.1 ms427 ms

EC Key Exchange Algorithms

PIC32CX @ 64 MHz

Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using XC32 with optimization level 3

AlgorithmPublic Key Generation (Software)Shared Secret Computation (Software)
ECDH (P-256)651.4 ms654.1 ms
ECDH (P-384)1272.9 ms1271.9 ms
ECDH (P-521)1598.5 ms1604.8 ms
ECDH (X25519)65.4 ms65.4 ms
ECDH (X448)304.9 ms304.9 ms
AlgorithmPublic Key Generation (Hardware)Shared Secret Computation (Hardware)
ECDH (P-256)42.7 ms42.7 ms
ECDH (P-384)97.1 ms96.9 ms
ECDH (P-521)209.8 ms210 ms
ECDH (X25519)--
ECDH (X448)--