看比喻秒懂所有区块链晦涩词汇

文章正文
发布时间:2024-07-20 06:06

区块链中的技术名词总让人不知所措,常让我等普通人只能默默混币圈。但是,今天,要发车非要开一把车,把这些高大深的名词拉下高高的殿堂。

1、零知识证明

比喻

一个盲人是否能判断小明是否是色盲?表面上看是不可能的,因为他本身是个盲人,他怎么知道小明能不能分辨红绿呢?

但这里有个方法,就是盲人事先准备好红绿颜色的两个小球,一只手一个,然后他可以在背后把球左右手交换或者不交换,然后再拿到前面问小明顺序有没有被换,如果小明次次都能答对,说明不是色盲,反之则是色盲。

原理

零知识证明(Zero-knowledge proofs)是一种特殊的交互式证明。像其它计算模型一样,在交互式证明中,我们的目标是对一个语言L,和一个给定的输入x(事先准备好的红球、绿球),通过验证者(盲人)和证明者(小明)之间交换信息,最终,由验证者来根据证明者给出的信息,判断x是否在L(小明是否能判断红绿)中。

在零知识证明中,证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息——好比小明能向盲人证明自己不是色盲,但证明过程中可以只回答“交换了/没交换”,如此就没有泄露交换的东西是“红绿球”。

应用

目前,零知识证明广泛被运用在密码学中,包括区块链项目ZCash的交易过程——转账时,即使不知道对方的身份,也没看到“支票”,也能确认资产所有权已被有效转移,达到匿名交易的效果。以太坊创始人Vitalik 也曾公开表态其适用于以太坊所有应用场景,能够兼顾安全性和隐私性。

2、环形加密

比喻

假如说,柯东我是要发车的头头(只是假设哈),但是我平时无恶不作——公然抢红豆的零食吃,趁吴嗷不注意抽开他的椅子,太守哥写错一个字我就狠狠拍他的头......终于,同事们忍无可忍,决定联名写封吐槽信给我,但他们又怕枪打出头鸟,居然发明出了一种环形签名的方式——在信的最后,所有人的名字照着圆形排列,这样就隐藏了签名的顺序,因此我无法追查发起人。

签名的效果类似小程序的二维码——把墨点替换成签名

原理

环形保密交易技术,即RingCT是Ring Confidential Transactions的缩写。

RingCT引入了名为“多层级可链接自发匿名组签名”的改进版本的环签名,该签名允许通过合理的效率和无需信任便可验证的代币生成机制,来隐藏交易金额、交易发起方和交易对象。

(RingCT introduces an improved version of ring signatures called "A Multi-layered Linkable Spontaneous Anonymous Group signature", which allows for hidden amounts, origins and destinations of transactions with reasonable efficiency and verifiable, trustless coin generation.)

应用

2017年1月,环形保密交易技术被实施在门罗币编号为#1220516的区块上,在2017年9月后,这一特性被运用在门罗币所有的网络交易上。通过将交易数额和交易地址的保密,门罗币提高了交易的隐私性。

3、隔离见证

比喻

某市市长为了街道美观,拍脑袋批了一项新的交通法规,规定市大道上今后只允许占地总面积为500个单位面积的车辆(1个区块)通行,而市里的车占地面积都是50个单位的面积(1笔交易),这样的话市大道一次只能跑10辆车(1个区块内只能承载10笔交易),严重影响到了市民的生活;之后,我们机智的市民们改造了自己车的结构—把后备箱放到了车顶上,这样车的占地面积就减少到了25个单位面积,这样之后市大道一次就可以合法的跑20辆车,市民生活效率进一步提高~

原理

隔离见证(SegWit)是为了让区块链承载更多的交易量而设计的,区块上的信息分为交易信息和见证信息。交易信息就是谁给谁在什么时间转了多少钱。见证信息就是哪个节点在什么时间验证交易信息的可靠性。中本聪在设计比特币的时候直接把这两个信息直接放在了区块内,所以一个区块就承载不了更多的交易信息,如果隔离了“见证信息”,那么区块链只记录交易信息,一个区块便可承载的交易更多交易

参考

应用

隔离见证优化了比特币中的区块结构,使得一个区块可承载的交易更多交易。

4、分片

比喻

嘿嘿,俗话说男女搭配干活不累。你一个人在家做完所有家务也许需要花两小时,但是来了个男的帮你,你们把家务分成做饭和打扫卫生两部分,分配后同时开始做,那么最后也许一个小时就做完了。

区块链应用这一原理,则可以使区块链的可扩展性大大提高,交易速度有望达到支付宝级效果。

原理

目前,为了在区块链上执行交易,网络中的所有计算机或节点都必须验证交易或执行智能合约。智能合约就是网络中存储的一段等待执行的代码,该代码描述了交易需要符合的条件。如果所有节点的验证结果相同并达成一致,则交易就得到确认。不难想象,这个过程需要时间。

