2个版本
0.4.6 | 2024年8月11日 |
---|---|
0.4.5 | 2024年8月8日 |
231 在 密码学
每月241 次下载
47KB
1K SLoC
jrn
关于
jrn
是一个安全的命令行日志应用程序,用于存储尴尬的秘密、邪恶的计划和恶毒的计划。
安全
jrn
将所有运行所需的数据存储在 jrn.json
文件中。 jrn
使用 bcrpyt
进行密码哈希,使用 pbkdf2
进行密钥派生,并使用 AES-256
对每个条目进行加密
用法
交互式使用
要获得完整的交互式命令行体验,只需输入
$ jrn
然后你将进入一个交互式提示符。如果你的存储文件以前没有由 jrn
编写,它将提示你输入新密码。否则,它将要求你输入密码。一旦认证完成,jrn
将开始解密数据,因此会有一短暂的延迟。这个延迟主要是由于密钥生成步骤需要100,000次迭代。
然后,jrn
将提示你执行操作。任何编辑操作(编辑或编辑今天)都将调用你的 $EDITOR
。任何操作之后,默认情况下,jrn
都会再次提示你,使UI无限循环(直到你选择 退出
)。如果你不希望这种行为,你可以设置 --dont-loop
或 -D
标志。这将强制UI永不循环。
非交互式(可脚本化)使用
要获取完整的命令行选项,请输入 jrn --help
。为了启动,如果使用子命令,程序开始的菜单选择可以自动化或跳过。除了当然的退出之外,每个单独的操作都有一个子命令等效。当使用子命令指定UI启动时,默认行为是不循环UI。如果您希望UI始终循环,可以指定 --do-loop
或 -L
标志。然而,指定子命令仍然涉及交互性。这可以通过完全展开子命令(指定所有选项)来避免。即使如此,仍会显示密码提示。如果必须避免这种情况,可以将密码作为明文作为文件(--password-file
或 -P
)或字符串(--password
或 -p
)传递。
配置
命令行选项
--config-file
|-c
:= 使用toml文件作为配置。默认是$JRN_CONFIG_FILE
或$XDG_CONFIG_DIR/jrn/config.toml
或~/.config/jrn/config.toml
--password
|-p
:= 使用给定的密码而不是交互式身份验证--password-file
|-P
:= 从给定的密码文件读取而不是交互式身份验证--dont-loop
|-D
:= 强制UI不循环,即使在未指定子命令的情况下--do-loop
|-L
:= 强制UI循环,即使在指定了子命令的情况下--file-type
|-F
:= 使用不同的文件类型来编辑日志条目(例如".org"
)[!NOTE] 此选项仅用于编辑器目的。它不会更改数据存储方式
--file-path
|-f
:= 使用不同的文件进行读取和写入(默认为 "./jrn.json",可能不希望这样)
Toml配置文件
[!NOTE] 当配置文件与命令行参数冲突时,命令行参数优先
在toml配置文件中,可以指定上述所有选项,除了 --config-file
。
字符串选项的格式为
hello_world="string"
布尔选项的格式为
boolean_option=true
[!NOTE] 将布尔选项设置为false与未设置相同
如何获取默认的toml文件
运行
$ jrn --dump-default-config > $JRN_CONFIG_FILE
依赖关系
~10–21MB
~315K SLoC