#文件加密 #加密解密 #加密 #文件 #安全 #加密密钥 #命令行

bin+lib file_endec

通过命令行进行安全的文件加密和解密

2 个稳定版本

1.0.1 2020年11月22日
1.0.0 2020年4月19日

1407 / 加密学

BSD-3-Clause

145KB
4K SLoC

Tests

Dependencies

文件加密/解密

命令行工具,用于加密和解密文件。

功能

  • 使用成熟算法进行加密和解密。
  • 压缩。
  • 密钥拉伸。
  • 盐。
  • 校验和。
  • 向后兼容。
  • 通过提示、参数、环境、文件或管道传递密码。
  • 对弱密码发出警告。
  • 删除文件碎片。

在 Docker 中

使用 Docker 运行加密器:

docker run --rm -it -v "$(pwd):/data" mverleg/file-endec /fileenc file.txt

您可以将任何要加密文件的目录挂载到 Docker 中;上述示例使用当前目录 $(pwd)。使用 /filedec 代替 /fileenc 进行解密。

要自行构建镜像(而不是从 Dockerhub 下载),请克隆 GitHub 项目并运行:

docker build -t mverleg/file-endec .

这将运行测试和 lint,以验证您的版本是否正确。

选项

使用 fileenc --helpfiledec --help 查看命令行参数。对于 fileenc

USAGE:
    fileenc [FLAGS] [OPTIONS] <FILES>...

FLAGS:
        --accept-weak-key    Suppress warning if the encryption key is not strong.
    -v, --debug              Show debug information, especially on errors.
    -d, --delete-input       Delete unencrypted input files after successful encryption (overwrites garbage before
                             delete).
        --dry-run            Test encryption, but do not save encrypted files (nor delete input, if --delete-input).
    -h, --help               Prints help information
    -f, --overwrite          Overwrite output files if they exist.
    -q, --quiet              Do not show progress or other non-critical output.
    -V, --version            Prints version information

OPTIONS:
    -k, --key <key-source>
            Where to get the key; one of 'pass:$password', 'env:$var_name', 'file:$path', 'ask', 'askonce', 'pipe'
            [default: ask]
    -o, --output-dir <output-dir>
            Alternative output directory. If not given, output is saved alongside input.

        --output-extension <output-extension>    Extension added to encrypted files. [default: .enc]

ARGS:
    <FILES>...    One or more paths to input files (absolute or relative)

请注意

虽然这主要依赖于成熟的哈希和加密算法,但没有安全保证,作者也不是专业的安全专家。自行承担风险。

  • 对同一文件进行两次加密将产生不同的结果,这是语义安全所需的。这可能会对版本控制产生不利影响。
  • 在哈希多个文件时,它们共享相同的盐。之所以这样做,是因为拉伸需要很长时间,而且如果找到了某个密钥,它将适用于所有文件,而不考虑盐。

依赖关系

~25–37MB
~778K SLoC