Go Ethereum Meitu 以太坊的 DPoS 算法实现

程序名称:Go Ethereum Meitu

授权协议: LGPL

操作系统: 跨平台

开发语言: Java

Go Ethereum Meitu 介绍

Go Ethereum 项目是美图技术团队在以太坊上实现的 DPoS 算法,是以太坊协议的 Go 语言实现,目前尚处于实验阶段。

查看官方的实现版本>>>https://www.oschina.net/p/go-ethereum

基于 Ethereum(1.7.3版本) 实现 DPoS 共识算法

以太坊当前代码里面已经包含了几种共识算法的实现:

  • PoW 在主网使用

  • FakePow 在单元测试使用

  • PoA(Proof of Authority) 在测试网络中使用

为了在代码中实现多种共识算法,以太坊抽象了一套共识算法接口,实现不同的共识算法只要实现几个接口即可。另外由于 DPoS
为了避免每次选举都从创世块开始回放历史数据,增加了几个全局状态树用来记录选举和投票的状态, 并把树对应的 root 存储到块头,其中包括

  • EpochTrie 记录每个周期的验证人列表

  • VoteTrie 记录投票人对应验证人

  • CandidateTrie 记录候选人列表

  • DelegateTrie 记录验证人以及对应投票人的列表

  • MintCntTrie 记录验证人在周期内的出块数目

Go Ethereum Meitu 官网

https://github.com/meitu/go-ethereum

相关编程语言

OpenFunix 是由我从零开始写的一个内核项目。 OpenF...
女娲内核,用中文版C"习语言"写的简单操作系统内...
Linux-Insides 是一系列 Linux 内核的展示。它通过分...
Alibaba Kernel起源于亚洲最大的电子商务网站——阿...
Genode操作系統框架擴展現有的內核(如微內核或程序...
TencentOS Kernel 是腾讯针对云的场景研发的服务器操...