比特币白皮书中,有过这样的表述:诚实节点控制算力的总和,大于有合作关系的攻击者算力的总和,该系统就是安全的。
换句说,当系统中有合作关系的恶意节点所控制的算力,超过诚实节点所控制的算力,系统就是有被攻击的风险。这种由恶意节点控制超过50%算力所发起的攻击,称为51%算力攻击(51% Attack)。
那是不是所有的加密货币系统都有可能遭遇51%算力攻击的风险呢?其实并不是的,只有基于PoW(工作量证明)共识机制的加密货币,才存在51%算力攻击,比如比特币、比特现金和目前阶段的以太坊等;而非PoW共识算法的加密货币则不存在51%算力攻击,如基于DPoS(委托权益证明)共识机制的EOS、TRON等。
在了解了51%算力攻击之后,你肯定好奇,这种攻击能做哪些坏事。
1、双花(Double Spending)。双花的意思是一份"钱"花了两次甚至多次。
51%算力攻击是如何做到双花的呢?假设小黑有666BTC,他把这些币支付的大白同时,也把这些币发到自己的另一钱包地址上。换一句话说,小黑的一份钱,同时转给两个人。最终,发给大白那笔交易先被得到了确认,并打包在区块高度为N的区块内。
这时,控制了超过50%算力的小黑,发起51%算力攻击。他通过重新组装第N个区块,将发给自己那笔交易打包进区块里,并持续在这条链上延展区块,由于算力的优势,这条量将成为最长合法链。这样小黑666BTC双花成功,大白钱包里的666BTC"不翼而飞"了。
链乔教育在线旗下学硕创新区块链技术工作站是中国教育部学校规划建设发展中心开展的“智慧学习工场2020-学硕创新工作站 ”唯一获准的“区块链技术专业”试点工作站。专业站立足为学生提供多样化成长路径,推进专业学位研究生产学研结合培养模式改革,构建应用型、复合型人才培养体系。
㈡ 什么是51%算力攻击
让盈富财经学院的老师给你普及下,算力是指每秒钟可以计算的哈希值次数。而51%算力攻击一般是指利用算力优势来修改区块链记录,从而达到撤销已付款交易的目的。
当一个掌握51%算力攻击后,将有可能创造出一条比当前主链更长的交易链,这对整个比特币安全市场,将会是巨大的打击,从而引发价格暴跌。
㈢ “51%攻击”是什么它是比特币最大的威胁
所谓51%攻击,就是利用比特币使用算力作为竞争条件的特点,使用算力优势撤销自己已经发生的付款交易。
如果有人掌握了50%以上的算力,他能够比其他人更快地找到开采区块需要的那个随机数,因此他实际上拥有了绝对哪个一区块的有效权利。
他能够:
1、修改自己的交易记录,这可以使他进行双重支付
2、阻止区块确认部分或者全部交易
3、阻止部分或全部矿工开采到任何有效的区块
㈣ 什么是51%算力攻击
关注比特币的朋友,想必听过51%算力攻击这个词,它到底是什么意思呢,发起这种攻击之后能做哪些“坏事”呢?
01
什么是51%算力攻击?
在比特币网络中,采用PoW共识机制来解决如何获得记账权的问题,采用“最长链共识”解决如何记账的问题。
所谓51%的攻击,就是利用比特币网络采用PoW竞争记账权和“最长链共识”的特点,使用算力优势生成一条更长的链“回滚”已经发生的“交易行为”。
51%是指算力占全网算力的51%,比特币网络需要通过哈希碰撞来匹配随机数从而获得记账权,算力衡量的是一台计算机每秒钟能进行哈希碰撞的次数。
算力越高,意味着每秒钟能进行越多次的哈希碰撞,即获得记账权的几率越高。
在理论上,如果掌握了50%以上的算力,就拥有了获得记账权的绝对优势,可以更快地生成区块,也拥有了篡改区块链数据的权利。
02
这种攻击能做哪些坏事?
在了解了51%算力攻击之后,你肯定好奇,这种攻击能做哪些坏事。
实际上,当恶意攻击者持有比特币全网占比比较高的算力时,即使尚未达到51%的比例,也可以制造相应的攻击,比较典型的就是双花问题。
假设A拥有51%的算力,在区块高度1127时,A转给B一个比特币的记录被矿工打包。
待交易确认后,A依靠51%的算力优势在区块高度1126后重新生成了一条“更长的链”,并在区块高度1127处又将该BTC转给C且该交易记录被打包,即该链包含了A将一个比特币转给C的记录。
根据“最长链共识”,包含给C转账记录的链成为主链,则A转给B的一个比特币则为“无效支付“。
若掌握了51%的算力,除了可以修改自己的交易记录外,还可以阻止区块确认部分交易,以及阻止部分矿工获得有效的记账权。
但是,拥有51%的算力也不是万能的,无法修改其他人的交易记录,也不能阻止交易的发出,更不能凭空产生BTC。
03
实例分析
我们可以用一笔虚拟交易来说明51%算力攻击问题:
1.攻击者拥有私钥privKey0001,私钥拥有对应可花费比特币10000个
2.当前区块的高度是88888
3.攻击者与商户交易了10000个比特币,在商户看到88889区块中包含了此次交易后,坐上飞机驾驶员位置,开走了商户一架飞机。
4.攻击者因为拥有较高算例,从88888区块再次计算区块(此时,排除自己的10000个比特币买飞机的交易),迅速的计算出了88889/88890/88891/88892......区块,其它节点拉取最长链节点的区块,同步了攻击者的含有恶意攻击的区块信息。
5.因为攻击者买飞机的交易没有被区块包含,因此,可以再次到商户那里买上一架飞机开走。
上面这个例子就是典型的51%算力攻击成功后,所产生的双花问题。
04
51%算力攻击真的有人做吗?
理论上来说,要执行51%算力攻击,首先需要拥有比网络其他矿工更强的算力。
这意味着要有非常多的挖矿设备,大量挖矿设备本身就会消耗大量的资金。
而且除了设备,还需要大量的电力能源消耗。
由于电价上涨以及能源需求的增加,在过去几年里获得足够的电力来运营矿场变得愈发地困难。
当比特币网络还很小的时候,或许有可能获得足够的电力来运行提供51%算力的设备,但随着时间的推移,比特币网络消耗的电力持续增长,攻击者需要获得大量电力才能成功执行攻击,这种可能性也就越来越小。
发动算力攻击也是为了有利可图,但从经济角度来看,51%算力攻击的成本太高,利润太少,无法产生大量资金,并且会有受到重大损失的风险。
由于所涉及的成本和风险,进行51%攻击确实没有任何意义,而诚实挖矿则有利可图的多。
05
在攻击面前的风险规避
虽然51%算力攻击可以撤销交易,但不可以在没有私钥的情况下,控制私钥对应的比特币地址,因此不能无(私钥)中生有交易。
所以对于51%算力攻击,交易支付者不仅不需要过度担心,而且在别人进行51%算力攻击时,你也有可能做一次双花商家。
但是交易接收者可就没有那么好的运气了,因此为了避免被别人51%算力攻击,可以多等几个区块生成后再进行交易。
但是反过来想一下,51%算力攻击是很不值得的一件事情。
攻击是为了利益,既然攻击者持有了这么高的算力,诚实的挖矿带来利益是不是更好?
而且攻击必然打击投资者对比特币系统信心,这对攻击者来说未必是一件好事。
㈤ 比特币百分之51什么意思
比特币百分之51指的是单一实体对比特币网络的多数控制。
比特币区块链的51%算力攻击,指的是单一实体对比特币网络的多数控制,当该实体能够积累超过一半的全球计算能力时,就会发生这种情况。
一般只要算力超过51%,就能对某个系统发动攻击。
㈥ 详解比特币的“51%攻击”
刚接触比特币的时候,都听过“51%攻击”这个概念。简单来说,就是如果某个节点拥有超过全网51%的算力,将能够实现双重支付、撤销交易等操作,让比特币网络崩溃。
那么,这个51%攻击是什么实现的?
假设一个场景,A用10比特币向B购买一样商品,步骤如下:
(1)A支付给B 10BTC;
(2)B收到10BTC确认收款后发货(一般认为6次确认后交易就不可逆转);
(3)A随即创建另一笔交易,将同样的10BTC支付给自己。
显然,A想要撤销第一笔交易,不用花钱就得到B的商品。为了达到这个目的,A进行了双重支付,将同样的10BTC支付给B和自己。在正常的比特币网络中,一旦第一笔交易经过6次确认后就几乎不可更改,后续的交易数据将继续打包成新的区块依次链接下去。可是,如果A用户拥有51%的算力,情况将会发生有趣的变化,A可以实现双重支付的目的。
具体过程如下:
假设第一笔交易被打包到100号区块,当后面再增加5个区块后,6次即可确认该交易,区块如下图所示:
这时,A又发起了一次给自己10BTC的交易。如果A向全网广播,这笔交易不会被处理(因为找不到要花费的UTXO,10BTC支付给B的事实已经被全网确认了),所以A选择不广播,而是对主链进行“分叉”,生成另外一个100号区块,并在其中打包第二笔交易,如下图:
由此,产生了两条子链。简单描述起见,第一笔交易所在的叫C1,第二笔交易所在的叫C2。其他矿工继续在C1上打包数据,而A则在C2上挖矿,两条链开始赛跑。由于A具有超51%的算力资源,很快,C2的长度就会超过C1,如下图:
这时,按照比特币的最长链优先原则,其他矿工也会自动转到C2上,使C2变成了主链。C1则会被抛弃,之前打包在C1上的所有交易(包括第一笔A支付给B 10BTC的交易),都会变为无效。结果是A不花一分钱就拥有了属于B的商品,这就是“51%攻击”。
当然,要真正实现51%攻击是非常困难的,在比特币网络中几乎是不可能的,因为这需要消耗巨大的成本,跟攻击成功后获取到的收益相比,完全是得不偿失。
51%攻击能带来的收益是非常有限的,只能做到:
1、修改自己的交易记录,如双重支付;
2、阻止确认部分或全部交易。
而下面这些即使是51%攻击也没法做到的:
1、凭空生成比特币;
2、修改每个区块产生的比特币数量。
因此,51%攻击成本巨大,收益却很小,仅能实现“双重支付”而已,所以51%攻击很多时候又被称为“双花攻击”。“双花”是数字货币要解决的第一个核心问题,比特币通过共享账本和工作量证明共识机制比较完美地解决了这个问题。
㈦ 区块链为什么是51%,区块链为什么是一些不出名的大学开设
什么是51%算力攻击?让盈富财经学院的老师给你普及下,算力是指每秒钟可以计算的哈希值次数。而51%算力攻击一般是指利用算力优势来修改区块链记录,从而达到撤销已付款交易的目的。
当一个掌握51%算力攻击后,将有可能创造出一条比当前主链更长的交易链,这对整个比特币安全市场,将会是巨大的打击,从而引发价格暴跌。
区块链的特征是什么?
区块链的特征
区块链的四大特征之一:不可篡改
区块链最容易被理解的特性是不可篡改的特性。
不可篡改是基于“区块+链”(block+chain)的独特账本而形成的:存有交易的区块按照时间顺序持续加到链的尾部。要修改一个区块中的数据,就需要重新生成它之后的所有区块。
共识机制的重要作用之一是使得修改大量区块的成本极高,从而几乎是不可能的。以采用工作量证明的区块链网络(比如比特币、以太坊)为例,只有拥有51%的算力才可能重新生成所有区块以篡改数据。但是,破坏数据并不符合拥有大算力的玩家的自身利益,这种实用设计增强了区块链上的数据可靠性。
通常,在区块链账本中的交易数据可以视为不能被“修改”,它只能通过被认可的新交易来“修正”。修正的过程会留下痕迹,这也是为什么说区块链是不可篡改的,篡改是指用作伪的手段改动或曲解。
在现在常用的文件和关系型数据中,除非采用特别的设计,否则系统本身是不记录修改痕迹的。区块链账本采用的是与文件、数据库不同的设计,它借鉴的是现实中的账本设计——留存记录痕迹。因此,我们不能不留痕迹地“修改”账本,而只能“修正”账本(见图2)。
图2:区块链账本“不能修改、只能修正”
区块链的数据存储被称为“账本”(leger,总账),这是非常符合其实质的名称。区块链账本的逻辑和传统的账本相似。比如,我可能因错漏转了一笔钱给你,这笔交易被区块链账本接受,记录在其中。修正错漏的方式不是直接修改账本,将它恢复到这个错误交易前的状态;而是进行一笔新的修正交易,你把这笔钱转回给我。当新交易被区块链账本接受,错漏就被修正,所有的修正过程都记录在账本之中,有迹可循。
将区块链投入使用的第一类设想正是利用它的不可篡改特性。农产品或商品溯源的应用是将它们的流通过程记录在区块链上,以确保数据记录不被篡改,从而提供追溯的证据。在供应链领域应用区块链的一种设想是,确保接触账本的人不能修改过往记录,从而保障记录的可靠性。
2018年3月,在网络零售集团京东发布的《区块链技术实践白皮书》中,京东认为,区块链技术(分布式账本)的三种应用场景是:跨主体协作,需要低成本信任,存在长周期交易链条。这三个应用场景所利用的都是区块链的不可篡改特性。多主体在一个不可篡改的账本上协作,降低了信任成本。区块链账本中存储的是状态,未被涉及的数据的状态不会发生变化,且越早前的数据越难被篡改,这使得它适用于长周期交易。
区块链的四大特征之二:表示价值所需要的唯一性
不管是可互换通证(ERC20),还是不可互换通证(ERC721),又或者是其他提议中的通证标准,以太坊的通证都展示了区块链的一个重要特征:表示价值所需要的唯一性。
在数字世界中,最基本单元是比特,比特的根本特性是可复制。但是价值不能被复制,价值必须是唯一的。之前我们已经讨论过,这正是矛盾所在:在数字世界中,我们很难让一个文件是唯一的,至少很难普遍地做到这一点。这是现在我们需要中心化的账本来记录价值的原因。
在数字世界中,我们没法像拥有现金一样,手上拿着钞票。在数字世界中,我们需要银行等信用中介,我们的钱是由银行账本帮忙记录的。
比特币系统带来的区块链技术可以说第一次把“唯一性”普遍地带入了数字世界,而以太坊的通证将数字世界中的价值表示功能普及开来。
2018年年初,中国的两位科技互联网企业领袖不约而同地强调了区块链带来的“唯一性”。腾讯主要创始人、CEO马化腾说:“区块链确实是一项具有创新性的技术,用数字化表达唯一性,区块链可以模拟现实中的实物唯一性。”
网络创始人、CEO李彦宏说:“区块链到来之后,可以真正使虚拟物品变得唯一,这样的互联网跟以前的互联网会是非常不一样的。”
对于通证经济的探讨和展望正是基于,在数字世界中,在网络基础层次上区块链提供了去中心化的价值表示和价值转移的方式。在以以太坊为代表的区块链2.0时代,出现了更通用的价值代表物——通证,从区块链1.0的数字现金时期进入到数字资产时期。
区块链的四大特征之三:智能合约
从比特币到以太坊,区块链最大的变化是“智能合约”(见图3)。比特币系统是专为一种数字货币而设计的,它的?UTXO?和脚本也可以处理一些复杂的交易,但有很大的局限性。而维塔利克创建了以太坊区块链,他的核心目标都是围绕智能合约展开的:一个图灵完备的脚本语言、一个运行智能合约的虚拟机(EVM),以及后续发展出来的一系列标准化的用于不同类型通证的智能合约等。
图3:区块链2.0的关键改进是“智能合约”
智能合约的出现使得基于区块链的两个人不只是可以进行简单的价值转移,而可以设定复杂的规则,由智能合约自动、自治地执行,这极大地扩展了区块链的应用可能性。
当前把焦点放在通证的创新性应用上的项目,在软件层面都是通过编写智能合约来实现的。利用智能合约,我们可以进行复杂的数字资产交易。
在讨论以太坊的发展过程时,在冷知识专栏“智能合约”“以太坊的智能合约”中,我们对智能合约进行了很多讨论,在此不再赘述。这里再借维塔利克的讨论,重复一下我们认同的智能合约的软件性质——它相当于一种特殊的服务端后台程序(daemon)。在以太坊白皮书中,维塔利克写道:
(合约)应被看成是存在于以太坊执行环境中的“自治代理”(autonomousagents),它拥有自己的以太坊账户,收到交易信息,它们就相当于被捅了一下,然后它就自动执行一段代码。
智能合约的执行流程如图4所示。区块链的第五、第六个定义如图5所示。
图4:智能合约的执行流程
图5:区块链的定义之五、之六
区块链的四大特征之四:去中心自组织
区块链的第四大特征是去中心自组织。到目前为止,主要区块链项目的自身组织和运作都与这个特征紧密相关。很多人对区块链项目的理想期待是,它们成为自治运转的一个社区或生态。
匿名的中本聪在完成比特币的开发和初期的迭代开发之后,就完全从互联网上消失了。但他创造的比特币系统持续地运转着:无论是比特币这个加密数字货币,比特币协议即它的发行与交易机制,比特币的分布式账本、去中心网络,还是比特币矿工和比特币开发,都去中心化、自组织地运转着。
我们可以合理地猜测,在比特币之后出现了众多修改参数分叉形成的竞争币、硬分叉形成的比特币现金(BCH),可能都符合中本聪的设想。他选择了“失控”,失控可视为自治的同义词。
到目前为止,以太坊项目仍在维塔利克的“领导”之下,但正如本章一开始讨论的,他是以领导一个开源组织的方式引领着这个项目,就像林纳斯领导开源的Linux操作系统和Linux基金会一样。
维塔利克可能是对去中心自组织思考得最多的人之一,他一直强调和采用基于区块链的治理方式。2016年以太坊的硬分叉是他提议的,但需要通过链上的社区投票,获得通过方可施行。在以太坊社区中,包括ERC20等在内的众多标准是社区开发者自发形成的。
在《去中心化应用》一书中,作者西拉杰·拉瓦尔(SirajRaval)还从另一个角度进行了区分,他的这个区分有助于我们更好地理解未来的应用与组织。他从两个维度看现有的互联网技术产品:一个维度是,在组织上是中心化的,还是去中心化的;另一个维度是,在逻辑上是中心化的,还是去中心化的。
他认为:“比特币在组织上去中心化,在逻辑上集中。”而电子邮件系统在组织上和逻辑上都是去中心化的(见图6)。
图6:比特币在组织上去中心化,在逻辑上集中
在设想未来的组织时,我们心中的理想原型常是比特币的组织:完全去中心化的自治组织。但在实践过程中,为了效率和能够推进,我们又会略微往中心化组织靠拢,最终找到一个合适的平衡点。
现在,在通过以太坊的智能合约创建和发放通证,并以社区或生态方式运行的区块链项目中,不少项目的理想状态是类似于比特币的组织,但实际情况是介于完全的去中心化组织和传统的公司之间。
在讨论区块链的第四个特征去中心自组织时,其实我们已经在从代码的世界往外走,涉及人的组织与协同了。现在,各种讨论和实际探索也揭示了区块链在技术之外的意义:它可能作为基础设施支持人类的生产组织和协同的变革。这正是区块链与互联网是完全同构的又一例证,互联网也不仅仅是一项技术,它改变了人们的组织和协同。
总的来说,以太坊把区块链带入了新的阶段。在讨论以太坊时,如果要总结两个关键词的话,那么这两个关键词分别是智能合约和通证;而如果只能说一个的话,我会选择“通证”。我会更愿意从互联网的历史中找寻它的意义,重复之前的类比:作为价值表示物的通证,它的角色类似于HTML。在有了HTML之后,建什么样的网站完全取决于我们的想象力。
区块链里面什么是51%攻击?简单解释下,51%攻击又叫大多数攻击,是指恶意矿工控制了区块链网络50%以上的哈希率(hashrate,即算力),随后对网络发动攻击,接管区块链网络让不法分子得以逆转交易、停止支付或者防止新交易予以确认。
详细有关51%攻击可以在密码财经网络了解,
为什么区域链不能同时修改超过51%的节点区块链的基本定义大家都应该了解了,说白了就是大家一起记账,一个区块链系统由许多节点组成,这些节点一般就是一台计算机。在该系统中,每个参与的节点都有机会去竞争记账,即更新数据库信息。系统会在一段时间内(可能是十分钟,也可能是一秒钟),选出其中记账最快最好的一个节点,让他在这一段时间内记账,它会把这段时间内数据变化记录在一个数据区块中。
我们把这个数据区块想象成一页纸。在记完帐以后,该节点就会把这一页的账本发给其它节点。其它节点会核实这一页账本是否无误,如果没有问题就会放入自己的账本中。在系统里面,这一页账本的数据表现形式,称为区块。该区块中就记录了整个账本数据在这段时间里的变化。然后把这个更新结果发给系统里的每一个节点。于是,整个系统的每个节点都有着完全一样的账本。
我们把这种记账方式称为方式区块链技术或者分布式总账技术。
那么问题就来了,这个账本内容安全吗?
首先,每个节点的权利是一样的,任意节点被摧毁都不会影响整个系统的安全,也不会造成数据丢失。而且,每个节点的账本数据都是一模一样的,也就意味着单个节点的数据篡改是没有任何意义的。因为如果系统发现俩个账本对不上,它就认为拥有相同账本数量相对较多的节点的版本才是真实的数据版本。
我们再来说的简单一点,我们都有微信群,微信群的聊天记录就是不可篡改的。
一个微信群,有500人,每个人手机上都有聊天记录的一个完整备份。任何群友都不可能去修改别人手机上的聊天记录,只能修改自己的,哪怕是马化腾也做不到修改别人手机的聊天记录的。任何人即使修改了自己的记录,但别的群友可以指正,只要更多的群友拿出证据,就可以证明这个心怀不轨的人修改了记录。
区块链也是存着一些特定的“聊天记录”,这些记录在区块链世界里有独特的名字——交易。
其原理是和微信群是一样的,所有玩这个区块链的人(被称为节点钱包)都完整地保留一份交易的历史记录。这样任何单个人想修改这些历史记录,别的人都可以拿出自己的那一份备份,来证明这些心怀不轨的人试图作弊,系统会自动舍弃这部分认为被篡改过的账本。
“51%攻击”是什么?它是比特币最大的威胁所谓51%攻击,就是利用比特币使用算力作为竞争条件的特点,使用算力优势撤销自己已经发生的付款交易。
如果有人掌握了50%以上的算力,他能够比其他人更快地找到开采区块需要的那个随机数,因此他实际上拥有了绝对哪个一区块的有效权利。
他能够:
1、修改自己的交易记录,这可以使他进行双重支付
2、阻止区块确认部分或者全部交易
3、阻止部分或全部矿工开采到任何有效的区块
区块链中,什么是51%算力攻击?比特币白皮书中,有过这样的表述:诚实节点控制算力的总和,大于有合作关系的攻击者算力的总和,该系统就是安全的。
换句说,当系统中有合作关系的恶意节点所控制的算力,超过诚实节点所控制的算力,系统就是有被攻击的风险。这种由恶意节点控制超过50%算力所发起的攻击,称为51%算力攻击(51%Attack)。
那是不是所有的加密货币系统都有可能遭遇51%算力攻击的风险呢?其实并不是的,只有基于PoW(工作量证明)共识机制的加密货币,才存在51%算力攻击,比如比特币、比特现金和目前阶段的以太坊等;而非PoW共识算法的加密货币则不存在51%算力攻击,如基于DPoS(委托权益证明)共识机制的EOS、TRON等。
在了解了51%算力攻击之后,你肯定好奇,这种攻击能做哪些坏事。
1、双花(DoubleSpending)。双花的意思是一份"钱"花了两次甚至多次。
51%算力攻击是如何做到双花的呢?假设小黑有666BTC,他把这些币支付的大白同时,也把这些币发到自己的另一钱包地址上。换一句话说,小黑的一份钱,同时转给两个人。最终,发给大白那笔交易先被得到了确认,并打包在区块高度为N的区块内。
这时,控制了超过50%算力的小黑,发起51%算力攻击。他通过重新组装第N个区块,将发给自己那笔交易打包进区块里,并持续在这条链上延展区块,由于算力的优势,这条量将成为最长合法链。这样小黑666BTC双花成功,大白钱包里的666BTC"不翼而飞"了。
链乔教育在线旗下学硕创新区块链技术工作站是中国教育部学校规划建设发展中心开展的“智慧学习工场2020-学硕创新工作站”唯一获准的“区块链技术专业”试点工作站。专业站立足为学生提供多样化成长路径,推进专业学位研究生产学研结合培养模式改革,构建应用型、复合型人才培养体系。