当前位置:首页>经验>

哈希算法通俗理解(哈希算法详解图解)

来源:原点资讯(m.360kss.com)时间:2022-11-18 03:18:57作者:YD166手机阅读>>

比特币的区块链以线性“链”的方式存储区块,每个区块在数学上都指向前一个区块。通过这种方式,即使没有对区块进行明确的编号,区块的顺序也是清晰的。

哈希算法通俗理解,哈希算法详解图解(1)

区块之间用数字相互联系。具体来说,比特币使用一种叫作哈希的数学技术。例如,把单词、数字、比特币区块等一堆信息输入一个哈希算法中,这个算法会输出一个简短的信息“指纹”。

其实,人类一直在使用哈希,比如首字母组合。一个很长的英文名字很容易被压缩成几个字母。例如,将“John Fitzgerald Kennedy”这个长长的名字变成“JFK”这个简短的名字。其中有一个输入(全名)、哈希函数(获取某人姓名首字母的过程)和一个输出或哈希值(首字母)。计算机使用更多样化的哈希函数,其中最流行的是MD5算法和SHA-256算法,它们的核心思想是一样的:大数据输入变成短输出。

在比特币中,每个区块都有一个相关的哈希。每个区块的哈希部分基于它的前一个区块的哈希。通过这种方式,每个区块都指向它的前一个区块。所以,如果你有一个无序的区块列表和与它们相关的哈希表,你可以很容易地对区块进行排序,这就像一个人可以通过查看情节来排列书页一样。

哈希算法通俗理解,哈希算法详解图解(2)

哈希表中的数字和字母是怎么回事?哈希是用十六进制[4]编写的。其实际字符长度也比4个字符长得多,但我们的缩短版作为举例已经足够用了。因此,比特币以区块的形式批量处理交易,并且以链的方式将它们彼此连接起来。区块遇见链。

让我们回顾一下们基于哈希的区块链系统,你会注意到它实际上并不需要将区块放入线性的链中。没有什么能阻止在一个给定的区块之后紧接着出现两个或更多的区块。因此,区块链不一定是线性链。事实上,区块链通常不是线性链。区块链看起来更像“区块树”,有“树干”和“树枝”。

当两个矿工同时挖出一个区块时,区块树有时会产生一个新的分支。这种情况很少见,但确实会发生。当这种情况发生时,两笔交易会从最近的交易中分离出来,一个新的区块分支就诞生了。为了保证线性的正式历史,比特币使用了名为“最长链原则”的经验法则。这条法则指出,拥有最多区块的“区块树”的分支就是正式的区块链。最长链决定了你有多少钱、过去发生过什么交易等。如果某件事不在最长链上,它就不会发生。

在比特币用户的计算机上运行的比特币软件,只向在最长链上添加一个区块的矿工支付报酬,从而贯彻最长链原则。这通常足以使矿工们保持秩序。不过,它有一个副作用。如果两个矿工同时开采出一个区块,就会产生两个分支,但只有一个分支会胜出,成为最长链。另一个分支成为“孤儿”并被抛弃,而在挖掘出该分支底部区块的不幸矿工将得不到任何钱。这种“孤儿”事件一天会发生好几次。

但是最长链原则仍然存在安全漏洞。如果一个不正当的矿工创造了一个新分支,并且能比其他矿工更快地挖掘区块,从而使他的分支比合法的分支更长,那该怎么办呢?嗯,不正当的矿工的分支将成为最长链,所以它将成为正式的区块链。他的欺诈链上的所有区块将成为正式历史,而合法链上的一些区块将被扔掉。

当然,让骗子控制区块链会造成很多混乱,这也可能导致欺诈。设想一下,不正当的矿工用比特币购买了数千美元的商品,并把交易放在区块链上。然后,他执行攻击,建立一个比正式区块链更长的新链。他支付给商家的交易数据将被丢弃,因为这些交易数据所在的区块不在最长链上。这就好像他一开始就没有付款一样。所以,他最终得到了所有的商品,但从来没有为它付过钱!

