Other

项目介绍

Penglai-Enclave/Penglai-Enclave-sPMP 是一个托管在 GitHub 上的开源项目,主要使用 C 编写,采用 Other 许可证,目前获得 148 个 Star、33 次 Fork。

仓库全名
Penglai-Enclave/Penglai-Enclave-sPMP
开源许可证
Other
Star 数
148
Fork 数
33
未关闭 Issue
2

README 摘要

This repo maintains sPMP version of Penglai Enclave. Info OpenSBI-based Penglai is maintained in Nuclei SDK now. Quick Start Penglai uses Docker for building and uses submodules to track different componets. Therefore, the only requirement to build and run penglai-demo is: Docker: for building/running Penglai Git: for downloading the code The version for FPGA and RISC-V board is comming soon. Building First,…

完整内容见 GitHub 原始 README 或本页 。

常见问题

Penglai-Enclave-sPMP 用什么语言开发?

主要使用 C 编写,采用 Other 许可证,目前有 148 个 Star。

Penglai-Enclave-sPMP 可以免费商用吗?

仓库标注的许可证为 Other,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 Penglai-Enclave-sPMP 的源码?

可以直接克隆仓库:git clone https://github.com/Penglai-Enclave/Penglai-Enclave-sPMP.git;安装与运行步骤见仓库 README。

Penglai-Enclave-sPMP 最近还在维护吗?

仓库最近一次更新为 2025年3月5日,当前有 2 个未关闭 Issue;Star 数为 148,可作为社区活跃度的参考。

关于

Penglai Enclave is an open-sourced, secure and scalable TEE system for RISC-V.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
362
价值分
113
活跃状态
活跃

语言占比

Assembly
Awk
C
C++
Clojure
GDB
Gherkin
Lex
M4
Makefile
Perl
Python
Roff
Shell
SmPL
UnrealScript
XS
Yacc
sed

Release

README

License: Mulan

Penglai Header

This repo maintains sPMP version of Penglai Enclave.

Info

  • OpenSBI-based Penglai is maintained in Nuclei SDK now.

Quick Start

Penglai uses Docker for building and uses submodules to track different componets.

Therefore, the only requirement to build and run penglai-demo is:

  • Docker: for building/running Penglai
  • Git: for downloading the code

The version for FPGA and RISC-V board is comming soon.

Building

First, download the all the code:

git clone https://github.com/Penglai-Enclave/Penglai-Enclave-sPMP.git

Enter the penglai-enclave directory, cd Penglai-Enclave

And then,

git submodule update --init --recursive

Last, build penglai using our Docker image:

./docker_cmd.sh build

When the building process finished, you are ready to run the penglai demo.

Running

In the penglai-enclave directory,

./docker_cmd.sh qemu

If everything is fine, you will enter a Linux terminal booted by Qemu with Penglai-installed.

Enter the terminal with the user name: root, and passwords: penglai.

Insmod the enclave-driver

insmod penglai.ko

And the, you can run a demo, e.g., a prime enclave, using

./host prime

Here, the host is an enclave invoker, which will start an enclave (name from input).

License Details

Mulan Permissive Software License,Version 1 (Mulan PSL v1)

Code Structures

  • buildroot: The buildroot rootfs for Penglai (from Sifive’s Freedom U-sdk)
  • linux: The Untrusted OS kernel (kernel 4.15) for Penglai (from Sifive’s Freedom U-sdk)
  • monitor: The secure monitor of Penglai, implementing isolation using PMP/sPMP, based on BBL
  • riscv-qemu: The modified qemu (4.1) to support sPMP
  • scripts: some scripts to build/run Penglai demo
  • conf: some configuration files to build Penglai
  • copy-files: a temp dir to store files copied into Penglai

Code Contributions

If you are developing Penglai, please use pull requests on target submodule project (not on the super project).

Please fell free to post your concerns, ideas, code or anything others to issues.

Wiki

Please refer the wiki for more details

Acknowledgements

The design of Penglai was inspired by Sanctum, Keystone and HexFive, thanks to their great work.

评论

暂无评论