#加密 #密码管理器 #命令行 #rust

app passers

安全的加密数据管理器

1 个不稳定版本

0.1.0 2023年6月11日

#1671 in 加密学

GPL-3.0-or-later

130KB
3K SLoC

pass-rs

pass-rs 是一个用于管理加密文本数据的程序。其主要用途是作为密码管理器,但它的功能允许其他用例。欢迎贡献,特别是安全测试方面。

Screenshot

显著功能包括

  • 剪贴板支持
  • 交互式 TUI 用于编辑
  • 灵活的数据格式(可导出,任意深度...)
  • 使用 Argon2id 生成密钥的 ChaCha20-Poly1305 加密
  • 崩溃保护和恢复

安装

git clone https://github.com/Swarthe/pass-rs
cd pass-rs
make && sudo make install

更新

git pull origin
make && sudo make install

卸载

sudo make uninstall

使用方法

Usage: pass [OPTION...] [TARGET...]
Securely manage hierarchical data.

  -c, --clip        copy target item to primary clipboard instead of displaying
  -l, --list        list the target's contents (root if not specified)
  -t, --tree        display a tree of the target (root if not specified)

  -e, --exact       find exact match of target (default: fuzzy match)
  -d, --duration    time in seconds to keep target in clipboard (default: 10)
  -f, --file        specify a pass file (default: standard data file)

  -M, --modify      launch editing interface (respects '-e' and '-d')
  -P, --change-pw   change the pass file's password

  -E, --export      output data in serial form
  -I, --import      create a pass file from serial data (read from stdin)
  -C, --create      create an empty pass file with the specified root name

  -h, --help        display this help text
  -v, --version     display version information

Note: By default, the target item is printed to standard output.
      Targets are passed as dot-separated record paths.
      Passing a group as a target item implies its child item 'password'.

Example: pass -d5 -c foo.bar

待办:程序文档

使用链接进一步说明加密和安全(Argon2id 和 XChaCha20Poly1305,最佳可用)。

标准手册页也包含环境信息等,并在帮助文本中提供建议。

使用 config.rs 配置

说明数据默认存储的位置

  • XDG 数据目录
  • 在 [XDG 数据]/backup 中备份

该程序(以及它与其他类似程序的主要区别)的重点是尽可能高的安全性、严格的安全性和可用性,以及性能作为重要的次要目标。与 zx2c4 的 pass [超链接] 不同,这个程序拒绝 Unix 哲学,因为为了扩展功能,它要求我们信任其他程序。在高度敏感数据的情况下,我们认为这是一种不可接受的安全漏洞,因此尽可能将额外功能构建到程序中。pass-rs 还包括崩溃/数据损坏保护,以及各种安全措施来保护数据。

说明模糊匹配的特定之处,以帮助用户(文档)、smartcase 等。

待办:功能

Rofi 集成(可选且单独,见其他类似实现)/

密码生成可能使用真实单词等,以便记住(可定制)。

可能包含更多元数据,如创建日期。

待办:分发

作为静态链接(便携)二进制文件分发,以及作为带有 AUR 的源代码。

可能跨平台(至少 Unix/POSIX)。

可能添加到自由软件目录(我们是 gplv3)

待办:依赖项

  • rustccargo
  • 互联网连接(用于初始安装和更新)
  • Unix 系统(目前仅在 Arch Linux 上测试过)

许可证

版权所有(C)2023 Emil Overbeck <emil.a.overbeck at gmail dot com>

此文件是 pass-rs 的一部分。

本软件是免费软件:您可以在自由软件基金会发布的GNU通用公共许可证的条款下重新分发和/或修改它,许可证版本为3,或者(根据您的选择)任何更高版本。

pass-rs 的分发是希望它将是有用的,但没有任何保证;甚至没有关于其商销性或适用于特定目的的暗示性保证。有关详细信息,请参阅GNU通用公共许可证。

您应该已收到与 pass-rs 一起的GNU通用公共许可证副本。如果没有,请参阅https://www.gnu.org/licenses/

依赖项

~4–16MB
~222K SLoC