比特币分叉风险(比特币的分叉币比特热点)

阿花

比特币分叉风险(比特币的分叉币比特热点)


区块链鼻祖比特币之8:分叉带来的双花支付、51%攻击与解决办法


                
分叉
  
前面讲到了比特币通过区块链+工作量证明的独特设计来解决了时间顺序,但是不能保证在同一时刻有两个节点算出了正确的解,虽然这种可能性很低很低。这就带来了区块的分叉。
                                          
虽然说几乎同时有两个节点计算出这一数学问题的可能性微乎其微,但是仍然存在这样的可能性,所以分叉就以为着同一个区块的后面可能会跟上两个不同的区块。
                                          
规则的打破一直要到下一个区块被人解开。则会立即转向最长的区块,而那些短的区块则会被抛弃。数学问题使得区块很难被同时拆解。要连续发生多次更是困难。最终区块链会稳定下来。也就是说所有人对最后几个区块顺序达成共识。分叉意味着,譬如,若你的交易出现在较短的支链,它就会失去进入区块链的位置。一般而言,只代表他会回到未确认交易池。然后被纳入到下一个区块。
  
  比特币网络如何解决分叉带来的双花支付
  
可惜,交易失去区块位置的潜在可能,给了本来定序系统防范的重复支付攻击机会。考虑下面的一个攻击者A,其首先用自己的比特币交换B节点的货物,其立即又支付给自己。然后其通过努力的制造更长的链条来让自己的支付替代掉B节点的支付,从而实现了双重支付,B节点既得不到钱,还失去了货物。
                                          
这时交易会退回到未确认池中,因为A节点已经利用参照同样的input交易取而代之。节点就会认为Bob的交易无效。因为已使用掉。
                                          
你可能会猜测A节点会预先的计算出一支区块链,然后抓住时机发布到网络。但是每个区块的数学谜题阻挡了这个可能性。如前面所诉,解开区块是猜测出一个随机数的过程。一旦得出答案,解出的哈希值就会成为指纹一样的区块识别。只要区块内容有一丁点变化,下一个区块的参考值就会完全不同。此机制的结果就是无法在区块链中置换区块。在得到前一个区块之前,下位区块无法被解开。前一个区块的指纹也是杂凑函数的引数之一。
  
同时,该工作量证明机制还解决了在集体投票表决时,谁是大多数的问题。如果决定大多数的方式是基于IP地址的,一IP地址一票,那么如果有人拥有分配大量IP地址的权力,则该机制就被破坏了。而工作量证明机制的本质则是一CPU一票。“大多数”的决定表达为最长的链,因为最长的链包含了最大的工作量。如果大多数的CPU为诚实的节点控制,那么诚实的链条将以最快的速度延长,并超越其他的竞争链条。如果想要对业已出现的区块进行修改,攻击者必须重新完成该区块的工作量外加该区块之后所有区块的工作量,并最终赶上和超越诚实节点的工作量。我们将证明,设想一个较慢的攻击者试图赶上随后的区块,那么其成功概率将呈指数化递减。另一个问题是,硬件的运算速度在高速增长,而节点参与网络的程度则会有所起伏。为了解决这个问题,工作量证明的难度(the proof-of-work difficulty)将采用移动平均目标的方法来确定,即令难度指向令每小时生成区块的速度为某一个预定的平均数。如果区块生成的速度过快,那么难度就会提高。
  
  如果有一台超级电脑,能够在区块解题中获胜?
  
即便是一台超级电脑,或者时几百上千台电脑也很难赢得解一个区块的胜利,因为竞争对手不是任一台电脑,而是整个比特币网络。你可以用买彩票来比拟。操作千百台电脑,如同买了千百张彩票一样。
  
  51%攻击是指的什么
  
根据前面的例子,我们知道,要想有50%的概率领先其他人解题得到胜利,就需要掌握全网50%以上的算力。要连续领先他人解出区块,掌握的运算能力还需要高得多。所以区块链中的交易是受到数学竞赛所保护。恶意用户必须和整个网络较量。区块连接建立的结果,使得在支链越前方的交易越安全。恶意的用户必须在更长的时间赢过全网络,来达成重复支付,替换前面的区块链。所以,系统只有支端末尾易受到重复支付攻击。这也是为什么系统建议多等几个区块,才能确认收款成功。

个人博客:

祸起分叉:意识形态决定BCH无法摆脱分叉威胁


                
比特币 现金当前正面临分裂。BitcoinABC的开发者似乎完全没有注意到这种威胁,因此他们提议在11月15日就非关键问题进行硬分叉。目前尚不清楚其他BCH客户端,如BitcoinUnlimited和CraigWright的新项目BitcoinSV,在11月15日当天的计划。但很明显的是,社区中存在很多敌对情绪(开发人员被禁止进入沟通频道),并且比特币现金很有可能分裂成多个链。各种趁火打劫的链已经开始出现,比如BitcoinCobra和BitcoinStash都试图利用这种情况。

