DevToolPal
简

SHA-1 哈希生成器

计算任意文本的 SHA-1 哈希值,可逐行计算,输出十六进制或 Base64,全部在浏览器本地完成。

本地处理,不上传

选项

输出格式

文本

0 字符 · 0 B

SHA-1 哈希值

0 字符 · 0 B

功能简介

这个工具计算任意文本的 SHA-1 哈希值。SHA-1 是一种密码学哈希函数,诞生于 1995 年。它把任意长度的输入变成固定的 160 位值,显示为 40 个十六进制字符。相同的输入永远得到相同的哈希值,哪怕只改一个字符,结果也会完全不同。

使用方法

  1. 在输入框里输入或粘贴文本,也可以拖入文本文件,或点「示例」。
  2. 输入的同时显示 SHA-1 哈希值。
  3. 输出格式可选「十六进制」或「Base64」;如果要对比的系统使用大写字母,打开「十六进制大写」。
  4. 打开「逐行分别计算」可以一次处理一批数据(比如多个密码或 ID),每一行的哈希值输出在对应的行上。

文本按 UTF-8 原样计算,空格和换行都算在内。需要计算文件哈希或使用其他算法,请用通用的哈希生成器。

示例

输入:  The quick brown fox jumps over the lazy dog
SHA-1: 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12

在末尾加一个句点,哈希值就会完全改变。这种「雪崩效应」让哈希值能发现数据里的任何改动。

SHA-1 的常见用途

SHA-1 仍出现在 Git 的提交和对象 ID、用 HMAC-SHA1 签名的旧接口和 Webhook、TOTP 动态验证码,以及老项目公布的文件校验值里。HMAC-SHA1 和 TOTP 不依赖抗碰撞性,目前仍被认为是安全的。

安全性

SHA-1 在安全上已不推荐使用。2017 年的 SHAttered 攻击构造出了 SHA-1 相同的两个不同 PDF,此后攻击成本越来越低。浏览器和证书机构从 2017 年起已不再接受 SHA-1 证书。新项目请使用 SHA-256。

常见问题

› 文本会发送到服务器吗?

不会。SHA-1 哈希值在浏览器里计算,密码、密钥和私密文本都不会离开你的设备。

› SHA-1 能解密吗?

不能。SHA-1 是单向哈希,不是加密。号称能「解密」的网站其实是在常见词的哈希表里查找,只对很短或很常见的输入有效。

› 为什么我算出的 SHA-1 和别的工具不一样?

通常是输入里有看不见的差异:结尾多了换行(echo 会自动加,用 echo -n)、Windows 的 CRLF 换行、开头多了空格,或者文本编码不同。本工具对输入框文本的 UTF-8 字节原样计算。

› SHA-1 哈希值有多长?

160 位,即 40 个十六进制字符,或 28 个 Base64 字符。

› SHA-1 安全吗?

SHA-1 在安全上已不推荐使用。2017 年的 SHAttered 攻击构造出了 SHA-1 相同的两个不同 PDF,此后攻击成本越来越低。浏览器和证书机构从 2017 年起已不再接受 SHA-1 证书。