#证明 #enclaves #aws #bindings-generator #evervault #nitro-enclaves

attestation-doc-validation

一个用于根据 Evervault 证明方案证明 Enclaves 的 Rust 库。此 crate 用于生成 ffi 绑定。

15 个不稳定版本 (5 个破坏性更新)

新增 0.9.0 2024 年 8 月 16 日
0.8.0 2024 年 4 月 29 日
0.7.4 2024 年 2 月 8 日
0.7.3 2023 年 10 月 13 日
0.5.0-beta2023 年 2 月 7 日

262FFI

Download history 845/week @ 2024-04-27 358/week @ 2024-05-04 406/week @ 2024-05-11 532/week @ 2024-05-18 147/week @ 2024-05-25 395/week @ 2024-06-01 845/week @ 2024-06-08 400/week @ 2024-06-15 399/week @ 2024-06-22 597/week @ 2024-06-29 455/week @ 2024-07-06 486/week @ 2024-07-13 790/week @ 2024-07-20 901/week @ 2024-07-27 417/week @ 2024-08-03 1003/week @ 2024-08-10

每月 3,201 次下载

Apache-2.0

59KB
1K SLoC

证明文档验证

此库公开了 Evervault 客户端所需的用于根据定义的 证明协议 对 Enclave 进行证明所需的高级函数。

此库已被设计为允许在 Rust crate 上生成针对多种语言的绑定,并且还应公开足够的逻辑以适应替代 Nitro Enclaves 证明协议。

项目使用 cargo make 提供高级工作流程,这些工作流程可以在 Makefile.toml 中找到。

结构

项目分为 2 个核心模块

  • attestation_doc.rs 覆盖了与 Nitro Enclaves 证明文档相关的所有验证和解析。
  • cert.rs 覆盖了 X509 证书的所有验证和解析。这是为了允许客户端将其 Enclaves 连接中的原始 pem 或 der 编码的证书传递给证明。

lib.rs 中公开了两个高级辅助函数

  • attestation_doc_validation::parse_cert — 这是一个将字节数据解析为 X509 实例的辅助函数,相当通用。
  • attestation_doc_validation::validate_attestation_doc_in_cert — 驱动整个 Evervault 证明协议。

底层 API 通过子模块公开。您可以在我们的文档中了解更多关于公开的 API 的信息。

依赖关系

~15–24MB
~443K SLoC