wolfCOSE is now available as an STM32Cube pack, I-CUBE-wolfCOSE, so you can add zero-allocation CBOR and COSE to any STM32 project straight from STM32CubeMX or STM32CubeIDE, with no manual source integration. It builds on the wolfSSL Cube pack, I-CUBE-wolfSSL, for all cryptography.
What You Get
Cube packs let STM32 developers add a library to a project through the CubeMX/CubeIDE component selector instead of copying files by hand. The wolfCOSE pack does exactly that, and it ships three components:
- wolfCOSE Core: the zero-allocation CBOR and COSE sources (wolfcose.c, wolfcose_cbor.c), which sit on top of wolfCrypt.
- wolfCOSE Test: a toggleable on-device self-test that runs a COSE_Sign1 ES256 sign-and-verify, so you can confirm the library works on your board before writing a line of your own code.
- Configuration template: algorithm selection is exposed through the usual Cube .ftl configuration flow.
Because wolfCOSE uses the wolfSSL Cube pack underneath, every crypto operation runs on wolfCrypt. That gives you one crypto engine for your whole STM32 project.
True Zero Allocation
wolfCOSE is a strict zero-allocation library: all COSE operations use caller-provided buffers, with no malloc or free anywhere in the crypto path. That makes it a natural fit for constrained STM32 targets where deterministic memory use matters.
Getting It
- The built pack is posted at www.wolfssl.com/files/ide/I-CUBE-wolfCOSE.pack.
- Setup, project configuration, and the on-device self-test are documented on the STM32Cube wiki page.
Related PRs: wolfSSL/wolfCOSE #61 (documentation and the on-device test)
Want to try it on real hardware right away? See our companion post on the ready-to-run NUCLEO-H563ZI example. 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

