热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

压力测试对于BCH真的有意义吗?

BCH一路走来坎坷不断。在BCH的发展的历程中,经常有攻击者想要对BCH发动攻击,想要将BCH置于死地。就连此次的网络升级都被有心人钻了空子。攻击者在BCH上发BCH一路走来坎坷不断。在BCH的发展的历程中,经常有攻击者想要对BCH发动攻击,想要将BCH置于死地。就连此次的网络升级都被有心人钻了空子。攻击者在BCH上发了一堆特殊交易,导致矿池挖新块时失败。不过,BCH拥有强大的10确认不回滚机制以

BCH一路走来坎坷不断。在BCH的发展的历程中,经常有攻击者想要对BCH发动攻击,想要将BCH置于死地。就连此次的网络升级都被有心人钻了空子。攻击者在BCH上发...

压力测试对于BCH真的有意义吗?

BCH一路走来坎坷不断。在BCH的发展的历程中,经常有攻击者想要对BCH发动攻击,想要将BCH置于死地。就连此次的网络升级都被有心人钻了空子。攻击者在BCH上发了一堆特殊交易,导致矿池挖新块时失败。不过,BCH拥有强大的10确认不回滚机制以及足够的算力保护,使得BCH在很快的时间内恢复正常,顺利完成升级,并没有对BCH网络造成大的影响。

对于BCH来说,其实还有一种看似友好实则是攻击的行为——压力测试。

提到压力测试,BCH社区中很多成员对此并不陌生。在去年的9月1日,BCH网络曾经进行过一次声势浩大的压力测试。在那次测试中,BCH在24小时内确认200万笔交易,最大区块达21.3MB。虽然最终结果是好的,展现了BCH超强的交易处理能力以及面对大量交易时的超低交易费用。不过,压力测试也并非是一种良药,反而会对BCH网络带来很多威胁。

在去年,还曾有一个名为BitPico的臭名昭著的机构声称要对BCH发动攻击,选择的方式就是压力测试。虽然最终不了了之,但是这也说明压力测试是一种攻击方式。

压力测试有哪些影响?

01

压力测试是一种DDOS攻击

压力测试对于BCH真的有意义吗?

Bitcoin ABC的首席开发者Amaury Sechet在reddit上回复关于压力测试的帖子时曾提到:“在主网上运行时,压力测试被称为DDOS攻击”。他还进一步解释道:“当您在系统上生成活动只是为了增加工作负载时,这是一种DDoS攻击。如果系统在该工作负载下失败,则攻击成功。”。

压力测试对于BCH真的有意义吗?

另外一个开发者也说道:“"压力测试" 是 DDoS 攻击。它降低了对开发者的信心,并展现出缺乏专业精神。让我们投资基础设施 & 在测试网上进行适当的测试。让我们向世界展示BCH不是一个业余项目, 而是一个严肃的软件开发工作”。

所谓压力测试,即在网络上发送大量粉尘交易,这些交易没有实际上的作用,只是一种简单的测试而已。虽然我们所看到的每一笔交易都是正常的交易,包含正常的手续费,但是从本质上而言,它依旧属于一种DDOS攻击。

何为DDOS攻击?DDOS攻击指的是分布式拒绝服务攻击,指以分散攻击源来黑进指定网站的黑客方式。DDOS的攻击方式有很多种,最基本的DOS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。DDOS攻击手段是在传统的DOS攻击基础之上产生的一类攻击方式,主要分为两种流量攻击和资源耗尽攻击。

BCH社区想要进行的压力测试可能出发点是好的,是为了测试BCH网络的性能,从而帮助更好的升级和扩容,但是这些无意义的小额交易疯狂涌入BCH网络,一旦超过BCH网络的交易处理能力,对BCH造成的伤害却是和DDOS攻击是类似的。这些无意义的交易将会占用过多的服务资源,从而让合法的交易无法得到服务的响应。

在去年的压力测试中,就出现了BCH交易确认延迟的问题。虽然BCH区块容量较大,造成拥堵的难度非常大,需要天量的交易量,但是当大量的粉尘交易涌入BCH网络中时,也会让交易时长增加一点点。这也对BCH网络上的正常交易造成了一定的影响。

02

压力测试影响BCH网络上应用程序的运行

BCH是一个功能多样的加密货币,它不仅仅是一种可以用于交易的货币,还是一个可以构建去中心化应用程序的网络平台。矿工不是这个网络唯一的参与者。很多区块浏览器和钱包等都是运行的完整节点。

目前BCH网络的区块上限暂时设定为32MB,面对压力测试中的巨量交易,即使矿工的硬件和网络可以轻松应对,但是其他基础设施和应用是否都可以持续处理32MB的大区块,暂时还是未知数。这对于BCH网络中的应用程序带来了一些不确定的风险。

