十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Linux命令:sha1sum

Linux命令:sha1sum sha1sum 命令基本介绍sha1sum用于计算或校验文件的 SHA-1Secure Hash Algorithm 1校验和。SHA-1 生成一个 160 位40 个十六进制字符的哈希值常用于验证文件在传输或存储过程中是否发生改变。资料合集https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a语法sha1sum[选项][文件...]不指定文件或指定-时从标准输入读取数据。指定一个或多个文件时逐个计算并输出校验和。常用选项-c、--check从文件中读取校验和并验证对应文件。--tag以 BSD 风格SHA1 (文件) 哈希值输出。-t、--text以文本模式读取默认行为。-b、--binary以二进制模式读取。--zero以 NUL 而非换行符分隔输出行。--ignore-missing校验时忽略不存在的文件不报错。--quiet校验时只显示失败的文件成功的不显示。--status校验时不输出任何信息仅通过退出状态码表示结果。-w、--warn校验时对格式不正确的行输出警告。--strict校验时遇到格式不正确的行即返回非零状态。--help显示帮助信息。--version显示版本信息。输出格式默认输出格式da39a3ee5e6b4b0d3255bfef95601890afd80709 文件名前 40 个十六进制字符为 SHA-1 哈希值。后跟两个空格和文件名。读取标准输入时文件名显示为-。使用示例1. 计算单个文件的校验和sha1sum file.txt输出示例da39a3ee5e6b4b0d3255bfef95601890afd80709 file.txt2. 计算多个文件的校验和sha1sum file1.txt file2.txt file3.txt3. 将校验和保存到文件sha1sum file.txtfile.txt.sha14. 批量计算并保存sha1sum *.tar.gzchecksums.sha1生成的checksums.sha1内容示例3a5d4c2b1e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b archive1.tar.gz 7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c archive2.tar.gz5. 校验文件完整性sha1sum-cfile.txt.sha1输出示例成功file.txt: OK输出示例失败file.txt: FAILED sha1sum: WARNING: 1 computed checksum did NOT match6. 校验多个文件sha1sum-cchecksums.sha17. 从标准输入计算echohello world|sha1sum输出示例2aae6c35c94fcfb415dbe95f408b9ce91ee846ed -8. 安静模式校验sha1sum-c--quietchecksums.sha1只输出校验失败的文件。9. 仅返回状态码sha1sum-c--statuschecksums.sha1echo$?不输出任何文本仅通过退出状态码表示结果。10. 忽略缺失文件sha1sum-c--ignore-missing checksums.sha111. BSD 风格输出sha1sum--tagfile.txt输出示例SHA1 (file.txt) da39a3ee5e6b4b0d3255bfef95601890afd80709在脚本中使用验证下载文件#!/bin/bashset-euopipefailFILEdata.zipEXPECTED3a5d4c2b1e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0bACTUAL$(sha1sum$FILE|awk{print $1})if[$ACTUAL$EXPECTED];thenecho校验通过文件完整elseecho校验失败文件可能已损坏exit1fiGit 中的 SHA-1Git 广泛使用 SHA-1 来标识提交、树和 Blob 对象。查看某个 Git 对象的 SHA-1gitrev-parse HEADGit 团队已计划迁移到 SHA-256 以增强安全性。SHA-1 与其他哈希算法的对比算法命令哈希长度安全性常见用途MD5md5sum128 位弱已破解日常文件校验SHA-1sha1sum160 位弱已破解Git、旧版证书SHA-224sha224sum224 位较强特定合规需求SHA-256sha256sum256 位强推荐用于安全验证SHA-384sha384sum384 位强高安全需求SHA-512sha512sum512 位强高安全需求BLAKE2b2sum可变强高性能场景SHA-1 的安全注意事项SHA-1 在 2017 年已被 Google 和 CWI Institute 的研究团队成功实现碰撞攻击SHAttered 攻击即构造出了两个内容不同但 SHA-1 值相同的 PDF 文件。因此用途是否推荐 SHA-1推荐日常文件完整性检测可用sha256sum更佳密码存储不推荐bcrypt、argon2数字签名 / 证书不推荐SHA-256 及以上安全防篡改不推荐sha256sum、sha512sumGit 对象标识当前仍使用Git 正在向 SHA-256 迁移退出状态0所有文件校验成功或计算正常完成。1至少有一个文件校验失败。2发生错误如文件不存在、格式不正确等。注意事项sha1sum计算的是文件内容的哈希值与文件名、权限、时间戳无关。校验文件-c的输入格式必须与sha1sum的输出格式一致。二进制模式和文本模式在 Linux 上通常没有区别但在 WindowsCRLF 换行环境下可能产生不同结果。由于 SHA-1 的安全弱点涉及安全验证的场景应改用sha256sum或sha512sum。在 macOS 上对应命令为shasum -a 1。可通过man sha1sum查看完整文档。相关命令sha256sum计算 SHA-256 校验和推荐用于安全验证。sha512sum计算 SHA-512 校验和。sha224sum/sha384sum计算 SHA-224 / SHA-384 校验和。md5sum计算 MD5 校验和同样存在安全弱点。b2sum计算 BLAKE2 哈希值高性能安全哈希。cksum计算 CRC 校验和和字节数。总结sha1sum是计算和校验文件 SHA-1 哈希值的工具用法与md5sum类似。通过sha1sum 文件生成校验和通过sha1sum -c 校验文件验证完整性。SHA-1 比 MD5 略安全但由于已被证明存在碰撞攻击不建议用于安全敏感场景。对于需要更高安全性的文件完整性验证应优先使用sha256sum或sha512sum。
返回列表