风险提示:理性看待区块链,提高风险意识!
比特币网络最了不起的发明之共识机制
首页 > 币界资讯 > 币种知识 2020-11-16 11:40:43
摘要
共识机制被认为产生在人类社会早期,哪时没有中心化的机构或者中心化较弱。那么,它解决什么问题呢?解决人类生存和发展的难题,当时人类的力量较弱,要生存和发展必须依靠集体的力量。“共识”一词最早起源于生物学和医学,表示人体各器 。
币界网报道:

共识机制被认为产生在人类社会早期,哪时没有中心化的机构或者中心化较弱。那么,它解决什么问题呢?解决人类生存和发展的难题,当时人类的力量较弱,要生存和发展必须依靠集体的力量。

“共识”一词最早起源于生物学和医学,表示人体各器官协调运转,后来才被引入哲学和政治学领域。

辞海对“共识”的解释是共同认可的观念或想法,也就是大家经过讨论后形成的一致性意见。

现实生活中怎样解决没有中心化的前提下,又要达成共识呢?就是通过投票选举,少数服从多数,产生一个中心化的机构,比如美国的总统大选。

image.png

那么,在去中心化的虚拟世界中,遇到共识问题,该怎样解决呢?

比如互联网中一直没有解决的分布式系统问题,什么是分布式系统呢?就是多台相互独立的计算机,在没有中心化的情况下,利用计算机网络实现共同的任务或目标。它面临核心的问题是怎样协调相互独立的计算机,在一定时间内实现某个目标,简称一致性问题。具体可以表述为单个计算机有可能掉线、死机、发送错误信息,也可能是不诚实的节点对网络发起攻击,在没有中心的前提下,如何协调它们实现某个目标。

在分布式一致性问题下,根据是否存在恶意节点,又可以分为拜占庭将军问题和非拜占庭将军问题,什么是拜占庭将军问题呢?简单理解就是多台相互独立的计算为了实现共同目标,在内部有不诚实节点的情况下,怎样达成共识完成任务。拜占庭将军问题历史上并没有出现过,它是由美国著名计算机科学家莱斯利·兰伯特在1982年虚构的,一般描述为:

拜占庭帝国拥有巨大的财富,周围的6个邻邦对此垂诞已久,但拜占庭城墙高耸,固若金汤,一个单独的邻邦是无法入侵成功的,同时有可能自身也会遭到其他5个邻邦的入侵,拜占庭帝国防御之强,至少要一半以上的邻邦同时进攻,才有可能成功。

如果有3个邻邦答应好一起去进攻,但实际过程中出现背叛,那么入侵者有可能全军覆没。于是每一个城堡都小心行事,不敢轻易相信邻邦,这就是拜占庭将军问题。

由于将军们只考虑自己的利益最大化,往往口是心非,并不是大家一起坐下来开个会能解决问题的。如果这6个将军里有叛徒,他们会想法设法去骗其他将军发动进攻,自己可以抢夺他们的财物。

经过计算机专家研究,如果叛徒达到或者超过1/3,拜占庭将军问题便无解。比如只有三个将军,有一个是叛徒,当第一个将军发动进攻命令时,第二个将军是叛徒,他会告诉第三个将军,他收到的是撤退命令,第三个将军收到一个撤退和一个进攻的命令,就会感到很困惑,无所适从。

在中本聪发明比特币之前,拜占庭将军问题解决方案有两个,但都有漏洞,不能让人心悦诚服。首先是口头传信方式,就是将军们派人口头传达信息,好处是每个消息都能被传递出去、信息接受者知道发信人是谁、谁没发信也能被发现,每个时间点同时有5个信息发送出去,6个将军就会有30个信息发送出去。一轮下来,每个将军收到5个信息,最好的结果是:“如果多数说进攻,少数服从多数,进攻就可能成功,有少数叛徒也不影响取胜。”

但这个方案有两个明显的缺陷,首先是信息无法溯源,不知道上一个消息来源是谁,就是无法通过不一致的信息找到叛徒是谁。其次是即使多数人主张进攻,每个将军主张的进攻时间也不一定相同,很难一起行动起来。

其次是书面协议,6个将军每个人都可以向其他5个将军发起进攻信息,比如约定在某一时刻进攻拜占庭,同意就签字盖章,收到信息的将军如果同意就会签字盖章。