03

压力测试增加了开发者的负担

当压力测试进行时,如果压力测试的交易数量过多,超过目前区块所能容纳的交易数量,不仅会导致交易的费用随之上升,交易确认时间增加,影响正常的合法交易,还会增加BCH网络的运行负荷,增加区块索引所需的时间。这种情况下,就会消耗更多的资源,甚至一些需要索引区块的服务很有可能会停止工作。

这将增加很多新服务开发人员的负担。将这些没有意义的垃圾交易发送到主网上并不会使代码变得更快或更有效,反而还会造成一些阻碍。

04

在主网上进行的压力测试是没有意义的

如果说压力测试可以测试BCH面临大量交易时的表现情况,从而帮助BCH更好的升级。其实这完全可以在testnet(测试网)上进行。BCH测试网存在的意义就是为了测试。在主网上进行压力测试几乎没有提供有用的数据。在压力测试中所发生的事情就是网络可以处理一两个大区块或者一些中等大小的区块。而我们早就知道BCH网络可以做到这一点。

关于这一点,Bitcoin ABC的首席开发者Amaury Sechet说道:“如果你不是在测试网上进行测试,那就不属于测试。Testnet在所有方面都类似于Mainnet。事实上,这是一种更好的测试方法,因为任何人都可以在任何时间运行疯狂的实验。如果你的东西能在testnet上运行,那就可以在mainnet上运行。当你在主网上进行压力测试时,这只是在为所有的合法交易制造麻烦。“

对于开发者来说,不管是升级还是应用程序的开发,都可以在测试网上进行测试,记录数据从而进行改进和优化,这将有助于开发者更快更高效的编写代码。与此同时,也不会影响BCH主网的正常运行。

05

压力测试为BCH带来不好的舆论影响

当BCH链上交易增加,大家更希望看到这些交易量的增加是真实的交易。不管是来自商家,还是来自应用程序,这些交易都是有效的交易,是BCH生态发展的证明。

经常性的压力测试很容易给大家带来一种错觉:BCH网络上增加的交易量都是刷出来的。这将会打击BCH社区的积极性,也会让外界对BCH造成误解。

如果真的想在主网上进行压力测试,不妨在BSV链上进行,毕竟这是BSV支持者一直在做的事情。BSV诞生以来,为了能够在主网上打出大区块,已经进行过3次努力。在第三次时,有BSV粉丝开发出了专门构建压力测试的工具,很多热情的BSV粉丝纷纷自掏腰包往链上发布大量交易。一个上百M的块里面包含了几十万笔交易。BSV之所以是压力测试的最佳链,不仅仅是社区支持,还因为只有矿工运行完整节点,BSV链上实际交易量少,一旦BSV链在压力测试中出现问题,还可以进行重组。这种方式不会对BSV链造成非常大的影响,还能满足用户的这一需求。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 我们


推荐阅读
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 加密世界下一个主流叙事领域:L2、跨链桥、GameFi等
    本文介绍了加密世界下一个主流叙事的七个潜力领域,包括L2、跨链桥、GameFi等。L2作为以太坊的二层解决方案,在过去一年取得了巨大成功,跨链桥和互操作性是多链Web3中最重要的因素。去中心化的数据存储领域也具有巨大潜力,未来云存储市场有望达到1500亿美元。DAO和社交代币将成为购买和控制现实世界资产的重要方式,而GameFi作为数字资产在高收入游戏中的应用有望推动数字资产走向主流。衍生品市场也在不断发展壮大。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • Google在I/O开发者大会详细介绍Android N系统的更新和安全性提升
    Google在2016年的I/O开发者大会上详细介绍了Android N系统的更新和安全性提升。Android N系统在安全方面支持无缝升级更新和修补漏洞,引入了基于文件的数据加密系统和移动版本的Chrome浏览器可以识别恶意网站等新的安全机制。在性能方面,Android N内置了先进的图形处理系统Vulkan,加入了JIT编译器以提高安装效率和减少应用程序的占用空间。此外,Android N还具有自动关闭长时间未使用的后台应用程序来释放系统资源的机制。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • 本文介绍了在win7电脑上进行文件加密的方法,包括利用NTFS的EFS进行加密和使用Win7旗舰版的Bitlocker加密整个分区。同时推荐了超级加密3000、宏杰加密工具和超级盘加密工具等多种加密软件,这些软件具有快速的加密速度和高强度的加密功能,可以防止文件的删除、复制和移动。此外,还强调了保持加密密钥的重要性,以免重装系统后无法打开已加密的文件。最后,提醒读者选择绿色软件,方便使用。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
author-avatar
斗就斗D_994
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有