Uniswap V2 成功上线 PolkaVM:Polkadot Hub 的里程碑时刻
2025-06-13 14:08
OneBlock
2025-06-13 14:08
OneBlock
2025-06-13 14:08
订阅此专栏
收藏此文章

免责声明:本文提及的代码均由 Papermoon 提供,不建议直接用于生产环境。如果想要在生产环境中使用,请确保它经过充分测试和审计。

Uniswap V2 最近在 PolkaVM 上成功跑通了。表面看起来,这好像只是“又有一个协议支持了某条新链”。

但实际上,这背后意味着:

Polkadot 的智能合约生态,真的“能用了”。

这是一次社区主导的技术迁移,不是 Uniswap 官方部署,却释放出两个关键信号:

✅ Polkadot 不再只是跨链协议的代名词,它开始具备承载主流 DApp 的能力。

✅ Solidity 项目可以低门槛迁移进来,Polkadot 的大门向 EVM 生态真正打开了。

这不是新闻标题的噱头,而是开发者可以真正行动起来的时刻。对于正在寻找低成本、高扩展性部署平台的 Web3 项目来说,这可能是个全新的落脚点。


PolkaVM 是什么?

它和 EVM 链有什么不同?

PolkaVM 是一个基于 RISC-V 指令的虚拟机,由 Polkadot 官方打造,目标是为链上应用提供高性能、低成本、丰富业务的新平台。

和常见的 EVM 链不同,PolkaVM 并不是基于 Wasm,也不是直接 fork EVM,而是一个全新架构,具备以下几个特点:

  • RISC-V 架构:让虚拟机更灵活、更可控,适合为区块链场景进行底层优化;

  • 具备 EVM 兼容能力:当前已经可以运行大多数 Solidity 编写的合约;

  • 运行效率高:JIT 编译器相比于传统的解释执行,运行效率更高

  • 天然支持与 Polkadot 平行链的跨链交互,通过 XCM 等协议可接入更广泛生态。

虽然 PolkaVM 不属于“传统意义上的 EVM 链”,但他通过实现 YUL 编译器实现了对 Solidity 的兼容,这也是 Uniswap V2 成功部署的技术基础。


合约模型:PolkaVM vs. EVM

在传统 EVM 模型中,每次合约部署,链上都会完整存储一份新的合约字节码。哪怕两份代码一模一样,只要部署两次,就会被存两次。这会带来两个问题:

  • 链数据冗余严重:部署次数越多,链越臃肿;

  • 合约嵌套开销大:比如合约 A 在部署时创建合约 B,它的字节码中必须直接包含合约 B 的完整代码,导致合约体积急剧膨胀。

PolkaVM 在合约模型上做了一个非常聪明的设计:

🧩 它将合约地址 → 合约代码的映射,拆分成了两层结构

ContractAddress → ContractCodeHash → Bytecode

这种设计带来了两大好处:

✅ 1. 代码复用,避免重复存储

只要合约代码一样,无论部署多少次,链上只存一份 bytecode。这意味着:

  • 相同逻辑的合约不会让链空间“白白变大”;

  • 更节省存储资源,有利于节点同步和链扩展性。

✅ 2. 嵌套合约更轻巧

当合约 A 需要在运行中创建合约 B,在 PolkaVM 中,A 只需引用 B 的 CodeHash 即可,不用再把 B 的完整字节码“嵌”进自己的代码中。

结果就是:

  • 部署体积明显更小;

  • 嵌套逻辑更灵活、扩展性更强;

  • 开发者可以构建更复杂的模块化系统,而不怕“胖合约”。

这个模型不仅优化了存储,更让「模块化合约架构」变得现实。如果你曾在以太坊上开发过复杂嵌套逻辑的合约,你会立刻意识到这个设计带来的改变有多大。

这也意味着,在 Polkadot 生态中构建大型、组件化的 DeFi、GameFi 系统,从底层设计上就是更高效的

3.jpg

Uniswap V2 on PolkaVM

Uniswap V2 是 DeFi 世界最早也是最成功的自动做市商(AMM)协议之一。它的部署成功标志着 PolkaVM 的兼容性达到了一个“能落地实际应用”的临界点。

这次部署的关键步骤包括:

  • 保留原始 Solidity 代码:Uniswap V2 的代码未做修改即可部署,说明 PolkaVM 的兼容层适配度很高;

  • 完整运行:合约能顺利运行、事件触发正常、交易处理无误;

  • 90% 的测试用例验证通过:因为 polkadot 链的手续费计算机制和 ETH 区别巨大,所以关于 gas 计算相关的测试不具备可移植性。除了 gas 计算相关的测试,其他测试均可以在 PolkaVM 链上运行通过。

整个过程不是“象征性部署”,而是真正意义上的可用版本上线,能接真实资产,跑真实交易。

如何运行 Uniswap-V2-Polkadot

🧩 Step 1:准备 Substrate 与兼容工具

PolkaVM 并非传统 EVM,也不是 Wasm,而是一个基于 RISC-V 的虚拟机,通过适配层兼容 Solidity 合约。因此你需要从源码构建一套 Polkadot 的开发工具:

bashCopyEditgit clone https://github.com/paritytech/polkadot-sdkcd polkadot-sdkcargo build --bin substrate-node --releasecargo build -p pallet-revive-eth-rpc --bin eth-rpc --release

这一步会生成两个关键组件:

  • substrate-node: 运行 PolkaVM 的本地节点;

  • eth-rpc: 一个 rpc 兼容层,允许用 EVM 工具链(如 Hardhat)与 PolkaVM 链通信。

