7个版本
0.3.7 | 2020年7月24日 |
---|---|
0.3.6 | 2020年7月18日 |
0.3.0 | 2020年6月30日 |
#6 in #xchacha20
150KB
2.5K SLoC
使用secret-keeper的命令行信封加密
使用Secret Keeper进行加密和解密
安装
cargo安装 encrypt-rs
运行
# Encrypt file
$ encrypt enc -o OUT [ -k KEEPER ] [ -c CIPHER ] FILE
# Decrypt file
$ encrypt dec -o OUT [ -k KEEPER ] [ -c CIPHER ] FILE
# View key envelope
$ encrypt key view [ -k KEEPER ] FILE
-k KEEPER 选项:(默认:'env:')
env:
(EnvKeeper)env:VARNAME
- 生成密钥的密码在环境变量VAULT_PASSWORD中env:
- 生成密钥的密码在环境变量VARNAME中
# example: export PASSWORD="my-super-secret-passphrase" encrypt enc -o FILE.enc -k env:PASSWORD FILE
prompt:
(PromptKeeper)- 用户将在终端提示输入密码以生成密钥
hashivault:
(HashivaultKeeper)- 密钥加密密钥在hashivault传输服务器上。请参阅hashivault keeper文档中的url语法
# example: encrypt enc -o FILE.enc -k hashivault://my_key FILE
cloudkms:
(CloudKMSKeeper)# example: encrypt enc -o FILE.enc -k cloudkms:/PROJ/global/my_keyring/my_key FILE
-c CIPHER 选项:默认加密算法是LZ4XChaCha20Poly1305,它结合了LZ4压缩和XChaCha20-Poly1305。 (由RustCrypto实现的加密算法)
XChaCha20Poly1305
(别名:xchacha20
,xchacha20poly1305
)LZ4XChaCha20Poly1305
(别名:lz4
,lz4xchacha20
,lz4xchacha20poly1305
)AesGcm256
(别名:aes
,aesgcm
,aesgcm256
)
在test* shell脚本中有一些额外的使用示例。
随机数生成
使用平台OS CSRNG生成文件非和密钥,使用rand crate。
依赖关系
~9–21MB
~377K SLoC