热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在Layer3上建造安全高效的DEX

不管是AMM模式还是订单簿模式,Layer3上DEX的交易速度、成本都会有更好的用户体验。撰文:康水跃,
不管是 AMM 模式还是订单簿模式,Layer3 上 DEX 的交易速度、成本都会有更好的用户体验。

撰文:康水跃,Fox Tech CEO;林彦熹,Fox Tech CTO

Layer3 概念目前在区块链社区备受关注,被许多人视为革命性的进步,因为开发者可以在区块链平台之上创建各式各样的智能合约和去中心化应用(dApps)。Layer3 是以太坊扩容生态系统的一项伟大工程创新。如果说 Layer2 的出现解决了通用型扩容问题,那么 Layer3 的出现则解决了更加高速、更加低成本、定制化的扩容问题。

目前已经有不少建立在 Layer2 上的去中心化交易所 DEX,那为什么还需要在 Layer3 上建立 DEX 呢?大多数建立在 Layer2 上的 DEX 均采用 AMM 模式,少数采用订单簿模式的 Layer2 DEX,比如 ZigZag,其交易成本比 CEX 高出一截。不管是 AMM 模式还是订单簿模式,Layer3 上 DEX 的交易速度、成本都会有更好的用户体验。

Layer3 完全可以建造出安全高效的 DEX 的原因有以下几点:

  • Layer3 的 DEX 可采用与 Layer1 Solidity 相比更强大的语言写撮合引擎比如 Rust;
  • Layer3 能高度定制,简化用户交易步骤,不必在每次下单都调用钱包授权;
  • Layer3 的 TPS 相比 Layer2 再次提升 100 倍数量级,成本再次降低 1/100 数量级,支持 Orderbook 模式;
  • Layer3 与 Layer2 一样,二者的的共识层均由 Layer1 担当,安全性等级足够高;
  • Layer3 有独立的数据可用性层,链外交易与资产状态的可见性均能轻易获知、获得;
  • 用户可以使用 EOA 钱包或者智能合约钱包实现资产自托管,更好保障资产安全。

图 1: DEX 从 Layer 1 到 Layer3 的性能变化

区块链基础设施的分层结构

目前区块链基础设施主要分为 Layer0、Layer1、Layer2、Layer3 四层。这些“Layer”到底指什么呢?我们最熟悉的 Layer1,通常指的是区块链的主网络,无需通过中心化客户端服务器即可通过每个节点 P2P 进行连接与交易,其中以太坊最为典型。每笔交易都会注册为一个区块并存储在分布式数据库中。Layer1 是这 4 个 Layer 里最早出现。为了实现资产跨链,出现了 Omnichain 互操作协议,也就是 Layer0,其主要应用便是各式各样的跨链桥。

经典的区块链 Trilemma“三难困境”是指在相同一个 layer 里的不同解决方案,在去中心化、可扩展性、安全性三个方面,难以同时高度满足。典型案例是 ETH 选择了去中心化和安全性从而牺牲了可扩展性,而像许多后来的公链则是依赖去中心化程度较低的框架实现更高的 TPS。正因为有“三难困境”的存在,之后随着交易数量的增加,不可避免出现了交易延迟和费用飙升问题。为了解决网络拥堵,开发者们提出了基于 OP 或者 ZK 的 Layer2 扩容方案。

在这种多层结构的设计里,Layer1 为 Layer2 提供共识并保障交易安全,而 Layer2 将计算从主区块链上分离出来作为相对独立的执行层,最大限度地减少延迟并降低交易费用。Layer3 在用户和底层区块链技术之间提供了一个抽象层,使用户更容易与 dApps 和智能合约互动,同时通过底层区块链确保其安全。Layer3 能在 Layer2 的基础上进一步做数据压缩,再通过 Layer2 将证明打包回 Layer1 进行链上验证,从而实现比 Layer2 更加快速和低成本的交易。

在 Laye2 完成了通用型扩容目的之后,开发者和用户将转入 Layer3 以获得更加定制的功能以及更高的性能,因此预计 Layer3 将出现丰富多彩的大型应用。目前有一大批 dApps 正在使用去中心化技术将 Web2 各式各样的商业模式搬到 Layer2 上实现。Layer3 将给这些应用带来更多的可能性、更大的想象空间。

如何运用零知识证明将 DEX 接入到 Layer3

DEX 是很重要的一类 Layer3 应用。如果想在 Fox Tech 开发的 Layer3 上建造一个名叫 OX Exchange 的 DEX,那么实现这个目的最关键的技术是什么?在 Layer3 部署这样的去中心化交易所,零知识证明的使用最为关键。

从交互逻辑上来看,用户在 OX Exchange 当中的操作,会以调用智能合约的形式实现,也就是说每一次买入卖出订单都会转化为对合约函数的一次调用交易(transaction),而这样的每一笔交易都会被提交到 Layer2 节点当中,并通过 zkEVM 执行。

