tkhq/rust-sdk

GitHub: tkhq/rust-sdk

一个 Rust 语言的工具集,用于安全地与 Turnkey API 进行交互,解决 API 集成和加密通信的需求。

Stars: 32 | Forks: 23

# Turnkey Rust SDK   [![构建状态]][actions] 本仓库包含用于通过 Rust 与 Turnkey API 交互的工具集,并组织为一系列 Rust crate。 | Crate | 描述 | crates.io | 文档 | 变更日志 | 源码 | | ----- | ---- | --------- | ---- | -------- | ---- | | `turnkey_api_key_stamper` | 用于使用 Turnkey API 密钥的实用工具 | [![最新版本](https://img.shields.io/crates/v/turnkey_api_key_stamper.svg)](https://crates.io/crates/turnkey_api_key_stamper) | [![docs.rs](https://img.shields.io/docsrs/turnkey_api_key_stamper)](https://docs.rs/turnkey_api_key_stamper) | [变更日志](./api_key_stamper/CHANGELOG.md) | [`api_key_stamper`](./api_key_stamper/) | | `turnkey_client` | 用于与 Turnkey API 交互的 Rust 客户端 | [![最新版本](https://img.shields.io/crates/v/turnkey_client.svg)](https://crates.io/crates/turnkey_client) | [![docs.rs](https://img.shields.io/docsrs/turnkey_client)](https://docs.rs/turnkey_client) | [变更日志](./client/CHANGELOG.md) | [`client`](./client/) | | `turnkey_enclave_encrypt` | 用于从 Turnkey 安全飞地解密数据和向其加密数据的实用工具 | [![最新版本](https://img.shields.io/crates/v/turnkey_enclave_encrypt.svg)](https://crates.io/crates/turnkey_enclave_encrypt) | [![docs.rs](https://img.shields.io/docsrs/turnkey_enclave_encrypt)](https://docs.rs/turnkey_enclave_encrypt) | [变更日志](./enclave_encrypt/CHANGELOG.md) | [`enclave_encrypt`](./enclave_encrypt/) | | `turnkey_proofs` | 用于验证 Turnkey 安全飞地证明的实用工具 | [![最新版本](https://img.shields.io/crates/v/turnkey_proofs.svg)](https://crates.io/crates/turnkey_proofs) | [![docs.rs](https://img.shields.io/docsrs/turnkey_proofs)](https://docs.rs/turnkey_proofs) | [变更日志](./proofs/CHANGELOG.md) | [`proofs`](./proofs/) | | `tvc` | 用于 Turnkey Verifiable Cloud 的命令行界面 | [![最新版本](https://img.shields.io/crates/v/tvc.svg)](https://crates.io/crates/tvc) | [![docs.rs](https://img.shields.io/docsrs/tvc)](https://docs.rs/tvc) | [变更日志](./tvc/CHANGELOG.md) | [`tvc`](./tvc/) | ## 示例 有关完整可运行的代码示例,请参见我们的 [`示例文件夹`](./examples/README.md)。 ## 开发 本项目使用 `make` 来封装常见任务: * `make lint` 将运行 rust fmt 和 clippy * `make test` 运行单元测试 * `make examples` 运行[示例](./examples/)(需要一个本地的 `.env` 文件,请参见[说明](./examples/README.md)) * `make generate` 从 [`proto`](./proto/) 文件夹重新生成 `client::generated`。代码生成逻辑位于 [`codegen`](./codegen/) 中。 ## 发布 本项目使用 [`release-plz`](https://github.com/release-plz/release-plz)。请使用以下命令安装它: ``` cargo install --locked release-plz ``` 安装后,您可以在本地尝试一次发布,以查看发布 PR 将会是什么样子: ``` release-plz update ``` ### 发布流程 当 PR 合并到 main 分支时,如果尚不存在发布 PR,release-plz 会自动打开一个;如果已存在,则会更新它。 该 PR 由 release-plz 机器人打开并标记为 `release`。需要由**人工**仔细检查此 PR,并在必要时手动将任何修复推送到发布 PR(通常是:对 CHANGELOGs 进行美化修改)。 一旦 PR 被合并,release-plz `release` 工作流将被触发,并且 crate 会自动发布。 **请勿**在标准 PR 中手动升级 crate,让 release-plz 为您处理此事! ### 手动重新触发发布 如果在发布过程中出现问题并且您想重试,您可以打开一个标记为 `release` 且分支名为 `release-plz-****` 的 PR,以再次启动发布工作流(`release` 标签是触发工作流所必需的,而分支名前缀是 release-plz 用来确定该 PR 是否为发布 PR 的方式 -- 参见[此处](https://release-plz.dev/docs/config#the-release_always-field))。
标签:API客户端, API集成, CLI, Rust, Rust SDK, SOC Prime, Turnkey API, WiFi技术, 云服务, 加密技术, 可观测性, 可视化界面, 安全飞地, 开发工具, 数据加密, 网络流量审计, 证明验证, 通知系统