什么是CoinBase交易?

比特币区块链上的每个区块中都会包含一个或者多个交易(transaction),其中第一个交易就叫做CoinBase交易。

什么是CoinBase交易?

CoinBase交易是矿工创建的(拥有记账权的节点),主要是为了奖励矿工挖矿而付出的奖励。

奖励分为两部分。一部分是出块奖励,这部分是固定的,当前每个区块的出块奖励是6.25BTC,每四年减半一次。另外一部分是交易的手续费,当前区块的每个交易中都会包含一定的对矿工的奖励,也就是交易手续费。创建CoinBase交易的时候,矿工会把所有交易中的手续费累加到一起,然后把这笔交易装给自己。

CoinBase交易的特点是没有输入。普通交易中需要input,而input是来自父交易的output,所以普通交易是由父交易的。但是CoinBase交易是没有父交易的,因为币是直接由系统生成的,因此,coinbase交易也是系统产生比特币的唯一途径。

什么是coinbase?

简单来说,coinbase就是系统生成的币。coinbase交易也叫做“generation交易”,也就是“生成交易”,这是因为其他的普通交易中,都是去转账已有的BTC,而这个交易是专门从无到有的去生成新的比特币的。精确一点来说,coinbase就是“生成交易”中的input。

Coinbase交易中包含哪些数据呢?

交易中包含一个input和一个output。这个input就是coinbase。output指向矿工的地址,总金额等于coinbase加上区块中全部交易的手续费。

另外coinbase中还有一个最多100字节的数据。除了最开始的几个字节,这个数据中剩下的地方可以存储任意数据。矿工可以用来存储自己想要存储的数据。另外,再创世纪块中,中本聪保存了这样一句话:

The times 03/Jan/2008 chancellor on brink of second bailout for banks

数据的最开始几个字节保存的是区块高度。所谓区块高度就是当前区块跟创世纪块之间间隔的区块数量。创世纪块就是比特币区块链上的第一个区块,区块高度为零。

总结

重点理解,第一,coinbase交易是矿工自己构建的,用于把出块奖励和手续费奖励给自己。第二。coinbase可以理解为“系统最初生成的比特币”。第三,交易中包含一个input一个output和一个小于100字节的数据。

CoinBase是什么?的更多相关文章

  1. Coinbase 雇员被 Firefox 0day 漏洞攻击

    Firefox 刚刚修复的 0day 漏洞被用于攻击 Coinbase 雇员.Coinbase 安全团队的 Philip Martin 称,攻击者组合利用了两个 0day 漏洞,其一是远程代码执行漏洞 ...

  2. 区块链(Blockchain)

    一 .什么是区块链? 区块链(Blockchain)是由节点参与的分布式数据库系统[1],它的特点是不可更改,不可伪造,也可以将其理解为账簿系统(ledger).它是比特币的一个重要概念,完整比特币区 ...

  3. 源码阅读 etherum-block.py

    def calc_difficulty(parent, timestamp): config = parent.config offset = parent.difficulty // config[ ...

  4. [转]使用Scrapy建立一个网站抓取器

    英文原文:Build a Website Crawler based upon Scrapy 标签: Scrapy Python 209人收藏此文章, 我要收藏renwofei423 推荐于 11个月 ...

  5. Blockchain概述--转

    编者按:著名投资人 Fred Wilson 的同事 Joel Monegro 近日参加了纽约比特币 workshop HackBit聚会,其间他们讨论了比特币式的思维方式对未来十年世界的影响,而这种影 ...

  6. Helpers\SimpleCurl

    Helpers\SimpleCurl The SimpleCurl class is there to curl data from RESTful services. A lot of compan ...

  7. API经济产业

    技术大咖为我们铺好了前进道路,我们为什么还要敬而远之舍近索远呢?充分利用开源,利用API进行App有效整合. 为应用添加日志功能,Loggly; 为应用添加用户管理和身份认证模块,Stormpath; ...

  8. Best jQuery Plugins of the Month – May 2014

    1. jQuery referenceSection jQuery referenceSection by Scott Mascio ensures to help users in adding a ...

  9. Windows搭建以太坊的私有链环境

    1.下载Geth.exe 运行文件,并安装 https://github.com/ethereum/go-ethereum/releases/ 下载后,只有一个Geth.exe的文件 2.cmd进入按 ...

  10. ubuntu系统搭建以太坊私有链

    1.安装curl.git apt-get update apt-get install git apt-get install curl 2.安装go curl -O https://storage. ...

随机推荐

  1. mybatis_高级

    注解方式: 不需要配置文件 @select等注解直接放在接口mapper里 多表操作: @Select("select * from user1") @Results({ @Res ...

  2. UMP系统功能

    1.容灾: 主库发生故障,执行从库 主从切换: 主库恢复:(切换过程中有短暂的不可用) 2.读写分离 3.分库分表: 当采用分库分表时,系统处理用户查询的过程如下: 4.资源管理: 具体的MySQL实 ...

  3. PyTorch 中自定义数据集的读取方法

    显然我们在学习深度学习时,不能只局限于通过使用官方提供的MNSIT.CIFAR-10.CIFAR-100这样的数据集,很多时候我们还是需要根据自己遇到的实际问题自己去搜集数据,然后制作数据集(收集数据 ...

  4. MinIO客户端之mv

    MinIO提供了一个命令行程序mc用于协助用户完成日常的维护.管理类工作. 官方资料 mc mv 将对象在桶之间移动. 在桶内准备好待移动的文件,检查对象,命令如下: ./mc ls local1/b ...

  5. vulntarget-a-wp

    vulntarget-a 信息收集 存活扫描,目标开放了445还是win7,考虑一手永恒之蓝 arp-scan -l nmap -A -sT -sV 192.168.130.4 永恒之蓝 用nmap的 ...

  6. Python——第四章:内置函数(下)

    内置函数的使用方法: locals:函数会以字典的类型返回当前位置的所有局部变量 globals:函数会以字典的类型返回全部局部变量 zip: 可以把多个可迭代内容进行合并 sorted: 排序 fi ...

  7. Python用辗转相除法计算两数的最大公约数和最小公倍数

    计算最大公约数运用辗转相除法就行了 计算最小公倍数需要运用公式:最小公倍数=数字1*数字2/最大公约数 有关辗转相除法的知识请查看:辗转相除法 以下为代码: #计算最大公约数 def gys (x,y ...

  8. Spring WebFlux 简介

    本文基于 Spring Boot 2.6.0 基于之前提到的 Reactor 的出现,使得编写响应式程序成为可能.为此,Spring 的开发团队决定添加有关 Reactor 模型的网络层.这样做的话将 ...

  9. 在ubuntu下将virtualbox虚拟机的磁盘重设大小的方法

    1.VBoxManage modifyhd /home/beyond/xxx.vdi --resize 20480 {20480(单位:M)是你要扩容之后的总大小,/home/beyond 是你存放 ...

  10. three.js中帧缓存的使用

    目录 1. 概述 2. 示例 2.1. 代码 2.2. 解析 3. 参考 1. 概述 在网上查阅了一下three.js关于帧缓存的使用,感觉很多都是关于three.js中后处理通道的使用的.后处理通道 ...