星空体育- 星空体育官方网站- APP下载区块链与电子存证的基础——哈希值简介

2026-02-12

  星空体育,星空体育官方网站,星空体育APP下载/星空体育官方网站(xk-sports)亚洲卓越在线公司[永久网址:363050.com]星空体育,星空集团,星空体育官网,星空体育app,星空体育网页版,星空捕鱼,星空体育app下载,星空体育官网,星空体育下载,星空电竞,世界杯,足球,星空体育入口,星空体育网址,星空体育全站,星空体育注册网址,星空体育注册链接,星空APP下载,以安全稳定的服务和打造星空体育app而闻名海内外。

星空体育- 星空体育官方网站- 星空体育APP下载区块链与电子存证的基础——哈希值简介

  无论谈及区块链还是电子取证、电子存证,都绕不开一个基本概念——哈希函数或哈希值。

  首先,为了体现自己的水平,还是不免要对哈希函数(hash function)的中文翻译点评一下。哈希的英文原文hash是个固有词汇,原意是指肉丁、菜丁等剁碎的食物,后被用于计算机领域,意指打散。hash还有一种译法为“散列”,显然比“哈希”这一翻译更为恰当(“哈希”明显是将hash视为人名等专有名词,但事实并非如此)。但为了尊重习惯,本文仍然使用“哈希”一词。

  哈希函数是可以将任意大小的原始数据映射成固定长度值的函数,哈希函数得到的结果被称为“哈希值”。或者,可以将原始数据称为“消息”,将哈希值称为“摘要”。

  好的哈希函数应便于快速计算且具有“雪崩效应”,“雪崩效应”是指即使消息有微小的变化,也会使摘要发生大幅改变。例如,“今天天气好”这一字符串的MD5哈希值为“0726205e5de6f71d8d2fcd5f0d61d77b”,而“明天天气好”这一字符串的MD5哈希值为“8391488c2e9fbf9e8cf1e59c2a01f78b”。这说明MD5哈希函数的随机化特性(雪崩效应)好,也就是说无法从摘要推算出消息。相反,如果随机化特性差,那么破译人员可以通过观察“消息”与“摘要”的关系来破译或部分破译出密码。例如,假设“今天天气好”的加密结果为“GFG”,而“明天天气好”的加密结果为“XFG”,那么可以初步推测其对应关系为:G→今,天→,气好→FG,X→明。从这个角度来讲,哈希函数是一个单向函数,即,只能从消息得到摘要,而无法从摘要得到消息。

  不同的哈希函数得到的摘要长度不同,比如MD5的摘要长度有128位(32个半角字符),SHA-1的摘要长度有160位(40个半角字符),而SHA-256的摘要长度有256位(64个半角字符)。但无论摘要多长,其总是有限的,而消息在理论上是无限的。因此,存在两个不同的消息具有相同摘要的可能性,这被称为“碰撞”。

  以MD5哈希函数为例,其可以生成2[128]个摘要,也就是128个2相乘。这个数字看起来只是个普普通通的大数,但实际上大得难以理解。下面以一个可以想见的例子来说明这个大数到底有多大。

  我们假设有一万亿(1,000,000,000,000=10[12])台计算机,每台计算机每秒可以生成一万亿个消息,这些机器不停地工作一年,由于一年有31,536,000(3.15x10[7])秒,那么可以得到3.15x10[31]个消息。再假设这些计算机从宇宙大爆炸起一直工作到现在,也就是工作了138亿(13,800,000,000=1.38x10[10])年,一共可以生成4.3x10[41]个消息。同时还要假设有1万亿个这样的平行宇宙,每个平行宇宙都有同样的机器以同样的方式自大爆炸起一直在生成消息。这样,一共可以得到4.3x10[53]个消息。而这样得到的消息总数也仅仅是2[128](4[64])的一千亿分之一。

  碰撞的概率则不一样。以128位的MD5哈希函数为例,上述1台机器在1个宇宙中工作1年,生成的消息就几乎一定会发生碰撞。这类似于生日问题:假设一年有365天,50个人中有两人的生日在同一天的概率并非50/365,而是约为97%。具体的计算公式此处省略。但即便如此,实际上发生碰撞的概率仍然是微乎其微的。

  虽然自然发生碰撞的概率极低,但MD5已于2004年被破解,SHA-1也于2017年被谷歌和荷兰的CWI小组破解,因此,这两种算法都不适合安全性要求高的情景。而包括SHA-256在内的SHA-2可满足安全性要求高的场景。

  由于MD5、SHA-1和SHA-2哈希函数是“雪崩效应”好的单向函数,因此,可以用于对文件进行核验。例如,通过计算出文件(文字、图片、视频……甚至是无法阅读的任意文件)的哈希值并与另一文件的哈希值进行比较,可以核验这两个文件是否相同。另外,虽然MD5和SHA-1已经被破解,但我们说过这两种函数都是“雪崩效应”非常好的哈希函数,因此,人为碰撞出的两个文件必须具有很大的差异才能具有相同的哈希值。换言之,对文件进行微小的改动并不会使改动前后的文件具有相同的哈希值。

地址:363050.com 客服热线:363050.com 传真:363050.com QQ:363050.com

Copyright © 2012-2025 星空体育官方网站 版权所有 非商用版本