比特币现金建立在一种意识形态(理念)的基础上,即一个硬分叉的少数链可以成为原链的合法继承者。“比特币现金就是比特币”是RogerVer发明的基于这一信条的说辞。因此,比特币现金社区内的分歧将通过分叉的方式来解决,使用这一信条作为理由,并不让人感到意外。下面将进行详细的说明。
  
  任何一个大型群体的核心基础都在于意识形态(理念)。没有意识形态,国家、宗教和政治运动都不可能存在,加密货币也一样。稳定的意识形态能使社区蓬勃发展。宗教中一个简单的例子就是基督教的信条,即“真正的上帝只有一位”。这种信仰加强了基督教的力量,因为它削弱了其他竞争宗教的影响。意识形态不稳定的社区最终会崩溃。比如Shakers,一个18世纪的基督教派,它认可独身主义为核心信条。Shakers现在已经消失了,这并不让人意外,因为其成员没有生下孩子以延续这种宗教活动。
  
  解释了比特币现金存在合理性的意识形态也同样证明了使用链分叉来解决社区内任何分歧的合理性。很容易看出,这种意识形态,即一个硬分叉的少数链可能是原链的合法继承者,是非常不稳定的。BCH专家DavidJerry建议,为了解决分叉问题,少数链应该向获胜的链投降并转换到获胜的链,但是他没有意识到比特币现金本身就是比特币的少数链。
  
  虽然DavidJerry的解决方案在比特币中是明智的,但它与比特币现金意识形态完全不相容。因此可以合理地得出结论:比特币现金将面临永无止境的威胁——社区成员威胁要永久地从主链分叉。可以预测,在1年内,将有多个竞争的硬分叉出现。最终,比特币现金网络可能分叉很多次,在最坏的情况下,它可能成为加密货币历史中一个被遗忘的脚注。

现在让我们回到引发比特币分叉的最初争论上,即区块大小的争论。比特币极端主义者经常说区块大小的争论与区块大小本身毫无关系。这是事实,区块大小的争论是关于保持稳定的意识形态。比特币极端主义者在区块大小争论中想要坚持的最重要的信念就是,向后兼容性永远不会被破坏(或者我们永远不会硬分叉)。这种意识形态是稳定的,因为它保证了未能成功进行软件升级的成员永远不会被网络排斥。这听起来可能像是对软件项目的严格要求,但比特币不仅仅是一个软件项目。它是一种对一大群人进行协调的方式,而这些人会面对极度敌对和强大的对手。了解这一事实后,很明显软件升级可能是一个很大的攻击向量(黑客用来攻击计算机或者网络的一种手段),并且当攻击者完全参与时可能是不可行的。
  
  批评者说,目前没有国家级的对手完全参与攻击,而且硬分叉在实践中是完全可能的。这些说法都是正确的。但是他们不理解的是意识形态的本质。意识形态只有通过严格遵守才能得到加强。当对手突然参与时,加密货币项目将无法轻松转换到不允许硬分叉的政策。对于比特币现金这样的项目,它已经在一年内硬分叉两次以解决问题,用户已经习惯于相信硬分叉是安全的。因此,当一个由国家赞助的恶意硬分叉出现时,他们将成为毫无防备的攻击目标。相比之下,比特币用户已经习惯于相信所有硬分叉都是不安全的,因此当这种攻击发生时,它们将免受影响。

一个稳定、可持续的意识形态必须是所有加密货币的基础。任何形式的加密、共识协议的开发和技术的优化都不能帮助一个带有不稳定意识形态的加密货币发展壮大。

区块链为什么有分叉?分叉会发生什么情况?


                
????区块链的分叉(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%都是诚实可靠的,能保证整一个区块链在合法有序的进行运行。
  
????但是为什么选择过半的算力,而不是过半的用户?比特币系统,任何人都可以加入,且创建账户及其简单,只需要本地产生公私钥对即可。只有转账(交易)时候,比特币系统才能知道该账户的存在。这样,黑客可以使用计算机专门生成大量公私钥对,当其产生大量公私钥对超过系统中一半数目,就可以获得支配地位(女巫攻击)。因此,比特币系统中很巧妙的使用算力作为投票的依据。

比特币挖矿是什么意思


                



什么是比特币挖矿


                
比特币挖矿是一种获得比特币的方式,简单来讲就是全网矿工一起来做一道题目,谁先做出来,谁就会得到比特币奖励,“矿工”需要在区块努力工作,就是消耗计算资源来处理交易,挖矿对于设备的配置要求相当高,提高设备配置,可以加强运算能力,也能更快的获得比特币。  比特币是一种电子货币,由开源的P2P软件产生,可以用来交易,也可以通过交易来获利,比特币挖矿运用的是哈希算法,在比特币系统里面,需要进行大量哈希运算,计算的值需要符合规定,谁运算的快,谁能挖到的比特币就越多。
拓展资料
比特币挖矿,是一种利用电脑硬件计算出比特币的位置并获取的过程。  挖矿是在比特币系统中进行记录数据的一个激励过程,在比特币系统个人用户通过利用CPU或者GPU进行哈希运算,当计算出特定的哈希值之后便拥有了打包区块的权利。  而为了奖励这个用户进行打包区块,系统就给予一定的比特币作为报酬。因为这个过程很像现实生活中“挖矿”所以大多数人就把这个过程叫做挖矿。除了比特币外,其他的电子虚拟货币也可以通过挖矿奖励获取,如以太坊、门罗币等等
挖矿风险:
1,货币安全
比特币的支取需要多达数百位的密钥,而多数人会将这一长串的数字记录于电脑上,但经常发生的如硬盘损坏等问题,会让密钥永久丢失,这也导致了比特币的丢失。
2,系统风险
系统风险在比特币这个里面非常常见,最常见的当属于分叉。分叉会导致币价下跌,挖矿收益锐减。不过很多情况表明,分叉反而让矿工收益,分叉出来的竞争币也需要矿工的算力来完成铸币和交易的过程,为了争取更多的矿工,竞争币会提供更多的区块奖励及手续费来吸引矿工。风险反而成就了矿工。

目录[+]