BCH一路走来坎坷不断。在BCH的发展的历程中,经常有攻击者想要对BCH发动攻击,想要将BCH置于死地。就连此次的网络升级都被有心人钻了空子。攻击者在BCH上发了一堆特殊交易,导致矿池挖新块时失败。不过,BCH拥有强大的10确认不回滚机制以及足够的算力保护,使得BCH在很快的时间内恢复正常,顺利完成升级,并没有对BCH网络造成大的影响。
对于BCH来说,其实还有一种看似友好实则是攻击的行为——压力测试。
提到压力测试,BCH社区中很多成员对此并不陌生。在去年的9月1日,BCH网络曾经进行过一次声势浩大的压力测试。在那次测试中,BCH在24小时内确认200万笔交易,最大区块达21.3MB。虽然最终结果是好的,展现了BCH超强的交易处理能力以及面对大量交易时的超低交易费用。不过,压力测试也并非是一种良药,反而会对BCH网络带来很多威胁。
分布式搜索引擎QitChain主网进入压力测试阶段:据官方消息,9月13日,第三方安全检测公司正进入QitChain主网测试并进行安全检测。
据悉,本次进入主网上线阶段测试的存储提供商,是由测试网的全球20多个测试节点推荐,已通过基金会审核并达到测试要求的。预计本次测试阶段QitChain全网算力将会加速增长。[2021/9/13 23:21:42]
在去年,还曾有一个名为BitPico的臭名昭著的机构声称要对BCH发动攻击,选择的方式就是压力测试。虽然最终不了了之,但是这也说明压力测试是一种攻击方式。
压力测试有哪些影响?
01
压力测试是一种DDOS攻击
BitcoinABC的首席开发者AmaurySechet在reddit上回复关于压力测试的帖子时曾提到:“在主网上运行时,压力测试被称为DDOS攻击”。他还进一步解释道:“当您在系统上生成活动只是为了增加工作负载时,这是一种DDoS攻击。如果系统在该工作负载下失败,则攻击成功。”。
Cardano创始人:Cardano智能合约关键压力测试将于今年3月进行:Cardano创始人Charles Hoskinson分享了他对Plutus智能合约平台压力测试的路线图。Cardano(ADA)上的智能合约将从2021年3月开始开源。根据Hoskinson的说法,Cardano专用的智能合约环境Plutus将在2021年3月准备好进行压力测试。一旦准备在Cardano (ADA)上进行构建的项目锁定并加载完毕,Plutus的代码库就可以在开源存储库中获得。然后,Cardano智能合约使用的规范“设计模式”将被公开,以及基于ADA的dApps的最佳实践。Hoskinson确信,即将到来的测试将是“有趣的”。(U.Today)[2021/1/19 16:32:05]
另外一个开发者也说道:“"压力测试"是DDoS攻击。它降低了对开发者的信心,并展现出缺乏专业精神。让我们投资基础设施&在测试网上进行适当的测试。让我们向世界展示BCH不是一个业余项目,而是一个严肃的软件开发工作”。
声音 | 律师刘晔:BSV主链明晚8点左右将进行一场规模空前的压力测试:上海市海上律师事务所合伙人刘晔在微博表示,北京时间明天晚上8点左右,BSV主链将进行一场规模空前的压力测试,欢迎各界人士尤其是各链各币的开发者们关注,看一看BSV的处理交易能力和处理大区块能力。测试内容如下:1、单一区块达到200万个tx;2、BTC的区块在BSV链上运行;3、24小时处理10GB的数据;‘4、32MB的只含tx的区块持续32个区块;5、24小时的tx量达到1000万个。[2019/9/30]
所谓压力测试,即在网络上发送大量粉尘交易,这些交易没有实际上的作用,只是一种简单的测试而已。虽然我们所看到的每一笔交易都是正常的交易,包含正常的手续费,但是从本质上而言,它依旧属于一种DDOS攻击。
何为DDOS攻击?DDOS攻击指的是分布式拒绝服务攻击,指以分散攻击源来黑进指定网站的黑客方式。DDOS的攻击方式有很多种,最基本的DOS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。DDOS攻击手段是在传统的DOS攻击基础之上产生的一类攻击方式,主要分为两种流量攻击和资源耗尽攻击。
动态 | BSV再次出现97 MB大区块,官方表示不算压力测试:北京时间9月20日下午5点BSV主网上突然涌现大量交易,生成多个大型区块,其中最大的为CoinGeek矿池的97 MB区块。据悉,大量交易来自于由BSV官方协会(Bitcoin Association)在杭州举办的开发者交流日活动上,一位独立开发者在分享期间进行了一场实操演示:他以200+TPS的速率向内存池发送出70万笔合法交易。
这70万笔交易最终被12个区块分别打包(区块600824-600835),其中Poolin矿池在此期间打包了三个最大不超83笔交易,容量不超过0.062 MB的区块;ViaBTC 矿池产生了两个接近8 MB的区块,疑似设置了8 MB的硬顶;4个区块来自于未知播报方,而剩下的所有交易被Coingeek矿池在区块高度600835上打包出了97.7 M的区块,将内存池内36.5万笔交易全部打包完成。
BSV官方协会的中国区负责人Lise评论,这仅是一次BSV开发者活动上的交流演示,并非一次压力测试,因为这次TPS仅为8月的压力测试的五分之一,网络反映极平稳,没有任何压力可言。(区块律动BlockBeats)[2019/9/21]
BCH社区想要进行的压力测试可能出发点是好的,是为了测试BCH网络的性能,从而帮助更好的升级和扩容,但是这些无意义的小额交易疯狂涌入BCH网络,一旦超过BCH网络的交易处理能力,对BCH造成的伤害却是和DDOS攻击是类似的。这些无意义的交易将会占用过多的服务资源,从而让合法的交易无法得到服务的响应。
动态 | Nano v15通过200 TPS压力测试:据Nano官方Twitter,Nano v15今天在测试版网络中通过200 TPS压力测试。计划于明晚10点进行更大的压力测试。[2018/8/17]
在去年的压力测试中,就出现了BCH交易确认延迟的问题。虽然BCH区块容量较大,造成拥堵的难度非常大,需要天量的交易量,但是当大量的粉尘交易涌入BCH网络中时,也会让交易时长增加一点点。这也对BCH网络上的正常交易造成了一定的影响。
02
压力测试影响BCH网络上应用程序的运行
BCH是一个功能多样的加密货币,它不仅仅是一种可以用于交易的货币,还是一个可以构建去中心化应用程序的网络平台。矿工不是这个网络唯一的参与者。很多区块浏览器和钱包等都是运行的完整节点。
目前BCH网络的区块上限暂时设定为32MB,面对压力测试中的巨量交易,即使矿工的硬件和网络可以轻松应对,但是其他基础设施和应用是否都可以持续处理32MB的大区块,暂时还是未知数。这对于BCH网络中的应用程序带来了一些不确定的风险。
03
压力测试增加了开发者的负担
当压力测试进行时,如果压力测试的交易数量过多,超过目前区块所能容纳的交易数量,不仅会导致交易的费用随之上升,交易确认时间增加,影响正常的合法交易,还会增加BCH网络的运行负荷,增加区块索引所需的时间。这种情况下,就会消耗更多的资源,甚至一些需要索引区块的服务很有可能会停止工作。
这将增加很多新服务开发人员的负担。将这些没有意义的垃圾交易发送到主网上并不会使代码变得更快或更有效,反而还会造成一些阻碍。
04
在主网上进行的压力测试是没有意义的
如果说压力测试可以测试BCH面临大量交易时的表现情况,从而帮助BCH更好的升级。其实这完全可以在testnet上进行。BCH测试网存在的意义就是为了测试。在主网上进行压力测试几乎没有提供有用的数据。在压力测试中所发生的事情就是网络可以处理一两个大区块或者一些中等大小的区块。而我们早就知道BCH网络可以做到这一点。
关于这一点,BitcoinABC的首席开发者AmaurySechet说道:“如果你不是在测试网上进行测试,那就不属于测试。Testnet在所有方面都类似于Mainnet。事实上,这是一种更好的测试方法,因为任何人都可以在任何时间运行疯狂的实验。如果你的东西能在testnet上运行,那就可以在mainnet上运行。当你在主网上进行压力测试时,这只是在为所有的合法交易制造麻烦。“
对于开发者来说,不管是升级还是应用程序的开发,都可以在测试网上进行测试,记录数据从而进行改进和优化,这将有助于开发者更快更高效的编写代码。与此同时,也不会影响BCH主网的正常运行。
05
压力测试为BCH带来不好的舆论影响
当BCH链上交易增加,大家更希望看到这些交易量的增加是真实的交易。不管是来自商家,还是来自应用程序,这些交易都是有效的交易,是BCH生态发展的证明。
经常性的压力测试很容易给大家带来一种错觉:BCH网络上增加的交易量都是刷出来的。这将会打击BCH社区的积极性,也会让外界对BCH造成误解。
如果真的想在主网上进行压力测试,不妨在BSV链上进行,毕竟这是BSV支持者一直在做的事情。BSV诞生以来,为了能够在主网上打出大区块,已经进行过3次努力。在第三次时,有BSV粉丝开发出了专门构建压力测试的工具,很多热情的BSV粉丝纷纷自掏腰包往链上发布大量交易。一个上百M的块里面包含了几十万笔交易。BSV之所以是压力测试的最佳链,不仅仅是社区支持,还因为只有矿工运行完整节点,BSV链上实际交易量少,一旦BSV链在压力测试中出现问题,还可以进行重组。这种方式不会对BSV链造成非常大的影响,还能满足用户的这一需求。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。