什么是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. C++ Qt开发:ComboBox下拉组合框组件

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍ComboBo ...

  2. shell 脚本中的 '-f' 和 '-d' 分别代表什么意思

    shell脚本中,'-f' 和 '-d'是用于测试文件类型的条件表达式. 1.'-f'表达式: 表达式: '[ -f file ]' 描述: 判断给定路径是否是一个常规文件 (regular file ...

  3. Tarjan 学习笔记

    萌新刚学Tarjan,啥也不会,肯定一堆错,请大佬指正谢谢 前置 强连通 强连通: 在不是强连通图的有向图\(G\)内,其顶点\(u\),\(v\)两个方向上都存在有向路径,则\(u\)和\(v\)强 ...

  4. Selenium-无头模式headless

    无头模式适合的场景: 部署到没有gui界面的服务器,比如linux 开发环境测试完全没问题后可以使用无头模式,提高selenium速度. # 使用headless无界面浏览器模式 chrome_opt ...

  5. python tkinter 使用(七)

    python tkinter 使用(七) 本篇文章主要讲下tkinter 中的message 控件. Message控件可以用于在窗口中显示一段文本消息. 以下是个简单的例子: #!/usr/bin/ ...

  6. 工具类图片转base64

    工具类图片转base64 import sun.misc.BASE64Encoder; import java.io.FileInputStream; import java.io.IOExcepti ...

  7. 微服务网关限流&鉴权-wei-fu-wu-wang-guan-xian-liu--jian-quan

    title: 微服务网关限流&鉴权 date: 2022-01-06 14:40:45.047 updated: 2022-01-06 14:40:45.047 url: https://ww ...

  8. JavaScript forEach 方法跳出循环

    for循环 JavaScript中,for循环可以使用 break 和 continue 来跳出: continue:跳出本次循环 break:结束循环 for (let i = 0; i < ...

  9. CentOS7 安装Python3.9以上版本时。编译报错,原因是openssl版本低

    openssl-1.1.1安装 1.前因 python 导入clickhouse_driver需要import ssl和_ssl,报错 File"/home/oracle/python3/l ...

  10. .Net人的自我修养-书目汇总

    .Net人的自我修养-书目汇总 2019年来现在的公司开始从事.Net相关的工作.记录一下工作以来看过(或者翻过)和听过还不错打算看相关的技术书籍或资料. 为了方便给大家参考,看(翻)过书目以难度排序 ...