我在没有 GUI 的 FreeBSD 11.2 上。我是 BSD 系统的新手。
假设我们SHA512SUM
在 FreeBSD 上生成了一个文件:
sha512 encrypt-file-aes256 decrypt-file-aes256 > SHA512SUM
Run Code Online (Sandbox Code Playgroud)
它看起来与 Linux 格式不同,Linux 格式可以使用--tag
switch生成:
SHA512 (encrypt-file-aes256) = 9170caaa45303d2e5f04c21732500980f3b06fc361018f953127506b56d3f2f46c95efdc291e160dd80e39b5304f327d83fe72c625ab5f31660db9c99dbfd017
SHA512 (decrypt-file-aes256) = 893693eec618542b0b95051952f9258824fe7004c360f8e6056a51638592510a704e27b707b9176febca655b7df581c9a6e2220b6511e8426c1501f6b2dd48a9
Run Code Online (Sandbox Code Playgroud)
我如何检查这个文件?手册页中没有--check
选项。
到目前为止,我只能通过硬编码哈希和来手动测试单个文件:
sha512 -c "9170caaa45303d2e5f04c21732500980f3b06fc361018f953127506b56d3f2f46c95efdc291e160dd80e39b5304f327d83fe72c625ab5f31660db9c99dbfd017" encrypt-file-aes256 && echo $?
Run Code Online (Sandbox Code Playgroud)
在脚本方面,我还没有看到SHA512SUM
自动检查整个文件的方法。
请注意,在我的情况下,它可能包含比这两个文件更多的文件。
fil*_*den 13
您可以使用shasum
(手册页)工具,该工具具有-c
检查校验和文件的选项,并且是包括SHA-512在内的多种校验和算法的前端。
您可以使用如下命令来检查这两个文件:
$ shasum -a 512 -c SHA512SUM.sha512sum
Run Code Online (Sandbox Code Playgroud)
该shasum
工具只能解析与由sha512sum
(该工具通常在 Linux 发行版中提供)兼容的输出格式。
您可以使用简单的sed
命令从 BSD 风格的校验和文件转换为 Linux 风格的文件:
$ sed -ne 's/^SHA512 (\(.*\)) = \(.*\)/\2 \1/p' SHA512SUM >SHA512SUM.sha512sum
Run Code Online (Sandbox Code Playgroud)
(虽然如果您自己生成校验和,那么也使用shasum
来生成它们是一个不错的选择,也与 Linux 上的工具兼容。)
该shasum
工具由 FreeBSD 端口提供p5-Digest-SHA
,可以pkg
通过运行来安装:
$ sudo pkg install p5-Digest-SHA
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2516 次 |
最近记录: |