substrate轻松学2:区块链与substrate

article/2025/8/26 8:14:37

从2008年中本聪发布《比特币:一种点对点的电子现金系统》开始,区块链技术开始进入我们的世界,区块链防篡改、去信任等等概念更是被炒的热火朝天。那么什么是区块链,它能做什么?到底有没有前途?这不是我们这节要回答的问题(这个机灵是不是抖的很ok?😃)我们这节要讲的,是一个区块链系统应用的大体表现形式,有些概念或者表达可能不太准确,但是没有关系,这节的内容只是为了帮我们能更好的学习substrate而已。

1 区块链系统是什么样的

很多资料都会提到这点,区块链是一个分布式的数据库,本质是一个分布式的账本。既然是分布式的,那当然具备分布式的特征,既然是数据库,是账本,那么当然能够记录数据。关于区块链是怎样记账的文档很多,此处我们不再累述。

要学习substrate,区块链系统具体是怎么去信任、防篡改的,我们可以不用了解太深,但是区块链系统大概长什么样子,是必须要知道的。就像我们要用积木搭一个城堡,可以不用知道从头开始建城堡的实际步骤,但是城堡的大概样子还是要知道的,否则即使有积木也不知道怎么搭。

1.1 区块链的大体样貌

下图就是区块链系统的大体样貌(表现形式)。
在这里插入图片描述

从上图中,我们可以看出区块链的几个特点:

  • 是一个分布式的系统;
  • 每个节点都有一个账本;
  • 每个节点的账本都基本上按照同样的逻辑记账;
  • 用户可以访问其中的任何一个节点就可以访问系统。(为了好理解,这里全是全节点)

1.2 区块链程序的组织结构

上面我们是用户试图看到的区块链系统的表现形式,这里我们看看从代码实现层面区块链的组成。下面是以太坊的架构图:
在这里插入图片描述

以太坊很具有代表性,大部分的区块链通常都是这个架构(所以这张图要好好记住,比较有代表性)。不过我们放这张图的目的并不是为了后面实现这张图里类似的组件。

2 substrate与区块链开发

如果没有substrate,那么我们开发一条区块链基本上是要自己来实现网络、共识、交易池等等组件的,也就是前面区块链架构里面的那些东西。而substrate里面就是像提供积木一样提供了这些组件,然后我们可以像搭积木一样根据需求搭建出一条条的区块链。

因为要构成一条链,无非就是共识、网络、密码算法库、rpc这些东西,每个团队开发区块链的时候,可能用的东西都差不多,只有某些和自己特定业务相关的模块才会不一样。而substrate中已经提供了一些基础的东西以及一些写好的模块,开发者可以把现成的模块拿来用,只需要开发自己特定的逻辑就可以了。

阅读substrate轻松学系列其它文章:
substrate轻松学1:前言


http://chatgpt.dhexx.cn/article/kaVuqtUR.shtml

相关文章

创建第一个 Substrate 区块链

创建第一个 Substrate 区块链 区块链软件使单个计算机(称为节点)能够相互通信以形成分散的点对点 (P2P) 网络。为保证链上数据的安全和链上的持续进展,节点通过某种形式的共识,就每个数据块中的数据状态以及块的处理顺序达成一致…

技术干货|通过 Substrate - IBC 实现 Substrate 资产跨链

全长 2760 字,预计阅读 10 分钟 作者:DaviRain 撰文:MiX 微信交流:MixMetaverse 章鱼网络 DaviRain 受邀参加 RUST.CC 中国大会,分享主题为《通过 Substrate - IBC 实现 Substrate 资产跨链》的 Workshop。主要讨论了…

Substrate之旅4:基于Substrate私有链的搭建

参考:https://docs.substrate.io/tutorials/v3/private-network/ 实现目标 这里我们学习: 如何基于Substrate来构成一个两节点的链网络。如何配置使用Aura的共识机制。如何定制账户,并设置其为Aura的Validator。 启动两个节点的链网络 确…

cydia java_Cydia Substrate 使用

前言 我们以前介绍过Xposed,这个只可以Hook java层,如果要hook native层就要使用InlineHook了,以前的文章都有提到。今天介绍一个既可以Hook java层又可以Hook native层的框架,就是Cydia Substrate。 环境 安装Cydia Substrate ap…

10E polkadot substrate : 配置合约托盘

• 介绍 • 添加托盘依赖项 • 实现 Contracts 配置特征 • 公开合约 API • 更新外部节点 • 启动本地 Substrate 节点 • Substrate Tutorials , Substrate 教程 • Contact 联系方式 • 介绍 如果您完成了构建本地区块链教程,那么您已经知道 Substrate节点模板…

Substrate之旅2:Substrate开发环境搭建

我们将基于Ubuntu 18.04来安装Substrate的开发环境。 我这边Ubuntu是安装在VMWorkstation虚拟机上的。 安装依赖 安装参考:https://docs.substrate.io/tutorials/v3/create-your-first-substrate-chain/#install-rust-and-the-rust-toolchain 但具体的操作步骤&…

