波卡中的智能合约


“波卡知识图谱”是我们针对波卡从零到一的入门级文章,我们尝试从波卡最基础的部分讲起,为大家提供全方位了解波卡的内容,当然这是一项巨大的工程,也充满了挑战,然而我们希望通过这样的努力让大家能够正确认知波卡,也让不了解波卡的人方便快速掌握波卡相关知识,今天是该栏目的第 65 期,波卡本身不支持智能合约,但是波卡的平行链将支持智能合约,而 Substrate 智能合约本质上更安全,开发门槛也较低,那么如何在波卡中构建智能合约呢?
波卡中继链本身不支持智能合约,但是,波卡上的平行链将支持智能合约。
开发智能合约和平行链的区别
1
抽象层
2
Gas 费
智能合约必须找到限制自身执行的方法,否则完整节点很容易受到 DOS 攻击。
将某些逻辑(例如可能无限期运行的复杂循环)留给非智能合约层,或者甚至试图消除它,通常是更明智的选择。平行链试图主动,而智能合约平台是事件驱动的。
构建智能合约
Frontier 提供的 EVM Pallet。 基于 Wasm 合约的 FRAME 库中的 Contracts Pallet。
1
Frontier EVM 合约
Frontier 是一套工具,它使 Substrate 链能够以相同的 API/RPC 接口原生运行以太坊合约(EVM),以太坊在 Substrate 上公开。以太坊地址也可以从现有账户直接映射到 Substrate 的 SS58 方案。
2
Substrate 合约

(https://stackoverflow.com/questions/56040779/when-should-i-build-a-substrate-runtime-module-versus-a-substrate-smart-contract/56041305#56041305)
以下是目前可供那些想要开始编写智能合约以部署在基于 Substrate 的平行链上的开发人员使用的资源列表。
(https://github.com/paritytech/ink)
3
Contracts Pallet
以前编写过智能合约的开发人员可能更熟悉部署到基于 EVM 的链上的体验。但是,Contracts Pallet 对 EVM 的设计进行了一些显著的改进:
有关更多详细信息,请参阅相关的 pull request:
4
波卡标准提案(PSP)
Web3 基金会支持波卡的提案,这些提案定义了一套符合生态系统需求的标准。这些标准要经过几个接受阶段,在这些阶段需要整个社区的参与来建立有价值的和面向未来的标准。
5
Ink!
ink!是一种在 Rust 中编写智能合约的领域特定语言,可编译为 Wasm 代码。正如它在自述书中所言,它仍处于试验阶段,因此勇敢的开发人员应该意识到,他们可能会有一个坎坷但可行的开发经验。
OpenBrush:一个 ink!库,提供基于 PSP 的标准合约,以及用于构建的有用合约和 macros。
https://docs.openbrush.io/Metis:由 Patract Labs 开发的 Wasm 合约标准库。
https://github.com/patractlabs/metis
智能合约环境仍在不断成熟
1
Parity Tech
ink!:
Substrate contracts Pallet:
2
平行链
Moonbeam:
Astar:
Acala:
Phala:
许多智能合约平台正在构建,成为生态系统中的平行链。可以在 PolkaProjects上找到社区创建和维护基于波卡的不同智能合约平台的社区列表。
Moonbeam
由于 Moonbeam 使用 Frontier,这是一个与现有以太坊工具的互操作层,它将支持所有针对 EVM 环境而编写的应用程序,几乎没有阻力。
Moonbeam 的先行网络 Moonriver 以平行链的形式在 Kusama 上推出。平行链功能已上线,功能正在逐步发布。发布的最后阶段将包括 EVM 功能和余额转移。
尝试按照 Moonbeam 的文档来部署智能合约。
https://docs.moonbeam.network/
Astar
Shiden 是 Astar 的先行网络,目前在 Kusama 上运行,并支持 EVM、WASM 和 Layer2 解决方案。
Astar 旨在容纳所有第 2 层扩展解决方案,并通过 OVM(乐观虚拟机)支持所有 Layer2 协议。
尝试部署以太坊或 ink!按照他们的文档进行智能合约。
https://docs.astar.network/docs/wasm/sc-dev/ink-dev/
Acala
https://wiki.acala.network/build/development-guide/smart-contracts
Phala
尝试按照的 Phala 文档部署加密的智能合约。
https://wiki.phala.network/en-us/general/phala-network/intro/
保持联系
https://matrix.to/#/#polkadot-watercooler:web3.foundation
开发人员可能有兴趣加入波卡初学者休息室
https://matrix.to/#/#polkadotnoobs:matrix.org
或 Substrate Technical
https://area51.stackexchange.com/proposals/126136/substrate
来询问他们的问题。与往常一样,通过关注社交渠道,与 Polkadot 和 Kusama 保持联系。
愿一切都好!
尽管工具仍处于成熟阶段,但早做的好处是熟悉项目并领先于项目,从而允许您进行创新和创建真正的新东西。
欢迎大家加入我们 Polkadot 生态研究院的电报:
https://t.me/polkadot_eri
Staking | Gavin Wood | 跨链 | 平行链 | 国库 | Parity
KSM | Web3.0 | Kusama | Grant 指南
Statemint | 区块链 | SBP 计划 | NFT
XCVM | BEEFY | XCM
Wasm

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