在具体的实现方面,在 Layer2 特定部署的智能合约会与 Layer3 的应用进行交互。而接收到来自 Layer3 的批量交易之后,Layer2 的 Fox 节点会进行 zkrollup 的证明生成,包括拆分 opcode 并生成电路,之后依据零知识证明算法证明执行的正确性。最终将生成的执行正确性证明提交到 Layer1 链上,通过链上合约的验证,接受状态更新。

Layer2 的 zkrollup 提供的服务可以获得更低的延迟,更好的用户体验。具体来讲,OX 需要与位于 Layer2 的 Fox zkRollup 进行交互,从而利用 Fox 的“打包”来获得更大的吞吐量。OX 可以提供丰富的前端操作界面,底层复杂的交互逻辑完全对用户透明,用户可以像在所有的 DEX 当中那样,连接 Web3 钱包就直接使用 DEX 的各种服务。

从这个过程当中可以看出,Layer2 的 zkRollup 层依旧在承担着链下执行计算,链上提交证明更新状态的职责,而 Layer3 则主要负责执行更为具体的直接与用户交互的订单引擎功能。通过将复杂的计算从链上分层次执行,可以高效地提高效率,让交易成本以及吞吐量发生质的变化,用户体验也因此得到显著提升。

图 2: Layer3 DEX 架构图

如何通过数据可用性 DA 来保障用户资产安全

在所有 Web 3.0 项目中,数据可用性 (Data Available) 都扮演至关重要的角色。包括中心化交易所 CEX 在内的所有传统应用通常都不会使用 DA,因此用户数据透明度极低零,而 CEX 用户的资产安全等级完全取决于交易所做恶与否。Layer3 DEX 由于采用专有的数据可用性(DA),所以在极大降低用户手续费的同时,也保障了用户交易数据、资产安全。

Layer3 DEX 具备高吞吐量,这意味着有海量的数据需要处理。这些数据采用“DA 层 +L2”的混合存储模式以兼顾的效率与安全性。部署在 L2 的合约只需要纪录少数关键的数据以及一个 Merkel 根,而过程中的所有其他数据将记录在 DA 层。当用户与 L3 的应用交互时,交互过程中的原始数据将存入 DA 层,而 DA 层会对更新后的数据计算新的 Merkel 根;与此同时,L3 应用也会向 L2 的合约发送一个证明,合约将由此检查 Merkel 根更新的正确性。这样的机制可以确保 L2 合约的状态与 DA 层的一致性,即保证记录的状态始终是正确的。

中心化应用的数据就像黑箱,而有了 DA 层的 L3 应用就像用一个既透明又安全的保险箱。L3 应用的用户不用担心项目方跑路或破产,因为他们资产的安全性不再依托于项目方而是依托于以太坊三层 Layer。在像 Fox 这样的 zk-Rollup 的例子中,以太坊共识层提供为 Layer3 应用提供最好的安全性。

图 3: Layer 3 DEX 的数据可用性 DA


推荐阅读
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 开发笔记:计网局域网:NAT 是如何工作的?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了计网-局域网:NAT是如何工作的?相关的知识,希望对你有一定的参考价值。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • 模块化区块链生态系统的优势概述及其应用案例
    本文介绍了相较于单体区块链,模块化区块链生态系统的优势,并以Celestia、Dymension和Fuel等模块化区块链项目为例,探讨了它们解决可扩展性和部署问题的方案。模块化区块链架构提高了区块链的可扩展性和吞吐量,并提供了跨链互操作性和主权可扩展性。开发人员可以根据需要选择执行环境,并获得奖学金支持。该文对模块化区块链的应用案例进行了介绍,展示了其在区块链领域的潜力和前景。 ... [详细]
  • 周鸿祎火力全开
    “在这个IoT时代,只是孤立地搞大数据,孤立地搞云,或谈AI,或做一个智能硬件,我觉得都是不完备的,必须将这几项技术综合运用起来,才是一个真正的IoT时代,也是IoT真正的春天。” ... [详细]
  • HyperledgerComposer环境安装1.安装基本软件包**如果使用Linux安装HyperledgerComposer,请注意以下建议:以 ... [详细]
  • 痞子衡嵌入式:对比MbedTLS算法库纯软件实现与i.MXRT上DCP,CAAM硬件加速器实现性能差异...
    大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是MbedTLS算法库纯软件实现与i.MXRT上DCP,CAAM硬件加速器实现性能差异。近 ... [详细]
  • 内网知识整理
    内网 ... [详细]
  • Flow 生态案例学习 | Emerald City为Flow上DAO、教育和开发铺平道路
    原文链接:https://www.onflow.org/post/emer ... [详细]
  • 【指南】我们可以从去中心化的社区建设中学到什么?
    本文属于老雅痞原创文章,转载规矩不变,给我们打声招呼~转载请微信联系:huangdiezi,更多 ... [详细]
  • [币萌研究院] 项目简报Agoric (BLD)
    [币萌研究院] 项目简报Agoric (BLD) ... [详细]
author-avatar
aGreadyCat__895
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有