Skip to content

Compass-All/TRustForge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TRustForge: Secure Firmware with Hardware Isolation and Rust

This repository contains the open-source artifacts for the paper "TRustForge: Secure Firmware with Hardware Isolation and Rust". It combines a modified OpenSBI firmware with a Rust implementation of the TRustForge runtime for hardware-isolated secure firmware deployment.

Directories

  • opensbi: modified OpenSBI source tree with TRustForge support
  • rust: Rust implementation of the TRustForge runtime
  • opensbi_trf.patch: standalone patch containing the OpenSBI-side changes

Preparation

The top-level build expects:

  • a RISC-V cross-compilation toolchain
  • Rust nightly, as specified in rust/rust-toolchain.toml
  • llvm-objdump, mkimage, and python3

Build

Build the full firmware image with:

make

If you are using a vendor toolchain installed outside the default PATH, point the build to the toolchain prefix directory:

make COMPILE_TOOL_PATH=/path/to/toolchain/bin/

Deployment Notes

Before flashing to a board, review the platform memory map and PMP layout:

  • rust/trf/src/config.rs: adjust OpenSBI, transition, normal-memory, MMIO, and secure-memory ranges
  • rust/trf/build.rs: regenerate PMP regions and firmware layout derived from those addresses

Then:

  1. Rebuild the firmware with make.
  2. Replace the vendor OpenSBI firmware with build/fw_dynamic.itb.
  3. Flash the image to the board.
  4. Update U-Boot and Linux configuration so their memory reservations remain consistent with the TRustForge layout.

About

No description, website, or topics provided.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors