WOLFSSL HARDWARE CRYPTOGRAPHY SUPPORT
The following is a list of all hardware acceleration/cryptography platforms currently supported by wolfSSL.
- Intel AES-NI (Xeon and Core processor families)
AES-GCM | 128, 192, 256 bit |
AES-CCM | 128, 192, 256 bit |
AES-CBC | 128, 192, 256 bit |
AES-ECB | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
- AVX1/AVX2 (Intel and AMD x86)
SHA-256 |
SHA-384 |
SHA-512 |
- RDRAND (Intel 64, IA-32 architectures)
SHA-256 |
SHA-512 |
- RDSEED (Intel Broadwell, AMD Zen)
SHA-256 |
SHA-512 |
- Freescale Coldfire SEC (NXP MCF547X and MCF548X)
DES-CBC | 64 bit |
3DES-CBC | 192 bit |
AES-CBC | 128, 192, 256 bit |
- Freescale Kinetis MMCAU K50, K60, K70 and K80 (ARM Cortex-M4 core)
MD5 | 128 bit digest |
SHA1 | 160 bit digest |
SHA256 | |
DES-CBC | 64 bit |
3DES-CBC | 192 bit |
AES-CBC | 128, 192, 256 bit |
AES-CCM | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
AES-ECB | 128, 192, 256 bit |
- STMicroelectronics STM32 F1, F2, F4, L1, W Series (ARM Cortex - M3/M4)
RNG | |
DES-CBC | 64 bit |
DES-ECB | 64 bit Encrypt |
3DES-CBC | 192 bit |
MD5 | 128 bit |
SHA1 | 160 bit |
AES-CBC | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
(CubeMX and Std Per Lib) |
- Cavium NITROX (III/V PX processors)
RNG | |
AES-CBC | 128, 192, 256 bit |
3DES-CBC | 192 bit |
RC4 | 2048 bit maximum |
HMAC | MD5, SHA1, SHA256 |
RSA | 512 - 4096 bit |
- Microchip PIC32 MX/MZ (Embedded Connectivity)
MD5 | 128 bit digest |
SHA1 | 160 bit digest |
SHA256 | |
HMAC | MD5, SHA1, SHA256 |
DES-CBC | 64 bit |
3DES-CBC | 192 bit |
AES-CBC | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
- Texas Instruments TM4C1294 (ARM Cortex-M4F)
DES-CBC | 64 bit |
3DES-CBC | 192 bit |
AES-CCM | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
AES-ECB | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
AES-CBC | 128, 192, 256 bit |
- Nordic NRF51 (Series SoC family, 32-bit ARM Cortex M0 processor core)
AES-ECB | 128 bit |
RNG |
- Microchip/Atmel ATECC508A (compatible with MPU or MCU)
ECC | 256 bit (NIST-P256) |
- ARMv8
AES-CBC | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
SHA256 |
- Intel QuickAssist Technology (Contact if interested)
RSA | 512 - 4096 bit |
SHA1 | 160 bit digest |
SHA2 | 224, 256, 384 and 512 bit |
AES-CBC | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
ECC | 128, 256 bit |
HMAC | SHA1, SHA2 |
MD5 |
- Freescale NXP LTC
Curve25519 | 256 bit |
Ed25519 | 256 bit |
AES-CCM | 128, 192, 256 bit |
AES-ECB | 128, 192, 256 bit |
AES-CBC | 128, 192, 256 bit |
AES-CTR | 128, 192, 256 bit |
AES-GCM | 128, 192, 256 bit |
SHA1 | 160 bit digest |
SHA256 | |
ECC | 128, 256 bit |
ECC-DHE | 128, 256 bit |
RSA | 512 - 4096 bit |