# 由近期发生的跨链盗窃事件引发的安全问题思考


By [Rangers Protocol 官方中文站](https://paragraph.com/@rangers-protocol) · 2022-11-29

---

关键结论
----

● 跨链桥作为底层基础设施实际发挥的作用日益明显：

1）打破了“区块链孤岛”的状态，提升了资产利用率；

2）增加了链与链之间的生态合作。

● 跨链桥因攻击难度低且更加有利可图，成为了黑客攻击的主要对象；

● 在常见的跨链技术中，多重签名是目前应用最广泛的方案之一。但它存在私钥易被泄露导致验证器被挟持、验证机制漏洞等安全隐患；

● 多方安全计算的验证依赖于机器而非个人验证者，其安全性更高。

跨链桥成为了黑客猛烈攻击的主要目标
-----------------

据Elliptic统计，2022年黑客在跨链桥上盗取的资金已超过10亿美元。在今年2月3日，连接Solana的跨链项目Wormhole遭到黑客攻击，损失预计3.25亿美元。在3月23日，Ronin Bridge案被盗总价值超过6亿美元的以太币和USDC。在6月23日，黑客的攻击同样发生在通往 Harmony 第 一 层区块链的 Horizon Bridge上。在8月2日跨链桥Nomad被盗，损失了1.9亿美元。Wormhole、Sky Mavis和Harmony今年都遭受了超过1亿美元的由区块链漏洞引发的损失。

鉴于近期频发的安全事件，MixMarvel DAO Venture特地针对一些技术安全问题，对相关技术负责人进行了采访。技术负责人认为，桥梁安全问题将会是整个区块链行业的重点问题。根据采访结果，我们结合MixMarvel DAO Venture自身对底层技术的认知和思考，形成了本篇论述。

我们首先对近期出现的大型被盗事件及其原因进行了总结。

![](https://storage.googleapis.com/papyrus_images/8327d18d7b37e8a70079cfd0c650aa127413b6bc1f71c953553f27315b2dee01.png)

总结下来，这些被攻击的跨链项目大多使用的是多重签名技术。关于多签的安全问题，我们将在后文进行具体分析，在这之前，我们首先要明确跨链的作用是什么，以及为什么它成为了黑客的主要攻击目标。

黑客攻击为什么大多发生在跨链桥
---------------

### 跨链桥的作用是什么

由于多次区块链盗窃事件都发生在跨链桥，以太坊创始人Vitalik对跨链应用表示出消极的态度。他认为跨链活动发生次数越多，其承担的风险就越大。然而为什么持有原生资产（Native Assets）比跨链资产（Cross Assets）更加安全，我们还要坚持发展跨链桥呢？

MixMarvel DAO Venture认为至少有两个方面值得被关注。

首先，跨链桥可以打破由不同公链之间交易困难而形成的“区块链孤岛”的状态，并且很大程度上提升资产的利用率。我们已经进入了以BSC、Solana、Polygon、Heco等新公链为代表的多链时代。经过了几轮的迭代，如今跨链桥的多样性日益明显。Anyswap（现已更名为Multichain）作为被广泛使用的跨链桥代表之一，已经完成了三个关键版本更新和升级，最新的V3版本使用多链路由来实现Native Assets跨链，但同时也保留了V2版本的资产跨链中销毁方案，以为用户保留更加多样的选择。跨链桥允许用户在链与链之间实现资产、数据和信息转移，极大地促进了多链生态之间的通信与兼容性，已成为各个项目进行互联互通、共同建设Metaverse的过程中，最真实的需求。

其次，跨链桥加强了底层基础设施之间的合作。数据孤岛状态被打破之后，链与链之间的竞争合作逐渐白热化。为了争取到更多的资源，各个区块链底层基础设施项目会通过跨链桥进行互相合作，扩大各自的生态。

发展跨链桥是大势所趋。正因这种大势，跨链桥在数量上和类型上逐渐丰富起来，采用的不同技术使跨链桥的安全程度出现参差，也给黑客带来了可趁之机，导致安全事件频发。但如果因为安全问题而封闭公链生态，只会是因噎废食、得不偿失。我们需要做的，首先是找到安全事件发生的原因，然后去解决问题。我们认为，攻击跨链难度低且收益高是跨链资产频繁被盗的根本原因。

### 攻击跨链比公链收益高且难度低

1.  收益方面：攻击跨链桥更加有利可图
    
    根据DeFi Llama的数据，截至 2022年7月，被锁定在跨链桥的加密货币高达 $10.88B，其中WBTC占市场份额最大，TVL 达 $5.2B， Multichain 排第二，其 TVL 为 $1.88B。
    
    这意味着，跨链桥上的资产数量对黑客相当具有诱惑力。根据CertiK的报告，当一座“桥梁”上拥有数亿美元的托管资产，并在两个及以上的区块链上操作，它们被黑客攻击的可能性会大大增加。
    
2.  难度方面：51%攻击
    
    从难度上来看，黑客更有可能倾向于把目光集中在盗取难度更低的跨链上。在区块链中，有一个51%攻击的概念。无论PoW（工作量证明），还是PoS（权益证明），当涉及到共识机制，在理论上都有可能出现 51% 攻击的情况。
    
    在PoW算法中，如果黑客掌握了51%以上的算力，在获得记账权上他就拥有了的绝对优势。换句话说，他拥有了篡改区块链数据的权利。
    
    然而，如果要进行51%算力攻击，黑客需要花费大量资金去购买挖矿设备和电力，来获得比其他普通矿工更强的算力。因此，如果黑客攻击公链，他需要执行51%算力攻击，其成本太高，而利润太低，从而造成得不偿失的可能性更大。
    
    攻击PoS算法的公链要比攻击PoW算法的公链难度更大。攻击PoS算法的公链需要攻击者获取全网至少51%用于质押的代币，而质押代币主要通过购买的方式获取。所以，在现实中获得全网51%用于stake的代币往往比租用51%算力（攻击PoW算法的公链）要难得多。正如以太坊创始人Vitalik认为，没有人会对以太坊进行 51% 攻击只是为了窃取 100 个 Solana-WETHx。根据2019年的数据统计，黑客对PoS算法的公链51%攻击需要$31,367,656,630，而对PoW算法的公链进行1小时51%攻击需要$255,629。
    
    近期Solana发生了大规模盗币事件，Solana钱包被盗主要发生在iOS的移动钱包上，初步判定是由私钥泄露导致。但这只是个例，首先，它并不代表Solana整条链的安全性都是脆弱的，也不能证明公链存在很大的安全问题。事实上，攻击大型公链至少需要几个小时才能完成。而跨链则不同，如果黑客想攻击跨链，他只需要找到目标跨链桥中存在的漏洞并攻破它就可以达成目的，根本无需花费高额的时间和金钱成本。
    
    常见的跨链方案及安全隐患
    ------------
    
    哈希锁定（Hash-locking)、见证人机制（Notary Schemes)、中继（Relays）是目前最常见的区块链跨链技术方案。
    
    ### 哈希锁定
    
    中本聪（Satoshi）认为哈希时间锁定合约（Hash Time Locked Contracts)是由Hashlocks和Timelocks组成，Hashlocks类似于双重身份验证，Timelocks要求预期的资金接收者在期限内提供正确的秘密短语然后收款。否则，该交易将返还资金给打款人。
    
    哈希时间锁定合约，可以被看作是有时间限制的、有条件的支付协议，不需要可信的第三方。这些可编程的托管协议使有条件的P2P价值转移成为可能，并降低了交易的风险。此外，哈希锁定技术主要帮助实现跨链中的原子交换（Atomic Swaps，跨链中的点对点交易）和比特币闪电网络（Lighting Network）。
    
    然而，哈希锁定存在一定的局限性。首先，连接方需要承担一定的交易风险。交易时两种币限制了交付的时间，如果一个交易方的限制时间大于另一个交易方。这有可能使一方获取约定好的资产，而另一方无法获取相对应的币值。
    
    其次，对于不支持哈希时间锁技术的区块链项目，需要通过其他的记账平台进行跨链交易。然而由于记账平台本身不参与资产的的转移活动，只是记录两种通证之间转移的交易信息。这需要交易双方之间相互具备充足的信任，交易才可以展开。
    
    因此，哈希锁定只能做到交换而不能做到资产或者信息的转移，其使用场景十分有限。至少在现阶段，它并没有被大面积应用。在后面的关于跨链不安全因素的分析中，我们将直接略过哈希锁定。
    
    ### 中继
    
    中继技术（Relay-chain）是目前在跨链技术的使用上较为流行的。中继技术的本质是由目标链自己验证中继发送的这条消息是否属于起源链， 其安全的核心是目标链上是否实现了可靠的起源链轻客户端。中继技术大大降低了跨链的复杂程度。业内有名的跨链项目Cosmos和Polkadot，都采用的是基于中继链的多链多层架构。
    
    中继技术的缺点在于，当网络负载较重时，中继缓冲区的存储空间可能会不足，从而导致溢出现象和信号丢帧。如果中继器出现故障，会影响相邻两个子网的工作。
    
    ### 见证人机制
    
    见证人机制主要分为三类：单签见证人、多重签名见证人、分布式签名见证人。
    
    单签见证人也叫中心化见证人机制。见证人在该交易过程中充当交易确认者和冲突仲裁者的角色。这种模式的技术架构门槛低，使得交易处理效率高，但是它实际上是由中心化机构控制，其局限性在于中心化节点的安全问题。
    
    多重签名（Multi-Signature）见证人机制是目前被应用最广泛的技术。多重签名见证人机制运用了多重签名技术，即一个交易需要两个或者更多签名才能生效。不同的跨链会根据自己的需求设置多签规则，比如，3/6多签，指6个人里面需要3个拥有私钥的验证者对交易申请进行签署才能成功完成一次交易。如果验证者的私钥被泄露，例如存储私钥的硬盘驱动器被盗或放错了位置，很有可能对跨链资产带来不可估量的损失。
    
    分布式签名见证人机制，采用了多方安全计算的思想。它基于密码学产生一个密钥，该密钥会被拆分成多个碎片分发给随机的见证人，允许见证人共同签名后拼出完整的密钥，使验证过程更加去中心化。
    
    见证人模式与中继模式的不同在于目标链如何处理收到的消息，见证人模式是无条件信任并执行，其安全性依赖于见证人本身；中继模式是需要自己验证通过再执行的，其安全性依赖于目标链上轻钱包的数据同步者（MerkleTree的传递者）。
    
    ### 跨链技术的不安全因素
    
    1.  多重签名验证存在的安全隐患是跨链资产被盗的主要原因
        
        多重签名验证存在安全隐患，导致黑客攻击频繁发生，通常表现为以下三点：
        
        a) 私钥泄露导致验证器被挟持。比如，在Ronin Network和Horizon的攻击事件中，黑客都利用了被泄露的私钥来挟持签名验证器并完成了交易。为了识别存款指令或取款指令，Ronin Network由九个签名验证者保护，其中只需要有五个签名就可以进行验证和交易。黑客使用被黑的私钥来伪造提款，同时通过 gas-free RPC（没有交易费用）的节点发现了一个后门，然后利用它控制了四个 Ronin 验证器和一个由 Axie DAO 运行的第三方验证器。
        
        b) 验证所需要的验证者节点数量较少，使黑客有机可乘。比如，Horizon桥仅只有四个多重签名验证，并且没有保护好四个多重签名中的两个的安全。黑客只需要控制Horizon较少的签名验证器就可以完成资产盗取。因此，较少的（通常少于50%）被需要验证的签名验证器可能难以保障跨链过程的稳健性。
        
        c) 签名验证方法的漏洞问题，也属于智能合约漏洞中的一种。每条区块链上的开发模式不同（比如，通信协议不同、共识机制不同和治理模型不同），导致在建立跨链接口的时候，会增加智能合约漏洞出现的可能性。比如，Wormhole的攻击者利用因更新而被废弃的签名方法对自己的跨链请求进行签名。由于该方法中未对传入的指令做严格检查，使得攻击者伪造了大量wETH（即跨链资产，并不是原生真正的ETH）并上传了假的智能合约地址，顺利避开了验证签名，并提走大量资金。在Nomad跨链桥被盗事件发生之初，其合约地址仍有约1亿美元资产。此时Nomad并未采取任何措施，既没有修复智能合约漏洞，也没有更换签名验证方式。有能力的黑客继续在Nomad桥上盗取资产，随后，其他人也加入了进来，而多重签名并没有阻止这些交易，1亿美元资金很快被盗空。
        
    2.  中继技术并非绝对安全
        
        正如上文提到的，中继技术是目前跨链项目所运用到的频率较高的技术。如何利用中继技术，防止消息在两条链间传递的过程中不被篡改？这里以LayerZero为例。为了尽力保证信息准确传输，LayerZero采取的以下措施。它的跨链共识在中继器中产生，中继器主要获取交易事件证明。这将会把风险隔离在“预言机和中继器”的配对上，且需要它们必须是独立的个体，才能防止预言机（Oracle）和中继器（Relayer）联手作恶，共同保证跨链的安全性。
        
        中继器的风险还在于，当网络负载较重时，中继器缓冲区的存储空间可能会不足，导致溢出和丢帧。另外，如果中继器出现故障，也可能会影响邻近的子网。
        
        多方安全计算是最安全的跨链技术之一
        -----------------
        
        ### 多方安全计算比基于多重签名方式的安全性更高
        
        多方安全计算因其验证方式依赖于机器而非个人验证者，安全性高于多重签名机制。
        
        多方安全计算（MPC)，指在针对无可信第三方情况下，可以进行多方协同计算。在 MPC 中，互不信任的组织尝试共同计算一个函数，同时保持这些输入的私密性。MPC 的两个主要属性是正确性和隐私性。正确性指算法产生的输出是正确的。隐私指一方持有的秘密输入数据不会泄露给另一方。
        
        在多点验证的共识机制中，Harizon等跨链桥运用的多重签名方式（multi-sig) 与安全性多方计算（MPC）的区别在于“私钥”的形成是否由人为干预。多签机制需要拥有私钥的验证者（个人）对交易申请进行签署。而多方计算的验证方式更依赖于机器而非个人。
        
        多方计算的应用可参考门限签名算法（TSS），它是一种分布式多方签名协议，它消除了单个私钥的概念，将传统公钥与私钥1:1的对应方式改为公钥与私钥1:N的技术，只要凑齐N个私钥中的t个对消息的独立签名即可通过的算法。基于TSS共识的跨链是完全去中心化的，其密钥由机器生成，避开了人为干预的过程，随机性更高，从而避免私钥泄露所带来的风险。
        
        案例分析：Rangers Connector采用多方安全计算作为跨链共识
        
        Rangers Connector作为支持资产和数据进行跨链的工具，采用的是基于分布式签名的VRF+TSS跨链技术方案。它用去中心化的方式首先解决跨链过程中的信任问题，保证跨链数据和资产的安全稳定。
        
        ● 安全性
        
        从Rangers Protocol白皮书中，我们可以发现，Rangers Connector正在计划将它的跨链桥升级为一条区块链，以公链的方式来打造跨链桥。如果这个方案最终能实现，对黑客来说，这无疑增加了攻击难度，上文也有提到，攻击公链比攻击跨链的难度更高。同时，Rangers Connector的TSS（基于ecdsa曲线的一个聚合签名）方案中，ecdsa曲线的随机数K是随机的而非常量，其安全性可以被保证。
        
        反面的案例可以参考同样使用了MPC和TSS方案的Anyswap。Anyswap在2021年7月发生了被盗事件，被盗的主要原因是未完全正确使用ecdsa曲线，它将随机数K变为了一个常量，失去了随机性，导致了这个曲线容易被攻破。这与TSS方案本身的安全性无关。
        
        ● 兼容性
        
        TSS是可以被以太坊以及EVM兼容的所有公链进行验证的技术方案，它更能被广泛地应用在跨链中，对多链环境十分友好。
        