为了解决这个问题,中本聪使用了“工作量证明”法,也就是说你想建立一个区块就需要正确地算出一个哈希值,但是除非你控制了全网足够大的算力,否则你很难连续几次都是那个首先算出哈希值的幸运儿。而如果你要想做到这点,你要花太多的钱去配置机器和算力了,那么你能从中诈骗到多少个比特币来支付这笔钱呢?基本上不可能诈骗到这么多比特币,而且你一旦诈骗成功,比特币的信誉下降,你诈骗到的比特币可能一文不值,你花大钱购买的算力和机器就全部打了水漂。

栏目热文

比特币哈希算法(比特币的哈希函数)

比特币哈希算法(比特币的哈希函数)

在接触过或购买过数字藏品的朋友来说,每份数字藏品上都有一份“哈希值”,这些所谓的“哈希值”由一串很长的数字 字母构成,而...

2022-11-18 03:36:27查看全文 >>

哈希算法的由来(谈谈你对哈希算法的理解)

哈希算法的由来(谈谈你对哈希算法的理解)

【编者按】区块链,这个之前主要在IT和金融领域被广泛讨论的概念,因为中央政治局一次集体学习而迅速在普通民众间成为高频词和...

2022-11-18 03:34:53查看全文 >>

李永乐老师讲哈希算法(李永乐老师rsa算法)

李永乐老师讲哈希算法(李永乐老师rsa算法)

我是一个南方人,在湖北武汉读的一个普通本科的软件工程专业。高考时的发挥和最后的成绩并没有让我很满意,填完志愿后我便觉得万...

2022-11-18 03:22:58查看全文 >>

哈希算法的三个基本特征(哈希算法的真实案例)

哈希算法的三个基本特征(哈希算法的真实案例)

提到hash,相信大多数同学都不会陌生,之前很火现在也依旧很火的技术区块链背后的底层原理之一就是hash,下面就从has...

2022-11-18 03:41:17查看全文 >>

通俗易懂的哈希算法(哈希算法都有哪些)

通俗易懂的哈希算法(哈希算法都有哪些)

本文转载自微信公众号,孤独烟本文故事绝对真实,如有雷同,绝对不是巧合!话说前几天有一次,某大厂的二面。然后呢,烟哥那天刚...

2022-11-18 03:01:13查看全文 >>

滚丝机正丝调试教程(滚丝机怎么调试和操作图解)

滚丝机正丝调试教程(滚丝机怎么调试和操作图解)

钢筋直螺纹滚丝机目前已经成为建筑工程项目处理钢筋的主要操作设备了。但是因为我国建筑行业本身的局限性,我们的建筑工人大多...

2022-11-18 03:34:11查看全文 >>

滚丝机的调试技巧图解(滚丝机快调机头的调试技巧)

滚丝机的调试技巧图解(滚丝机快调机头的调试技巧)

河北衡水全自动钢筋滚丝机滚丝轮亚博安装方法及偏心套的安装和偏心轴齿轮与齿圈位置滚丝头是设备的工作核心之一,它主要作用是对...

2022-11-18 02:59:46查看全文 >>

滚丝机不进丝怎么处理(滚丝机难进丝是怎么回事)

滚丝机不进丝怎么处理(滚丝机难进丝是怎么回事)

滚丝不合格,我们怎么办?问题3描述:使用滚丝机滚压螺纹时,螺纹的中径偏小,外径偏大。问题分析:通过和厂家技术人员沟通,1...

2022-11-18 03:03:38查看全文 >>

滚丝机偏心轴的调节方法(小型滚丝机偏心轴调节视频)

滚丝机偏心轴的调节方法(小型滚丝机偏心轴调节视频)

一、柱钢筋绑扎施工工艺工艺流程:柱筋绑扎→安装柱筋定位卡具→平台混凝土浇筑→拆除定位卡具→套柱箍筋→柱主筋连接→绑扎竖向...

2022-11-18 02:56:32查看全文 >>

滚丝机正反的调试技巧图解(滚丝机正反丝怎么调整图解)

滚丝机正反的调试技巧图解(滚丝机正反丝怎么调整图解)

正反丝套筒的连接方法具体如下面三步:很多人不知道怎么辨别钢筋套筒是正丝,还是正反丝。河南正反丝套筒厂家教您怎么区分正反丝...

2022-11-18 03:12:36查看全文 >>

文档排行