“
本文是对 Substrate 中智能合约的状态概述。
FRAME 提供了两个智能合约虚拟机,可以添加到 Substrate runtime。
FRAME 合约模块(SEAL)为 runtime 提供部署和执行 WebAssembly 智能合约的功能。它旨在迭代现代智能合约平台的设计。
FRAME EVM 模块 [1] 提供了 EVM 执行环境,允许未修改的 EVM 代码在基于 Substrate 的区块链中执行。它的设计目的是在 Substrate runtime 上最接近的模拟在以太坊主网上执行合约的功能。
Substrate 不是一个仅限制于自带模块的平台。
我们鼓励在 Substrate runtime 的基础上进一步开发更多选择的智能合约平台。你可以使用这些预先构建的模块在现有的系统上设计自己的系统或端口,然后去运行了一个基于 Substrate 的链。
ink![2] 是一个基于 Rust 的 eDSL,专门用于为合约模块 [3] 编写 Wasm 智能合约。它设计的目的是为了正确、简洁和高效。
Substrate runtime 模块和 Substrate 智能合约是使用 Substrate 框架构建“去中心化应用程序”的两种不同方法。
传统的智能合约平台允许用户在一些核心区块链逻辑的基础上增加额外的逻辑。由于任何人都可以发布智能合约逻辑,包括恶意行为人和缺乏经验的开发人员,因此在这些公共智能合约平台都建立了许多安全卫士。
一些例子:
这些不同的管理开销使得运行合约变得更慢、成本更高,但是,合约开发的“目标受众”与 runtime 开发人员不同。
合约可以让你的社区在 runtime 逻辑的基础上进行扩展和开发,而无需经历所有疯狂的提议、runtime 升级等等 ... 它甚至可以用作将来 runtime 更改的测试基础,这种方式可以将你的网络与 “成长带来的痛苦” 或可能发生的错误隔离开来。
总结一下,Substrate 智能合约:
Runtime 模块不提供智能合约提供的这些安全保护。所以作为一个 runtime 开发人员,你的开发成本会比较高。
你可以完全控制网络上每个节点运行的底层逻辑。你可以完全访问所有模块中的每个存储项,也可以对其进行修改和控制。你甚至可以用不正确的逻辑或糟糕的错误处理来构建你的链。
Substrate runtime 模块开发的目的是产生精益的、高效的和快速的节点。它不提供交易还原的任何保护或开销,也不会向链上节点运行的计算引入任何收费系统。这意味着,在开发 runtime 函数时,你需要正确评估 runtime 逻辑的不同部分并对其计算费用,这样就不会被坏的参与者滥用,也不会损害你的网络。
总结一下,Substrate Runtime 模块:
Substrate runtime 模块和 Substrate 智能合约是可以用于解决问题的工具。
这两个方法能解决的问题可能有一定程度的重叠,但也有一些明确的问题只适合其中一个。关于这个,在这里给出一些举例:
除了上面写的所有内容之外,你还需要考虑使用特定工具设置 DApp 的成本。部署合约是一个相对简单的过程,因为你可以利用现有的网络。对你来说,唯一的成本是你为部署和维护合约而支付的费用。
另一方面,建立你自己的区块链,还需要花费成本去建立一个在你的服务中发现价值的社区,或者用云计算系统和一般网络维护的成本来建立一个私有网络。
在这里很难对每种可能的情况提供直接的指导,但可以使用下面的表格来帮助你对使用不同工具的各种情况做出决定:
原文:https://substrate.dev/docs/en/knowledgebase/smart-contracts/overview
翻译:PolkaWorld 社区
[1]
EVM 模块 :https://substrate.dev/docs/en/knowledgebase/smart-contracts/evm-pallet
[2]
ink!:https://substrate.dev/docs/en/knowledgebase/smart-contracts/ink-fundamentals
[3]
合约模块 :https://substrate.dev/docs/en/knowledgebase/smart-contracts/overview#contracts-module
https://github.com/paritytech/substrate
https://github.com/paritytech/polkadot
更多 Substrate 文档:
Substrate Runtime 概述|Substrate 文档
扫码关注公众号,回复 “1” 加入波卡群
关注 PolkaWorld
发现 Web 3.0 时代新机遇
点个 “在看” 再走吧!
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:波卡(Polkadot)第一中文社区,带你寻找 Web 3.0 时代新机遇!
评论0条