Odaily星球日报译者|Moni
如果你已经在加密行业里“混迹”多年,肯定听说过“比特币交易延展性”问题,而且知道它不是件好事儿。但是,究竟什么是“交易延展性”、以及为什么说它不好?下面,就让星球君带大家来看看PascalCoin基金会创始人兼首席执行官、PascalCoin核心开发人员、以及RandomHash发明人HermanSchoenfeld如何解释这个问题吧。在诸如比特币等加密货币中,“交易”其实就是用户之间传递价值的原子级操作。用户创建交易之后会将其发布到网络上,这些交易会在网络被广播,最终通过“矿工挖矿”确认之后被连接到区块链上,接收交易的人也会使用区块链来判断交易是否已经被确认。但问题是,如今比特币交易数量越来越多,区块链上每分钟都有数百万交易“飞来飞去”,用户该如何快速识别、并区分这些交易呢?不仅如此,对于那些遍布在全球各地的链下用户来说,又该如何在不使用缓慢的全球注册系统条件下以相同的方式快速、准确地识别交易呢?答案其实也很简单,可以使用交易加密哈希作为标识符。交易加密哈希是一种从任意文件中创造小的数字“指纹”的方法,与指纹一样,交易加密哈希是一种以较短的信息来保证文件唯一性的标识,这种标识与交易内的每一个字节都相关,而且难以找到逆向规律。因此,当原有交易发生改变时,其标志值也会发生改变,从而告诉文件使用者当前的文件已经不是你所需求的文件。交易加密哈希允许仅使用数据本身来获取任何数据的“指纹”,这个“指纹”是唯一的,并且每次计算都不会发生变化。不过,如果交易数据发生了哪怕“1bit”的变化,交易哈希就会完全改变,继而确保了交易的唯一性。在比特币里,交易哈希被称为“TXID”,并且用作为交易的唯一通用标识符。好了,说到这里,你可能会产生一个疑问,既然每笔比特币交易都是被唯一标识的,怎么会有所谓的“延展性”问题呢?首先,让我们来看看什么是比特币交易“延展性”问题
动态 | 游戏项目方需注意随机数安全,警惕薅羊毛攻击:Beosin(成都链安)预警:根据成都链安区块链安全态势感知系统Beosin-Eagle Eye检测发现,近期疑似薅羊毛攻击多发,攻击者批量操作多个账号并结合随机数计算进行下注,目前发现的攻击收益都较小,最高仅有几十eos,但是攻击者完全可以增加同时操作的账号数量和下注金额来扩大攻击。成都链安提醒各项目方提高警惕,近期请加强安全防范措施,尤其注意随机数安全,必要时联系安全公司进行安全服务,避免不必要的资产损失。[2019/6/17]
比特币交易延展性,是指更改了某个比特币交易的唯一交易标识符,但却没有使原交易无效。事实上,根据加密货币的不同,有很多方法可以做到这一点,最常见的一种手段就是“签名延展性”,而这也是本文要重点解释的:比特币协议里面使用的是椭圆曲线签名算法,该算法在1999年成为ANSI标准,并于2000年成为IEEE和NIST标准。与普通的离散对数问题和大数分解问题不同,椭圆曲线离散对数问题没有亚指数时间的解决方法,因此椭圆曲线密码的单位比特强度要高于其他公钥体制,而且计算参数更小,密钥更短,运算速度更快,签名也更加短小。但是,椭圆曲线签名算法存在一个漏洞,就是在更改交易签名之后并不会立即使原交易失效。虽然该算法能够确保签名无法被伪造,但却允许攻击者改变包含相关签名的交易TXID,而这可能会产生非常严重的后果。比特币延展性攻击
动态 | EOS竞猜游戏OnePlay遭随机数破解:今天凌晨00:22~01:02之间,PeckShield安全盾风控平台DAppShield监测到黑客向EOS竞猜类游戏OnePlay发起连续攻击,不正当获得游戏合约的几乎全部EOS。并用同样的攻击手段投注游戏代币ONE,获利近百万游戏代币,随后转入newdex交易所售卖。PeckShield安全人员初步研究发现,此次是因游戏合约随机数问题被攻破,值得注意的是,此次攻击者和3月2日攻击另一知名EOS游戏的是同一人。[2019/3/5]
为了更好地解释比特币延展性攻击,我们引入两个虚构的交易者“Bob”和“Alice”。假设Bob准备通过一笔标识符为“X”的交易向Alice支付一些比特币,在这些比特币被挖掘之前,这个标识符被黑客控制并改成了一个新的标识符“Y”,这样一来的话,当Alice收到这笔比特币支付之后,Bob并不会知道他发出的支付交易已经完成了。如果Alice是一个“坏人”,而且她知道Bob还不知道自己发出的比特币已经被她收下了,此时Alice就可以再次向Bob发送一笔请款交易,要求Bob重新付款,而且可以重复多次这么做,直到Bob最终意识到问题所在,但此时可能为时已晚。事实上,这种延展性攻击已经在某些加密货币交易所身上发生了,如下图所示:
声音 | PeckShield硅谷研发中心负责人Jeff: 竞猜类DApp链上随机数机制存在根本缺陷:在谈到为何EOS竞猜类游戏很难免疫“交易阻塞攻击”(CVE-2019-6199)时,PeckShield硅谷研发中心负责人Jeff坦言:“所有竞猜类游戏基本都包含随机数的游戏机制,但本质上随机数和区块链网络要求所有分布式节点运算结果保持一致存在内在矛盾。现有随机数解决方案(链上开奖)都采用的是链上数据(可能加上了未来等时间因素),一定程度上可以实现伪随机,但黑客可以抢先算出结果进而实现攻击。所以,建议所有采用链上开奖机制的竞猜类DApp务必高度重视“交易阻塞攻击”潜在的安全风险,在根本解决方案找到之前,应采用block.one官方推荐的随机数生成方案(包含链下随机种子),做好安全布控或搭建风控系统,排查潜在被攻击的风险。[2019/1/17]
在这种情况下,攻击者可以通过以下步骤实施攻击:1、启动一批Sybil节点;2、用这些节点包围交易所节点;3、从交易所中发起一个取现交易;4、假设这笔取现交易标识符是“X”,一旦该交易离开了交易所,Sybil节点就会将这个交易标识符改成“Y”;5、这个交易标识符为“Y”的取现交易会被广播到比特币网络上的其余部分;当交易标识符为“Y”的这笔取现交易被挖到下一个区块时,攻击者已经收到了这笔取现的金额,但此时交易所后台还没有收到这笔取现交易被确认的信息,因此这个交易所一直在等待交易标识符为“X”的交易确认。此时,攻击者会继续实施攻击:6、攻击者会要求交易所重新发起取现交易,因为他们会谎称这笔取现交易在网络上“没有被通过”;7、继续重复上述攻击手段。注意:在上述第二个步骤里,攻击者其实并不需要完全包围交易所节点,他们只需要几个连接既可以执行攻击——尽管攻击的成功率可能比较低。通常来说,包围交易所节点的Sybil节点越多,攻击成功的概率就会越高。此外,攻击者还会根据交易所的规模大小,采取两种不同的攻击策略:1、第一种攻击手段是所谓的“寄生虫策略”,他们通常会选择一些不规律的小额交易来实施攻击,这样就能逃过一些交易监测工具的追踪,在最大化自己收益的条件下实施长期攻击;2、第二种攻击手段是所谓的“吸血鬼策略”,即在系统管理员发现问题之前,通过高频率的大额取款交易来抽取交易所的资金。无论攻击者实施哪种策略,对交易所来说都会遭受损失,因此加密行业需要通过一些可塑性方案来解决这个延展性攻击问题。用隔离见证解决延展性攻击问题是比特币社区的分裂主因吗?
动态 | EOS竞猜游戏Lucky Nuts因随机数安全问题暂停:据 PeckShield 态势感知平台12月26日数据显示:今天凌晨02:36-05:11之间, 黑客向Lucky Nuts游戏合约(nutsgambling)重放多笔具有相同内容的交易,并持续从中获利。最终将大部分不当EOS获利转向币安交易所账号(binancecleos)。目前游戏合约已暂停交易,截至发稿时还处在维护状态。PeckShield 安全人员初步研究发现,此次是因游戏合约随机数问题被攻破。PeckShield在此提醒广大游戏开发者和游戏玩家,警惕安全风险。[2018/12/26]
通过引入隔离见证,比特币希望解决这种延展性攻击问题。隔离见证能够把签名交易与TXID计算分开,并将TXID替换为对这个签名交易不可延展的加密哈希。这个加密哈希会用作只想该签名交易的指针,而该签名交易则是被存储在另一个数据结构之中的。为了验证交易签名,比特币验证器会使用这个加密哈希在另一个数据结构里查找对应的签名,然后执行椭圆曲线签名算法验证。通过这种方法,延展性攻击将无法获得签名源,因为这个数据并没有和交易存储在同一个地方,在这种情况下,攻击者无法对指向签名的哈希指针进行篡改。当然,由于签名数据被存在其他数据结构里,因此隔离见证增加了对其他数据结构的依赖,比特币需要在这方面做一下权衡,毕竟这是非常重要的事情。虽然隔离见证本身并不是个糟糕的想法,但实施隔离见证依然在比特币社区里造成了裂痕,也导致社区分裂成了比特币和比特币现金。不过需要说明的是,导致社区分裂的主要问题更多的是关于隔离见证如何被部署,而不是这个技术本身。不管你是否喜欢隔离见证,比特币现金都已经从比特币区块链中分叉出去了。从技术角度来看,延展性攻击问题仍然存在于比特币现金里。
Zcash开发人员利用切尔诺贝利核电站的核废料来产生随机数 :Zcash的开发人员在该网络最新的秘密保证仪式中使用了切尔诺贝利核电站的核废料。上个周末,Zcash的两位开发人员举行了他们最新的“Tau”仪式,并特别使用核废料来产生随机数。Andrew Miller表示,Tau的力量完全在于生成和安全地处理加密的“有废物”,从理论上讲,其结果是一个完全随机的、私有的代码,可以用来构建Zcash。[2018/1/28]
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。