tron 波场笔记 1
波场手册
https://github.com/whitespur/Documentation/blob/master/中文文档/波场介绍/波场手册.md
核心架构
存储层
TRON 的技术团队为 TRON 设计了独特的分布式存储协议,包括区块存储和状态存储。 在存储层的设计中,TRON 引入了图数据库的思想,来更便捷的满足现实世界多样性数据存储的需求。
核心层
TRON 包含智能合约,账户管理,共识等模块。TRON 将会实现基于堆栈式的虚拟机,并且采用优化过的指令集。 为了让开发者更好的开发 DApp,TRON 采用 Java 语言作为合约语言,后续会加入更多的高级语言支持。 另外为了满足 TRON 独特的需求,TRON 的共识机制在 DPOS 基础上做了一定的创新。
应用层
开发者可以使用接口来方便的实现丰富的 DApp 和个性化钱包。 波场的协议完全使用 google protobuf 来定义,天然的支持多语言扩展。
共识机制
基于 DPOS 改良过的共识机制,基本原则如下:
用户会根据自己手里的具有可投票权的币持有量做出带有权重的投票,根据投票结果,按照一定的规则选择出当前的区块生成节点。参照的规则会尽可能的保证区块的生成速度与打包节点数量之间的平衡性。 同时,落选的打包节点、投票给中选者的用户、投票给落选者的用户均可能获得一定量的补偿,以激励他们持续参与之后的竞选流程。 中选节点会按照一定的分配规则依次进行区块的打包并获得最大份额的奖励。 中选节点中的多数会根据投票结果进行选择,剩下的会按照一定的算法保证在余下的其他节点中,所有节点都有可能被选中。
存储结构
KhaosDB
TRON 采用的 KhaosDB 会存储一定时间内所有新产生的分叉链。当发生需要切换主链的情况时,在 KhaosDB 的支持下,验证节点可以快速切换有效链到新的主链。
Level DB
为了同时满足存取速度和快速开发的需求,TRON 会在开发初期采用 Level DB。在主网上线后,TRON 将会根据实际需求进行数据库的升级,使得 TRON 具有完全量身定制的数据库。
数字资产模块
配置
数字资产配置。通过该模块,用户可以按照自己的意愿进行自定义的数字资产的定制。 可定制的参数包括但不限于资产的名称、缩写、LOGO、总的发行量、TRX 兑换比例,开始时间、 结束时间、兑换比例衰减系数、是否可增发、增发形式(一定数目或者一定比率)、增发周期、描述等。 用户也可以选择不进行参数的配置。系统会为用户配置默认的参数。
发布/部署
参数配置完成后(人为或者系统默认),用户即可选择发布资产。 对配置好的并通过验证的数字资产进行部署的各种操作、功能。 通过见证节点的验证后,自定义资产就完成了部署。完成部署的资产可以自由的在 TRON 网络上流通。
API
API 接口主要用于支持客户端的开发。开发者可以在 API 接口的支持下,开发完全由自己设计的资产发布平台。
协议
TRON 使用 Google protobuf 协议,协议内容涉及到账户,区块,传输多个层面。
账户有基本账户、资产发布账户和合约账户三种类型。一个账户包含,账户名称,账户类型,地址,余额,投票,其他资产 6 种属性。
更进一步的,基本账户可以申请成为验证节点,验证节点具有额外的属性,投票统计数目,公钥,URL,以及历史表现等参数。
一个区块由区块头和多笔交易构成。区块头包含时间戳,交易字典树的根,父哈希,签名等区块基本信息。
交易合约有多种类型,包括账户创建合约、转账合约、资产转账合约、资产投票合约、见证节点投票合约、见证节点创建合约、资产发布合约、部署合约 8 种类型。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于