作者:?IOBCCapital
前段时间,AxieInfinity的底层区块链网络RoninNetwork失窃6亿美金,直到用户无法从跨链桥RoninBridge提款后盗窃案才被发现。跨链桥的资产安全问题再次引发热议。
事后,SkyMavisCOOAlexsanderLarsen表示,“RoninBridge被攻击不是因为智能合约存在漏洞,而与社会工程和人为错误有关”。AxieInfinity的投资方AnimocaBrands联合创始人YatSiu曾在采访中提到,“如果一座桥梁能够铸造代币,那它就像铸造机一样……桥梁是权威,但如果它们设计不当或存在漏洞,就会对生态系统构成巨大风险。”
本文我们具体聊聊Tokenbridge的工作原理以及如何保证可靠性和安全性。
一、Tokenbridge的特性和模型
在ethereum生态中,tokenbridge允许用户在两条链上传输数据,并且提供了快速和安全的链接。tokenbridge作为主链和侧链之间的桥梁,对于资产和数据的转移起到了决定性的作用。
Binance宣布将支持 TRON(TRX)新旧合约互换, 将于2月27日12:00暂停TRX充提:2月17日消息,据官方消息,Binance 将支持 TRON(TRX)新旧合约互换,将于北京时间 2 月 27 日 12:00 暂停 TRX(BEP20)充提,现货交易、保证金交易、期货交易、Binance Pay 和 Simple Earn 订阅在合约互换期间不受影响。
合约互换完成后,TRX(BEP20)存提将重新上线。此外,合约互换后,原有 TRX 将更名为 TRXOLD,通过旧 TRX (BEP20) 智能合约存入 TRXOLD 的用户将能够使用转换功能将旧 TRX (TRXOLD) 转换为新 TRX。[2023/2/17 12:13:35]
1.链与网络的定义
Native:本地链是一个快速并且便宜的网络,所有收集validator的bridge操作都在native这一侧执行。
Foregin:这边可以是任何链,但通常是指以太坊的主网。
ERC20:在ERC20-ERC20bridge模式中,ERC667作为ERC20的实现可以在NativeSide端被创建和销毁。
Reddit 在 Polygon 上推出免费 NFT 系列 Recap 2022:金色财经报道,据加密 KOL GiancarloChaux 推特消息,社交新闻论坛社区 Reddit 于 5 日前在 Polygon 上推出了另一款免费的 NFT 系列,名为 Recap 2022,目前,该 NFT 系列已有超 130 万名所有者。[2022/12/21 21:57:24]
2.BridgeModes
bridge可以被配置成多种网络方式。当前支持的方式包括Native-to-ERC20?模式,ERC20-to-ERC20模式,ERC20-to-Native模式和AMB模式。
ERC20toERC20:?兼容的ERC20token被锁在foreignnetwork,同时在native边创建erc20token;当从navtive向foregin转移时,erc677token被销毁,erc20token被unlock。
ERC20toNative:coins被锁在foregin边,同时在native边创建erc20token。xDai用的是这种模式。
Web3初创公司Nillion宣布完成2000万美元融资:12月12日消息,Web3初创公司Nillion宣布完成2000万美元融资,Distributed Global领投,AU21、Big Brain Holdings、Chapter One、GSR、HashKey、OP Crypto和SALT Fund等参投。
Nillion旨在建立一个不基于区块链的去中心化网络,并提供一个全新的互联网基础设施以保护存储和数据计算,让企业和竞争对手可以在不传递关键信息的情况下进行合作。另外,该公司早期文件透露未来将会发行Token。(Tech Crunch)[2022/12/12 21:39:39]
AMBBridge:在两个链之间可以传递任意的数据。例如,允许传输nfttoken以及它们的metadata。
3.Bridge?Components
bridge也包括一些组件,内容如下:
tokenbridge:监听事件,发送交易去授权资产传输;
bridgeuiapplication:在链之间传输tokens和coins的dappgui工具;
UniLend v2将于10月27日在以太坊测试网上推出:10月16日,据官方消息,DeFi借贷协议UniLend Finance将于10月27日在以太坊测试网上推出UniLend v2。[2022/10/16 17:28:02]
bridgemonitor:?检查余额和未处理的events的工具;
bridgedeploymentplaybooks:可选的playbook。对于远程部署,可以管理tokenbridge的配置;
bridgesmartcontract:管理bridge的validator,收集签名和确认资产传递和丢弃。
为了方便理解,我们看一个usercase:
这个ERC20-to-ERC20模式的tokenbridge,展现了用户如何在主链和侧链直接相互转账。具体流程如下:
1.用户通过交易所购买了需要的tokens;
2.用户把购买的token锁在foreginbridge的智能合约里面,同时这个event会通过tokenbridge进行传递,在nativebridgecontract中会创建erc677标准的token,同时发送到用户账号上;
欧盟立法者批准MiCA法案以规范加密货币:金色财经报道,欧洲议会经济和货币事务委员会 (ECON) 批准了加密资产市场监管 (MiCA)的批准文本。虽然该法案的主要条款已于6月达成一致,但批准的文本规定了一个协调的加密监管框架,支持创新和公平竞争,同时确保市场完整性和对零售持有者的高度保护。?
虽然MiCA广泛适用于向欧盟居民提供加密服务的加密资产服务提供商 (CASP),但某些领域超出了MiCA的范围。其中包括以下加密资产:独一无二,不能与其他加密资产(如数字艺术和收藏品)互换;符合指令 2014/65/EU定义的金融工具,例如证券型代币;代表独特且不可替代的服务或实物资产,包括房地产或产品担保;免费提供或自动创建。
根据MiCA,加密资产的潜在零售持有人必须被告知他们打算购买的加密资产的特征、功能和风险。因此,CASP将被要求编制一份白皮书,其中包含有关:发行人和要约人、加密资产附带的权利和义务、用于此类资产的基础技术、相关风险。[2022/10/15 14:28:26]
3.用户通过sidechain提供的dapp,使用dapp;
4.用户想把sidechain的资产转移回主链,通过燃烧erc677的token,tokenbridge把消息传递到foreignbridgecontract,智能合约解锁token;
5.用户把解锁后的token,通过交易所卖掉。
tokenbridge的基本定义,概念,流程都介绍完成了,那么如何去管理一个tokenbridge呢?包括对于tokenbridge的升级,维护,配置等等。这里就需要介绍tokenbridge中的角色。
二、TokenBridgeRoles
tokenbridge上的管理员负责bridge的安全,升级和智能合约的部署。管理员的操作都是通过多签名来确保安全的。???
AdministrativeGroupsandRoles
管理员负责管理bridge的智能合约,并负责validator的管理。管理员分为以下三个组:
1.GroupA-负责管理validator的集合
添加或者删除validators;
对于validators设置最小所需要的签名数量。
?2.GroupB-负责管理bridge的参数
对于user和validators设置每日限制;
设置每个transaction的min和max的限制;
设置gasprice的fallback;
设置终止阈值。
?3.GroupC-管理升级
智能合约的升级;
解锁funds。
ValidatorsRoles
提供100%的正常时间用于传递transactions;
在nativeside监听UserRequestForSignatures的事件,并签署一个批准对于传递的资产在foreignside;
在nativeside监听CollectedSignatures。一旦收集到了足够的签名,传输所有收集到签名给foreginside;
在foreignside监听UserRequestForAffirmationorTransfer事件并对于资产从foregin到native,发送一个准许给nativeside。
validator的主要作用一方面是监听两边的时间,另外一方面对于交易的传递做校验和传递。
Ronin被盗事件中,攻击者就是通过控制验证节点的方式盗取资产。Ronin链有9个验证节点,存、取加密资产需要9个验证者签名中的5个。攻击者设法控制了SkyMavis的4个Ronin验证器,另一个被控制的是由AxieDAO运行的第三方验证器。SkyMavis是AxieInfinity的开发商。
了解了跨链桥的工作机制后,对于如何规避Ronin事件类似的跨链桥安全问题的再度发生,从社会工程的角度,我们有以下几点思考:
跨链桥项目要关注签名验证节点的安全性,确保敏感信息安全存储;
如果跨链桥项目的签名是在线下进行的,网络必须更新签名的安全策略,关闭相关的服务模型,同时要考虑签名账户地址被泄漏的风险;
验证签名不仅要采取多重签名的方式,还要确保多签事实上属于执行隔离,签名内容的验证过程必须独立进行。
UserRoles
这里就不做过多解释了,主要就是在主链和侧链之间发起资产传递的请求。
三、Component-Monitor
tokenbridgemonitor的主要作用是识别tokenbridgeoracle过程中出现的数据不一致和异常情况。monitor从tokenbridgecontract获取数据以及bridge中的transation,分析他们的健康状态,并通过Json的数据格式展现出来。
四、总结
我们从另外一个视角分享了sidechain和mainchain的关系,在两条链中资产和数据的传输是通过tokenbridge来保证的:
tokenbridge通过权限角色模型并借助多签的方式,管理bridge的角色和配置;
validators负责两边transaction的确认和传输;
monitor负责监控数据的一致性和异常情况。
但是这也暴露了一个问题,tokenbridge的管理权限在admin手中,而admin使用是通过多签的方式保证安全的,是一种弱中心化的管理方式。所以,对于admin私钥安全性的管理就成为整个tokenbridge最核心的安全问题。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。