Apache Teaclave TrustZone SDK (incubating) v0.1.0
This is the first Apache Incubator release of Teaclave TrustZone SDK. Teaclave TrustZone SDK provides abilities to build safe TrustZone applications in Rust. The SDK is based on the OP-TEE project which follows GlobalPlatform TEE specifications and provides ergonomic APIs. In addition, it enables capability to write TrustZone applications with Rust's standard library and many third-party libraries (i.e., crates). Teaclave TrustZone SDK is a sub-project of Apache Teaclave (incubating).
This version implements the following Rust APIs in GlobalPlatform TEE specifications:
TEE Client API (optee-teec
)
- Context
- Error
- Operation
- Parameter
- Session
- UUID
TEE Internal Core API (optee-utee
)
- Arithmetical
- Crypto Operation
- Error
- Object
- Parameter
- Time
- Trace
We also provides procedure macros to automatically generate bindings interfaces of TA:
#[ta_create]
,#[ta_destroy]
,#[ta_open_session]
,#[ta_close_session]
,#[ta_invoke_command]
This version includes rewrites of all examples from OP-TEE repository. In addition, we include more examples using serde
for serialization and deserialization.
This version is compatible with OP-TEE 3.13.0.