一、区块链为什么有分叉分叉会发生什么情况
区块链的分叉(fork)的形成原因可能有多种。
当两个结点几乎在同一个时间挖到了矿并同时发布区块,此时就出现临时性的的分叉(state fork),
本质上是对比特币这个区块链当前的状态产生了意见分歧,
当人为的发起分叉攻击(forking attack),也就是故意造成这类分叉(deliberate fork)还有一类分叉是,当比特币的协议发生了改变的时候,软件需要升级。而在分布式系统中不能保证所有节点同时升级软件,假设存在部分节点未升级,会导致协议分叉(protocol fork)。对协议修改的内容的不同,又可以将分叉分为硬分叉(hard fork)和软分叉(soft fork);
比特币协议增加新协议,扩展新功能,未升级软件的旧节点会不认可这些修改,会认为这些特性是非法的。这也就是对比特币协议内容产生分歧,从而导致的分叉叫硬分叉。此时,就出现了新节点永远沿着新节点产生的链挖矿,旧节点永远沿着旧节点链挖矿,由于新节点算力足够强,所以形成两条永远都在延伸且平行的链。只要这部分旧节点永远不更新,则旧链将一直延续,可见这种分叉是持久性的。
出现hard fork后,便变成了两条平行的链,也就造成了社区分裂。社区中有一部分人,会认为下面的链才是根正苗红,各个链上的货币独立。以太坊历史上的一件大事就是硬分叉事件。以太坊称为ETH,但目前看到的ETH已经不是最初的ETH了,以太坊在历史上发生过硬分叉,另一个链称为ETC。实际上,ETC才是以太坊设计原本的协议,而ETH是黑客攻击ETH上一个智能合约THE DAO后,进行回滚的协议链(将黑客攻击偷取的以太币采用硬分叉方式回滚回到另一智能合约,然后退还给真正拥有者)。
分叉之初,由于两个链分叉造成了互相影响,产生了很多麻烦。比如:在ETH链上有一笔转账B->C,有人便在ETC链上回放,将ETC链上的货币页转给了C(C收到两笔钱)。后来,对两条链各添加了一个chainID,将两个链区分开,才使得这两条链真正分开。
如果对BTC协议添加限制,使得原本合法交易在新交易中不合法,便会形成软分叉。
当大多数节点已经更新完毕之后,旧节点认可新节点挖出的区块,因此发布自己挖出的区块,但新节点不认可旧结点挖出的区块,便沿着上一个新节点发布的区块继续挖矿,当新节点拥有大部分算力的时候,新链会越来越长,从而旧节点挖出并发布的区块一直被抛弃,无法获得出块奖励,最终倒逼旧节点升级软件,实现所有节点认可新协议并进行升级。可见,只要系统中拥有半数以上算力节点更新软件,此类分叉不会出现永久性分叉。比特币脚本中的P2SH就是通过软分叉方法加进去的。
这一部分我并没有查到太多的资料,但是在绝大多数共识协议之中我们都假设需要过半算力;
在理论上,如果掌握了50%以上的算力,就拥有了获得记账权的绝对优势,可以更快地生成区块,也拥有了篡改区块链数据的权利。因此,当具有过半的算力,也就是51%都是诚实可靠的,能保证整一个区块链在合法有序的进行运行。
但是为什么选择过半的算力,而不是过半的用户?比特币系统,任何人都可以加入,且创建账户及其简单,只需要本地产生公私钥对即可。只有转账(交易)时候,比特币系统才能知道该账户的存在。这样,黑客可以使用计算机专门生成大量公私钥对,当其产生大量公私钥对超过系统中一半数目,就可以获得支配地位(女巫攻击)。因此,比特币系统中很巧妙的使用算力作为投票的依据。
二、比特币为什么要进行分叉
在区块链和比特币等数字货币的讨论中,我们经常听到“分叉”这个词,那么到底什么是分叉呢?分叉又会有什么影响呢?
区块链
在说分叉之前,先普及一点区块链的小知识,这样更容易帮助我们理解分叉是什么(如果你对区块链一点概念也没有,欢迎翻阅我以前的文章,都是些通俗的话语帮你了解什么是区块链)。
区块链,顾名思义,就是由区块组成的链条,当然这种链条只是一个形象比喻,说白了就是数据区块有序地连接起来。在比特币中,区块中存放的是比特币的交易记录,区块的大小和交易记录所占用的空间决定了一个区块能存放多少交易记录。这些交易记录被打包到区块中,然后区块一个个相连就构成了区块链。
为什么要分叉
我们知道,比特币软件像其他软件一样,需要定期更新和修改,以便让他更好。所以新的版本就会出现,但是由于不是所有人都即使下载了新版本,所以有个矿工就运行了旧版本,有的则运行了新版本,那么一旦新旧版本不兼容的话,区块链就会分叉。因为因版本的区块和旧版本的区块可能存在差异,所以他们不能被连接到同一个区块链上,所以就会出现两条链,甚至多条链,这就是分叉。
软分叉
软分叉指的是,当新共识规则发布后,没有升级的节点会因为不知道新共识规则下,而生产不合法的区块,就会产生临时性分叉。这种分叉会随着节点的升级而逐渐修复。
硬分叉
硬分叉指的是,区块链发生永久性分歧,在新共识规则发布后,部分没有升级的节点无法验证已经升级的节点生产的区块,通常硬叉就会发生。所以,在数字货币领域,硬分叉往往导致新的币种出现。例如以太坊的硬分叉就导致了 ETH的出现。
原文:什么是分叉?什么是比特币分叉?
三、ETC当时为什么硬分叉
以太经典(ETC)是以太坊(ETH)的原链,ETH是从ETC硬分叉出来的。分叉起源于一场意外的盗币事件。The DAO计划基于以太坊智能合约建立一个众筹平台,于2016年5月正式发布,截止当年6月,募集资金超过1.6亿美元。
此后,The DAO被黑客利用智能合约的漏洞,转移了市值五千万美元的以太币,为了挽回投资者资产,以太坊社区投票决定将更改以太坊代码,并在以太坊第#1920000区块进行硬分叉,回滚所有以太币(包括被黑客占有的),挽回损失。
但是,有一部分人认为以太坊这种做法违背了区块链的去中心化和不可篡改精神,坚持在原链上挖矿,从而形成两条链。一条为不承认回滚交易的原链-以太经典(ETC),一条为承认回滚交易的新链即以太坊(ETH),各自代表不同的社区共识以及价值观,分叉时持有以太币的人在分叉后会同时持有ETH和ETC。
四、以太币分叉出大儿子ETF出于什么需求
ETH作为区块链技术的2.0的代表,其诞生在区块链发展史上具有里程碑式的意义。如果比特币是区块链的第一个应用,那么ETH背后的智能合约技术,则更加的接近区块链本身所要解决的问题
以太雾EthereumFog,简称:ETF,是以太坊Ethereum的分叉链,是为了解决以太坊所缺乏的分布式存储和分布式计算能力而生,后期会切换为POW+POS混合挖矿。原生Coin为ETF。
1、利益的需求。针对这一点,内参从来不掩饰。现在的分叉,或多或少都夹杂着背后利益团体的诉求。追求利益,追求高效的资金投资回报率是永恒的主题。
中国有句古话叫:一鼓作气,再而衰,三而竭。比特币经过多次的分叉,价格被推上新高,已经成为很多人“买不起”的标的,并且由于单价的高昂,使得分叉带来的糖果越来越没吸引力,用句玩笑话就是:比特币稍微一哆嗦,也许你心心念念的糖果钱就跌进去了。
基于此,主力何尝不明白。那么,就顺理成章转而向其他主链寻求分叉利益。以太坊作为全球市值第二大数字货币,无论从规模还是群众基础,都是最佳的选择对象。
当然,以太之后,还会有别的分叉主链被瞄上,我们不妨拭目以待。
2、进化的需求。这一点其实应该放在首位,但是在投机氛围下,反而成了容易被忽视的点。
我们不得不承认,现在的比特币也好,以太坊也罢。要想真正大规模商用,还存在诸多的问题,而且每个问题都是一块硬骨头。一只“猫”给以太坊造成了不小的麻烦,有计划说,一些团队正在依葫芦画瓢,开发“狗、兔子”等以太坊链上养成游戏。以太坊对于技术(扩展性、处理能力、并发量、延时性等)的需求已经迫在眉睫。
而基于共识的分叉,是受大家欢迎的,也是必需的。
本站所有软件信息均由用户上传发布,版权归原著所有。如有侵权/违规内容,敬请来信告知邮箱:764327034@qq.com,我们将及时撤销! 转载请注明出处:https://www.ssyg068.com/biquanzx/14179.html
发表回复
评论列表(0条)