了解substrate

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

前言

2020年区块链三大事件,都被我们赶上了:

  1. BTC减半
  2. filecoin上线
  3. polkadot上线
    而作为开发了3年+的“年轻”明星项目,filecoin和polkadot备受开发人员和币圈关注。下面,我们从开发人员角度去看下substrate

从互联网发展看区块链未来–跨链

我们经历了互联网三个时代:

  1. web1.0 :只读互联网。用户只能搜索信息,浏览信息
  2. web2.0: 可读写互联网。只读已经无法满足人们需求,人们需要将文字、图片、视频上传到互联网上,实现信息共享。因此,问答式、交互式门户、博客、百科等网站出现。
  3. web3.0:价值互联网。web3.0将打造一个新的全球数字经济,创造新的商业模式和市场,与谷歌和Facebook一起破坏平台垄断,并产生大量自下而上的创新。打破数据隔离,让真正有价值的东西流通起来。

跨链是未来

区块链可以解决信任为题
专业化可以解决可扩展问题
可交互可以在可扩展的前提下,解决更广泛的信任问题,是一个更真实的世界


波卡解决下面三个问题:
跨链协作
可扩展性
共享安全

不可能性三角:去中心化、可扩展性、安全性不可能同时达到
而polkadot尝试打通整个区块链沟通协作。

公链和联盟链

公链:公链特点,开发复杂、生态丰富、维护成本高、升级困难、开放、犯错成本高
联盟链:CA准入、开发简单、开发框架单一、功能单一、升级困难、可扩展性低、生态单调

可交互的联盟链

数据共享、全局信任
通过核心链将更多联盟链连接起来
其中核心链是基于substrate,各个联盟链也基于substrate,核心链

polkadot组件

relay chain:中介链,中间大红框
Validators:中介链的区块验证节点

parachain :平行链,周边的红色小圆圈
collators :平行链的区块整理节点

区块整理节点(collators)将平行链的下个区块信息,并将下个区块信息提交给区块验证节点(Validators)盖章和打包,一旦该信息成功被Validators认证,该平行链的信息将会被打包到中介链(relay chain)的区块信息中。

Bridge:桥组件
而relay chain外围的parachain也可以再接一层parachain,那么第一层的parachain就可以作为外一层parachain的relay chain。依此类推,往外无限扩展。

substrate介绍

目标:每个分片专注不同业务
一个区块链节点需要包含哪些组件:
数据库
点对点网络
共识算法
交易处理
***状态转换函数(runtime)***:决定整个区块链当前状态和未来状态
***其它特别函数:零知识证明(zk)、分片等等

区块链的构造组件

核心组件
最内层:区块链构造组件:数据组、加密算法、点对点网络、序列化、共识算法、交易队列
中间层:链逻辑升级、链上治理,即(runtime层)
最外层:dapp ,智能合约

substrate开发的特性

可扩展性
模块化
开源*
自主可控

模块:

polkadot :substrate 之上建立

如何通过substrate构造自己的链

runtime是区块链的链上运行集合,也就是状态转换函数。可以通过选择方式添加runtime组件。runtime组件目前超过40个。

一键链上升级–永不分叉

当substrate本地节点执行一批交易逻辑时,会判断native runtime版本是否与wasm runtime版本一致,如果一致,则在native runtime上进行,如果不一致,则会选择在wasm runtime运行。
全网是否需要升级,需要一个公投,全网公投通过,则需要升级,native runtime也会被强制升级。
而公投需要议会,或者root,不过root在主网上线后会被撤下。议会成员可执行议会职能,非议会成员无法执行议会职能。

note: 使用wasm,升级过程无需节点直接参与。如果不适用wasm,整个网络都需要执行升级操作。

为什么需要链上升级

substrate与企业系统无缝集成

使区块链成为解决方案的一部分。

那么,substrate是什么?

substrate是技术、生态和联盟链之间的桥梁

附官方相关连接
Substrate的官方文档网址是什么? https://substrate.dev/docs
Substrate的recipe网址是什么? https://substrate.dev/recipes/
Substrate的rust docs的网址是什么? https://substrate.dev/rustdocs/v2.0.0-rc2/sc_service
Substrate的tutorial的网址是什么? https://www.substrate.io/tutorials/
Substrate Seminar在每周几进行? 每个星期二14:00UTC

