区块链:科普 | 区块链技术不可撼动的基石:哈希函数

这是白话区块链的第1887期原创?作者|复利青年出品|白话区块链

比特币作为加密行业第一个成功的应用,自诞生以来受到越来越多的关注。不过一旦深入一点了解比特币背后的技术,哈希函数就是绕不开的概念,那么哈希函数到底是什么?

维基百科是这么说的:

哈希函数是一种从任何一种数据中创建小的数字指纹的方法。哈希函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值的指纹。

百度百科和维基百科真有别称的话,应该叫看不懂百科。给哈希函数一个简洁的白话定义:哈希函数是一系列复杂的但输出值位数固定的数学变换。

SushiSwap:正通过白帽回收被盗资金并制定返还用户资金的计划:4月10日消息,SushiSwap 发布 RouteProcessor2 漏洞更新报告,称开发团队正在识别所有受 RouteProcessor2 漏洞影响的地址,并正在进行多项通过白帽回收挽救资金的行动。此外,SushiSwap 正在制定返还获救资金的计划。完成后,将通过Sushi Twitter 和 Discord上的公告进行传达。[2023/4/10 13:54:47]

变换不能乱变换,要照着如下过程来:

1、任何长度的内容2、经过这系列复杂但固定的数学变换后3、会输出一个固定长度和格式的数据

脚注:数学领域会用H表示这经过变化后输出的数值,中文名叫消息摘要或数字指纹。

Animoca Brands Japan宣布已投资Passion Labs:2月24日消息,Animoca Brands Japan宣布已投资Passion Labs,这是一个提供客户体验和社区参与工具的平台,旨在赋予用户数据所有权并帮助品牌建立社区。

Animoca Brands Japan将与Passion Labs合作,利用Passion Labs的技术在日本进行KOC(主要意见消费者)分析,帮助日本公司制定其Web3战略并创建Web3社区。[2023/2/24 12:27:35]

比如,在比特币中,公钥生成地址时用到的哈希函数SHA256,后面的“256”的意思是输出是固定256位长度的数据。

Lens Protocol创始人:可以通过视觉游戏的方法规避空投猎人:2月17日消息,Aave及Lens Protocol的创始人Stani于Lens发帖称,想到了一个规避机器人以及“空投猎人”的有趣点子。Stani提到,可以创建一个射击主题的视觉游戏,玩家可以在不断流过的内容中标注垃圾内容,如果在指定时间内某玩家所标记的结果与其他玩家相同,那么他的等级就将提升,与此同时垃圾信息也被标注了出来。这样以来,甚至有可能附带制造一个史诗级的副产品(可能是指垃圾信息过滤系统),让整个Lens生态(Lensverse)受益。

此前消息,Lens Protocol日前在推特上回复关于“Lens Protocol是Polygon生态最激动人心的项目之一”相关话题时曾回复称“这很令人兴奋,空投即将到来”,但在随后不久删除,在社区内引发了该项目即将空投的猜测。[2023/2/17 12:13:44]

这数学变换不是任意变换都能被称之为哈希函数,一个数学变换要升级为哈希函数必须符合三个条件:唯一性、单向性、暴力求解:

NFT艺术家DeeKay的Twitter被黑,超过15万美元的NFT被盗:7月15日消息,今天早些时候,著名的韩国动画师和NFT艺术家DeeKay Kwon拥有超过179,800名追随者的Twitter帐户被黑。黑客发布了一个指向钓鱼网站的链接,指示用户以声称从艺术家那里获得独家NFT空投为借口批准恶意交易。在受害者批准交易后,黑客从多名受害者那里窃取了价值约15万美元的NFT。(cryptobriefing)[2022/7/15 2:16:08]

1、哈希函数的唯一性

直观的理解就是:只有输入X,才能得到H。理解这个特性时,可以把哈希函数理解成你和你的指纹,你是输入,你的指纹是输出,唯一性就是指只有你才能有你的指纹,在比特币里就是指,你转账用的比特币地址,只有你的公钥才能生成,就像你的指纹是独一无二的一样,世界上没有任何其他人能生成和你一样的转账地址。

2、哈希函数的单向性

哈希函数的单向性是指H是无法反向推导X。如果给你一个指纹,仅有一个指纹的你,是绝对想象不出指纹的主人到底是男是女,到底长什么样,只能知道这是个指纹。

哈希函数的单向性可以用一个不准确但十分形象的类比来直观理解——来猜猜下巴的主人是谁?

这Man味十足的迷人下巴主人是白宇?是张震?还是赵又廷?谜底揭晓:是我们喜爱的坤坤,不是蔡徐坤,而是乡村F4谢广坤↓

因为哈希函数的单向性,所以在比特币里,即使我们的收款地址是公开的,但是没人能知道我们生成收款地址的公钥是什么,更无法知道生成公钥的私钥是什么。

市面上有一种言论说,量子计算机的出现会让比特币一文不值,但现在你应该知道,即使量子计算机出现可,目前也难以攻破哈希函数,哈希函数是中本聪为比特币设置的一道安全锁,希望比特币有充足的时间升级到抗量子的加密算法。

3、哈希函数的暴力求解

如果知道哈希值H真想找到输入值X,只能从源头出发,一个数一个数去尝试,每个数都套到哈希函数里,然后看看输出的哈希值是不是等于H。

就像如果你真想知道某个指纹是谁的指纹,你只能全世界一个个人找过去,去对比每一个手里的指纹和这个指纹,是不是完全相同,没有丝毫偏差。?02?

哈希函数因为这三个特性变成了中本聪手里的利器,帮助他在设计比特币的路上解决了多个难题,在比特币白皮书中,除了简介和结论的10个章节里,几乎每个章节都能看到哈希函数的使用。

用哈希函数的唯一性用来防止作假——数字签名

用哈希函数的唯一性来提升效率——默克尔树检索交易记录

用哈希函数的单向性用来保密——公钥生成比特币的地址

用哈希函数的暴力求解来设计比特币的工作量证明——当范围足够大的时候,拿着指纹去找指纹拥有人是不可能的事情,但如果把范围缩小呢,比如在一个只有几百万人的城市里找,难度就会小很多,这就是比特币的mining难度调整机制,想要难度高一点那就把范围扩大一点,想要难度低一点就把范围缩小一点。

1953年哈希函数出现,1970年哈希函数蓬勃发展,2001年SHA-256出现,在2008年时,哈希函数却在中本聪手里被玩出了花,成为了区块链技术里不可撼动的基石。

从这个角度看,多少让人理解了为什么专家和大牛都忍不住夸赞中本聪天才,甚至怀疑中本聪是不是外星人。

至此,虽然比特币白皮书中技术原理你只是懂了一个基础知识哈希函数,但这一点都不妨碍你理解了比特币白皮书里50%想要表达的内容。

END

上一篇:科普|以太坊虚拟机EVM是什么,有何用处?

『声明:本文为作者独立观点,不代表白话区块链立场,本内容仅供广大加密爱好者科普学习和交流,不构成投资意见或建议,请理性看待,树立正确的理念,提高风险意识。文章版权和最终解释权归白话区块链所有。』

欢迎长按二维码

阅读白话区块链入门连载

↓↓↓

喜欢请点「在看」

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:15ms0-1:16ms