原文作者:PaperMoon团队
Polkadot SDK 是一套功能强大且高度灵活的开发工具包,旨在帮助开发者在 Polkadot 网络上进行构建。它提供了创建自定义区块链、平行链(parachain)、通用 Rollup 等所需的核心组件。Polkadot SDK 采用 Rust 编程语言编写,将安全性与鲁棒性置于设计的首要位置。
无论你是在构建一条独立运行的区块链,还是部署一条连接至 Polkadot 的平行链,这套 SDK 都为开发者提供了管理运行时逻辑、编译代码库以及使用核心功能(如质押、治理和跨共识消息传递 XCM)所需的库与工具。此外,Polkadot SDK 也支持构建超越区块链本身的通用点对点系统。
Polkadot SDK 整体涵盖以下功能:
-
网络与点对点通信(基于 Libp2p)。
-
共识协议,例如 BABE、GRANDPA 或 Aura。
-
密码学工具。
-
创建可移植的 Wasm 运行时 的能力。
-
一组预构建的模块(称为 pallets)。
-
基准测试与测试套件。
Polkadot SDK 架构概览
Polkadot SDK 由五个主要组件构成:
• Substrate:用于构建区块链的基础库与原语集合
• FRAME:构建在 Substrate 之上的区块链开发框架
• Cumulus:为 Substrate / FRAME 运行时添加平行链能力的一组库与 pallet
• XCM(跨共识消息传递):用于平行链之间通信的主要消息格式
• Polkadot:Polkadot 协议的节点实现
Substrate
Substrate 是一套使用 Rust 编写的 SDK,通过模块化、可扩展的组件,帮助你构建应用专用区块链。基于 Substrate 构建的区块链既可以作为独立网络运行,也可以并行接入 Polkadot 生态系统,享受其共享安全性。
Substrate 为区块链基础设施的核心组件提供了默认实现,使开发者可以将主要精力放在应用层逻辑上。
每一个区块链平台都依赖一个去中心化的计算机网络(称为节点)来就交易和区块进行通信。在这里,“节点”指的是运行在设备上的软件,而不是物理或虚拟机器本身。
客户端(Client):处理网络与区块链基础设施
• 原生二进制程序
• 执行 Wasm 运行时
• 管理数据库、网络、内存池、共识等组件
• 也称为 Host(宿主)
运行时(Runtime):状态转换的业务逻辑
• 应用逻辑本身
• 编译为 Wasm
• 作为链状态的一部分存储
• 也称为 状态转换函数(STF)
FRAME
FRAME 提供了一套核心的模块化与可扩展组件,使 Substrate SDK 能够适配不同的使用场景。它由一组 Rust 库组成,用于简化应用专用逻辑的开发。
FRAME 提供的大部分功能以**插件模块(pallet)**的形式存在,开发者可以根据自身需求进行添加和配置,从而构建定制化的运行时。
常见的 FRAME Pallet 包括:
• Aura
• BABE
• GRANDPA
• 交易费用(Transaction Payment)
• 身份(Identity)
• 余额(Balances)
• Sudo
• EVM
• 时间戳(Timestamp)
• 资产(Assets)
• 合约(Contracts)
• 等等……
运行时由多个 pallet 组成,每个 pallet 都可以进行独立配置,例如:
• Sudo(自定义配置)
• Timestamp(自定义配置)
• Aura(自定义配置)
• GRANDPA(自定义配置)
• Balances(自定义配置)
• Transaction Payment(自定义配置)
Cumulus
Cumulus 提供了一组工具和库,用于将基于 FRAME 的运行时转换为可作为 Polkadot 平行链运行的运行时。
从本质上看,Cumulus 运行时仍然是 FRAME 运行时,但它包含了使该运行时能够连接至中继链(Relay Chain)并成为平行链所必需的功能。
为什么要使用 Polkadot SDK?
借助 Polkadot SDK,你可以构建应用专用区块链,而无需从零开始实现完整的区块链系统,也不必受限于通用型区块链的设计约束。
你可以专注于打造真正让你的链具备差异化和创新性的业务逻辑,同时享受以下优势:
• 高度灵活
• 可升级性强
• 开源许可
• 跨共识互操作性(Cross-Consensus Interoperability)
使用 SDK 创建自定义区块链
在开始你的区块链开发之旅前,你需要先决定是构建一条独立链,还是一条连接到 Polkadot 网络的平行链。这两种路径各有不同的考量与要求。
在做出选择后,可以按照以下开发阶段推进:
1. 安装 Polkadot SDK
配置你的开发环境,安装所有必要的依赖和工具。
2. 构建区块链
学习如何创建和定制区块链运行时,配置 pallet,并实现你链的独特功能。
3. 部署区块链
按照步骤将你的区块链上线,无论是作为独立网络,还是作为 Polkadot 的平行链。
原文链接:https://docs.polkadot.com/develop/parachains/intro-polkadot-sdk/
586

被折叠的 条评论
为什么被折叠?