认识substrate相关推荐

  1. 使用Cydia Substrate Hook Android Java世界

    从来没接触过Android的HOOK,在看雪上找到了一篇HOOK 的文章,但是太复杂了,应该是本地环境问题,测试不成功. 后来搜到Cydia Substrate,看了几篇文章,进入官网查看了一下文档, ...

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

    文章目录 一.substrate 简介 二.substrate 相关文档资料 一.substrate 简介 substrate 官网 : http://www.cydiasubstrate.com s ...

  3. 波卡链Substrate (3)SRML框架

    1. Substrate Runtime Module Library(SRML)框架 System Module系统模块 提供底层基本的API和工具集,定义了Runtime的核心类型.外部事件等等 ...

  4. 波卡链Substrate (1)生态介绍

    1. 创始人 GavinWood(编写以太坊黄皮书,创建以太坊开发语言Solidity) Cosmos项目Jae Kwon 2. 经济规模 2017年,Polkadot获得价值1.44亿美元的融资 2 ...

  5. substrate 区块链框架 (1)概述

    1. 定义 Substrate是一个具备区块链核心要素(例如数据存储,p2p通讯,共识算法,密码学组件等).可用于构建开源.模块化和可扩展区块链的基础技术框架. Substrate把一个区块链运行所需 ...

  6. Android逆向之旅---Native层的Hook神器Cydia Substrate使用详解

    一.前言 在之前已经介绍过了Android中一款hook神器Xposed,那个框架使用非常简单,方法也就那几个,其实最主要的是我们如何找到一个想要hook的应用的那个突破点.需要逆向分析app即可.不 ...

  7. 利用Cydia Substrate进行Android HOOK(2)

    在前面关于Substrate的介绍中我们已经讲了用Substrate hook java代码,现在我们讲下怎么用它hook native代码.hook native代码我们需要编写Substrate ...

  8. 利用Cydia Substrate进行Android HOOK (1)

    Cydia Substrate是一个代码修改平台.它可以修改任何主进程的代码,不管是用Java还是C/C++(native代码)编写的.而Xposed只支持HOOK app_process中的java ...

  9. 中如何计算工龄_在Substrate中如何计算交易权重

    建议在阅读本文之前,先掌握关于Substrate中交易费用设计的基本概念.如果还没有了解的童鞋,请移步: Kaichao:Substrate 区块链应用的交易费用设计​zhuanlan.zhihu.c ...

  10. 利用Cydia Substrate进行Android HOOK(二)

    在前面关于Substrate的介绍中我们已经讲了用Substrate hook java代码,现在我们讲下怎么用它hook native代码.hook native代码我们需要编写Substrate ...

最新文章

  1. 拿下丰厚的年终奖,却未能拯救总薪酬,2021 年度 IT 薪酬调查报告出炉!
  2. 数据库LINQ TO SQL在Silverlight中的应用(WCF)------学习笔记(一)
  3. ORACLE数据迁移参考
  4. Eclipse 常用快捷键
  5. android 屏幕切换监听
  6. ipython jupyter区别_ipython jupyter notebook中显示图像和数学公式实例
  7. 浮点数在计算机中存储方式float,double)---转
  8. 【2020-06-16】CentOS8下yum安装nginx,systemctl start nginx报错undefined symbol: FT_Done_MM_Var
  9. SpringMVC是单例的
  10. IntelliJ IDEA导包快捷键
  11. 研发项目wbs分解简单案例_wbs模板(wbs工作分解结构案例)
  12. (15年)单循环赛制,所有参赛队伍在竞赛中均能两两相遇一次。由键盘获得N队伍数,采用递归算法实现对N支队伍总比赛场次的计算
  13. java打印模板_怎样做一个word模板,用java调用打印功能
  14. 前端H5面试题(总结)
  15. 5451 Best Solver 构造共轭复根求递推矩阵广义斐波那契循环节降幂
  16. Spyder设置字体
  17. cad画直线长度与实际不符_cad画直线尺寸不对
  18. NGUI的长按事件以及检测按钮点击事件的常用方法
  19. python中复制上一行快捷键_Pycharm最常用的快捷键及使用技巧
  20. 浅谈Openstack网络原理(openstack无法上网?)

热门文章

  1. android实现热更新
  2. mysql批量构造模拟数据
  3. Spring 实战最新版中文版
  4. 【华为OD机试真题 python】特异性双端队列 | 最小调整顺序次数【2022 Q4 | 100分】
  5. eMMC Partition
  6. emmc和SPI共舞
  7. Java基础知识----字符串
  8. 紫微斗数:命主和身主
  9. sudo,su, -的区别
  10. 面部识别法案正式通过?微软总裁赞不绝口——华盛顿州重大突破!