BLO:像开淘宝店一样简单 去中心化交易所小白搭建教程

在这两个月,我们有幸见证了路印3.0的协议发布,并于Github上开源了其最新技术设计和相关实现。这次3.0的发布是路印在去中心化交易网络协议中的一个大进步,它结合了创新的区块链技术和零知识证明加密大幅提高吞吐量,并且可以部署在任何支持智能合约的平台上。

相比于2.0设计,.0提供了2种模式的去中心化协议,分别是开启数据可用性和关闭数据可用性模式,前者提高了40倍吞吐,后者提高了225倍。

除了3.0以外,还发布了一个新型拍卖协议Oedax,这两者正在为去中心化交易所的扩容探索新的路径。

本文将从技术逻辑和技术细节入手,让小白用户也能快速搭建去中心化交易所。

一、使用新型MerkleTree保存账户、余额、成交历史

MerkleTree广泛应用于众多分布式应用中,早在比特币时代,就被用来做交易的SPV证明,方便轻节点校验交易存在性。而在许多可编程智能合约平台里,比如以太坊,MerkleTree还常常用来存放智能合约数据。

美SEC主席:绝大多数加密代币符合投资合同测试,大多数加密中介机构也须遵守证券法:6月9日消息,美国证券交易委员会(SEC)主席 Gary Gensler 在 2023 全球交易所和金融科技大会之前发布的一份发言稿中表示,没有任何迹象表明加密证券市场中投资者和发行人不应该受到我们证券法的保护。正如我多次说过的,绝大多数加密代币符合投资合同测试。这些代币有团队通过网站和 Twitter 帐户进行推广。这些代币并非凭空而来。加密证券发行人需要向 SEC 登记其投资合同的要约和销售或满足豁免要求。

Gary Gensler 进一步称,鉴于大多数加密代币都受证券法的约束,因此大多数加密中介机构也必须遵守证券法。如果中介机构不进行注册,受到伤害的是投资者,美国金融市场也可能会受到影响。在证券市场的其他领域,交易所、经纪自营商和清算功能是分开的,这有助于减轻因混合此类服务而可能产生的冲突。加密货币中介机构可能需要分离业务线,制定防止欺诈和操纵的规则手册,适当隔离客户资金,缓解冲突,或改变他们的清算和托管方法。[2023/6/9 21:25:39]

在3.0的设计中,为了更好的支持Off-chain和On-chain两种模式,开发人员设计了一个新型MerkleTree,主要用来组织Account、Balance以及TradeHistory三者之间的关系和数据,并提供快速验证的能力。

加密薪资管理公司Franklin完成290万美元种子轮融资:金色财经报道,加密薪资管理公司 Franklin 完成 290 万美元种子轮融资,本轮融资由 Gumi Cryptos Capital 和 CMT Digital 共同领投。

Franklin 可以向包括美国在内的世界各地的员工和承包商支付加密货币。该项目建立在以太坊主网和 Polygon 上,为选择的加密货币提供自动化工资支出和税务申报的工具。[2023/4/4 13:44:36]

从上图不难发现,一个账户下可以支持多种Token,而Loopring生态系统中的每个参与者都在同一个树中拥有一个账户。同时3.0中采用账户级别的nonce设计,而不是Token级别的nonce设计。

事实上,在以太坊的账户模型里,也是使用账户级别的nonce设计,nonce值可以简单理解为该账户所有的交易数量。但是不同于以太坊,路印的MerkleTree和账户模型中考虑了多种Token以及Off-chain请求。

比特币全网未确认交易数量为6721笔:金色财经报道,据BTC.com数据显示,目前比特币全网未确认交易数量为6721笔,全网算力为261.37 EH/s,24小时交易速率为3.42交易/s,目前全网难度为34.24 T,预测下次难度上调5.18%至36.02 T,距离调整还剩5天13小时。[2022/12/14 21:43:01]

每一次交易都会为用户修改3个token余额,包括tokenS、tokenB和tokenF。该设计带来的最大好处就是每次交易操作的代价都较低。对于每一笔交易,账户本身所在的MerkleTree修改只涉及到一条MerklePath。虽然BalanceTree需要修改3次,但是由于BalanceTree本身比较小,代价同样较低。

二、三种Block状态

为了让MerkleProof的证明生成并行化,3.0的架构中给区块设定了三种状态,分别是Committed、Verified和Finalized。

