SHA1加密
计算文本的 SHA1 值。
这个工具能做什么
这个工具做的事很直接:把你粘进来的一段文本按 SHA1 算法算出一个固定长度的摘要值,输出 40 位十六进制字符(也就是 160 位、20 字节)。它解决的痛点是不必本地装 openssl、写脚本或开编译器,随手就能拿到一个字符串的 SHA1 指纹,用来比对、填表单、调接口或者临时验证一段签名对不对。输入无论多长,输出永远是这 40 个字符;哪怕只改动一个空格或大小写,结果也会完全不同。所有计算在浏览器本地完成,文本不会上传到服务器。
原理上,SHA1 是 SHA 家族里的一种密码学哈希函数。它先把输入文本按 UTF-8 编码成字节流,再做填充(末尾补一个 0x80 和若干 0,最后 64 位写入原始比特长度),把数据切成 512 位一块,通过 80 轮的位运算、循环左移和常量加法不断搅动一个 160 位的内部状态,最终输出摘要。它是单向的:从摘要几乎不可能反推原文,也没有哪个工具能把 SHA1 值『解密』还原成明文;同样一段输入永远得到同样一段输出,这个确定性正是它能用来做校验和签名的基础。需要清楚的是,SHA1 早在 2017 年就被 Google 的 SHAttered 实验证明可以人为构造碰撞,密码学意义上已不再安全。
典型场景一是校验一致性:比如你从某个镜像站下载了一个安装包,页面上贴着官方的 SHA1 值,把文件内容或对应字符串算一遍,两个 40 位串逐字符相同就说明没被篡改或传输出错。场景二是对接老接口的签名:不少支付、开放平台的旧版协议要求把参数按约定拼成一个字符串,末尾接上密钥,再取 SHA1(有时结果还要转大写),本工具能让你在写代码前先手算一个期望值,方便和程序输出对拍、排查签名不一致的问题。日常调试时,它也常被用来给一段内容生成一个短小、稳定的指纹当作缓存 key 或去重标识。
有几个点容易踩坑。一是编码:同一段中文用 UTF-8 和 GBK 编码算出的 SHA1 完全不同,本工具统一按 UTF-8 处理,如果对方系统用的是别的编码,结果就对不上。二是别把 SHA1 当加密:它没有密钥、不可逆,『SHA1 加密』只是习惯叫法,本质是摘要,不能拿来保护需要还原的秘密。三是存口令要格外谨慎:裸 SHA1 存密码已经不推荐,容易被彩虹表和 GPU 暴力破解,现代做法应改用加盐的 bcrypt、scrypt 或 Argon2。若只是要更强的完整性校验,也建议换成 SHA-256。此外 SHA1 算的是字符串本身,和 Base64、URL 编码是两码事,别混用。
SHA1加密是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“sha1加密”、“sha1在线”、“sha1计算”,说的都是这个。
常见使用场景
- 核对下载文件的官方 SHA1 校验值
- 对接旧接口时手算签名做对拍
- 给一段内容生成稳定的缓存 key
- 为文本生成去重用的指纹标识
- 验证程序输出的 SHA1 是否正确
使用方法
- 把内容粘贴到输入框(生成类工具直接设置选项)。
- 按需要选择选项,点操作按钮。
- 结果出现在下方,点「复制结果」即可带走。