混合Rollup:探秘 Metis、Fraxchain、Aztec、Miden和Ola

news2024/10/7 20:31:29

1. 引言

混合Rollup为新的以太坊L2扩容方案,其分为2大类:

  • 将乐观与ZK技术结合的混合Rollup
  • 同时支持公开智能合约 和 私人智能合约 的混合Rollup

本文将重点关注Metis、Fraxchain、Aztec、Miden和Ola这五大项目。

2. 何为混合Rollup?

混合Rollup具有2重含义:

  • 1)作为以太坊L2扩容方案,结合了 乐观Rollup的可扩展性,和,ZKRollup的安全性。如Metis DAO和Frax Finance。
  • 2)作为同时支持公开和私人 智能合约及交易 的L2/L3扩容方案。当用户想要隐私时,可在其自身设备上执行合约、生成ZK proof、并将ZK proof上传到rollup。这样的费用效率高,因为rollup仅需验证proof,而不需要验证交易本身。

3. 乐观和ZK混合Rollup:Metis和Fraxchain

Metis为以太坊的乐观Rollup,分叉自Optimism,专为decentralized autonomous corporations (DAC) 做了优化。

根据L2Beat,Metis Andromeda链 为第三大锁仓量TVL的乐观链——约1亿美金:
在这里插入图片描述
根据L2 Fees统计,Metis L2网络内的ETH转账交易手续费仅约0.01美金,swap手续费约0.03美金,均为最低:
在这里插入图片描述
在希腊神话中,Metis是良策女神,而Andromeda是一位美丽的公主,被英雄Perseus从海龙手中救了出来。事实上,Metis DAO的标志是希腊女神的头像。有了这种神话联系,不要惊讶于Metis生态系统中的许多项目也以古代的神和英雄命名:Hera、Hermes、Maia、Athena、Tethys等。
在这里插入图片描述

3.1 Metis DAO的混合rollup项目

2023年3月,Metis DAO 宣布其将致力于混合rollup,将取款到以太坊的时间由7天缩短到4小时。

Metis 混合rollup L2项目:

  • 其内核为乐观链,但使用ZK有效性证明。ZK proof很小,发送多个ZK proof到主网仅需花费少量gas,这将有助于缓解以太坊的拥堵。
  • 仍利用相同的名为Smart L2的链下存储系统作为Andromeda。在Smart L2中,交易数据发送给MEMO去中心化云存储协议,而不是在链上维护。如有需要(如潜在欺诈),也可将MEMO中的数据重新提交到以太坊链上。
  • 不将完整的交易数据发送到以太坊链上,Metis 仅发送batch的Merkle Tree Root(MTR)到以太坊链上,其余的都发送给MEMO。该解决方案要比Optimism或Arbitrum便宜的多。事实上其不是乐观rollup,而是“on-demand rollup”。
  • 将兼容EVM,dApp开发则将无进入门槛。
  • zkMIPS:计划使用MIPS作为其混合rollup架构,详细技术描述见:zkmips-and-other-research-challenges-for-layer-2。
    且目前Optimism已在其Cannon协议中使用了MIPS。
  • 未来Metis也将合并Cannon。

3.2 Fraxchain:Frax Finance生态的混合rollup

$FRAX为最大的去中心化stablecoins之一。

Fraxchain与Metis类似:

  • 为基于乐观rollup + ZK proof
  • 为EVM兼容

不同之处在于,Fraxchain:

  • 使用frxETH、FRAX、FPI(Frax Price Index)作为gas fees。
  • 支持gasless交易,具体取决于其拥有的FRAX和frxETH。
  • 消耗的gas fees将分发给锁定FRX的用户。
  • 使用Fraxferry协议来在链间转移FXS稳定币,无需bridges且是trustless的。
  • veFXS持有人将投票决定谁是Fraxchain的sequencer。

