Freecash区块结构-及-挖矿协议改进
Freecash区块结构承袭自BCH。
Freecash的改进包括:
- Coinbase中,在矿工输出的基础上,增加开发者奖励输出
矿工输出,初始25FCH,大约每一年缩减至80%,21次缩减后固定不变
开发者奖励输出,初始25FCH 大约每一年减半,21次减半后固定不变
开发者奖励输出固定在第二个输出(n=1)
- Coinbase的输出,固定使用P2PKH脚本
挖矿协议 getblocktemplate 改进
协议介绍:https://en.bitcoin.it/wiki/Getblocktemplate
协议改进:由于Freecash Coinbase的变化,矿工在构造Block时,从现有的 getblocktemplate 协议中无法获取全部构造参数, 缺少了开发者奖励的输出参数 改进后的 getblocktemplate 协议如下:
{
"capabilities": [
"proposal"
],
"version": 536870912,
"previousblockhash": "000000000000003583a01c6f3a102a70f412f7cc3253570a802a926b6e5a71a9",
"transactions": [
],
"coinbaseaux": {
"flags": ""
},
"coinbasevalue": 2500000000,
"coinbasedevreward": {
"value": 2500000000,
"scriptpubkey": "76a914f1704a9663c1e530f82ca1bc7ff52f0f65abc1ca88ac"
},
"longpollid": "000000000000003583a01c6f3a102a70f412f7cc3253570a802a926b6e5a71a94929",
"target": "0000000000000084360000000000000000000000000000000000000000000000",
"mintime": 1578059147,
"mutable": [
"time",
"transactions",
"prevblock"
],
"noncerange": "00000000ffffffff",
"sigoplimit": 20000,
"sizelimit": 1000000,
"curtime": 1578059849,
"bits": "1a008436",
"height": 4927
}
增加了:
"coinbasedevreward": {
"value": 2500000000,
"scriptpubkey": "76a914f1704a9663c1e530f82ca1bc7ff52f0f65abc1ca88ac"
},
其中,value 是开发者奖励的输出值 scriptpubkey 是开发者奖励的输出脚本
矿工使用这两个参数构造Coinbase的第2个输出。
一个 Freecash Coinbase 的例子: Tx例子
相关文章
- 硅谷互联网公司的开发流程
开发流程包括这么几个阶段: OKR 的设立; 主项目及其子项目的确立; 每个子项目的生命周期; 主项目的生命周期; 收尾、维护、复盘。 第一点,OKR 的设立 所有项目的起始,都应该从 Ro
- RESTful-表述性状态转移风格
REST英文全拼:Representational State Transfer 面向资源编程 资源指的就是一类数据 产品表->就是产品资源 最重要的是如何表示一个资源 地址即
- 稳定性思考
产品功能线 0-1: 当系统从无到有的时候,首要考虑的是研发效率,功能快速迭代,满足快速增长的业务需求 1-10 系统已经搭建起来,此时考虑的是系统的稳定性。 可用性:1.隔离:区分出核心和非核心功能
- Supervisor守护队列发邮件
安装 CentOS: yum -y install supervisor Debien/Ubuntu适用:apt-get install supervisor 配置 修改主配置文件:vim /et
- 安装libsodium,让服务器支持chacha20等加密方式
用chacha20加密方式需要安装libsodium 注意:libsodium从1.0.15开始就废弃了aes-128-ctr yum install wget m2crypto git libsod
随机推荐
- 硅谷互联网公司的开发流程
开发流程包括这么几个阶段: OKR 的设立; 主项目及其子项目的确立; 每个子项目的生命周期; 主项目的生命周期; 收尾、维护、复盘。 第一点,OKR 的设立 所有项目的起始,都应该从 Ro
- RESTful-表述性状态转移风格
REST英文全拼:Representational State Transfer 面向资源编程 资源指的就是一类数据 产品表->就是产品资源 最重要的是如何表示一个资源 地址即
- 稳定性思考
产品功能线 0-1: 当系统从无到有的时候,首要考虑的是研发效率,功能快速迭代,满足快速增长的业务需求 1-10 系统已经搭建起来,此时考虑的是系统的稳定性。 可用性:1.隔离:区分出核心和非核心功能
- Supervisor守护队列发邮件
安装 CentOS: yum -y install supervisor Debien/Ubuntu适用:apt-get install supervisor 配置 修改主配置文件:vim /et
- 安装libsodium,让服务器支持chacha20等加密方式
用chacha20加密方式需要安装libsodium 注意:libsodium从1.0.15开始就废弃了aes-128-ctr yum install wget m2crypto git libsod