分片通过多个联网机器的并行处理能力运行,这些机器分担了验证交易的工作。它会自动将网络划分成较小的部分,也就是“分片”,每个分片都运行一个小规模的共识协议。

这种网络可以并行处理,每个分片每秒能够处理数百笔交易,这样该网络每秒处理的总交易就达到了上千笔。

随着更多节点的加入,这种网络在验证交易时会越来越快。一旦该网络的规模达到以太坊的程度,它每秒就能够处理非常多的交易了,比Visa更快更便宜。

参考来源:https://www.aliyun.com/zixun/content/37_81_2033633.html

应用

目前以太坊、Zilliqa等都在运用分片技术来解决因网络拥堵导致而交易速度慢的问题。

5、闪电网络

比喻

假如柯东开了个地下赌场(真的只是假如),为了规避风险,在赢钱输钱时又不能每一笔都用支付宝、微信、银行卡直接转账。那应该先怎么办?当然是先用砝码记账,之后砝码再换成钱。

赌场老板柯东和赌徒红豆在每笔输赢时都互相转移两人彼此的砝码,以确认各自的余额,比如一开始我有3个砝码,她2个,我输了一局后,就是我2个,她3个。

可是有一天,赌徒吴嗷远程在网上和赌场里的红豆赌了一局,吴嗷输了,要给红豆一个砝码,但吴嗷的砝码都还存在赌场的保险柜里,肯定直接给给不了。于是吴嗷写了个密码程序,想通过我帮忙,给红豆钱。我通过这个密码程序去他的保险柜取出了他输给红豆的一个砝码,转移到我这,我再转移给红豆。

如此一来,以这种方法,只要所有的赌徒都在赌场预先存有砝码,就算他们远程赌博,不能直接支付,也可以发给我密码程序,以我为中介完成转账,省掉了转支付宝的风险也省掉了来现场付钱的麻烦。

原理

使用闪电网络的第一步就是要打开一个双向支付通道,比如A和B之间要打开一个双向支付通道,即A和B分别往一个2-2签名的多重签名地址转入一定余额的比特币,比如(A:0.1BTC; B:0.5BTC),0.1BTC归A;0.5BTC归B。

A要向B支付0.05BTC,那A和B就可以对这个2-2签名的地址进行签署调整余额状态为(A:0.05BTC;B:0.55BTC)。

但支付通道伟大的地方在于可以将各个支付通道连接在一起。比如A和B之间有通道,A和C之间也有通道,那B可以通过签署转账密文,拜托A向C发送比特币。

如果有一个人同时和世界上所有的人建立了双向支付通道,那就意味着世界人所有的人都可以利用这个人做为中介发送比特币,而且这几乎是瞬间完成的,不需要向比特币主链那样需要广播交易让矿工们来确认。

可参考科技梦想达人的《闪电网络原理通俗解释》

应用

比特币未来若借助闪电网络,则可提高转账速度,但是这样会产生一定的资金池,产生多个小规模的结算中心,会有一些风险。

6、智能合约

打比方

比特币=区块链+电子现金

以太坊=区块链+智能合约

最简单的智能合约例子就是自动售货机,你投入3块钱硬币(现在变成了扫码支付),机器自动给你一瓶矿泉水。

现在通过手机自动划款,支付水电煤气费用也是智能合约的一种体现。

看到这里,你可能会有疑问,那智能合约不是早就实现了?我们还需要区块链做什么?

原理

传统的智能合约是运行于中心化数据库上,一旦中心化数据库遭到破坏攻击或者篡改,合约就无法兑现。区块链不可篡改及去中心化的特性,使得尼克萨博于1995年提出的智能合约理念得到了真正的实现: “一个智能合约是一套以数字形式定义的承诺(promises),包括合约参与方可以在上面执行这些承诺的协议。”

信用建设的成本是很昂贵的。我们相信ATM不会把我们的纸币变消失,我们相信支付宝不会多扣我们的款。一个合约的中心化执行者,人们对它的信赖源于其长时间的稳定及不作恶。然而,这并不是一开始就理所当然的事情。雷曼兄弟银行破产,津巴布韦币变成废纸

——魔幻的中心化机构“报废”让人难以相信,这竟是十年内发生的事情。

应用

然而,在区块链上的智能合约,让我们无需相信合约方,只需要相信区块链会完成这个合约即可。

这就是去信任。目前智能合约主要应用在哀嘻殴、加密猫上,未来则会应用在合同、土地所有权、供应链等多个领域上。

7、非对称加密

比喻

long long ago 有一家大餐馆,大到自己做菜都来不及的那种大,老板决定把一些招牌菜外包给小作坊,即把做菜的配方做法送去给小作坊,小作坊做好菜再送过来。但是老板考虑到配方在送去的路上被别家餐馆偷看走,那自家的招牌菜别家也会做可不行,于是老板把配方分成两部分,第一部分是基本配料和做法(公钥),第二部分是只有老板知道的秘密佐料(私钥);老板只需把第一部分(公钥)送去给小作坊,小作坊做好菜送回来后,老板再在菜中加入秘密佐料(私钥),这样之后招牌菜才真正解锁。

