PRODUCTS

Products -> wolfCrypt Embedded Crypto Engine

Supported Chipmakers

  1. wolfSSL has support for chipsets including ARM, Intel, Motorola, mbed, NXP/Freescale, Microchip (PIC32)/Atmel, STMicro (STM32F2/F4), Analog Devices, Texas Instruments, and more


  1. If you would like to use or test wolfCrypt on another chipset, let us know and we’ll be happy to support you.

wolfCrypt Embedded Crypto Engine

Platform and Language Support


wolfCrypt is built for maximum portability and is generally very easy to compile on new platforms.  It supports the C programming language as a primary interface.  If your desired platform is not listed under the supported operating environments, or you have interest in using wolfCrypt in another programming language not currently supported, please contact us.


Commercial Support


Support packages for wolfCrypt are available on an annual basis directly from wolfSSL.  With three different package options, you can compare them side-by-side and choose the package that best fits your specific needs.  Please see our Support Packages page for more details or contact us with any questions.


For license information, please see our Licensing Page.


Benchmarks


For benchmarking information or data, please visit our Benchmark page or contact us for more information.


Special Builds


Module Isolation - Individual algorithms and ciphers are able to be easily broken out of the wolfCrypt package and used independently.  If you would like to learn more, please contact us.


wolfCrypt Training Course


Interested in getting trained by the wolfSSL team on subjects related to wolfCrypt and/or wolfSSL? 

Learn more.

Documentation:

wolfCrypt is dual licensed under both the GPLv2 and commercial licensing.  For more information, please see the following links.

Licensing and Ordering:

Follow us on Twitter and Facebook!

Stay up to date:

Download Now

wolfCrypt is included in the wolfSSL package.

Supported Operating Environments

  1. Win32/64, Linux, Mac OS X, Solaris, ThreadX, VxWorks, FreeBSD, NetBSD, OpenBSD, embedded Linux, WinCE, Haiku, OpenWRT, iPhone (iOS), Android, Nintendo Wii and Gamecube through DevKitPro, QNX, MontaVista, NonStop, TRON/ITRON/µITRON, Micrium's µC/OS, FreeRTOS, SafeRTOS, Freescale MQX, Nucleus, TinyOS, HP/UX, ARC MQX, TI-RTOS, uTasker, embOS, INtime


  1. If you would like to test wolfCrypt on another environment, let us know and we’ll be happy to support you.

HIGHLIGHTS


  1. -ECC, up to 521 bit

  2. -Hash-based PRNG

  3. -AES-NI, Cavium, STM32

  4. -Progressive list of supported ciphers

  5. -Key and Certificate generation

  6. -Support Available

LIGHTWEIGHT


- Small footprint size

  1. -Low runtime memory

PORTABLE


  1. -Simple and Clean API

  2. -Hardware crypto support

  3. -Custom Memory Hooks

  4. -Modular Design

  5. -Assembly Optimizations

Description

The wolfCrypt cryptography engine is a lightweight crypto library written in ANSI C and targeted for embedded, RTOS, and resource-constrained environments - primarily because of its small size, speed, and feature set.  It is commonly used in standard operating environments as well because of its royalty-free pricing and excellent cross platform support.  wolfCrypt supports the most popular algorithms and ciphers as well as progressive ones such as HC-128, RABBIT, and NTRU.  wolfCrypt is stable, production-ready, and backed by an excellent support team.  It is used in millions of application and devices worldwide.


A version of the wolfCrypt cryptography library has been FIPS 140-2 validated (Certificate #2425). For additional information, visit the wolfCrypt FIPS FAQ or contact [email protected]

Features


  1. Hash Functions:

            MD2, MD4, MD5, SHA-1, SHA-224, SHA-256,

            SHA-384, SHA-512, BLAKE2b, RIPEMD-160,

            Poly1305

  1. Block, Stream, and Authenticated Ciphers:

            AES (CBC, CTR, GCM, CCM, GMAC, CMAC),

            Camellia, DES, 3DES, IDEA, ARC4, RABBIT,

            HC-128, ChaCha20

  1. Public Key Algorithms: 

            RSA, DSS, DH, EDH, ECDH-ECDSA,

            ECDHE-ECDSA, ECDH-RSA, ECDHE-RSA,

            NTRU

  1. Password-based Key Derivation: 

            HMAC, PBKDF2, PKCS#5

  1. Curve25519 and Ed25519

  2. Hash-based PRNG

  3. PEM and DER certificate support

  4. X.509 Encoding / Decoding

  5. Simple API

  6. RSA and ECC Key Generation

  7. x509 v3 Signed Certificate Generation

  8. PKCS #7 - Cryptographic Message Syntax (CMS)

  9. PKCS #10 - Certificate Signing Request (CSR)

  10. PKCS #1, #5, #8, #12 Private Key Encryption

  11. Assembly Optimizations

  12. Custom Memory Hooks

  13. Easily ties in to Hardware-based RNG solutions

  14. Hardware Cryptography Support

            Intel AES-NI, AVX1/2, RDRAND, RDSEED, SGX

            Cavium NITROX

            Intel QuickAssist

            STM32F2/F4

            Freescale/NXP (CAU, mmCAU, SEC, LTC)

            Microchip PIC32MZ

            ARMv8

  1. OpenSSL compatibility layer

Copyright 2017 wolfSSL Inc.  All rights reserved.

embedded ssl

Questions? +1 (425) 245-8247