1. 概述

TOP Network在计算、状态和网络这三个方面,是一个全面的多层动态分片。

1.1 VRF-FTS 随机分片算法

“单片接管攻击(Single-Shard Takeover Attack)”: 将网络拆分成一个个小组后,恶意节点攻占分片变得更加容易

解决方法:分片都是随机进行的。随机分片让攻击变得越来越难,因为恶意实体无法让它们的节点进入任何特定的分片,降低合谋概率。

-可验证随机函数(Verifiable Random Function)
将输入映射为可验证的伪随机输出的加密方案: 允许创建无法被预测,却可被公开验证的随机种子。这些通过VRF生成的随机种子,经过"FTS(follow-the-satoshi)"算法加权计算后生成随机数,将验证节点随机加入到分片中,以及将审计节点随机加入到集群中。

1.2 动态分片

  • 每隔一段时间,分片中的一些节点会被重新分配到节点候选池,当其他分片进行选举时,这些节点会从候选池被选举到新分片。
  • 随着时间的推移,分片将具有与先前完全不同的节点。因为每次仅有少数节点被重新分配,当节点分配到新分片的时候,会同步新分片的区块数据,所以分片的共识过程不会被中断。
  • 在路由/审核网络中也是采取同样的方法,其中审计节点是持续在集群之间被重新分配。此双层动态分片方案让自适应攻击变得几乎不可能。

1.3 多级分片

分片的目的是实现系统性能的线性扩展。这意味着可扩展性随节点数量的增加而线性增加。为了实现线性扩展,单个节点工作量必须脱离节点总数和全网交易总量。

  • 对区块链的所有资源进行分片处理,包括状态(存储)、计算(交易验证和智能合约执行)和网络(区块广播、跨分片通信等)。

1.4 双层状态分片

链的状态信息包括所有用户账户和智能合约的状态信息。每个用户账户和智能合约都由一个账户数据对象表示。每个账户对象包含多个属性、关联函数和一个小型NoSQL数据库。

状态以两种方式分片。

  • 实现全局状态的分区:节点物理机只存储节点所在分片里的账户状态信息,
  • 由于验证节点只存储与该分片关联的子账户空间的状态信息,因此它们无法充分验证从其他分片发送的交易,除非它们知道发送交易的账户状态已正确更新。

1.4.1 使用表

  • 存储最近有过变更的账户的最新状态信息。当前所有的分片平分1024个表。账户需要被均匀平分,以便每个表负责大小相等的账户子空间。通过账户交易的Hash值可以快速确定账户与表的关系。这使得分片可以快速地从其他分片中提取相关状态信息,并在提交交易之前检查是否正确地更新了余额。

  • 表还可用于批处理交易从而提高吞吐量。来自同一账户,及同一子账户空间中其他账户的多比交易,可以一起被打包在一个表中。这些表可以在一轮共识中被同时验证,大大提高了系统吞吐量。

1.5 三层计算分片

交易验证和智能合约的执行都需要消耗计算资源,两者都是hpPBFT共识机制。我们使用三层设计来实现可靠的计算分片。

  • 当交易被分发到分片进行验证时,该分片中的部分节点被随机选中用于hpPBFT共识验证。
  • 分片的其余节点可以监视验证节点并辅助随后的同步过程。
  • 集群中的审计节点也通过二次审计参与hpPBFT共识验证。

1.6 三层共识网络

  • The Edge Network:充当客户端的接入点,所有交易在被转发到路由网络之前都会被先发送给边缘网络的边缘节点。
  • The Audit Network:由随机划分为分片的审计节点组成。此层网络负责处理跨分片通信和同步,同时参与交易验证。当前Audit Network有2个分片,每个分片下辖2个Validate Network分片。
  • The Validate Network:由包含验证节点的分片组成。这里是进行交易验证的地方。在每个分片中,验证节点使用并行pBFT算法验证和确认交易。

使用分层网络的原因:

  • 多种类型节点之间划分职责有助于降低对节点的要求。
  • 路由网络处理大多数对带宽要求较高的需求,例如跨分片通信,这就允许降低对验证节点的带宽要求。
  • 因为客户端只能将交易直接发送到边缘节点,从而保护路由和核心网络免受泛滥交易的攻击。

TOP Network所有网络都支持分片扩展。

