16个版本 (7个重大更新)
0.11.0 | 2024年3月22日 |
---|---|
0.10.1 | 2023年12月11日 |
0.9.0 | 2023年10月19日 |
0.7.2 | 2023年7月20日 |
0.5.0 | 2023年3月8日 |
#738 在 硬件支持
每月下载量64次
在 2 个crate中使用(通过 mc-sgx-sync)
33KB
314 行
MobileCoin: Rust 对 SGX 同步原语的包装
Rust 对 SGX 同步原语的包装。
通过此crate公开的这些原语是更高级构造的低级构建块。大多数人会想使用 mc-sgx-sync 来获取与 std::sync 兼容的结构。
Mutex
、RwLock
和 Condvar
的底层实现使用OCALL
sgx_thread_wait_untrusted_event_ocall()
sgx_thread_set_multiple_untrusted_events_ocall()
sgx_thread_set_untrusted_event_ocall()
sgx_thread_setwait_untrusted_events_ocall()
这些OCALL提供了等待线程和返回值以填充。OCALL可以挂起并或意外唤醒受信任的线程。应用程序(不受信任)固有地控制着是否执行沙盒线程。OCALL进一步增加了应用程序控制沙盒线程执行的区域。使用这些同步原语,应用程序现在能够在同步点一致地停止沙盒线程。
依赖项
~1.2–3.5MB
~76K SLoC