Cloudflare 的 Key Transparency Auditor 验证 Log 审计证明并为其提供签名。Log 随后可将这些签名分发给其终端用户,并为用户提供密钥未经篡改的信心。
为了验证我们的工作,你可以使用 Plexi ↗ — 一款允许任何人在本地通过公共 API 执行证明验证的 CLI 工具。
- 验证签名的真实性,确认其已由给定的公钥签名
- 验证 facebook/akd ↗ 证明的有效性
- 列出 Auditor 监控的 Log
| 环境 | CLI 命令 |
|---|---|
| Cargo ↗ (Rust 1.81+) | cargo install plexi |
使用 --help 选项以获取有关命令及其选项的更多细节。
plexi [OPTIONS] <COMMAND>plexi 未预装默认的远程审计员,你需要选择自己的远程审计员。
你可以通过传递 --remote-url=<REMOTE> 或设置 PLEXI_REMOTE_URL 环境变量来实现。
常用的 Remote 提供如下:
| 名称 | Remote |
|---|---|
| Cloudflare | https://plexi.key-transparency.cloudflare.com |
如果你部署了自己的审计员,可以通过提交 GitHub issue ↗ 添加远程节点。
一个审计员可以同时监控多个 Log。要探索审计员正在监控哪些 Log,请运行以下命令:
plexi ls --remote-url 'https://plexi.key-transparency.cloudflare.com'
whatsapp.key-transparency.v1Key Transparency Auditor 通过确保 Epoch 唯一性并验证关联的证明来为 Log 的有效性作担保。
plexi audit 提供有关给定的 Epoch 及其有效性的信息。它可以执行本地审计以确认审计员的行为。
例如,要验证由 Cloudflare Auditor 审计的 WhatsApp Log,请运行以下命令:
> plexi audit --remote-url 'https://plexi.key-transparency.cloudflare.com' --namespace 'whatsapp.key-transparency.v1' --long
Namespace
Name : whatsapp.key-transparency.v1
Ciphersuite : ed25519(protobuf)
Signature (2024-09-23T16:53:45Z)
Epoch height : 489193
Epoch digest : cbe5097ae832a3ae51ad866104ffd4aa1f7479e873fd18df9cb96a02fc91ebfe
Signature : fe94973e19da826487b637c019d3ce52f0c08093ada00b4fe6563e2f8117b4345121342bc33aae249be47979dfe704478e2c18aed86e674df9f934b718949c08
Signature verification: success
Proof verification : success