4 个版本 (破坏性更新)
0.7.0 | 2020年2月12日 |
---|---|
0.6.0 | 2019年8月21日 |
0.4.1 | 2019年3月18日 |
0.3.0 | 2018年2月13日 |
#1226 in 密码学
50KB
1K SLoC
Postio
概述
Postio 是一个加密文件发送和接收器。使用 Rust 编写,Postio 将使用 AES-256 或 ChaCha(postio 使用 XChaCha20Poly1305,具有 24 字节的非确定数)在 CBC 模式下加密文件,并使用来自 Dalek 的 Curve 25519 公钥/私钥(Dalek)和发送此文件到 AWS S3。您的公钥被发送到 AWS S3 存储(不同的 S3 实例),以便发送者获取您的公钥以正确加密文件。
该项目不再依赖于 openssl 绑定来进行其加密操作。相反,它使用 RustCrypto 库(aes、chacha20 和 SHA-3)。
如何安装
如果您想从源代码编译,则绝对需要 rust,同时还需要 git。
安装 postio
cargoinstall postio
或
cargo安装 --githttps://github.com/deg4uss3r/postio
接下来,您需要在您的环境中添加您的 AWS 密钥 ID 和秘密访问密钥(即使这不是一个好的做法,也要小心处理这些密钥,矿工会在几秒钟内花费您数千美元!)您可以通过将此添加到您的 .bashrc 或 .bash_profile 并运行 source ~/.bashrc 或 source ~/.bash_profile 来实现这一点,或者将这些添加到您当前打开的终端(限制对这些文件的访问,并确保您不会意外地将它们检查到 git 仓库中!)
export AWS_ACCESS_KEY_ID="your_key_id_here"
export AWS_SECRET_ACCESS_KEY="your_secret_access_here"
完成这些并拥有一个可工作的二进制文件后,您就可以开始了!
选项
Postio 0.7.0
Ricky (Degausser) <Ricky@Hosfelt.io>
Send and receive encrypted files
USAGE:
Postio [FLAGS] [OPTIONS]
FLAGS:
-x, --setup Create config file and populate settings
-l, --list List files in your queue
-d, --no-delete Do not delete files after getting them
-a, --all Get all files at once
-Q, --clear Deletes all files in your queue
OPTIONS:
-g <number in queue> Gets file from queue
-s </file/to/send> Send file to user
-c, --config </path/to/config> Sets a custom config file (defaults to $HOME/.postio/config)
--encrypt <AES or ChaCha> Set the encryption algorithm [default: AES]
-o </path/to/output/directory> Change output directory to something other than the current directory
-u <User@email.com> User to receive file
配置文件结构
使用 serde postio 将解析 toml 格式的配置文件。
配置文件应如下所示
email = "[email protected]"
private_key = "/Users/rthosfelt/.postio/private_key.pem"
public_key = "/Users/rthosfelt/.postio/public_key.pem"
file_store = "postio"
file_store_region = "eu-west-2"
public_key_store = "postio-keys"
public_key_store_region = "eu-central-1"
在第一次运行程序时,程序将为您设置配置文件(或者您也可以运行 postio -x
以设置另一个配置文件),包括生成 25519 私有/公钥。
联系方式
欢迎提交任何代码问题或给我起名。
邮箱: ricky@
hosfelt.
io
IRC: degausser (freenode)
软件将继续免费,但请买我一杯啤酒/咖啡 BTC: 1HJL1PMXi7rgALSo5cPLnRxhdPLBQDjQhd
许可和警告
我对您的文件被盗/删除/被黑/破解等不承担责任。另外,请确保您正确设置了您的 AWS 实例,否则有人可能会在您的实例上产生费用!要聪明,要安全!
在 MIT 许可证下受保护(C) Hosfelt.io
依赖项
~29MB
~594K SLoC