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 FILEprompt:(PromptKeeper)- 用户将在终端提示输入密码以生成密钥
hashivault:(HashivaultKeeper)- 密钥加密密钥在hashivault传输服务器上。请参阅hashivault keeper文档中的url语法
# example: encrypt enc -o FILE.enc -k hashivault://my_key FILEcloudkms:(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