What wolfSSL supports for RISC-V Users

Core RISC-V Support

wolfSSL has no external dependencies and runs on nearly any RISC-V board using standard GNU toolchains.

Download wolfSSL →

Hardware Platforms Supported

A few of the specific boards we currently support:

  • Microchip PolarFire SoC (MPFS250)
  • SiFive HiFive Unleashed (64-bit)
  • SiFive HiFive1 (32-bit E31 RISC-V core at 320MHz with 4MB flash and 16KB RAM)
  • Espressif ESP32-C2, ESP32-C3, and ESP32-C6 RISC-V chips
  • Radiona ULX3S Softcore with Hazard3 RISC-V (same core used in Raspberry Pi Pico 2)
  • Other private label boards are supported as well

Cryptographic Hardware Acceleration

Assembly Optimizations

wolfSSL PR #7569 implemented AES ECB/CBC/CTR/GCM/CCM for RISC-V 64-bit in assembly language, achieving up to 50x performance improvement over software implementations.
Optimized Algorithms (RISC-V 64-bit assembly):

  • AES (ECB, CBC, CTR, GCM, CCM modes)
  • SHA-256, SHA-512, SHA-3, ChaCha20, and Poly1305

Enable with: ./configure –enable-riscv-asm or macro WOLFSSL_RISCV_ASM

Please contact us at support@wolfssl.com if you have ideas for further optimization! We want to maximize performance for all of the algos we support, including ML-KEM and ML-DSA.

Espressif RISC-V Hardware Acceleration

wolfSSL supports hardware acceleration on ESP32-C2, ESP32-C3, and ESP32-C6 for SHA (hash), RSA (big number math), and AES encryption, achieving up to 10x faster performance than software implementations.

FIPS Certification

wolfSSL offers FIPS 140-3 certifications for RISC-V platforms (NIST Certificate #4718).

wolfBoot Support

The wolfBoot secure bootloader supports RISC-V with boot validation using hash/signature, power-fail-safe firmware updates, rollback support, version checking to prevent downgrade attacks, and support for external flash. Contact us if you need wolfBoot on your specific part.

Configuration

Enable RISC-V support with the macro WOLFSSL_SIFIVE_RISC_V or use the configure option –enable-riscv-asm for assembly optimizations. wolfCrypt supports both RV32 and RV64 architectures with customizable build options through user_settings.h.

If you have questions about any of the above, please contact us at facts@wolfssl.com or call us at +1 425 245 8247.

Download wolfSSL Now