比口头协议好的是将军的签名不可伪造,其他将军可以验证签名的真伪,信息是被记录在案,可以溯源,进攻时间也可以同步一致。但书面协议不能解决签字信息由谁来保存的问题,最后还是摆脱不了中心化。最根本的一致性问题也没有解决,就是每个将军随时都可以发起进攻命令,自说自话,容易造成混乱,达不成共识。

有没有更好的方案来解决拜占庭将军共识问题呢?可以先用非对称加密解决签名信息摆脱不了中心化的问题。比如A将军给B将军发送进攻命令,A用B的公钥加密,B收到信息后,如果同意进攻,可以把信息用自己的私钥加密,发送给其他将军,解决了签名信息由中心化保管的问题。

解决最根本的一致性问题

中本聪发明的比特币系统很好的解决了这个问题,就是引入工作量证明共识机制。让发动进攻命令的将军要付出一定的代价,拉开了两个进攻或撤退命令的时间间隔。你要想第一个发动进攻命令,就要寻找一个随机数,使得知道部分信息的哈希值,要小于一个目标值,还要大于等于区块头给定的难度值。先不说这个随机数要大于等于难度值,只说要小于目标值,就要耗费很大的工作量。因为这个目标值前几位都是0,哈希值是由大小写字母和数字组合而成,如果目标值前有一个0,它就有62种可能性,两个0就是62的平方,当零的个数不断增加,难度系数将成指数级增长。比如你掷一个筛子,掷小于6的点数,你可能只需掷一次,如果掷小于2的点数,你可能要掷很多次。

这就让将军们在一定算力的情况下,要找到这个随机数一般需要花10分钟左右的时间。

找到随机数的将军,会把区块头的信息和随机数向全网进行广播,其他矿工收到信息,会立即停下挖矿工作,开始验证收到的信息,一旦验证通过,他们会依据当前信息再次寻找下一个区块的随机数。

这就让在一段时间内只有一个将军发动进攻或撤退命令,其他将军如果收到叛徒发送的错误交易信息,是不会被接受的,因为一笔交易信息的变动会影响Merkle根的哈希,从而影响区块头的哈希,就是会影响上个区块的哈希。

你看工作量共识,让一段时间内只有一个将军发送命令,其他将军收到命令立即验证真伪,一旦验证成功立即执行命令。拜占庭将军问题完美的解决了。

image.png

我们再来看非拜占庭将军问题有没有解决?比如单个节点可能掉线、死机、发送错误的信息。

在工作量证明机制下,节点认可的是最长链,因为最长链代表的是最大的工作量。比如你的电脑死机、掉线或者接收到临近节点发出的错误信息,你只要在重新联网时,向附近节点同步一下拥有最长链的哪个账本就可以了。你看工作量共识很好的解决了分布式系统一致性问题。

上一篇: 发明比特币的是为了提高可靠性吗?
下一篇: 以太坊USDT总量接近比特币网络,比特币矿工收入超150亿美元
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
Solana
181.08 USDT
¥1,313.10
-0.85%
比特币
66068.97 USDT
¥479,099.14
-0.69%
Curve
0.2556 USDT
¥1.85
-2.44%
Filecoin
4.3368 USDT
¥31.45
-3.08%
FTX Token
1.3826 USDT
¥10.03
-2.7%
比特币SV
51.0416 USDT
¥370.13
-3.46%
狗狗币
0.1251 USDT
¥0.91
-3.32%
柚子
0.5851 USDT
¥4.24
+2.27%
Yield Guild Games
0.4729 USDT
¥3.43
-3.82%
瑞波币
0.6491 USDT
¥4.71
+8.06%
奇亚
18.711 USDT
¥135.68
-1.57%
Conflux
0.1673 USDT
¥1.21
-1.65%
最新快讯
更多
Deribit上某大宗期权用户卖出10月底看涨和看跌以太坊期权,总计500枚ETH
2024-07-31 11:46:21
半小时前3800万枚XRP从Upbit转至r4186开头地址,价值约2482万美元
2024-07-31 11:45:58
Eclipse主网现已向开发者开放,首届黑客松奖金接近5万美元
2024-07-31 11:42:34
首尔法院命令GDAC归还780万WEMIX代币给WemadeCEO
2024-07-31 11:37:21
顶峰AscendEX将上线why(WHY)
2024-07-31 11:34:05
HashKeyGlobal即将上线WLD、ENS和BLUR
2024-07-31 11:28:00
去中心化跨链资产管理平台Mycel完成种子轮融资,CVLabs等参投
2024-07-31 11:26:01
下载币界网APP