6 个版本
0.7.0 | 2021 年 12 月 17 日 |
---|---|
0.6.4 | 2021 年 12 月 14 日 |
0.6.2 | 2021 年 11 月 30 日 |
0.6.0 | 2021 年 10 月 29 日 |
#5 in #phrase
130KB
2K SLoC
harpo
harpo
是一个工具和库,提供了以下功能
harpo 包的名称来自 Harpocrates,这位古代沉默、秘密和机密的神。
虽然 harpo
经过了合理的测试,但使用它 请自行承担风险。
编译
请确保已安装 Rust。
在克隆仓库并切换到 harpo
目录后,运行以下命令
cargo build --release
二进制文件可以在 target/release
下找到(或者在没有 --release
标志的情况下运行命令时,在 target/debug
下)。
用法
生成种子短语
可以通过运行以下命令生成种子短语
harpo generate --length [L]
长度 [L]
必须是 12、15、18、21 或 24。生成的种子短语将被写入标准输出。
验证种子短语
可以通过运行以下命令验证种子短语,即检查其是否符合 BIP-0039 规范
harpo validate (--file [F]))
输入以两种方式之一提供
- 默认情况下,种子短语通过命令行输入。
- 当使用
--file
(-f
) 选项时,从路径[F]
的文件中读取以空格分隔的种子短语。
例如,文件内容或交互式输入可能是
cat swing flag economy stadium alone churn speed unique patch report train
创建秘密共享种子短语
为了创建秘密共享种子短语,请运行以下命令
harpo create --num-shares [N] --threshold [T] (--file [F])
输入再次以两种方式之一提供,通过命令行或使用 --file
(-f
) 选项,在这种情况下,从路径 [F]
的文件中读取以空格分隔的种子短语。
注意,输入的种子短语必须通过验证,否则执行将因错误信息而终止。
除了指定输入源之外,还需要两个其他参数
--num-shares
(-n
)[N]
:必须提供所需的秘密共享种子短语的数量[N]
。请注意,除非使用选项--no-embedding
,否则份额的数量最多为16(请参阅附加参数)。--threshold
(-t
)[T]
:必须提供所需的阈值[T]
,即重构原始种子短语所需的最小秘密共享种子短语数量。阈值不得超过份额数量。
创建的种子短语将写入标准输出。
秘密共享种子短语的重构
为了重构原始种子短语,请运行以下命令
harpo reconstruct (--file [F] | --interactive)
再次,输入可以通过两种方式之一提供
- 默认情况下,种子短语在命令行中依次输入。
- 当使用
--file
(-f
)选项时,空格分隔的种子短语将从路径[F]
的文件中读取,每行一个种子短语。
重构的种子短语将写入标准输出。如果提供了至少[T]
个秘密共享种子短语,输出将匹配原始种子短语。否则,输出无法与随机种子短语区分。
附加参数
可以在输入子命令之前指定以下附加参数
--verbose
(-v
):添加此标志以激活详细输出。--word-list
(-w
)[W]
:可以提供不同的单词列表(除标准英语单词列表之外)。它必须是一个包含2048个不同单词的列表,每个单词一行。
create
子命令有一个可选参数
--no-embedding
(-N
):默认情况下,秘密共享种子短语不遵循BIP-0039标准,因为它们编码了用于重构所需的索引。为了获得BIP-0039兼容的种子短语,可以使用此标志关闭嵌入。在这种情况下,当使用reconstruct
命令时,必须显式提供索引。格式为[INDEX]: [SEED PHRASE]
。
可以使用每个子命令的--help
(-h
)标志打印所有可用参数。
依赖关系
~2.5MB
~38K SLoC