跨链互操作性协议Multichain已集成至Aptos主网:据官方公告,跨链互操作性协议Multichain已集成至Aptos主网,支持USDT、USDC、WBTC、ETH和DAI五种资产从Multichain已支持的15种区块链网络跨链至Aptos。[2022/11/4 12:17:36]

其中,Commited的Block表示该区块已经上链,但是未能被Proven。VerifiedBlock表示该区块已经提交并通过验证,但是尚未验证此块之前的所有块,而FinalizedBlock则表示该区块和该块之前的所有块都应被验证。我们会在第五节的案例中为大家介绍如何利用这些Block的特性创建一个去中心化交易所。

在3.0的设计中,Proof可以不按顺序提交。Proof随时可以生成,但是直到最大证明生成后才真正有效。比如在比特币里,我们需要在至少6个块以后才能认为交易的SPV证明是不可篡改的,在以太坊里由于出块速度的不同,这个最大证明时间可能为12个区块以上。

PolySwarm CEO:有必要利用区块链来实现网络安全:金色财经报道,PolySwarm首席执行官Steve Bassi认为有必要利用区块链来实现网络安全。虽然对区块链技术和安全性的认识正在上升,但在网络安全中使用区块链仍处于早期阶段。在我的职业安全职业生涯中,尤其是在过去五年中,对网络安全和加密的认识比任何时候都高。

尽管意识有所提高,但首席执行官指出,网络安全项目仍处于尝试在该领域寻找区块链应用的过程中。[2022/7/22 2:31:41]

或许有部分用户担心资金丢失的风险,在3.0的设计架构中,最差的情况也就是发生区块和状态回滚。所有之前请求的块和对应交易内容需要被重新执行,证明也会重新生成。但是相比于MerkleProof并行化带来的收益,这点回滚成本可以忽略。同时,MerkleTree的回滚可以通过内容寻址的特性来快速完成,浪费的代价仅仅是少部分的存储容量。

三、五种Circuit排列

3.0的设计中,还支持5种Circuit排列:

①RingSettlement

②Deposit

③Off-chainwithdrawal

④On-chainwithdrawal

⑤OrderCancellation

这五种Circuit覆盖了所有Circuit,不管是否支持链上数据可用性。同时,为了减少证明时间,还为这几种Circuit设计了动态的Block配置。

四、性能测试结果

根据官方的测试结果,我们可以发现,3.0的性能相比于2.0有了一个甚至两个数量级的提升,而每笔交易的Gas费用则减少到了原来的几十分之一甚至1%以下。这对于去中心化交易所来说无疑是具有致命诱惑的。

五、基于3.0快速搭建去中心化交易所

第一步,设置交易所

Loopring合约提供了完备的接口,你只需要发送一笔交易调用Loopring合约上的createExchange,就可以创造出一个全新的交易所合约。

第二步,交易

①用户可以使用交易所账户创建订单,订单将会被添加到DEX的订单薄中。

②DEX将订单与另一个订单进行匹配,并使用ring-matcher私钥和订单的dual-author密钥进行环签名。

③在RingSettlement结束后,订单可以显示为已填写,但尚未验证状态。

④DEX将Ring发送给交易所的运营商,由于这些Ring将要在合理时间内完成,因此运营商架将会在收到Ring之后立刻调用commitBlock操作。

⑤操作员在允许的最大时间内生成证据并调用verifyBlock接口。

⑥DEX现在可以显示额外的“已验证”表示以填写订单。

第三步,订单状态与不可逆

每个订单都会有以下几种状态:

·Unmatched:不与某一个订单簿匹配

·Matched:与DEX匹配

·Commited:已经调用commitBlock并成块

·Verified:在一个块中验证

·Finalized:该块包括其之前的所有块都被证明

只有处于最后一个Finalized状态的数据才是真正不可逆的。我们可以从上面的流程发现,相比于2.0的协议,3.0在交易所的部署上越发简单快捷,甚至小白用户都可以部署自己的去中心化交易所!

随着3.0的发布和相关合约的升级,TPS和Gas费用不再是制约发展的主要瓶颈,现有的TPS已经可以满足大部分的去中心化和中心化交易所的场景。

-END-

作者:区块链技术专员

声明:本文为作者独立观点,不代表区块链研习社立场,亦不构成任何投资意见或建议。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:15ms0-0:533ms