1 个不稳定版本
0.1.0 | 2021 年 4 月 4 日 |
---|
#26 在 #generate-keys
18KB
317 行
cfs_openpgp
大多数情况下,这个软件包只是让我熟悉 Rust 的一个借口。
想象一下,你有一个安全的、现实世界的熵源,你将其用作根密钥(例如,https://dicekeys.com/)。你可能会合理地希望使用相同的根(结合盐)来生成可重复的加密密钥。这样,如果您的加密密钥遭到破坏,您可以使用安全的物理密钥和新的盐来生成新的密钥。但是,如果您的密钥丢失,您只需使用物理密钥和以前的盐来重新生成它们。
此应用程序是对 sequoia_openpgp
的一个非常薄的包装,它接受一个输入密码并生成一个有效的 pgp 证书,该证书具有主 EdDSA Edwards 曲线数字签名算法密钥和 4 个从属密钥
- 身份验证(EdDSA Edwards 曲线数字签名算法)
- 加密(ECDH 公钥算法)
- 加密(RSA 4096)
- 签名(EdDSA Edwards 曲线数字签名算法)
用途
在本地克隆代码库并按以下方式运行
cargo run -- --username "Alice" --email "[email protected]" --key-sig-time 0 --weeks-subkeys-exp-in 52 --secret "a super-secure secret phrase that's been generated from real entropy"
这将输出您的 ASCII-武装 PGP 证书、撤销签名以及每个密钥的 ID 和 ASCII-武装表示形式。
注意:请确保使用此库的完全相同的版本(以及因此相同的 NETTLE 和 SEQUOIA-OPENPGP 库),否则您可能无法生成相同的密钥。
致谢
非常感谢 Neal Walfield 在 freenode #sequoia 上的所有帮助。
依赖关系
~15–26MB
~318K SLoC