The dsPIC33 Post-Quantum Cryptography (PQC) and Classical Cryptography Library is an implementation of the wolfCrypt cryptographic libraries from wolfSSL, optimized for dsPIC33C and dsPIC33A Digital Signal Controllers (DSCs).
This library provides optimized software implementations of post‑quantum and classical cryptographic algorithms that can be used as building blocks in security use cases such as secure boot, secure firmware updates, secure communication, and device authentication.
Key Highlights
- Post-quantum cryptography (PQC) support for National Institute of Standards and Technology (NIST)-selected algorithms recommended under the Commercial National Security Algorithm Suite (CNSA) 2.0
- Hardware assisted acceleration for PQC operations on dsPIC33A devices featuring SHA2, SHA3, and SHAKE crypto accelerators
- Fully software-based implementations for dsPIC33 devices without onchip cryptographic accelerators
- Software based classical cryptography support for dsPIC33C and dsPIC33A‑MC families
- Proven cryptographic foundation built on wolfCrypt from wolfSSL, a trusted, widely deployed security library
- Free commercial license: Commercial license provided at no additional cost for deployment on Microchip devices
- Tailored for high performance and minimal RAM/flash usage on dsPIC33C and dsPIC33A DSCs
Supported Algorithms & Features
Below is a short highlight of supported algorithms. For the full list, please see the library README files
Post-Quantum Cryptography (PQC) Algorithms
- ML-DSA (Dilithium): Lattice based digital signature algorithm
- Supported variants: ML-DSA-44, ML-DSA-65, ML-DSA-87
- ML-KEM (Kyber): Lattice based Key Encapsulation Mechanism (KEM)
- Supported variants: ML-KEM-512, ML-KEM-768, ML-KEM-1024
- LMS (Leighton Micali Signatures): Hash based digital signature scheme
- Hybrid cryptographic modes
- Combines post-quantum and classical algorithms to enable layered security and backward compatibility
Classical Cryptography Algorithms
- Symmetric encryption
- AES-128, AES-192, AES-256
- Hash algorithms
- SHA-224, SHA-256, SHA-384, SHA-512
- Public-key cryptography
- Digital signature verification
- ECDSA using elliptic curves P-256 and P-384
License & Commercial Terms
This library is distributed under the wolfSSL Commercial License, with usage restricted to Microchip products, and permits:
- Royalty‑free distribution of embedded software using the wolfSSL Commercial License
- Deployment in proprietary, closed-source products without open-source disclosure
- Internal modification and redistribution within the licensed organization
For full license details, visit: https://github.com/wolfSSL/Microchip
License FAQ
Q: Can I use this library in a commercial, closed-source product?
A: Yes, the wolfSSL Commercial License allows royalty-free distribution in proprietary, closed-source end-products based on Microchip devices.
Q: Do I need to pay per-unit royalties?
A: No, the license covers unlimited distribution of your product once licensed.
Q: Can I modify the source code?
A: Yes, for internal use within your company. Disclosure of changes externally may be restricted.