Miklix

SHA-1 哈希码计算器

已出版: 2025年2月16日 UTC 23:24:17
最后更新 2026年1月12日 UTC 09:10:22

使用安全哈希算法 1 (SHA-1) 哈希函数,根据文本输入或文件上传计算哈希码的哈希码计算器。

为了使尽可能多的人能够访问本页面,本页面由英文机译而成。遗憾的是,机器翻译技术尚不完善,因此可能会出现错误。如果您愿意,可以在此处查看原始英文版本:

SHA-1 Hash Code Calculator

SHA-1(安全哈希算法 1)是由美国国家安全局 (NSA) 设计,并于 1995 年由美国国家标准与技术研究院 (NIST) 发布的一种加密哈希函数。它生成一个 160 位(20 字节)的哈希值,通常表示为一个 40 个字符的十六进制字符串。SHA-1 曾广泛用于保护数据完整性、数字签名和证书,但由于其易受碰撞攻击,现在被认为不安全。此处列出 SHA-1 是为了方便在需要计算与旧系统兼容的哈希码时使用,但在设计新系统时不应使用。

完全披露:本页面使用的哈希函数的具体实现并不是我写的。它是 PHP 编程语言中的一个标准函数。我只是为了方便,制作了网络接口,以便在此公开使用。


计算新的哈希代码

通过本表格提交的数据或上传的文件在服务器上的保存时间仅限于生成所需的哈希代码。在结果返回到您的浏览器之前,这些数据将被立即删除。

输入数据:



提交的文本采用 UTF-8 编码。由于哈希函数对二进制数据进行运算,因此运算结果会与使用其他编码的文本不同。如果需要计算特定编码文本的哈希值,则应上传文件。



关于 SHA-1 哈希算法

我不是数学家,所以我尽量用非数学专业人士也能理解的方式来解释这个哈希函数——如果你想要精确的科学数学解释,你可以在很多其他网站上找到 ;-)

把 SHA-1 想象成一台特殊的碎纸机,它可以接收任何信息——无论是一个单词、一句话还是一整本书——并以一种非常特定的方式将其粉碎。但它不仅仅是粉碎,而是神奇地吐出一个唯一的“粉碎码”,这个粉碎码的长度始终正好是 40 个十六进制字符。

  • 例如,你输入“Hello”。
  • 你会得到类似这样的40个十六进制数字:f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0

无论你输入什么——短的还是长的——输出的长度始终相同。

这款“神奇碎纸机”分四步运作:

步骤一:准备纸张(衬垫)

  • 碎纸前,你需要先处理一下纸张。想象一下,在留言末尾留出一些空白,这样纸张就能正好放入碎纸机的纸盒里。
  • 就像烤饼干时,你要确保面团均匀地填满模具一样。

步骤二:切成大小相等的块(分割)

  • 碎纸机不喜欢大块的纸。所以,它会将你准备好的信息切成大小均匀的小块——就像把一个大蛋糕切成完美的薄片一样。

步骤 3:秘方(混合和捣碎)

  • 现在到了最精彩的部分!在碎纸机内部,你信息的每一部分都会经过一系列的搅拌和滚轮:混合:它会用一些秘密配方(内置规则和数字)搅拌你的信息。碾压:它会以特殊的方式挤压、翻转和旋转信息碎片。扭转:部分信息会被扭转或反转,就像把纸折成折纸一样。

每一步都会使信息变得更加混乱,但机器总是会按照非常特定的方式进行处理。

步骤 4:最终代码(哈希值)

  • 经过一番混合和搅拌,最终得到了一段整齐的、乱码——就像你信息的独特指纹一样。
  • 即使你只更改原始信息中的一个字母,输出结果也会完全不同。这就是它的特别之处。

SHA-1 不再使用的原因是,一些非常聪明的人想出了如何欺骗哈希生成器,使其为两条不同的消息生成相同的代码(这被称为碰撞)。

我们现在用更强大、更智能的“哈希粉碎机”取代了 SHA-1。撰写本文时,我默认的哈希算法是 SHA-256,用于大多数用途——是的,我也有一个用于计算它的计算器:链接

进一步阅读

如果您喜欢这篇文章,您可能还会喜欢这些建议:


分享至 Bluesky在 Facebook 上分享在 LinkedIn 上分享在 Tumblr 上分享分享至 X在 LinkedIn 上分享在Pinterest上固定

Mikkel Christensen

关于作者

Mikkel Christensen
迈克尔 是 miklix.com 的创建者和所有者。他拥有 20 多年的专业计算机程序员/软件开发人员经验,目前全职受雇于一家大型欧洲 IT 公司。不写博客时,他把业余时间花在各种兴趣、爱好和活动上,这在一定程度上反映在本网站涵盖的各种主题上。