原理

这里需要先介绍下什么是对称加密:对一个信息进行加密和解密使用的密钥是同一个,则为对称加密算法。该算法有个缺点就是如果密钥容易泄露,信息的安全性较低。

非对称加密算法则有两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。

应用

这种加密算法应用非常广泛,区块链,SSH, HTTPS, TLS,电子证书,电子签名,电子身份证等等,使得信息传递过程更为安全。

8、工作量证明

比喻

你和一群选手去参加最强大脑,比赛做算术题。这类题目的特性是:答案非常难算出来,但结果很容易验证对错。并且,这场比赛规定:最先做出来的选手积12.5分。

去中心化的最强大脑比赛没有裁判,而是依靠其他选手的验证。

智商超群的你秒出答案,马上通知全场选手,选手们验证答案通过后,系统会给你积12.5分。接下来的比赛,选手必须在你这题的基础上再解答下一题,否则没有奖励。

以上就是比特币的挖矿奖励模型。为解题付出的辛苦相当于工作量证明。

原理

实际上, “挖矿”的本质是网络节点(选手们)重复计算随机字符串的哈希值(比赛做算术题),以获得唯一记账权,验证通过后其他节点复制记账结果,这样就保证了账本的唯一性。第一个计算出正确哈希值的节点会收到12.5比特币奖励(积分)。

应用

现在,大部分区块链的激励机制运用的都是这个模型。

9、哈希函数

比喻

“一种记录、分析、总结、组织、讨论及解释信息的、有插图或无插图的、硬抄或平装的、加套或不加套的,包含有前言、介绍、目录表、索引的用以增长知识、加深理解、提升并教育人类大脑的装置,该装置需要视觉、有触碰的感官形式使用。” ——《三傻大闹宝莱坞》

看过这部影片的朋友想必对这句台词并不陌生。

在课堂上教授提问什么是机械,阿米尔·汗以举例子的方式作出回答。然而,教授更希望听到标准的教材定义,另一个学生查图尔流利地背诵道:“机械装置是实物构建的组合,各部分有确定的相对运动,借此,能量和动量相互转换,就像螺丝钉和螺帽,或者杠杆围绕支点转动,还有滑轮的枢纽,之类的。尤其是构造,多少有点复杂。”

教授对查图的回答很满意。阿米尔·汗不满地离堂,离开前,他说出了最上边那段话后反问教授:这又是什么呢?

教授一时语塞。

“书本。”阿米尔汗回答道。

这个过程,就是阿米尔汗对一段原始信息的摘要。当然,查图尔对机械的那段描述,也是一次摘要。明白了摘要的概念,我们就能很好地理解哈希函数。

原理

在区块链的世界中,我们必须了解的知识点之一便是“哈希函数”。

该函数表达式为hash(x)= y 即hash(原始信息)= 摘要信息

这个函数有以下几个特点。

1、同样的原始信息用同一个哈希函数总能得到一样的摘要信息。

2、原始信息任何微小的变化都会使摘要信息大相径庭,因此不存在两条不同的原始信息使摘要信息相同。

3、从摘要信息无法逆向推算出原始信息。

4、无论原始信息长度如何,摘要信息的长度为固定值。

比特币采用的哈希算法为SHA-256(Secure Hash Alogrithm 256),这并不是中本聪发明的新技术,而是很早就由美国国家安全局(NSA)设计。采用SHA-256函数的哈希值(即摘要信息)长度为数字和字母混合的64位字符(256比特)

红豆在网上找了个在线哈希工具,直观地为大家演示一下。

假设我们的明文是:I love you

sha256(I love you)=c33084feaa65adbbbebd0c9bf292a26ffc6dea97b170d88e501ab4865591aafd

如果我们对明文作一点微小的改变

sha256(I lOve you)=9e743c1fb78c86215e42014340934b00f6cfdb7acbf6435c834ea733066f17e1

这就是谈到区块链,我们绕不开的哈希函数啦:

在POW共识机制中,通过哈希算法产生摘要,可以直接把区块数据哈希成唯一的一串字符,减少了历史数据的容量,让节点同步区块时更省空间。

区块链中,链链相扣,每一个新区块包含1)新发生的交易、2)、上一区块的哈希值,3)一个随机数。矿工计算出正确的随机数,以满足头部有足够多的零的一串哈希值后,可以获得奖励。

Hash(上一个Hash值,交易记录集,随机数) = 0000aFD635BCD

比特币挖矿中的算术题,就是暴力破解随机数的数值。

此外,在交易过程中,哈希函数还能保证交易信息安全传输,不被篡改。

首页
评论
分享
Top