2023年8月上线主网的SeiNetwork在经历几个月的沉寂后开始爆发,其代币价格持续大幅上涨,创下历史新高。目前Sei流动性质押已突破350万美元,网络TVL突破1100万美元。此前,Sei携手Beosin、Alibaba Cloud成功举办了CodeSei:Powering New Gaming and DeFi Exchanges的黑客松大赛,Beosin也完成Sei流动性质押项目Kryptonite的智能合约审计,助力Sei生态安全。
今年Sei即将进行非常重要的Sei V2升级,提高并行处理的性能和引入EVM。今天Beosin将为大家分析Sei Network的代码、技术特点和生态项目,帮助大家了解Sei及其生态的潜在机会。
Sei设计特点
Sei作为支持订单簿活动和专注交易的Layer 1,提供内置的中央限价订单簿(CLOB)模块。开发者可以利用 Sei 的内置订单模块快速启动和定制现货、衍生品、期权、等的订单簿交易Dapp,同时Sei的并行化设计为其生态应用提供了一个快速、高吞吐量的网络。
那么Sei是如何提高区块链网络处理速度的呢?
1. 本地构建哈希
在目前大多数的区块链网络中,验证者提议区块,然后再将哈希值和区块发送给其他验证者,这会产生一定的等待时间。如下图所示:
https://github.com/sei-protocol/sei-chain/blob/3c9576fee3494ce039df684624f918dd8066ba3f/whitepaper/Sei_Whitepaper.pdf
而Sei允许其验证者向Sei区块链网络发送仅包含交易哈希的区块。在其它验证者收到仅包含交易哈希的区块后,会首先根据其本地的内存池的记录构建区块。如果内存池不存在相应的交易信息,验证者会等待后续包含详细交易内容的区块到达进行验证。
2. 并行交易处理
对于顺序执行的区块链网络来说,当一个区块被提议时,验证者需要等待一定时间长度,而没有实际处理该区块。如左图所示:
https://github.com/sei-protocol/sei-chain/blob/3c9576fee3494ce039df684624f918dd8066ba3f/whitepaper/Sei_Whitepaper.pdf
Sei Network通过验证者并行处理预投票和预提交阶段的区块。并行处理减少了延迟,并提高了吞吐量。
Sei并行处理在代码中的实现如下图所示,在ProcessTxs函数中,Sei会对交易进行处理。处理分为两种:并行处理与顺序处理,对于有关联的多笔交易(通过判断存储交易信息的键值对是否有重合),Sei会对相关交易进行顺序处理;对于非关联交易则进行并行处理。
https://github.com/sei-protocol/sei-chain/blob/main/app/app.go
在并行交易处理过程中,我们看到Sei是通过Golang的goroutine对多个交易进行并行处理的。目前这样的设计无法并行处理太多的交易,比如上千笔交易同时由Sei的节点并行处理,很大概率会出现一致性问题。因此,Sei V2需要在并行处理上继续升级。
并行EVM
什么是并行EVM?
EVM是以太坊处理智能合约相关交易的虚拟机。为确保网络的安全性,EVM的交易需顺序执行。顺序执行的设计避免了并行执行的复杂性和冲突,但也限制了相关区块链网络的性能。
由此,并行EVM的概念被提出并受到市场关注。
并行EVM的设计将允许EVM中不同的交易同时进行,大大提高 EVM 处理速度和网络吞吐量。目前的解决方案为使用Solana、Aptos、Sei等高性能(本身支持并行交易)新公链兼容EVM。其中Sei的并行EVM最为市场关注。
SeiV2升级
Sei在2024年即将推出的V2版本中将实现并行EVM,支持 Cosmwasm 智能合约与 EVM 智能合约的运行和交互。以下是Sei V2升级的关键点:
1. 乐观并行化:允许并发事务处理,显着提高吞吐量和效率。如果发生状态冲突,事务将按顺序重新处理以保持数据完整性。
2. 兼容EVM:使开发人员能够在 Sei 上部署现有的 EVM 智能合约,而无需更改任何代码,简化了向 Sei v2 的过渡以及提高互操作性。
3. Geth兼容性:Sei节点将融合Geth,以处理未来网络中EVM智能合约的交易,并通过Sei为EVM创建的特殊接口进行任何更新。
4. SeiDB:Sei将改进其存储层,使用更高效的数据结构和数据库以减少状态膨胀并增强读/写性能,促进新节点更轻松的同步并提高可扩展性。
5. 增强的性能:具有 390毫秒的出块时间和最终确定性的快速交易处理能力,以及每秒 28,300个批处理交易的高吞吐量,并且交易成本更低。
Sei v2 此次升级将集成以太坊的优点,期待提供与现有 EVM 生态系统完全兼容的超优化执行层,以吸引更多用户和开发者进入Sei生态。
Sei合约安全建议
若开发者计划构建 Sei 生态应用,会使用 CosmWasm 构建智能合约。Beosin建议开发者遵循以下安全实践以提高其项目的合约安全性:
1. 做好应对攻击的准备。开发者需要考虑到如何面对攻击和修复漏洞。因此开发者需要构建可升级的智能合约,并制定好风险应对方案。
2. 注意反序列化 addr 类型。CosmWasm 的 addr 类型在反序列化时不会被验证,这表明 addr 类型会有预期之外的反序列化特性。因此,在反序列化 addr 后建议指定类型并进行验证。
3. 注意运算与溢出。在 CosmWasm 合约中,开发者需注意整数溢出风险或被0除等情况。建议开发者使用 CosmWasm 的 Uint256 和 Uint512 类型,并使用不会溢出的数学函数full_mul()。
4. 注意无限循环。CosmWasm 合约可能通过在 ACK handler 中回调自身从而陷入无限循环。如果开发者在两个 CosmWasm 合约之间有传递数据包,需注意这可能导致无限循环并损耗大量 gas 费。
Sei生态
1. 钱包
目前特定支持Sei网络的钱包有Compass Wallet和Fin Wallet,兼容Sei网络的钱包已有14款,如OKX Wallet以及原先支持Cosmos生态的钱包Keplr和Leap Wallet。
source:Ecosystem|Sei
安全建议:
(1) 建议用户避免使用未经审计和运行时间不长的钱包项目。
(2) 要保护钱包的资产,最重要的是注意安全保管助记词和私钥。
(3) 在使用相关钱包交互Sei项目的过程中,签名是最需要关注的安全风险之一。用户在签署交易前需检查交易信息是否正确,如黑客可诱骗用户使用cosmos.bank.v1beta1.MsgSend将代币转移到黑客地址。
2. Kryptonite
Kryptonite是Sei生态最大的流动性质押协议。用户可以在其平台上质押 Sei 代币以获得 stSei,赚取5.54%的年化收益;目前也可以质押 Seilor/Sei 的 LP 代币、stSei/SEIYAN 的 LP 代币以获得相关代币的收益。此前Beosin已完成对Kryptonite的合约审计,提高其质押业务的安全性。
https://beosin.com/audits/KryptoniteDAO-SEILOR_202308091649.pdf
后续Kryptonite将推出kUSD稳定币,用户可通过抵押Sei、BTC、ETH等资产进行铸造,为Sei生态提供更多流动性。
3. YakaFinance
Yaka Finance致力于构建多功能 DEX,为用户提供交易、流动性挖矿、Launchpad等多种DeFi服务,其目标为成为Sei生态的流动性中心枢纽。
此前,Yaka Finance在Sei联合Beosin、Alibaba Cloud举办的Code Sei: Powering New Gaming and Defi Exchanges黑客松中荣获DeFi赛道的第一名。
目前Yaka Finance正处于测试网阶段,同时启动了空投激励计划,吸引了超过1.5万名用户参与其测试。
source:Yaka
4. PalletExchange
Pallet Exchange是Sei生态的NFT交易平台,目前日交易量最高达123万Sei(约100万美元)。Pallet Exchange会对其平台的NFT交易收取2%的手续费以维持平台运行。
source:PalletExchange
目前Sei生态备受关注的NFT系列有WeBump、The Colony、Seiyans、Seinsei等。因Sei生态处于发展早期,用户需注意相关NFT的流动性风险。
总结
作为专注交易的高性能Layer1,Sei对区块的生成和处理过程进行了优化。目前Sei的生态正在快速增长中,其生态的发展将与Sei形成协同效应,各类去中心化应用将继续放大Sei的高性能优势,而Sei也将吸引更多流动性与用户。随着并行 EVM 叙事的延续,Sei V2的升级将解决目前Sei的瓶颈,吸引市场的更多关注和更多开发者进入Sei生态。