#byte #random #passphrase #generate #password #port #convert

已删除 rust-niceware

生成或转换随机字节为密码短语。niceware的Rust移植版。

0.3.0 2021年10月10日
0.2.0 2021年10月10日
0.1.0 2021年10月6日

#33 in #passphrase

MIT 协议

1MB
66K SLoC

rust-niceware

Rust crates.io v0.3.0

我的博客文章: 将Niceware移植到Rust


A Rust port of niceware. Sections of this README have been copied from the original project.

此库生成随机且易记的密码。每个单词提供16位熵,因此一个有用的密码至少需要3个单词。

从字节到密码短语的转换是可逆的。

由于单词表大小正好是2^16,因此rust-niceware也适用于将加密密钥和其他随机字节序列转换为可读的短语。使用rust-niceware,128位密钥相当于8个单词短语。

类似于源代码,请注意以下警告

警告:单词表尚未经过严格检查以排除冒犯性词汇。请自行承担风险。

示例用法

  • rust-niceware可以用来生成安全、半易记、易于输入的密码短语。在rust-niceware中的随机3-5个单词短语相当于大多数在线服务认证的强密码。例如,+8svofk0Y1o=bacca cavort west volley 具有相同的强度(64位随机性)。

  • rust-niceware可以用来以用户容易备份或在不同设备之间复制的方式显示加密密钥材料。例如,用于生成256位ECC密钥(相当于3072位RSA密钥)的128位随机种子仅为8个rust-niceware单词。使用这个8个单词的短语,您可以重建整个公私钥对。

测试

cargo test

致谢

Rust移植

@Kixunil#2中对有关惯用和高效的Rust进行了一些出色的更改。

代码、测试和文档要么是直接移植/复制,要么是从niceware中获得的灵感。

原始

尼卡韦(Niceware)受到迪卡韦(Diceware)的启发。其词汇表来源于SIL英语词汇表。本项目基于[diracdeltas]在雅虎端到端(End-to-End)项目上的OpenPGP密钥备份工作。

依赖项