什么是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. Tensorflow2.0实战之Auto-Encoder

    autoencoder可以用于数据压缩.降维,预训练神经网络,生成数据等等 Auto-Encoder架构 需要完成的工作 需要完成Encoder和Decoder的训练 例如,Mnist的一张图片大小为 ...

  2. PersistenceException 持久性异常

    首先查看他提供的错误信息 检查pom.xml文件,查看是否有: 确保文件夹是这种xml格式的 操作maven  >>>>clean 和compile       进行清理和重新 ...

  3. Havoc C2d的初次使用

    Havoc C2 简介 Havoc是一款现代化的.可扩展的后渗透命令控制框架 当前的Havoc版本还处于早期开发版,随着框架的不断成熟,可能会对Havoc的API和核心结构进行大量更改 以下的配置部分 ...

  4. shared_ptr 自定义 deleter 删除器

    一些结论 如果 shared_ptr 管理的资源不是 new 分配的内存,才考虑自定义删除器,这也是为什么 make_shared 不支持自定义删除器的原因,因为 make_shared 就是通过 n ...

  5. JavaImprove--Lesson04--LocalDateTime,ZoneId,Instant,DateTimeFormatter

    一.LocalDateTime LocalDateTime是JDK8的新时间特性,它解决了Date类和Calender类的很多不足,如使用不方便,线程不安全,以及获取时间戳只能拿到毫秒而不能拿到纳秒等 ...

  6. 车机必备软件-小白点EasyTouch(类似苹果的悬浮球,返回,清理垃圾,杀进程)

    简介 有些小伙伴升级车机后,由于部分软件打开后处于全屏状态无法返回,这里我教大家如何解决.解决办法就是:在车机上安装这款小白点软件,这款软件体积小巧,不占内存,操作也十分方便,它能帮助你快速回到主屏幕 ...

  7. MySQL基础篇:第九章_详解流程控制结构

    流程控制结构 系统变量 一.全局变量 作用域:针对于所有会话(连接)有效,但不能跨重启 查看所有全局变量 SHOW GLOBAL VARIABLES; 查看满足条件的部分系统变量 SHOW GLOBA ...

  8. 云原生2.0时代,华为云DevOps立体运维实践

    摘要:随着云原生2.0时代的来临,越来越多的企业及个人选择使用云原生技术来构建业务,云原生技术给业务构建.交付带了便利的同时,对运维也提出了更高的要求. 2020年12月,中国DevOps社区峰会在北 ...

  9. 跨越全场景统一架构三大挑战,MindSpore亮出“四招”

    摘要:本文重点剖析全场景统一的AI框架的挑战和MindSpore的解决思路. 2020年的最后一天,MindSpore发布了1.1版本,1.1中很重要的特性是构建了端边云全场景统一的基础架构: htt ...

  10. 从源码角度详解Java的Callable接口

    摘要:本文从源码角度深入解析Callable接口. 本文分享自华为云社区<深入解析Callable接口>,作者: 冰 河 . 本文纯干货,从源码角度深入解析Callable接口,希望大家踏 ...