查看原文
其他

用十几分钟开发出一条区块链|Substrate 区块链框架

Phil Lucsok PolkaWorld 2020-09-08

加入 www.polkaworld.org 社区,共建 Web 3.0!


在柏林举行的 Web3 峰会上,Parity 的创始人 Gavin Wood 演示了在不到 60 分钟的时间内,在一台全新笔记本电脑上开发出一条区块链,并宣布了 2018 年 11 月发布 Substrate 1.0-beta。Polkadot 的基石 Substrate,被称为 “反对区块链最大化主义的最大赌注”,现在成为了一个独立的区块链框架。Substrate 允许开发人员为任何项目构建定制化的、高度先进的区块链。



两项技术的历险记


虽然 Polkadot 和 Substrate 的共同目标都是引发区块链的创新浪潮,但它们是两种截然不同的技术。Substrate 就像人们运行应用程序的 PC 系统,而连接区块链的协议 Polkadot 就像是将网卡插入计算机。每个社区、项目或企业的功能都不同,需要规范和细微差别来达到特定的状态机和区块链的最佳功能。


Parity 创始人 Gavin Wood 用一台全新的笔记本电脑演示了在几分钟内启动一条区块链



Substrate 到底有多通用?


对于任何区块链架构师来说,创建状态转换功能(STF,即构成区块链的业务逻辑)都是必不可少的。STF 的功能集、能力和限制取决于区块链的用途,而 Substrate 被设计为通用的,来支持当前和未来绝大多数区块链的设计。


Substrate 链的 STF 在 WebAssembly 的一个确定性子集中表示,这是一个跨平台的指令体系结构,被设计为轻量级、快速和良好支持的。对于 Substrate 的 1.0 版,区块链的 “runtime” 或 STF 可以用纯 Rust、C++ 或 C 来写。也期待 WebAssembly 很快支持其他语言。


这个网络是建立在 Libp2p(模块化的网络栈)上的,并且是开箱即用的。对于需要额外网络消息的区块链,计划在未来 Substrate 版本中包括网络拓扑的 API。


通过一个多层次的、组件化的设计,Substrate 核心设计为既完全通用,又高度可组合,适合快速应用开发。它支持各种共识算法,包括波卡的 SHAFT/GRANDPA 自适应渐进 finality 工具。加密数据库后端甚至块格式都可以配置或重写。Substrate 革命性的通用性和可开发性,通过同时构建四个完全不同的区块链(包括 Polkadot 和以太坊 2.0 )而得到了证明,而且只需花费很少的时间(以太坊 2.0 的早期版本在几周内就完成了原型化)。


1.0 beta 版支持一些共识算法,即将推出更多算法,包括:


  • Rhododendron(瞬间 finality)

  • SHAFT/GRANDPA(渐进式、自适应 finality:https://medium.com/polkadot-network/grandpa-block-finality-in-polkadot-an-introduction-part-1-d08a24a021b5)

  • Aurand(概率性 finality,恒定区块时间)

  • Ouroboros(实时的,概率性 finality)(发文时还在计划中)

  • PoW(例如 Ethash )(发文时还在计划中)

  • 平行链(PoV,波卡共识)(发文时还在计划中)


你也可以使用 Substrate 的 API 设计自己的共识算法。



Substrate 中包含什么?


Substrate 1.0-beta 的设计是为了让开发者有工具和自由去创造创新的状态机。通用性和中立性使其高度可定制,许多工具都是现成的,包括:


  • 波卡的连接性

  • 热交换、可插拔的共识

  • 可热升级、可插拔的 STF

  • 灵活通用的同步

  • 发布/订阅 WebSocket JSON-RPC

  • 轻客户端

  • 交易序列

  • 普及、安全的网络

  • JavaScript 实现

  • Substrate Runtime 模块库(SRML)


由于 Substrate 新颖的链上升级机制,你将能够 “热交换” 共识算法或升级 STF 而无需硬分叉。后者,无分叉升级机制是在 2018 年 7 月 17 日首次在 Polkadot “Krumme Lanke” 测试网上公开演示,并在本文发布时继续作为 PoC-2 测试网。



Substrate Runtime 模块库


为了帮助开发人员更快地启动他们的区块链,Gavin 引入了 Substrate Runtime 模块库(SRML),这是一个综合的、可扩展的、基于通用特征的模块集,可以轻松地创建 runtime。


这些模块添加了账户和余额、可替代资产、PoS staking、合同、资金等功能。通过快速轻松地将模块组合在一起创建所需的功能集来构建区块链。所有网络、共识、轻客户端和其他功能仍将与你的自定义区块链一起工作。如果需要新功能,只需创建一个新模块。

 

           

除了 SRML,Substrate 在其设计中还包括两个附加层:一个 JSON 可配置的通用区块链节点,用于执行它的 runtime;一个最小的核心区块链引擎,用于处理共识、区块生产、网络、数据库和其他杂项功能。



独立链和平行链


波卡中继链建立在 Substrate 上,将来连接波卡互操作层(中继链)并从中受益的链也将建立在 Substrate 上。关注隐私和许可的企业和联盟链可以很容易地添加这些功能以获得更好的控制。虽然 Substrate 不需要你的区块链连接到波卡,但它提供了一个使用桥或成为本地平行链的简单升级路径。


             


构建许可 —— Apache 2.0


Parity 致力于为所有开发者和组织机构,提供创新和利用这一突破性技术所需的工具和自由。为此,Substrate 1.0-beta 将在 Apache 2.0 许可下发布,这是一个常见的许可证,对我们的软件如何使用、修改或分发没有任何要求。


Substrate 已经发布在  Github 上了(https://github.com/paritytech/substrate),并根据通用公共许可证(版本 3)发布。


想深入了解吗?查看我们的资源以了解更多有关 Substrate 的信息并开始创造:


  • Substrate 测试网 “BBQ-Birch” 启动:

    https://medium.com/paritytech/substrate-testnet-launched-a55b990e6eba

  • 如何获取 Substrate “BBQ-Birch” 试验网:

    https://hackmd.io/y-E9Q9jTRreni6z9EU0kkA

  • Substrate 极简概述

    https://www.parity.io/substrate-in-a-nutshell/,

  • 什么是 Substrate:

    https://www.parity.io/what-is-substrate/

  • Substrate 技术聊天室:

    https://matrix.to/#/#substrate-technical:matrix.org

  • telemetry 上的 Substrate 节点:

    https://telemetry.polkadot.io/#/BBQ%20Birch


原文:https://www.parity.io/launch-a-blockchain-in-minutes-substrate/

翻译:PolkaWorld 社区


  • 欢迎学习 Substrate: 

    https://substrate.dev/

  • 关注 Substrate 进展:

    https://github.com/paritytech/substrate

  • 关注 Polkadot 进展:

    https://github.com/paritytech/polkadot

  • 申请 Bootcamp: 

    https://bootcamp.web3.foundation/

更多内容:


在家办公 4 年 ,他开发出了以太坊交易池和多个核心功能|Parity 第七号员工 Tomasz Drwięga 专访

Kusama 2020 年重点是什么?KSM 有什么用?|Kusama 最新问答

波卡周报 | Web 3 基金会总结 2 月份 Polkadot 和 Kusama 的相关进展


扫码关注公众号,回复 “1” 加入波卡群

关注 PolkaWorld

发现 Web 3.0 时代新机遇


点个 “在看” 再走吧!

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存