#rsa-key #private-key #key-pair #public-key #rsa #key-gen #seedphrase

bin+lib rsa_keygen

一个用于通过12个单词的种子短语生成rsa密钥的crate

2个稳定版本

1.0.9 2024年6月9日
1.0.7 2024年4月11日
0.1.1 2024年4月11日
0.1.0 2024年4月11日

#1757 in 密码学

36 每月下载量
rsakeygen 中使用

MIT 许可证

13KB
144

rsa_keygen

如何使用

密钥对是一个结构体,其中第一个元素是私钥,第二个元素是公钥

type Keypair = (RsaPrivateKey, RsaPublicKey);
pub use rsa_keygen::generate_seedphrase;
pub use rsa_keygen::keypair_from_seedphrase;
pub use rsa_keygen::keypair_from_private_key;
pub use rsa_keygen::generate_seedphrase_and_keypair;
pub use rsa_keygen::store_in_file;

//generate a 12 word seedphrase
let seedphrase = generate_seedphrase();

//generate an rsa keypair from the 12 word seedphrase
let (priv_key, pub_key) = keypair_from_seedphrase(&seedphrase).unwrap();

//generate an rsa keypair from an already known secret key
let (priv_key, pub_key) = keypair_from_private_key(&keypair.priv_key);

您可以使用 generate_seedphrase_and_keypair 函数轻松生成种子短语和密钥对

let (seedphrase, keypair) = generate_seedphrase_and_keypair().unwrap();

您可以使用 pkcsx_pem_from 函数将私钥或公钥导出为pem格式,以便使其更易于阅读。目前支持pkcs1和pkcs8

pub use rsa_keygen::pkcs8_pem_from_priv_key;
pub use rsa_keygen::pkcs8_pem_from_pub_key;

let priv_key_pem = pkcs8_pem_from_priv_key(&keypair.0).unwrap();
let pub_key_pem = pkcs8_pem_from_pub_key(&keypair.1).unwrap();

您可以使用 store_in_file 函数将密钥对和种子短语写入文件

store_in_file(keypair, &seedphrase, "id.txt");

如果您有任何请求或改进意见,请在github上创建一个问题或pr。

依赖关系

~6MB
~141K SLoC