在乐观rollup中,sequencer是对用户发送的交易进行排序(排序)和验证、将其编译为batches(rollup区块)并向L1提交批处理数据的一方。由于sequencer能够压缩交易,最终用户支付的费用比他们自己将交易发送到以太坊主网的费用要少。
sequencer有很大的权力:

  • 可决定从块中包括或忽略某交易,
  • 以及以特定的方式从排序操作中提取利润(MEV)。

通过让社区有能力投票给sequencer,Frax Finance将加强其去中心化治理。
即使是那些没有加入新链的Frax用户也将受益。现在,frxETH的所有收益都进入sfrxETH金库,并在质押者之间进行分配。现在想象一下,很大一部分frxETH迁移到Fraxchain,用于支付交易费用。总金库收益率将保持不变(因为持有ETH的流动资金不会改变),但将分配给少数持有者。每个frxETH持有者的APR将增加。

在这里插入图片描述

4. 公开和私人合约执行混合:Aztec、Ola和Polygon Miden

4.1 公开和私人合约

使用公开合约:

  • 任何一方都可以查看所有其他用户如何与合同交互,包括用户输入和输出。用户向合同发送交易请求,validator批准这些请求,并更新区块链的状态。我们习惯的所有“正常”dApp,如Liquidswap、Compound等,都是在公开合约上运行的。

使用私人合同:

  • 交易数据是加密的,只有经过授权的用户才能查看输入和输出。即使是区块链validator也看不到交易中的内容。

混合rollup允许用户执行公开和私人两种类型的交易。有了这项技术,私人智能合约甚至可以在用户自己的设备上本地执行。

私人合约有许多潜在用途:

  • DAO的选民隐私
  • AMM安全,这样机器人就看不到提交到内存池的交易;
  • 公共游戏中的私人游戏锦标赛
  • 机构用户的企业安全。

当前,开发公开和私人合约执行混合rollup的项目主要有:Aztec、Ola和Polygon Miden。

4.2 Aztec

Aztec自身定位为:“加密版以太坊”,并为首个混合ZK rollup。

用户可在设备端构建加密交易,在本地生成ZK proofs,并将ZK proofs提交到Aztec以打包到(发送给以太坊的)batches中。

Aztec的最知名产品为Aztec Connect,上线于2022年7月,为以太坊的隐私层,支持开发者在以太坊上构建隐私DeFi dApps,其中最知名的为Aztec官方的zk.money.protocol。不过Aztec Connect和zk.money已于2023年3月下线,团队将分配资源构建其新的混合rollup——Aztec Network。

4.2.1 Aztec Network架构

Aztec Network混合rollup网络中,不需要发送交易请求给validators,而是发送该交易对某合约是完整的proof。无论是L1还是rollup,都不知道该交易内容。

目前难点在于:

  • 以太坊和EVM设计的最大化透明度 优于 隐私
  • 专注于隐私的链(如ZCash)又不支持dApps

以太坊和隐私币(如ZCash)之间最大的差别在于其记录交易的方式:

  • 以太坊采用账号模型:每个用户有关联balance的账号,该余额会随每笔交易变化。区块链会跟踪整个网络中的所有账号余额变化。
  • 隐私币采用UTXO模型:这样的链不关心账号余额,仅关心某coin unit在某交易内是否已花费。Bitcoin也采用UTXO模型,不过其没有内置隐私性。

Aztec Network 结合了UTXO模型和支持dApp:

  • UTXO可处理任意数据,而不仅仅是金钱总额
  • 整个智能合约都可包含在单个UTXO内

在这里插入图片描述
Aztec将不与EVM或Solidity兼容。Aztec团队开发了一种新的私人智能合约编程语言——Noir。
在这里插入图片描述
sandbox testnet将于2023年Q3上线,公开测试网计划于2024年Q1。https://github.com/noir-lang/awesome-noir中包含了丰富的学习资源。

4.3 Ola

Ola为专注隐私的zkVM,由Sin7y Labs开发,其团队来自ZKSpace、Huobi、Qtum、Accenture。