认识substrate

了解substrate 前言从互联网发展看区块链未来--跨链跨链是未来 公链和联盟链可交互的联盟链polkadot组件substrate介绍区块链的构造组件substrate开发的特性 polkadot :substrate 之上建立如何通过substrate构造自己的链一键链上升级--永不分叉为什么需要链上升级 substrate与企…

CydiaSubstrate框架

往期推荐 Frida Native层HOOK Frida hook Java层 frida环境安装 Xposed框架安装、使用及插件开发 需要相关资料的朋友,可以【[加入此处即可打包获取]】 Cydia Substrate是一个基于Hook的代码修改框架,可以在Android、iOS平台使用,并实现…

创建Substrate 私有网络

创建Substrate 私有网络 所有区块链都要求网络中的节点就消息集及其顺序达成一致,以成功创建区块并从一个区块推进到下一个区块。每个块代表特定时间点的数据状态,节点对状态的一致称为共识。有几种不同的算法用于达成共识,包括:…

Build the Substrate Kitties Chain(中文翻译)

欢迎来到Substrate Kitties课程。 本课程将向您介绍如何构建一个可以创建并持有非同质化代币(NFT,这个NFT名称为Substrate Kitties)的区块链。课程分为部2部分: Part I 描述如何构建Kitties pallet,以及这个pallet怎样…

oracle substrate,Substrate 2.0 带来了哪些改变?

Substrate 已到了 2.0 版本的主要里程碑处。该区块链框架现在包含链下工作机(off-chain workers)和 70 多个可组合模块,并为构建优化的、与 Polkadot 兼容的、可投入生产的区块链奠定了坚实的基础。数十个实时区块链已经在运行 Substrate 2.0,包括Polkad…

Substrate 基础教程(Tutorials) -- 授权特定节点

五、授权特定节点 在添加可信节点中,您看到了如何使用一组已知的验证器节点构建一个简单的网络。该教程演示了一个简化版的许可网络(permissioned network)。在一个被许可的网络中,只有被授权的节点(authorized nodes…

Substrate常见问题

目录标题 1. Rust nightly not installed, please install it!2. Rust WASM toolchain not installed, please install it!3. use pallet::*出错4. failed to load manifest for workspace member5. error: failed to run custom build command for node-template-runtime v4.0…

什么是 Substrate

如果你关注了 Polkadot 项目,可能会多次看到「Substrate」这个词。 它是 Polkadot 项目的重要组成部分,但有关它的信息非常少。 白皮书或黄皮书里找不到, 至少没有专门的介绍「Substrate」。 从较高的层面来看,Substrate 是一个可…

Substrate之旅3:Substrate是什么

Substrate 是从Polkadot 孵化出来的项目。它是一个用来搭建区块链的通用框架,具有以下特点: 可扩展。模块化。开源。 Substrate的框架与组件 框架 其中: P2P: libp2p网络协议,Substrate基于该协议实现了一个不带任何假设的&…

Substrate 基础 -- 教程(Tutorials)

官网 github DOC 面向未来的区块链框架 Substrate 使开发人员能够快速、轻松地构建适合任何用例的未来 证明区块链(future proof blockchains)。 Substrate 文档包括区块链构建器(blockchain builders)和parachain 项目团队的概念、过程和参考信息。…

【Android 逆向】substrate 框架 ( substrate 简介 | substrate 相关文档资料 )

文章目录 一、substrate 简介二、substrate 相关文档资料 一、substrate 简介 substrate 官网 : http://www.cydiasubstrate.com substrate 框架 是 Cydia 下的逆向工具 , 该框架是开源的 ; substrate 配合对应的 so 动态库 和 头文件 , 可以在 Android / iOS 平台中独立运行 …

ios tableView那些事(三)给tableView添加些图片

感觉光有数据的tableView很丑&#xff0c;那么我们就来美化下吧&#xff0c;加一些图片 #import <UIKit/UIKit.h> /*tableview 一定要用到这两个delegate UITableViewDataSource,UITableViewDelegate */ interface ViewController :UIViewController <UITableViewDa…

QT的TableView实现多级表头

QT的TableView实现多级表头 最近项目需要支持多级表头&#xff0c;QT本身不支持。可重写QHeaderView表头实现。 demo如下&#xff1a; FSItemDelegate.h #pragma once/* 自定义委托类 */ #include <QItemDelegate> #include <QSpinBox> #include <QDoubleSpin…

QML类型:TableView

一、描述 TableView 显示从内置 QML 类型&#xff08;如 ListModel 和 XmlListModel&#xff09;创建的模型中的数据&#xff0c;这些模型仅填充 TableView 中的第一列。要创建具有多列的模型&#xff0c;请使用 TableModel 或继承 QAbstractItemModel 的 C 模型。 TableView…