RECENT BLOG NEWS
Secure Your Oracle Linux 8 Deployment with wolfSSL’s FIPS 140-3 Validated Module
If you’re stuck on OL8 for some reason, have no desire to migrate to OL9 or later, and still need FIPS support for OpenSSL 1.x, then we can help with our FIPS 140-3 module, which plugs into the OpenSSL 1.x engine interface.
If you have questions about FIPS, please reach out to us at fips@wolfssl.com. For any other inquiries, contact us at facts@wolfssl.com or call us at +1 425 245 8247.
Download wolfSSL Now
Live webinar: Open Source Secure Boot Meets Open Hardware: wolfBoot Integration with TROPIC01 Secure Element
Join us for an exciting webinar showcasing the integration of the TROPIC01 secure element with wolfBoot, bringing open source secure boot down to the hardware level.
Register Now: Open Source Secure Boot Meets Open Hardware: wolfBoot Integration with TROPIC01 Secure Element
Date: June 25th | 9 AM PT
The Tropic Square team has integrated support for the TROPIC01 secure element into wolfBoot, using it as a hardware Root-of-Trust for the secure boot process. This integration is a milestone because it extends wolfBoot’s open source transparency right down to the hardware, enabling users and security researchers to audit the entire security chain—from software to hardware.
This approach aligns with Kerckhoff’s principle, which states that a cryptosystem should remain secure even if everything about it, except the secret key, is publicly known. By opening the design and implementation, users don’t have to blindly trust that the secure element is free from vulnerabilities or backdoors.
This webinar will cover:
- An overview of the TROPIC01 open architecture secure element and wolfBoot
- A demo of TROPIC01 integrated into the secure boot process
- Why “security by obscurity” fails—and how Tropic Square and wolfSSL deliver transparent, Open Source security that builds trust
Register now to learn how to build transparent, auditable, open source secure boot solutions from silicon to software.
As always, our webinar will include Q&A throughout. 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
wolfTPM Support for Das U-Boot
wolfTPM now includes support for Das U-Boot, extending TPM 2.0 access to early boot stages in secure embedded systems. This port enables direct TPM communication in U-Boot environments using software SPI and provides both native and high-level APIs for flexibility.
Key Features
- SOFT SPI Driver
- Full TPM 2.0 command set
- Both native API and wrapper APIs for complex TPM operations
- Two integration paths:
- __linux__: Uses tpm2_linux.c to communicate via standard Linux TPM interfaces
- __UBOOT__: Direct SPI communication via tpm_io_uboot.c
U-Boot TPM Commands
The wolftpm command interface in U-Boot offers a rich set of TPM 2.0 operations. including:
- Basic TPM control: init, startup, self_test, info
- PCR management: pcr_extend, pcr_read, pcr_allocate, pcr_print
- Security features: clear, change_auth, dam_reset, dam_parameters
- Firmware management: firmware_update, firmware_cancel
- Capability reporting: caps, get_capability
These commands allow developers to initialize, configure, and query TPM state from within U-Boot, enabling security features even before the OS loads.
Extended Functionality
While U-Boot includes basic TPM 2.0 command support through its native library, wolfTPM extends this functionality with the ability to manage firmware updates.
Firmware Management Support
wolfTPM includes dedicated commands for managing TPM firmware, allowing users to directly perform updates and control firmware behavior from the U-Boot shell:
- firmware_update <manifest_addr> <manifest_sz> <firmware_addr> <firmware_sz>
Performs a full firmware update on the TPM by providing a signed manifest and firmware image.</styel=”font-family:courier> - firmware_cancel
Allows users to cancel or abandon an ongoing firmware update process.
These capabilities are not present in U-Boot’s built-in TPM stack, which lacks any mechanism for managing TPM firmware or triggering a reboot of the TPM device. With wolfTPM, developers gain direct control over the TPM lifecycle, supporting scenarios like:
- Field upgrades of TPM firmware
- Factory provisioning with verified firmware images
- TPM resets and recovery via startup/shutdown sequences
By leveraging wolfTPM in U-Boot, embedded developers and security teams can take full advantage of the TPM 2.0 specification—including lifecycle and provisioning flows that go beyond what standard U-Boot TPM implementations provide.
Getting Started
For detailed build instructions, configuration options, and sample usage:
- Pull Request with full details: PR#398
- Documentation and examples: examples/u-boot/README.md
Conclusion
wolfTPM’s U-Boot support is ideal for securing early boot environments with TPM 2.0 features. With a rich command-line interface, flexible APIs, and tested support for QEMU and swtpm, it’s a robust solution for TPM integration in embedded platforms.
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
wolfTPM Support for Zephyr RTOS
wolfSSL now has support for Zephyr RTOS through a newly added wolfTPM Zephyr port. This enables easy integration of TPM 2.0 functionality in embedded projects using Zephyr, expanding the flexibility and portability of secure applications.
Below is a summary of the key features introduced in the PR#395:
Key Changes and Features
Zephyr Module Integration
wolfTPM has been added as a Zephyr module, complete with CMake and Kconfig support. This makes it simple to include TPM functionality in any Zephyr-based project using standard module inclusion through west.
Sample Applications
Two test/sample applications are included in the port:
- wolftpm_wrap_test – tests core TPM wrapper functionality
- wolftpm_wrap_caps – displays TPM capabilities
Both examples build and run successfully on qemu_x86, providing developers with a solid foundation to build on.
Custom Configuration Support
The module uses a user_settings.h configuration file, which can be customized or replaced as needed by developers to match project-specific requirements.
CI Integration
A new