注意Ola不是zkEVM,其不兼容EVM。不过需要对现有以太坊dApp重编码,才有可能能前一到OlaVM中执行。

Ola与Aztec Connect有一些相似特性:

  • 可编程隐私
  • 新的编程语言:Ola-lang。Noir为DSL,而Ola-lang为通用编程语言,可用于任意领域。
  • 合规性:可以向第三方授予特殊的查看权限(viewing keys)以进行帐户监控。这可以在最终用户级别、工具上完成。
  • 2种区块链状态:公开和私有。其中私有状态采用UTXO。
    在这里插入图片描述

4.3.1 Ola与Aztec不同之处

Ola与Aztec不同之处有:

  • 1)每个函数所需key pairs不同:
    • Aztec每个合约函数需要其自己的密钥对(public key和verification key),以用于计算和存储。
    • OlaVM不需要这样的密钥对,从而节约了资源和存储空间。
  • 2)隐私设计不同:
  • 如Sin7y团队Hybrid Rollup — What do Aztec, Miden, & Ola Hold for the Future of Next-Generation Infrastructure?博客中所述,用户并不是要求其交易是不可跟踪的。用户可能想要的是,无人可利用其链上行为信息来犯罪 或 获利。为此,Sin7y Labs设计了2种隐私方案:
    • 可追踪交易:用户手续费更低,但仍对用户数据层提供隐私保护。
    • 不可追踪交易
  • 3)证明方案不同:
    • Aztec采用SNARK
    • Ola与polygon Miden类似,采用STARK,具体算法为Starky。
  • 4)开发者友好程度不同:
    • Ola:为VS Code创建了Ola-lang插件。未来将集成到LLVM框架中。Pontem Network采用相同的LLVM工具实现了首个 Move for EVM。

Ola公开测试网在2023年Q4,主网在2024年初:
在这里插入图片描述

4.4 Polygon Miden

Polygon Miden 不同于Polygon zkEVM,其为2023年3月宣布的新的ZK链品牌,公开测试网计划于2023年Q4:
在这里插入图片描述
Miden与Ola、Aztec的相似之处在于:

  • 用户可运行私人智能合约,验证其交易,并生成ZK proofs。
  • 切分为公开状态和私人状态。
  • 灵活合规性,使得仅监管机构可访问私人智能合约内信息。
  • 数据验证的资源高效性。

Miden在某种程度是与EVM兼容,不过隐私优先。与其他rollups类似,Miden网络仍会向以太坊主网发送ZK proofs。但是以太坊开发者仍有一些学习门槛来基于Miden开发。

Miden:

  • 将使用(与Aptos相同的)Move作为其合约开发语言,因为Miden的创始人Bobbin Threadbare,之前在Facebook开发Move。
  • 将使用(模块化区块链执行层Fuel Network背后的)Fuel Labs开发的Sway语言。

4.4.1 资源效率加隐私

Miden区分了私人交易和私人合约:

  • 私人交易:可在公开合约上执行,如隐藏了所交易的特定NFT。
  • 私人合约:有其代码和状态,对其它用户不可见,但仍可与公开合约交互。如Miden上的隐私钱包,可与公开AMM交互——对于不想向潜在黑客透露其操作的流动性提供商或项目团队来说,这是一个很好的功能。
    • 借助私人合约,所有计算都在用户设备本地进行。即无gas开销,用户可便宜地执行复杂的合约。
    • Validators仅需要便宜且简单地检查ZK proofs。使得有可能支持并行计算,即意味着Miden要比常规ZK rollup快得多。因此,在Miden上保持隐私也将为用户节省金钱和时间。
    • 客户端验证:仅对不影响公开链状态的交易可行。Miden上的大多数交易都是不影响公开链状态的,包括大多数token转账和NFT交易。即使相应ZK proof已记录在链上,这些交易也可revert。
    • 对于哪些需要修改公开状态的交易,Miden提供了常规链上执行选项。

4.4.2 Miden中的账号抽象

