分享百科

EVM

视频 AI 总结: 该视频介绍了 Arbitrum Stylus,它为 Arbitrum 链增加了对 WebAssembly (WASM) 虚拟机的支持,允许开发者使用任何编译为 WASM 的编程语言(如 Rust)编写智能合约。这些 WASM 合约与现有的 Solidity 合约完全兼容,可以相互调用。Stylus 旨在提供更快的执行速度、更低的 gas 费用和更高的安全性(默认禁用重入)。视频还演示了如何使用 Stylus SDK 和 Cargo Stylus 构建、测试和部署简单的计数器合约,并探讨了 Stylus 的高级特性,如合约组合和缓存机制。最后,视频展示了 Stylus 在性能方面的优势,例如 Poseidon 哈希函数的 Rust 实现比 Solidity 快 18 倍,并提出了 Stylus 在 DeFi、链上游戏等领域的潜在应用。 关键信息: * Arbitrum Stylus 增加了对 WASM 虚拟机的支持,允许使用 Rust 等语言编写智能合约。 * WASM 合约与 Solidity 合约完全互操作。 * Stylus 旨在提高执行速度、降低 gas 费用和增强安全性。 * Stylus SDK 和 Cargo Stylus 提供了构建、测试和部署合约的工具。 * 视频演示了如何使用 Motsu 库进行单元测试。 * Stylus 具有合约组合和缓存机制等高级特性。 * Rust 实现的 Poseidon 哈希函数比 Solidity 快 18 倍。 * Stylus 在 DeFi、链上游戏等领域具有广泛的应用前景。
37
0
0
18小时前
视频 AI 总结: Maxim 在本次演讲中介绍了其用于从 EVM 字节码重建控制流图(CFG)的新算法。他首先概述了 EVM 字节码和基本块的概念,然后指出现有 CFG 重建工具缺乏准确性评估的问题。为此,他提出了一种基准测试算法,通过比较算法生成的块与实际基本块来评估其性能,并使用假阳性和假阴性指标进行比较。实验结果表明,他的开源库 EVMOL 在重建基本块的数量和假阴性方面优于其他解决方案。该算法采用自下而上的分析方法,结合堆栈分析和循环检测,以递归方式探索父块,直到找到明确的跳转目标。EVMOL 库提供 Rust、JavaScript、TypeScript 和 Python 版本,并提供在线演示,可用于分析智能合约的功能选择器、参数、状态可变性、存储使用情况以及生成交互式控制流图。 关键信息: * **控制流图(CFG)重建算法:** 提出了一种新的从 EVM 字节码重建 CFG 的算法。 * **基准测试方法:** 设计了一种评估 CFG 重建算法准确性的基准测试方法,通过比较算法生成的块与实际基本块来评估其性能。 * **EVMOL 库:** 开发了一个名为 EVMOL 的开源库,实现了该算法,并提供多种语言版本(Rust、JavaScript、TypeScript、Python)。 * **自下而上的分析方法:** 该算法采用自下而上的分析方法,结合堆栈分析和循环检测,以递归方式探索父块,直到找到明确的跳转目标。 * **性能优势:** 实验结果表明,EVMOL 在重建基本块的数量和假阴性方面优于其他解决方案。 * **应用场景:** EVMOL 库可用于分析智能合约的功能选择器、参数、状态可变性、存储使用情况以及生成交互式控制流图。 * **循环检测和中间状态:** 算法通过跟踪访问过的节点及其堆栈状态来检测循环,并引入中间状态的概念来避免无限循环。 * **不确定性处理:** 如果算法无法确定跳转目标,则会明确地用 Option 类型表示,避免产生错误的结论。
103
0
0
2天前
视频 AI 总结: 该视频主要介绍了从 ZK-EVM 到 ZK-VM 的转变,解释了 ZK-EVM 的架构,以及 PSE 团队为何停止 ZK-EVM 的开发,转而研究 ZK-VM 的原因。核心内容包括 ZK-EVM 的范围不仅限于 EVM 本身,还涉及交易处理、字节码、MPT 等多个方面。由于 ZK-EVM 在审计性、可升级性和性能方面面临挑战,PSE 团队转向了更通用的 ZK-VM 方案,并选择了 RISC-V 指令集,因为它具有通用性、可持续性和易于审计的优点。 关键信息: * ZK-EVM 不仅限于 EVM,还包括交易、字节码、MPT 等。 * 理解 Field(域)的概念是进行 ZK 开发的基础。 * ZK 程序需要同时提供输入和输出,用于验证计算的正确性。 * Constraint(约束)是 ZK 程序中的核心,用于限制变量的取值范围。 * ZK-EVM 面临审计、升级和性能方面的挑战。 * ZK-VM 是一种更通用的解决方案,基于 RISC-V 指令集。 * RISC-V 具有通用性、可持续性和易于审计的优点。 * PSE 团队正在探索基于 GKR 的新 Proving System。
362
0
0
2025-07-13 21:04
视频 AI 总结: 该视频主要讲解了Solidity/EVM 中错误处理机制,与其他语言不同,EVM 在遇到错误时会回滚所有之前的状态变更,除非错误被程序处理。Solidity 提供了几种错误处理方式,包括抛出错误让 EVM 回滚,以及使用 try-catch 捕获外部调用产生的错误。 关键信息: * EVM 的错误处理机制具有原子性,要么全部成功,要么全部失败,不会出现中间状态。 * Solidity 中可以使用 `require` 和 `assert` 进行条件检查,条件不满足时会抛出异常。 * `assert` 用于代码不应该到达的状态,而 `require` 用于检查外部条件。 * 抛出错误时可以指定字符串或自定义错误类型,自定义错误类型 Gas 消耗更低。 * `try-catch` 只能用于捕获外部调用产生的错误,不能捕获合约内部的错误。 * `try-catch` 无法捕获 out-of-gas 错误和调用不存在合约的错误。
44
0
0
2025-07-12 10:35
视频 AI 总结: 1. **核心内容:** 本视频是 Solidity 编程语言的入门教程,重点讲解了 Solidity 中变量的声明和函数的使用,特别是与其它编程语言不同的特性,如地址类型、合约类型以及回调函数等。强调了在 Solidity 开发中,除了语言语法外,还需要掌握特定领域的知识。 2. **关键信息:** * Solidity 是一种静态编译型高级语言,专门为 EVM 设计。 * 变量分为值类型、引用类型和映射类型。 * 值类型包括布尔型(bool)、整型(int/uint)、地址类型(address)和枚举类型(enum)。 * 地址类型分为 address 和 address payable,payable 类型可以接收 ETH 转账。 * 合约本身也是一种类型,可以用来声明变量。 * 常量(constant)和不可变变量(immutable)在编译时确定值,不占用链上存储。 * 需要关注变量存储空间的大小,因为链上存储成本很高。 * 0.8 版本后的 Solidity 会对整型溢出进行处理,导致交易回滚。 * transfer 和 send 函数转账时,EVM 限制 gas 消耗为 2300。
118
0
0
2025-07-09 08:47
视频 AI 总结: 该视频深入浅出地讲解了 EVM 钱包的演变,重点介绍了 EIP-4337 账户抽象、EIP-7702 以及嵌入式钱包。视频旨在帮助开发者理解这些技术标准,并了解它们在构建去中心化应用中的作用。通过对比 EOA 和智能合约钱包的优缺点,视频阐述了 EIP-4337 如何实现账户抽象,以及 EIP-7702 如何将智能合约功能引入 EOA。此外,视频还探讨了嵌入式钱包的不同类型及其安全风险,并推荐开发者使用智能合约钱包以获得更高的安全性和灵活性。 关键信息: * EVM 钱包的两种类型:EOA(外部拥有账户)和智能合约。 * EIP-4337 实现了以太坊上的合约账户抽象,引入了用户操作、捆绑者、入口点、支付者和聚合器等概念。 * EIP-7702 旨在将智能合约功能引入 EOA,与 ERC-4337 兼容,并将在 Petra 升级中上线。 * 嵌入式钱包直接嵌入到应用程序中,提供更便捷的用户体验,有 EOA 钱包、智能合约钱包和智能 EOA 三种类型。 * 推荐开发者使用智能合约钱包,因为它提供了更高的安全性和灵活性。
420
0
0
2025-07-07 16:16
视频 AI 总结: 该视频主要解答关于以太坊交易和数据存储的一些疑问,核心内容围绕交易的gas limit、数据存储方式以及节点验证机制展开。视频详细解释了交易失败时的扣费情况,以及合约数据在节点上的存储方式,强调了状态变量存储在所有节点硬盘上,而非EVM内存中。此外,视频还讨论了节点如何验证交易的正确性,以及代码长度与字节码大小的关系。 关键信息: * Gas limit 不足时,交易发起前通常会被用户钱包界面阻止,不会扣费。但若执行过程中 gas 不足,已消耗的 gas 费用会被扣除,交易回滚。 * 合约中的状态变量(如 counter)存储在所有节点的硬盘上,而非 EVM 内存中,形成状态树,根哈希存储在账户存储中。 * EVM 是动态的,每次交易调用合约时会启动一个 EVM 实例,执行完毕后终止。 * 节点通过重新执行交易,比对状态根哈希来验证交易的正确性,防止作恶。 * 代码越长,字节码通常越大,但编译器优化会有些影响。 * 节点存储了从第一个区块到当前高度的所有区块信息。
65
0
0
2025-07-05 12:09
视频 AI 总结: 该视频主要讲解了以太坊中的一些基本概念,包括以太币的单位(ETH、Gwei、Fin、Sub)以及如何在区块链浏览器(如 Etherscan)上查看交易信息。此外,视频还介绍了不同的以太坊网络,包括主网和测试网,以及如何在测试网上领取测试币。最后,视频还对 L2 做了总体总结。 关键信息: * 以太币的单位:ETH(最大单位)、Gwei、Fin、Sub(最小单位)。Gas price 以 Gwei 为单位设置。 * 区块链浏览器:用于查看交易信息,如 input data、from 地址、to 地址、gas 信息等。 * 以太坊网络:主网(有价值的网络)和测试网(如 Sepolia)。测试网可领取测试币。 * 智能合约:在链上运行的程序,编译成字节码后部署到网络上。在 EVM 上执行时根据指令扣费。 * EVM:通过植入虚拟机,扩展了网络的能力。 * Solidity:用于编写合约。
62
0
0
2025-07-05 12:09
视频 AI 总结: 该视频主要讲解了以太坊虚拟机(EVM)的工作原理、gas 机制以及以太坊费用规则的演变。EVM 作为智能合约的执行环境,具有封闭性,只能访问链上数据。为了防止无限循环和图灵停机问题,EVM 引入了 gas 机制,用于衡量和限制程序的执行工作量。以太坊的费用规则经历了从 gas price 到 EIP-1559 的升级,后者将费用分为基础费和优先费,旨在改善用户体验和降低通胀。 关键信息: * EVM 是智能合约的执行环境,类似于 JVM,但具有封闭性,无法直接访问外部数据。 * EVM 通过 gas 机制来衡量和限制程序的执行工作量,防止无限循环和图灵停机问题。 * gas 本身是工作量的单位,程序越复杂,消耗的 gas 就越多。 * 以太坊的费用规则经历了从 gas price 到 EIP-1559 的升级。 * EIP-1559 将费用分为基础费和优先费,基础费会被销毁,优先费会给矿工。 * EIP-1559 改善了用户体验,避免了用户因设置过高的 gas price 而支付不必要的费用。 * 用户支付的手续费是 gas limit 乘以 gas used,再乘以基础费和优先费之和。 * 矿工拿到的是优先费部分,燃烧掉的是基础费部分。 * 节点是运行以太坊客户端程序的机器,客户端程序实现了共识规范。 * 以太坊客户端有两个主要组成部分:执行层(EVM 实现)和共识层。
85
0
0
2025-07-05 12:08
视频 AI 总结: 该视频主要讲解了以太坊的核心概念,视频回顾了区块链的哈希结构和比特币的局限性,引出以太坊作为可执行程序的区块链平台的优势。重点介绍了以太坊的虚拟机(EVM)如何运行智能合约,以及从 POW 共识机制切换到 POS 质押机制的原因。最后,通过 Remix 在线 IDE 演示了智能合约的编写、编译、部署和执行过程。 关键信息: * 以太坊是一个可以执行程序的区块链网络,弥补了比特币的不足。 * 以太坊的核心是智能合约,它是在网络上运行的程序,可以实现去信任的应用。 * 以太坊使用 POS 共识机制,通过质押资金来保障网络安全,降低能源消耗。 * 以太坊虚拟机(EVM)是运行智能合约的环境,每个节点都内置一个 EVM。 * 智能合约的编写通常使用 Solidity 语言,需要编译成字节码才能在 EVM 上执行。 * Remix 是一个在线 IDE,可以用于编写、编译、部署和执行 Solidity 智能合约。
157
0
0
2025-07-05 12:06
该视频的核心内容是关于如何利用 Optimism (OP) Stack 来构建一个零知识证明 Rollup (ZK Rollup),并分享了在这个过程中遇到的各种挑战。视频的主要观点是,OP Stack 是一个很好的起点,但要成功构建 ZK Rollup,需要进行大量的修改和研究。 视频中提出的关键论据和信息包括: * **OP Stack 的优势:** OP Stack 提供了一个优秀的框架,包括 sequencer, batcher, 智能合约, bridge 和 L2 geth,可以作为构建 Rollup 的起点。 * **OP Stack 的挑战:** * **Sequencer 的特权:** Sequencer 可以注入交易,这与 ZK Rollup 的零信任原则相悖,需要修改电路以验证交易的有效性。 * **服务集成:** Batcher 和数据可用性 (DA) 层与 ZK 电路没有直接联系,需要进行适配。 * **智能合约的模块化:** 智能合约(如 Bridge)的模块化程度不够,修改起来比较困难。例如,Optimistic Rollup 的提款需要等待七天,而 ZK Rollup 不需要,需要修改 Bridge 合约。 * **Geth 的修改:** 需要修改 Geth 以支持 ZK Rollup 的特性,但 OP Stack 中的 Geth 同时用于 L1 通信和 L2 状态管理,这使得升级变得复杂。 * **Deposit 交易:** Deposit 交易在 L1 上支付,但在 L2 上没有直接支付,需要修改电路以处理这种情况。 * **系统交易:** 系统交易频繁地将 L1 的信息写入 L2 的智能合约,增加了运营成本,需要考虑替代设计。 * **ZK 电路的挑战:** * **缺少预编译:** 现有的 ZK 电路可能缺少预编译,需要自行实现。 * **数据一致性:** 需要确保多个 ZK 电路使用相同输入,以保证数据一致性。 * **其他挑战:** * **基础设施:** 需要搭建基础设施来协调区块链、证明生成和状态提议。 * **测试:** ZK 电路的测试非常耗时,需要采用高级测试技术。 * **文档:** OP Stack 的文档可能存在过时或缺失的情况。 * **Web 2.0 组件:** 需要开发 Web 2.0 组件,如用户界面和区块浏览器。 * **运营:** 需要部署和维护各种服务,以确保链的稳定运行。 总而言之,该视频强调了利用 OP Stack 构建 ZK Rollup 的复杂性,并为希望尝试这种方法的开发者提供了宝贵的见解和指导。
485
0
0
2025-06-11 17:50
该视频的核心内容是关于以太坊 L1 交易并行化的技术,旨在提高以太坊执行客户端的效率,缩短区块执行时间,从而提升整个网络的性能。 **关键论据/信息:** * **背景:** 以太坊正在扩展,对区块 gas 的需求增加,新的密码学原语不断涌现,对执行客户端提出了更高的效率要求。 * **问题:** 区块执行占据了以太坊 slot 的很大一部分时间(4秒/12秒),优化执行时间可以释放资源给共识客户端。 * **目标:** 通过并行执行交易,减少区块执行时间。 * **历史:** 介绍了以太坊 Byzantium 版本前后交易执行方式的演变,EIP-98 和 658 放宽了对中间状态根的要求,为并行执行提供了可能。 * **并行执行策略:** * **不并行化:** 作为最坏情况的基准,用于设置 gas 目标。 * **悲观锁:** 不适用于以太坊 L1 协议。 * **乐观执行:** 执行所有交易,然后检测和处理冲突。 * **Naive 策略:** 假设所有交易都冲突,并行执行后重新串行执行,但可以缓存数据,加速串行执行(Nethermind 的 pre-warming 功能)。 * **冲突检测与处理:** 并行执行后,检测冲突并重新执行冲突交易(Besu 的实现方式)。 * **Besu 的实现:** * **Bonsai 存储格式:** 提供单一语义世界视图,并允许创建内存中的世界状态覆盖(overlay),可以克隆多个世界状态副本,供并行交易使用。 * **Accumulator 数据结构:** 跟踪每个世界状态的读取、写入和更新,用于冲突检测。 * **软件事务内存:** Besu 将 Bonsai 用作软件事务内存,允许多个交易并行执行,然后通过 Accumulator 检测冲突并合并结果。 * **冲突检测机制:** 按照成本由低到高的顺序进行检查,首先是账户级别检查,然后是合约存储检查,以快速失败。 * **并行化效果:** * 并行化程度取决于区块内容和硬件配置。 * 在普通硬件上,Besu 可以成功并行执行大约 60-65% 的交易。 * 平均吞吐量约为 160-170 megagas/秒。 * **建议:** * 并行化并非万能,需要考虑硬件、区块内容和用例。 * 冲突检测和额外的内存消耗是成本。 * 对于需要高性能执行的场景(如 L2),建议启用此功能。 * 推荐使用 8 核 CPU,或具有超线程的 4 核 CPU。 * 鼓励用户尝试 Besu 的并行化功能,并提供反馈。
376
0
0
2025-04-25 09:50
该视频主要介绍了如何在以太坊上进行保密交易,并深入探讨了 Zama 提供的 FHEVM 库,该库允许在加密数据上执行计算。 **核心内容/主要观点:** * **保密性与隐私的区别:** 视频首先区分了保密性(管理信息者的义务)和隐私(个人的权利),强调在以太坊上引入保密性可以解锁新的应用场景,例如加密交易、加密元数据、保密协议、盲拍、去中心化身份系统和保密投票等。 * **FHEVM 架构:** 视频详细介绍了 FHEVM 的架构,包括 DApp 智能合约、FHEVM 智能合约、网关(Gateway)和密钥管理系统(KMS)。它解释了如何使用公钥加密数据,如何通过网关和 KMS 解密数据,以及如何使用评估密钥(Evaluation Key)在加密数据上执行计算(通过协处理器)。 * **智能合约示例:** 视频通过一系列智能合约示例,演示了如何使用 FHEVM 库进行加密计数器、按任意数量递增计数器、请求解密计数器以及使用重加密(Re-encryption)让用户访问自己的加密数据。 **关键论据/关键信息:** * **FHE 的核心概念:** FHE 允许在加密数据上执行计算,而无需解密数据。它涉及三个关键密钥:公钥(用于加密)、私钥(用于解密)和评估密钥(用于在加密数据上执行计算)。 * **FHEVM 的架构流程:** * **加密:** 使用公钥在 DApp 前端或智能合约中加密数据。 * **解密:** 通过 FHEVM 智能合约、网关和 KMS 发送解密请求,KMS 使用私钥解密数据,并将解密后的数据返回。 * **计算:** FHEVM 智能合约将计算请求发送到协处理器,协处理器使用评估密钥在加密数据上执行计算,并将结果存储在数据库中。 * **重加密:** 在 DApp 前端使用 KMS 的公钥和用户的私钥加密数据,然后通过网关发送到 KMS。KMS 使用 KMS 的私钥解密数据,并使用用户的公钥重新加密数据,然后将数据返回到前端,用户可以使用自己的私钥解密数据。 * **FHEVM 模板:** Zama 提供了 FHEVM 模板,开发者可以基于此模板开始构建自己的保密 DApp。 * **`tfhe.allow` 的重要性:** 在智能合约中,需要使用 `tfhe.allow` 允许合约或用户访问加密变量,才能执行计算或重加密。
1104
0
0
2025-04-23 17:03
该视频主要介绍了 Somnia,一个旨在解决现有区块链在可扩展性方面不足的全新高性能 Layer 1 区块链。核心观点是 Somnia 能够实现百万级 TPS(每秒交易数)、亚秒级延迟和极低的 gas 费用,从而支持大规模消费者应用,例如游戏、音乐和体育领域的元宇宙体验。 关键论据和信息包括: * **现有区块链的局限性:** 现有区块链无法满足大规模并发交易的需求,尤其是在 NFT 铸造和 meme 币发行等场景下,导致性能瓶颈。 * **Somnia 的技术特点:** * **EVM 兼容性:** 完全兼容以太坊虚拟机(EVM),开发者可以轻松将现有应用迁移到 Somnia。 * **高性能:** 通过全栈重写,包括新的执行层(将 EVM 字节码编译为机器码)、数据库(IceDB,针对区块链数据优化)、共识机制(多流共识)和网络层(高压缩比),实现高性能。 * **低成本:** 目标是将 gas 费用降低到 0.1 美分以下,鼓励开发者将更多逻辑迁移到链上。 * **反应式区块链:** 允许智能合约对链上数据变化做出反应,无需外部第三方服务。 * **关键技术细节:** * **EVM 编译器:** 将 EVM 字节码编译为机器码,利用硬件并行性提高执行效率。 * **IceDB 数据库:** 具有可预测的性能、针对区块链数据结构优化以及极快的读写速度和高效的缓存策略。 * **多流共识:** 每个验证器都有自己的“数据链”,并通过全局共识链协调,提高吞吐量并降低延迟。 * **网络层优化:** 利用帕累托分布原理进行数据压缩,并使用 BLS 签名方案进行签名批处理,显著降低网络传输的数据量。 * **性能基准测试:** * ERC-20 转账:10.5 亿 TPS * Uniswap 交易:5 万 TPS * NFT 铸造:30 万 NFT/秒 * **测试网发布:** Somnia 已经发布了测试网,并鼓励开发者参与构建应用。 总而言之,Somnia 旨在通过全新的架构和技术创新,解决区块链的可扩展性问题,为大规模消费者应用提供高性能、低成本的基础设施。
330
0
0
2025-04-23 14:59
这个视频是一个关于以太坊(Ethereum)替代虚拟机(AltVM)扩展方案的专家小组讨论。核心内容是探讨不同虚拟机架构(SVM, MoveVM, Parallel EVM)在扩展以太坊性能方面的优势和劣势,以及它们各自的设计理念和技术实现。 **关键论据和信息:** * **EVM性能瓶颈:** 传统EVM的性能瓶颈主要在于存储层,而非虚拟机本身。低效的状态访问导致了以太坊对区块Gas限制等参数的限制。Monad等项目通过优化数据库和引入并行执行等技术来解决这个问题,从而大幅提升EVM的性能。 * **SVM(Solana虚拟机)的优势:** SVM在用户采用率、开发者生态和吞吐量方面具有优势。Solana拥有庞大的用户群和活跃的开发者社区。Soon项目旨在将Solana的性能带到以太坊和其他生态系统中。 * **MoveVM的安全性:** Move语言和虚拟机在设计上更注重安全性,可以有效防止重入攻击等漏洞。Movement Labs认为,与其修补EVM的漏洞,不如使用更安全的MoveVM从根本上解决问题。 * **开发者学习成本和生态系统:** 学习新的编程语言(如Move)存在一定的门槛。EVM拥有庞大的开发者社区和成熟的工具链,这是其重要的竞争优势。 * **性能需求与实际应用:** 讨论中提到,当前区块链的瓶颈不在于TPS,而在于缺乏用户真正可用的DApp。解决实际应用问题比单纯追求高性能更重要。 * **各项目的行动号召:** * **Monad:** 邀请观众体验其测试网,体验快速的EVM环境。 * **MegaEth:** 预告即将到来的测试网,展示高性能EVM的实时性。 * **Movement Labs:** 鼓励开发者了解Move语言,尝试使用MoveVM构建应用。 * **Soon:** 邀请观众体验其主网上已上线的应用,并鼓励开发者使用SoonStack构建自己的应用链。 总而言之,该视频深入探讨了不同虚拟机架构在扩展以太坊性能和解决安全问题方面的潜力,并强调了开发者生态系统、用户采用率和实际应用的重要性。
362
0
0
2025-04-22 11:30
登链社区