总结
--

有人认为跨链智能合约可能会颠覆dApp的开发模式，但不会改变大多数区块链网络在本质上仍然是孤立的事实。要解决区块链孤岛的问题，桥是先决条件，桥的安全性是核心。

见证人模式安全性依赖于见证人本身，中继模式的安全性依赖于目标链上轻钱包的数据同步者。但是，这不代表，中继模式一定比见证人模式更安全。具体来说，如果轻钱包的数据同步者篡改了信息，后续的验证都是无意义的。VRF+TSS多方安全计算算法在安全性、去中心化程度以及可扩展性（不可能三角）上做到了兼顾，对于现阶段的跨链市场来说，它是一个可信任度相对高的跨链桥方案。

但世界上没有绝对的安全。MixMarvel DAO Venture希望，频发的跨链安全问题能够引发更加广泛地对跨链技术的思考与讨论，并在不断解决问题的过程中，对技术持续进行升级和迭代。

### Reference:

<[https://finance.ifeng.com/c/8DKRQMcNAoQ](https://finance.ifeng.com/c/8DKRQMcNAoQ)

>   

[https://dodotopia.notion.site/16-d849151423074cf59751545a8c0b6dc7](https://dodotopia.notion.site/16-d849151423074cf59751545a8c0b6dc7)

<[https://www.51cto.com/article/708143.html](https://www.51cto.com/article/708143.html)

>

---

*Originally published on [Rangers Protocol 官方中文站](https://paragraph.com/@rangers-protocol/rabpy4u64O9Q1YoVPOuD)*