Miden中的另一创新为:

  • 账号抽象:结合了EOA和合约账号的优点。2023年3月以太坊主网引入了ERC-4337作为账号抽象。

4.4.3 STARK proof递归

与Ola类似,Miden也采用STARK方案。

为解决STARK proof size大的问题,引入了递归STARK方案。

参考资料

[1] Pontem Network 2023年9月博客 Hybrid rollups: discover Metis, Fraxchain, Aztec, Miden, and Ola

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1040865.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VMware Aria 曝光“关键”身份验证漏洞,6.x 版本均受影响

导读近日消息,VMware Aria Operations for Networks 近日曝光了一个高危的身份验证漏洞,远程攻击者可以绕过 SSH 身份认证,访问专用终端。 VMware Aria 是一款用于管理和监控虚拟化环境和混合云的套件,支持 IT 自动化、日志管理、…

ROS2 从头开始:第 7/8回 - 使用 QoS 配置在 ROS 2 中实现可靠通信

一、说明 在机器人操作系统 (ROS) 2 系统中,服务质量 (QoS) 用于指定各种策略,这些策略确定如何通过 ROS 2 主题或服务传输和接收消息。QoS 策略允许您优化 ROS 2 系统中节点之间通信的性能和可靠性。这些设置可用于调整 DDS 系统的性能和行为,以满足应用程序的特定需求…

Ubuntu 安装Nacos

1、官网下载最新版nacos https://github.com/alibaba/nacos/releases 本人环境JDK8,Maven3.6.3,启动Nacos2.2.1启动失败,故切换到2.1.0启动成功 2、放到服务器目录下,我的在/home/xxx/apps下 3、解压 $ tar -zxvf nacos-serve…

人机逻辑中的家族相似性与非家族相似性

维特根斯坦的家族相似性理论是他在《哲学研究》中提出的一个重要概念。他认为,语言游戏是一种人们使用语言的方式,不同的语言游戏之间可能存在相似性,就像一个家族的成员之间存在相似性一样。维特根斯坦认为,相似性不是通过一个共…

Linux基本操作符(1)

W...Y的主页 😊 代码仓库分享 💕 目录 Linux的登录 Linux下基本指令 指令操作的理解 几个与用户操作符 ls 指令 pwd命令 cd 指令 touch指令 mkdir指令 rmdir指令 && rm 指令 什么叫操作系统,我相信如果是学计算机的都听说过&…

Stm32_标准库_TIM中断_PWM波形_呼吸灯

基本原理 PWM相关物理量的求法 呼吸灯代码 #include "stm32f10x.h" // Device header #include "Delay.h"TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure; TIM_OCInitTypeDef TIM_OCInitStructuer;//结构体 GPIO_InitTypeDef GPIO_InitStructur…

LeetCode每日一题:1993. 树上的操作(2023.9.23 C++)

目录 1993. 树上的操作 题目描述: 实现代码与解析: 模拟 dfs 原理思路: 1993. 树上的操作 题目描述: 给你一棵 n 个节点的树,编号从 0 到 n - 1 ,以父节点数组 parent 的形式给出,其中 p…

buildroot移植Qt5无法显示字体问题

报错:QFontDatabase: Cannot find font directory /usr/lib/fonts. Note that Qt no longer ships fonts. Deploy some (from DejaVu Fonts for example) or switch to fontconfig. 原因:很明显是Qt没有找到字库文件; 解决方法: 1…

排查内存泄露

1 通过Performance确认是否存在内存泄露 一个存在内存泄露的 DEMO 代码&#xff1a; App.vue <template><div><button click"myFn" style"width: 200px; height: 200px;"></button><home v-if"ishow"></hom…

VUE使用DXFParser组件解析dxf文件生成图片

<template><div><input type"file" change"handleFileChange" /></div><el-table :data"tableData" style"width: 100%"><el-table-column prop"Control_No" label"序号" width…

图像处理与计算机视觉--第四章-图像滤波与增强-第一部分

