Secure Boot Loader
A two-stage secure boot that extends trust from the protected FPGA configuration to the application firmware.
Overview
A two-stage secure boot that extends trust from the protected FPGA configuration to the application firmware.
KiviBoot protects software loaded after FPGA configuration. Its two-stage architecture combines the compact KiviBoot-NanoBL first-stage bootloader with the flexible KiviBoot-SecureBL second stage for application verification and firmware updates. The solution can be adapted to FPGA SoCs and softcore processor systems, external memory configurations, hardware roots of trust and application-specific security requirements.
Extend the chain of trust to every software stage
Native FPGA security mechanisms can authenticate and encrypt the configuration bitstream. But FPGA-based systems often load additional boot software and application firmware from external flash or other memories after configuration. If these components are not verified before execution, they remain outside the hardware-established chain of trust.
KiviBoot closes this gap. It provides a trusted transition from the authenticated FPGA design to the bootloader and application software. Images are decrypted and cryptographically verified before control is transferred to the next stage.
Validated implementation
Support for additional FPGA manufacturers and device families will be introduced successively.
| FPGA platform | Processor | Status |
| Efinix Titanium Ti375 | Sapphire RISC-V SoC | Tested |
| Efinix Titanium Ti60 | Sapphire RISC-V (softcore processor) | Tested |
| AMD Artix-7 | MicroBlaze (softcore processor) | Tested |
KiviBoot components for secure boot
KiviBoot separates the minimal trusted boot stage from the more flexible system functionality. This limits the attack surface of the first stage while allowing the second stage to be adapted to the target solution.
|
KiviBoot-NanoBL Minimal first-stage secure bootloader Designed for execution from protected on-chip RAM or ROM. It contains a small, fixed set of functions required to start the next trusted component.
|
KiviBoot-SecureBL Second-stage bootloader for application security Runs after successful verification by KiviBoot-NanoBL. It loads and protects the application stage and can implement product-specific boot policies.
|
Platform adaption
KiviBoot is designed as a portable product concept rather than a bootloader tied to a single FPGA. Porting takes the complete target architecture into account:
- FPGA or FPGA SoC and its native security mechanisms
- Hardened processor or soft-core CPU
- External flash and RAM architecture
- Trust anchors, key storage and provisioning
- Application environment: bare metal, RTOS or Linux
- Firmware update, recovery and rollback requirements
Proven on Efinix Titanium
The implementation of KiviBoot has been developed and measured on the Efinix Titanium Ti375 C529 Development Kit with the hardened Sapphire high-performance RISC-V SoC. It combines the Ti375 native bitstream security with KiviBoot-NanoBL and KiviBoot-SecureBL. It extends the chain of trust from the encrypted and authenticated FPGA configuration to software stored in external flash.
- Platform: Efinix Titanium Ti375 C529 Development Kit
- Processor system: Hardened Sapphire high-performance RISC-V SoC
- Architecture: Two-stage, pure-software secure boot
How it works
- 1. The FPGA verifies and decrypts its configuration bitstream using the platform's native security mechanisms.
- 2. The authenticated FPGA configuration establishes the hardware-based starting point and initializes KiviBoot-NanoBL in protected on-chip memory.
- 3. KiviBoot-NanoBL loads, decrypts and verifies KiviBoot-SecureBL.
- 4. KiviBoot-SecureBL loads the application, decrypts the image and verifies its integrity and digital signature.
- 5. The application starts only after all required checks have passed.
Key features
- Extends the FPGA hardware root of trust to application firmware
- Protects software stored in external flash and loaded into RAM
- Adapts to bare-metal, RTOS and Linux-based systems
- Supports software cryptography, external secure elements and FPGA-based crypto acceleration
- Enables platform-specific firmware update and lifecycle-security concepts
Block Diagram
Specifications
Identity
Files
Note: some files may require an NDA depending on provider policy.
Provider
Learn more about Boot Firmware Support IP core
Why nonce reuse can break AES-GCM security in embedded systems
AES in embedded systems: Understanding the most important AES modes
Area, Pipelining, Integration: A Comparison of SHA-2 and SHA-3 for embedded Systems.
Embedded Security explained: Post-Quantum Cryptography (PQC) for embedded Systems
Embedded Security explained: Cryptographic Hash Functions
Frequently asked questions about Boot Firmware Support IP
What is Secure Boot Loader?
Secure Boot Loader is a Boot Firmware Support IP core from KiviCore listed on Semi IP Hub.
How should engineers evaluate this Boot Firmware Support?
Engineers should review the overview, key features, supported foundries and nodes, maturity, deliverables, and provider information before shortlisting this Boot Firmware Support IP.
Can this semiconductor IP be compared with similar products?
Yes. Buyers can compare this product with similar semiconductor IP cores or IP families based on category, provider, process options, and structured technical specifications.