区块链BaaS云服务(28)TOP Network 之全分片主链(Layer-1)相关推荐

  1. 区块链BaaS云服务(24)秘猿科技CITA

    定义 CITA-Monitor 监控系统, 用以监控 CITA 区块链服务运行状态.CITA-Monitor 监控的指标包括:区块链数据.服务进程状态.运行环境的 CPU /存储器/磁盘使用率等主机信 ...

  2. 区块链BaaS云服务(23)网易NBaaS平台

    1. 功能 1.1. 去中心化数字身份 未来通行证 未来通行证(DID)提供分布式去中心化数字身份标识及可信数据交换流转,是未来全球通用的全新通行证,基于服务公众.价值交换的理念,构建可信基础设施,致 ...

  3. 区块链BaaS云服务(28)TOP Network 之数据结构

    概述 TOP Network由独特的数据结构组成,专门为分片和高效的数据访问和存储而设计.核心对象.单元点阵和区块点阵是我们使用的三种主要数据结构. 核心对象(Core Objects) TOP Ne ...

  4. 区块链BaaS云服务(28)TOP Network 之业务链和单向状态通道(Layer-2)

    1. 业务链 一种为某一具体业务而构建的链,可以轻松地部署自己的个人业务链链,以满足其应用的需求.eg. VPN service有VPN服务链.d-storage service有去中心化存储服务链. ...

  5. 区块链BaaS云服务(28)TOP Network 之P2P 网络

    1. 总结 P2P网络"不是一个单片网络,而是许多以分层方式组成的P2P网络,类似于互联网的设计. 开发了优化的数据传输和Gossip协议,使带宽消耗最小化,提高节点发现的效率. 将地理信息 ...

  6. 区块链BaaS云服务(28)TOP Network 区块链平台

    1. 定义 一个用于DApp开发和部署的全状态分片公链平台,旨在建立一个完整的区块链生态系统,为开发者打造可扩展的分布式应用. 2. 系统架构 2.1 基础设施层(Infrastructure Lay ...

  7. 区块链BaaS云服务(29) 溪塔科技 CITA-Cloud

    1. CITA( Cryptape Inter-enterprise Trust Automation ) 是一个面向企业级应用的支持智能合约的区块链框架,CITA 将区块链节点的必要功能解耦为六个微 ...

  8. 区块链BaaS云服务(25)边界智能 IRITA平台

    1. 定义 以区块链跨链.隐私计算及大数据分析技术创新为核心. 支持中国国密标准,并有完善的 SDK 及运维工具支持,在性能.安全可靠性.认证及权限.可维护性.可扩展性和运维监控等多方面都满足企业级应 ...

  9. 区块链BaaS云服务(16)天德链TDBC“系统介绍”

    1. 系统架构 2. 平台特点 证书管理 包含了完善的.不可伪造的证书管理系统.每个用户有且只有一个有效证书(接入凭证),充分保证了用户信息安全. 隐私保护 对交易信息进行加密传输.加密存储.只有拥有 ...

最新文章

  1. linux 安装 MySQL
  2. MAC OS X 10.8 操作远程SSH服务器 + 无密码输入使用SSH服务器
  3. activeMq-2 高可用以及集群搭建
  4. python带界面的计算器
  5. MFC动态调用DLL
  6. javascript读取txt_JavaScript编程语言学习笔记——编程
  7. 【cudnn】cudnn 安装
  8. 犯人释放的C语言程序,C语言的自动关机程序和一个用来整人的小程序
  9. NOI数据结构:树套树
  10. [HNOI2008]越狱
  11. 机器学习中的距离/散度/熵
  12. 泰拉瑞亚服务器存档位置,泰拉瑞亚国服存档怎么恢复 国服存档位置
  13. 高斯克吕格投影分带计算
  14. 大数据分析技术与方法有哪些?
  15. 水调歌头.明月几时有 小儿拼音版
  16. [leetcode]592. Fraction Addition and Subtraction
  17. [Luogu] 贪婪大陆
  18. [论文翻译]-A Comprehensive Survey on Graph Neural Networks《图神经网络GNN综述》
  19. Drone 自定义 UI
  20. ssh突然无法登录Connection closed by xxx port 22

热门文章

  1. 框架:mybatis常用标签(refid、foreach、trim)
  2. @RestController/@Controller/@ResponseBody
  3. Python 实现9*9乘法表
  4. 蜂鸣器接入_无源蜂鸣器的原理和和mixly结合制作电子琴
  5. 从本地的win传文件到本地的linux上,pscp.exe实现本地windows下的文件下载(传输)到linux上...
  6. python django 表单_Django-表单处理
  7. python文本编辑pycharm_PyCharm的基本使用
  8. plsql tables 没有表_InnoDB 层锁、事务、统计信息字典表 | 全方位认识 information_schema...
  9. ML之sklearn:sklearn.linear_mode中的LogisticRegression函数的简介、使用方法之详细攻略
  10. 成功解决Module Not Found Error : No module named mglearn