目录 1.灰度图亮度调整 2.图像模板匹配 3.图像裁剪处理 4.图像旋转处理 5.图像邻域与数据块处理 学习计算机视觉方向的几条经验: 1.学习计算机视觉一定不能操之过急&#xff0c;不然往往事倍功半&#xff01; 2.静下心来&#xff0c;理解每一个函数/算法的过程和精髓&…

C语言入门Day_25 函数与指针小结

目录 前言&#xff1a; 1.函数 2.指针 3.易错点 4.思维导图 前言&#xff1a; 函数就像一个“有魔法的加工盒”&#xff0c;你从入口丢一些原材料进去&#xff0c;它就能加工出一个成品。不同的函数能加工出不同的成品。 入口丢进去的瓶子&#xff0c;水和标签就是输入&a…

win使用git(保姆级教程)

序言 上学期间用的git并不多&#xff0c;但是从研三实习以及后面工作来看&#xff0c;git是一项必备技能&#xff0c;所以在此来学习一下。 下载git安装包 打开网站&#xff0c;根据需求来下载&#xff1b;一般按照如下方式进行下载&#xff1a; 然后安装的时候记得按下图勾…

NebulaGraph实战:3-信息抽取构建知识图谱

自动信息抽取发展了几十年&#xff0c;虽然模型很多&#xff0c;但是泛化能力很难用满意来形容&#xff0c;直到LLM的诞生。虽然最终信息抽取质量部分还是需要专家审核&#xff0c;但是已经极大的提高了信息抽取的效率。因为传统方法需要大量时间来完成数据清洗、标注和训练&am…

32.栈的应用补充-表达式求值

目录 一. 前缀表达式与后缀表达式 二. 中缀表达式转后缀表达式的手算方法 三. 后缀表达式的手算方法 四. 后缀表达式的机算方法 五. 中缀表达式转前缀表达式的手算方法 六. 前缀表达式的机算方法 七. 中缀表达式转后缀表达式的机算方法 八. 中缀表达式的机算 一. 前缀表…

ElementUI首页导航和左侧菜单静态页面的实现,以及Mockjs和总线的介绍

目录 前言 一. Mock.js 1.1 什么是Mock.js 1.2 Mockjs的安装与配置 1.2.1 安装Mock.js 1.2.2 引入Mock.js 1.3 Mockjs的使用 1.3.1 定义数据测试文件 1.3.2 mock拦截ajax请求 二. 首页导航以及左侧菜单的搭建 2.1 什么是总线 2.2 创建三个vue组件 首页AppMain.vue组…

Learn Prompt- Midjourney Prompt:Prompt 提示语

基础结构​ 一个基本的提示可以简单到一个单词、短语或表情符号。非常短的提示将在很大程度上依赖于 Midjourney 的默认样式。 完整 prompt&#xff1a;可以包括一个或多个图像链接、多个文本短语或单词&#xff0c;以及一个或多个后缀参数 Image Prompts: 可以将图像 URL 添加…

Vue中前端导出word文件

很多时候在工作中会碰到完全由前端导出word文件的需求&#xff0c;因此特地记录一下比较常用的几种方式。 一、提供一个word模板 该方法提供一个word模板文件&#xff0c;数据通过参数替换的方式传入word文件中&#xff0c;灵活性较差&#xff0c;适用于简单的文件导出。需要…

Postgresql源码(113)表达式JIT计算简单分析

相关 《Postgresql源码&#xff08;85&#xff09;查询执行——表达式解析器分析&#xff08;select 11如何执行&#xff09;》 《Postgresql源码&#xff08;113&#xff09;表达式JIT计算简单分析》 1 普通表达式计算 普通表达式计算发生在优化器preprocess_expression中&am…

uni-app 使用 scss 实现推荐标签区域显示效果

效果图 <view class"tag-box"><view class"tag-tip"><view>店家</view><view>推荐</view></view> </view> 方法一 只需修改 $tagFontSize(字体大小) 即可 /* 推荐标签区域 */ .tag-box {$tagFontSize:…