🧩 Step 2:拉取 Uniswap 迁移版本代码

这次迁移是由社区团队 Papermoon 主导的,项目开源在 GitHub:

git clone git@github.com:papermoonio/uniswap-v2-polkadot.gitcd uniswap-v2-polkadotpnpm install

这个项目将 Uniswap V2 的核心合约(工厂、交易对、路由等)迁移到了一个适配 PolkaVM 的 Hardhat 工程中。

🧩 Step 3:配置 Hardhat 与 PolkaVM 连接

打开 hardhat.config.js,配置 polkavm 相关的 network,这里具体指的是本地环境和 assethub westend 网络:

networks: {localNode: {url: "http://127.0.0.1:8545",nodeBinaryPath: "/your/path/to/substrate-node",adapterBinaryPath: "/your/path/to/eth-rpc",...}}

这一步就是关键桥梁:Hardhat 启动时会通过 eth-rpc 与本地 substrate-node 建立连接,实现 Solidity 合约对接 PolkaVM。

🧩 Step 4:测试部署,跑起来!

现在,可以像使用 EVM 一样,在本地或 Westend Hub 网络上运行测试:

在本地 PolkaVM 节点测试npx hardhat test --network localNode在 Westend 公网测试环境部署npx hardhat test --network westendHub

测试情况:Uniswap V2 

的完整链上运行验证

为了确保不是“部署成功就完事”,而是真正能跑起来,Papermoon 团队对迁移版本进行了完整的功能测试。

包括以下几个模块:

其中 gas 相关测试由于 Polkadot 和以太坊在资源计价模型上的根本差异,无法直接迁移,但其他核心逻辑均测试通过,说明 PolkaVM 的 Solidity 支持已经达到了实用级别。


📈 Polkadot 新机会:

为 EVM 项目提供

“轻量高效”的落地路径

Uniswap V2 的成功部署,不只是一个技术展示,它释放出一个清晰的信号:

Solidity 项目不再需要局限于传统的 EVM 链,Polkadot 是真正可选的目标链之一。

相比主网以太坊,Polkadot 在:

  • 💸 成本更低(无需支付高昂 gas);

  • 🚄 交易确认快(6s 出块);

  • 📦 合约模型更轻巧(CodeHash 机制);

  • 🧩 模块化设计天然支持复杂业务;

对很多想要降低部署成本、提高可扩展性、拥抱跨链的新项目来说,Polkadot + PolkaVM 提供了一条非常吸引人的路径。


接下来会发生什么?

✅ 更多 Solidity 项目迁移尝试

Papermoon 目前已经在探索 Solidity On PolkaVM 上已经取得了一些成就,包括:

  • Uniswap V2 合约的成功迁移

  • Determinsic deploy 等 public good 的合约迁移;

  • 对主流 DeFi 项目的技术支持

如果你是 Solidity 开发者,现在就可以 fork Uniswap V2 Polkadot 工程 进行尝试。

🚧 仍待完善的部分:

  • Foundry 等工具支持尚未全面接入

  • 因为合约模型不同导致的链下功能修改,比如ethers.getCreate2Address

但这也正是开源开发社区能共同推进的空间。


写给开发者和项目方:

为什么你值得关注 PolkaVM?

如果你是 Web3 开发者、团队负责人、DeFi 构建者,以下几点可能对你有用:

  • 部署成本更低:gas 更便宜,链上操作体验更轻量;

  • 兼容 Solidity:已有项目可快速迁移,不必重构;

  • 打通 Polkadot 跨链生态:可扩展性更强,能连接平行链上的 DeFi、GameFi、NFT 应用;

  • 生态资源丰富:已有基础设施支持,包括区块浏览器、RPC 提供商、预言机等;

  • 早期入驻优势:现在进场的项目更容易获得曝光、技术支持和潜在生态扶持。


✍️ 总结

Uniswap V2 的成功迁移,不仅是一次简单的协议部署,而是一个清晰信号:

Polkadot 的智能合约时代已经开启,PolkaVM 正在成为新一代 Solidity 项目的避风港与实验场。

下一步,我们或许将看到更多的 DEX、稳定币、借贷协议,以及链游、NFT 项目陆续涌入这个新舞台。

如果你是 builder,PolkaVM 值得你现在就动手试试。

📚 延伸阅读与资源链接:

  • 💻 Polkadot contract 文档:https://contracts.polkadot.io/

  • 📦 示例项目源码仓库:GitHub 链接


👇 点 击 解 锁 往 期 精 彩 👇


图片
图片
图片
图片
图片

About Us

关于我们

OneBlock+ 作为区块链的人才聚集地,是全球领先的 Substrate 开发者社区。我们将提供专业的技术文章和开发课程,并组织研讨会、黑客松创业大赛等交流实践活动,从而帮助开发者掌握 Substrate 技术、深入探索 Web3 领域。同时,OneBlock+ 还为 Web3 优质项目提供技术指导、人才资源等多重创业支持,促使更多开发团队使用 Substrate 技术框架构建未来开放网络。
Twitter: https://twitter.com/OneBlock_
Medium: https://medium.com/@OneBlockplus
Telegram: https://t.me/oneblock_dev
Discord: https://discord.gg/fE8deY4UbP
Bilibili: https://space.bilibili.com/1650224419
YouTube: https://www.youtube.com/channel/UCWo2r3wA6brw3ztr-JmzyXA

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

OneBlock
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开