HASH是什么?“哈希值校验”又是怎么回U8国际 U8国际官方网站 体育APP下载事儿?
栏目:U8哈希 发布时间:2026-01-09
  u8,u8国际,u8国际官方网站,u8国际网站,u8国际网址,u8国际链接,u8体育,u8体育官网,u8体育网址,u8注册,u8体育网址,u8官方网站,u8体育APP,u8体育登录,u8体育入口   2018年9月7日《最高人民法院关于互联网法院审理案件若干问题的规定》(以下简称为“互联网法院审理案件规定”)开始实施。其中第11条第

  u8,u8国际,u8国际官方网站,u8国际网站,u8国际网址,u8国际链接,u8体育,u8体育官网,u8体育网址,u8注册,u8体育网址,u8官方网站,u8体育APP,u8体育登录,u8体育入口

HASH是什么?“哈希值校验”又是怎么回U8国际 U8国际官方网站 U8体育APP下载事儿?

  2018年9月7日《最高人民法院关于互联网法院审理案件若干问题的规定》(以下简称为“互联网法院审理案件规定”)开始实施。其中第11条第2款规定:“当事人提交的电子数据,通过电子签名、可信时间戳、哈希值校验、区块链等证据收集、固定和防篡改的技术手段或者通过电子取证存证平台认证,能够证明其真实性的,互联网法院应当确认

  在“前言”一文中,笔者提到了杭州互联网法院做出的被称为“首次对采用区块链技术存证的电子数据的法律效力予以确认”的判决书(以下简称为“

  ”)。该规定实施之后,杭州互联网法院对于当事人提交的通过有资质的第三方平台进行有效取证的证据一般不再进行司法鉴定,北京/广州互联网法院也一样。有兴趣的话,可以登录“

  在该条款中无论“电子签名、可信时间戳、哈希值校验、区块链等证据收集、固定和防篡改的技术手段”还是“通过电子取证存证平台认证”都离不开一种广义的加密算法(或者说一类算法)——Hash算法。

  Hash算法,又称为摘要算法、散列算法、杂凑算法、哈希算法。其主要特点如下:

  另外,一个优秀的Hash算法还应当具有一个特点:很难找到两个对应同一Hash值的不同输入,即:碰撞避免。正是基于上述特点,Hash值被形象地称为“数字指纹”。常见的Hash算法有MD5、SHA-1、SHA-256、SHA-512等。2012年3月《国家密码管理局关于发布祖冲之序列密码算法等6项密码行业标准公告》中的《SM3密码杂凑算法》也属于Hash算法。SHA-256算法是目前我们在法律工作中进行哈希值校验时采用的重要算法①,也是比特币区块链的核心算法,笔者在以下的文章中以此为例进行说明。

  笔者原本希望使用“杭州华泰诉深圳道同侵害作品信息网络传播权纠纷案”判决书中所使用的Hash工具,但该判决书中仅写明通过百度搜索到的“ATOOL在线工具”,并未写明具体网址。经过查找,笔者猜测其使用的是

  。谨慎起见,笔者在win10自带的Microsoft Store上下载了Hash Checker对前述网址得出的Hash值进行核验。

  PDF、图片、视频文件直接在“ATOOL在线工具”和Hash Checker的操作界面进行选定、计算,如涉及到重复Hash或对文本的Hash,直接粘贴于txt文本文档,然后再通过“ATOOL在线工具”和Hash Checker 对txt文档进行计算。

  一、输出长度固定 & 单向不可逆1. 人民日报电子版2021年1月1日第1版的Hash值(SHA-256)为:

  从上述实例可以看出,无论输入的是什么,输出的Hash值都是一个固定长度的字符串。而“单向性”就更容易理解,给你一串16进制的字符,你没可能反向推出《科学星图》的介绍视频(当然,“1”这类简单的输入除外,这个很容易通过枚举法找到原始输入)。

  1. 人民日报2021年1月1日第1版,在《艰难方显勇毅,磨砺始得玉成》文末增加一个句号(具置见下图),新的Hash值为:

  2. 《科学星图》介绍视频,剪切掉最后1秒左右的时长,新的Hash值为:

  不同的原始数据,是有可能产生同一个Hash值的(即Hash碰撞)。以SHA-256为例,其Hash值为256位的二进制数(0和1),因此0和1的组合存在2^256种。理论上使用枚举法以二进制数作为输入值,最多尝试2^256 + 1次必然出现一次同样的Hash值。但是,请原谅我不能在这里给出上文4例证的任一Hash碰撞,因为2^256这个数字即使是对比特币全网算力来说,也是个超天文级别的数字。有多超天文级?下边给出两个直观的说法:

  故事《棋盘上的麦粒》中最后一格的麦粒为2^63粒;根据,小麦千粒重为23~58克②,我们按照30克/千粒计算,约为2,767.0116亿吨。以联合国粮食及农业组织最新预计2020年小麦全球产量7.665亿吨来算③,2^63粒小麦约为全球361.4646年的产量。而这个产量再乘以2^193倍,就是SHA-256的可能性了。

  据Tokenview数据显示,截止2021年2月28日上午10:01,比特币全网算力为163.89 EH/s④(1EH/s=每秒计算10^18次哈希)。根据这一算力,2^256次哈希计算需要多于2.24037×10^37万亿年(为了便于显示,前边小数点后四舍五入了一些数字,但“舍”的有点头晕,因为“舍”掉的数字也是已知宇宙年龄的天文数字倍,有兴趣的可以自己算算)。

  基于上述数据,从网传的量子计算机与超级计算机的算力对比来看(破解某难题耗时,200秒:6亿年),使用量子计算机以枚举法破解SHA-256应该也是不现实的。不过,网传量子计算机会颠覆比特币,也许是因为相信它能够找到类似SHA-1的攻击方法(目前,针对SHA-256的有效攻击尚未出现)。目前,针对SHA-256的有效攻击方法尚未出现( * 这一说法,没有来源。如果方法出现,将会是惊动世界的大事件,各位会知道的),因此如需寻找SHA-256的Hash碰撞只能以枚举法随机测试。比特币挖矿即是使用的枚举法,具体情况以后再说。

  四、结果不随机关于SHA-256的这一特点,从逻辑上讲,笔者使用两个Hash工具针对上述同样的输入得出同一Hash值,不具有说服力。有兴趣的可以自己做一些测试,如果能推翻SHA-256的这一特点(和/或上述任一特点),被评为院士那是实至名归,热搜也定然是一片赞扬。

  《互联网法院审理案件规定》中第11条所谓“哈希值校验”,亦即根据Hash算法的上述特性,通过对比Hash值来确认当事人提交的证据是否存在篡改的情况。

  根据《互联网法院审理案件规定》第11条第2款,在举证、质证时只需要通过可靠的Hash工具对一方提交的证据进行Hash运算,将所得Hash值与存入司法区块链平台的(或以其他可靠、可查证的方式存储的)Hash值进行比对、校验(即哈希值校验),即可确认证据是否与原件一致。

  2019年修正,2020年5月1日起施行的《最高人民法院关于民事诉讼证据的若干规定》(以下简称为”最高院证据规定“)中并未提及“哈希值校验”,但笔者认为这一技术手段并非不能适用于互联网法院之外的其他法院的案件审理过程。依照《最高院证据规定》第15条、第93条、第94条,使用正确的方式进行存证、举证、质证,仍然是可行的。最不济的情况下,在可供进行有效“哈希值校验”的条件下,司法鉴定的过程是便捷的,结果是可预见的。笔者认为:“哈希值校验”是在线进行有效举证、质证、认证的关键技术。诉讼法、最高院证据规定等法律法规司法解释,在不久的将来会进一步进行修改,这是可以预见的。

  文件名、文件存储位置、最后访问时间、文件扩展名的变化不会导致文件Hash值变化。基于保密的原因,通过司法区块链平台进行存证时,平台一般只保留Hash值,当事人不必担心平台或任何第三人可以反向推导出原文。当事人在保管原始电子文档时,不用担心对原始文件重命名、变更存储位置、进行访问、甚至变更扩展名会导致Hash值产生变化( * 如果保存的是极易修改的电子文档,如未加密的word,一个空格、一个标点、一个回车键都不能动)。至于其具体原理,应该是因为文件名、存储位置、最后访问时间属于“元数据”,对元数据的修改不会导致文件原始数据发生变化。当然,开发一种Hash工具,在Hash运算时提取并同时计算指定元数据,这并非难事。这种情况下改变文件名/存储位置等,hash值肯定是会发生变化的,保密要求比较高的行业也许有这种需要。

  。SHA-256属于SHA家族中的一员。SHA家族还包括SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512,后四个又共同称为SHA-2。其中SHA-1已经被证明安全性存在严重问题。2017年2月23日谷歌和Cryptology Group at Centrum Wiskunde & Informatica(CWI)公开了两个具有同一SHA-1哈希值的PDF文档⑤,代表着SHA-1被正式破解。2017年4月3日,国家密码管理局发出《关于使用SHA-1密码算法的风险提示》⑥,对相应风险进行了提示 。2009年中科院的谢涛和冯登国在国际密码研究协会(IACR)发文宣布破解了MD5,该攻击在普通计算机上实施

  ⑦。由此,如果有人拿出SHA-1、MD5的Hash值来说事儿,可以有理有据地反驳了。

  ,可以有理有据的反驳并不意味着反驳一定会成立,还要考虑是否有其他加密算法辅助、攻击的经济性等因素。写到这里,笔者默默地查看了一下手边某商业银行U盾的证书……SHA-1。好吧,该账户不具有攻击价值……

  我国国家密码管理局发布的SM3,也是一种Hash算法,是我们国家的行业标准,据说其安全性及效率与SHA-256相当。虽然,截至发文日笔者在“中国裁判文书网”以“SM3”为关键词没有搜索到任何结果,但这一算法或许很快会在以后的法律工作中成为Hash值校验(哈希值校验)的主要算法。

  (笔者没有找到SM3算法的Hash工具,谁有来源可靠的,麻烦共享一下。)

  ①杭州华泰诉深圳道同侵害作品信息网络传播权纠纷案判决书中采用的哈希算法为SHA-256算法;该判决书所提及的“保全网”官网提供了在线Hash计算工具(/hash2021/3/3 18:40访问),通过计算结果比对,保全网采用的Hash算法亦为SHA-256算法。在各互联网法院的司法区块链网站,笔者未找到相应算法的说明。在“中国法律裁判文书网”,笔者以“SHA256”为关键词搜索到24篇文书;以“哈希值”为关键词搜索到2150 篇文书,但大多未写明具体算法。现行有效的《中华人民共和国国家标准电子物证文件一致性检验规程(GB/T29361-2012)》,亦未注明具体的Hash算法。