简单搞懂比特币节点与矿工

什么是比特币?
你可能会一脸冷漠,大家都知道好不好?然后,开始背诵:
比特币(Bitcoin,缩写:BTC)是一种去中心化,非普遍全球可支付的电子加密货币。 
也有些观点则认为比特币属于虚拟商品。
比特币由中本聪于2009年1月3日,基于无国界的对等网络,用共识主动性开源软件发明创立。比特币目前是法币市场总值最高的加密货币。
咔!我知道我知道:喜欢看爱莉莎科普的同学,都有一颗热爱知识热爱技术的心!
但是,你知道吗?比特币不仅仅是加密货币,他还是:一个网络,一个协议,和一门语言。
今天我们先谈谈比特币网络。

先引入三个概念:节点、SPV 和矿工。

节点
节点 (nodes):比特币网络的的主心骨。
比特币网络的节点担任着:交易确认和广播的工作。所有的节点,都遵守比特币的共识规则 (Consensus rules):
每个区块仅能产生特定数量的比特币 (当前是 12.5 比特币/区块)。
在一条区块链内,任意一笔转账都不能够被二次转出 (双重支付,Double-spending)。
早期,比特币的所有节点都是——完整节点。但随着比特币的发展,为满足不同的需求,出现了新的节点类型,常见的比特币节点有两种:完整节点和SPV节点。
完整节点 
完整节点 (Full node):是下载了最新最完整的比特币区块链的节点,可以独立完成交易确认和交易广播,它是支撑着比特币转账交易的核心力量。  
如果没有人运行完整节点了,比特币网络会瞬间崩塌。
完整节点的使用者是:独立矿工和比特币核心 (Bitcoin core) 客户端(默认同步完整区块) 。
1. 矿工(Miner)
具备矿工功能的节点,可以通过解决工作量证明算法难题(Hash运算)来争夺创建新块的资格从而:
· 获取新的比特币
· 收取交易手续费。
矿工分两种:
独立矿工:矿工独立生成新的区块,来自区块奖励和交易费用收益全部归自己,承受更高的风险波动和更高的回报(回报周期长)。
合伙矿工:矿工相互联合组成矿池,以发现更多的区块,根据贡献的hash算力共享收益,以更低的风险波动接受较小的回报(回报周期短,目前矿池模式是比特币挖矿的主要模式)。
其中,独立矿工(Solo Miner):使用全部区块链数据,并具有挖矿能力。

2. 比特币核心(Refernce Clent(Bitcoin Core))
比特币核心,是比特币及其它加密货币参考的开源客户端。最初由中本聪以“Bitcoin”命名,后改为“Bitcoin Core”。 该软件会验证整个区块链曾经做过的所有交易,并默认可用于转接资金。
包含钱包、矿工、完整区块、路由网络全部四种功能。
比特币开发者,常建议用户使用完整节点,或者修剪节点作为比特币钱包。因为,运行完整节点是对比特币网络很好的支持,完整节点越多,比特币网络就越安全。
个人在电脑上,使用比特币核心作为钱包,无需将自己的比特币托付给第三方钱包软件,就可以独立验证和确认交易,可以避开信任问题。

SPV  
SPV  (Simple payment verification) 节点,也称轻量节点 (Lightweight node)。不下载完整的比特币区块链的节点。
包含钱包与路由转发功能,适用于存储容量有限的移动设备,如手机和平板电脑。
SPV只验证自己的交易,而不管别人的交易。
有同学担心,只验证自己的交易,会不会有问题?会不会产生无效区块?
不会,因为SPV连接到了许多不同的完整节点,可以确保我们都在同一个链块上达成一致。
比如,你的手机上安装了比特币钱包 APP,你的手机就是一个 SPV 节点。而钱包运营商,会通过 SPV协议,将每个用户钱包中的转账与网上的完整节点进行核对与确认。
市场推动
比特币网络里,区块的产生完全由市场推动。
因为,矿工会选择交易费用最高的交易来创建新块。(比特币手续费是可以设置成不同数值的,设置的费用越高,被越可能被优先处理)。
作者:竹三七,区块链研习社特约作者。