4个版本 (2个破坏性更新)
0.4.0 | 2022年7月2日 |
---|---|
0.3.0 | 2021年6月28日 |
0.2.1 | 2021年6月5日 |
0.2.0 | 2021年6月4日 |
#1584 in 密码学
26KB
430 代码行
Digestify
digest·i·fy -| _ˈdī-ˌjest-ə-ˌfī
名词 - 一个命令行工具,用于使验证下载文件的摘要/校验和/哈希变得简单。只需指定文件和下载主机上列出的哈希值。它将从长度推断可能的摘要算法。它的进程退出码将指示摘要是否匹配。
动词 - 由“摘要”和“验证”组合而成。计算文件的摘要并验证摘要是否与提供的值匹配。
支持的摘要
算法 |
位 长度 |
十六进制 长度 |
---|---|---|
SHA-512 | 512 | 128 |
SHA-256 | 256 | 64 |
SHA-1 | 160 | 40 |
MD5 | 128 | 32 |
CRC-32 | 32 | 8 |
用法
$ digestify -h
digestify 0.4.0
Verify a file against a provided digest/hash/checksum.
USAGE:
digestify <file> <digest>
ARGS:
<file> File to verify
<digest> Digest to compare to, specified as a case-insensitive hexadecimal string
OPTIONS:
-h, --help Print help information
-V, --version Print version information
如果找到与摘要算法之一匹配,则命令将成功。否则,将失败。
示例用法
# digestify Cargo.lock 19189c1219285b61ce1e95f9e4fdd5354a926075db9cf5dc62cf1801702c67d2
Verifying 'Cargo.lock' against provided digest of size 64 hex chars / 256 bits. Candidate digest(s): SHA-256.
SHA-256: PASS
Expected=19189c1219285b61ce1e95f9e4fdd5354a926075db9cf5dc62cf1801702c67d2
Actual=19189c1219285b61ce1e95f9e4fdd5354a926075db9cf5dc62cf1801702c67d2
PASS: Provided digest matches the content.
# echo $?
0
# digestify Cargo.toml f26c2e4e001349b737a3a5cc5fc4afc87b423773
Verifying 'Cargo.toml' against provided digest of size 40 hex chars / 160 bits. Candidate digest(s): SHA-1.
SHA-1: FAIL
Expected=f26c2e4e001349b737a3a5cc5fc4afc87b423773
Actual=95ee03e733a0111ac9d6b2073f4acec0f120fae5
FAIL: Provided digest doesn't match any of the candidate digest results.
# echo $?
2
依赖关系
~3.5MB
~72K SLoC