Revm项目中的BLS预编译合约Gas定价调整分析
在区块链技术领域,预编译合约(Precompiled Contract)是区块链虚拟机(EVM)中预先定义的高效合约实现,它们通常用于执行复杂的密码学运算。本文主要分析Revm项目中关于BLS(Boneh-Lynn-Shacham)签名预编译合约的Gas定价调整。
BLS预编译合约概述
BLS签名是一种基于双线性配对的密码学签名方案,因其聚合签名特性在区块链领域得到广泛应用。区块链网络通过预编译合约的形式提供了BLS相关运算的支持,这些预编译合约位于特定的地址空间,执行效率远高于普通智能合约。
Gas定价调整内容
本次调整主要涉及以下几个方面:
-
配对运算(Pairing Operations)的Gas定价:双线性配对是BLS签名验证的核心运算,计算复杂度较高,需要重新评估其Gas消耗。
-
基础运算的Gas定价:包括G1和G2群上的点加(ADD)、标量乘法(MUL)以及映射运算(MAP)等基础操作的Gas成本调整。
-
多标量乘法(MSM)的Gas定价:MSM是BLS签名聚合验证中的关键运算,其计算复杂度与输入规模相关。
-
预编译地址调整:移除了G1_MUL和G2_MUL两个预编译合约,并对剩余预编译合约的地址进行了重新编排。
技术影响分析
Gas定价的调整直接影响着区块链网络的几个关键方面:
-
经济安全性:合理的Gas定价可以防止资源滥用攻击,确保网络安全性。
-
计算成本:开发者需要根据新的Gas成本优化其智能合约设计。
-
网络效率:准确的Gas定价有助于更合理地分配区块链网络的计算资源。
实现细节
在Revm项目的实现中,这些调整主要体现在预编译合约的Gas计量逻辑修改上。开发团队通过基准测试和密码学运算复杂度分析,确定了各项运算的新Gas成本标准。
总结
BLS预编译合约Gas定价的调整是区块链网络持续优化的一部分,反映了密码学运算实现和硬件性能的变化。这些调整有助于保持网络的经济安全性,同时为开发者提供更准确的成本预期。Revm作为区块链虚拟机实现,及时跟进这些变化对保持兼容性至关重要。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0191
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0117
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08