4个版本 (2个破坏性更新)
0.3.5 | 2022年3月1日 |
---|---|
0.2.1 | 2022年2月4日 |
0.2.0 | 2022年2月3日 |
0.1.0 | 2022年2月2日 |
#50 in #parallel-processing
22KB
428 行
Precrypt: 基于代理的重加密的Rust CLI。
这是一个umbral-pre代理重加密库的命令行包装器。它添加了并行加密和解密功能,使得处理大文件成为可能。
用法
1) 加密你的文件
生成一个密钥对,该密钥对将用于加密文件。 请保密此密钥,任何获得此密钥的人都可以解密你的文件。
precrypt keygen key.json
使用你的密钥对加密目标文件,并生成一个重加密密钥。
precrypt encrypt secret.txt key.json recrypt.json out.txt
encrypt
默认使用10个线程,您可以使用-t
参数进行调整。
注意:在加密文件时,我们不需要收件人的公钥。这是代理重加密的魔力,您可以使用重加密密钥在任意时刻将文件重加密到新的公钥!这节省了计算资源,因为您只需加密文件一次。
2) 将文件重加密到公钥
要给某人提供访问文件的权限,您需要他们的公钥(他们可以使用keygen
命令生成一个)。
precrypt recrypt recrypt.json <pubkey> decrypt.json
这将创建一个解密密钥,他们可以将它与他们的私钥结合以解密文件。
3) 解密文件
收件人现在可以使用他们的私钥和解密密钥来解密文件。
precrypt decrypt out.txt decrypt.json recipient_key.json decrypted_secret.txt
依赖项
~9–19MB
~255K SLoC