【小哈划重点:轻量级节点的任务的“支付验证”,不是“交易验证”。支付验证不需要运行全节点,只需要保存所有的区块头就可以。交易验证需要有运行全节点的矿工完成,需要验证是够双花、余额足够、脚本等因素,而支付验证只需确定用于支付的这笔交易是否被验证过、有多少确认数即可。】
比特币节点
节点,是区块链的分布式账本中,通过网络连接服务器等设备的网络节点。比特币网络中,各节点相互对等,每个节点都具有路由、区块链数据库、挖矿、钱包服务的功能。进一步,各节点又根据不同的功能有不同的分工。这里我们介绍全节点和轻量级节点(SPV节点)。
全节点
全节点——拥有完整区块链账本的节点,负责对新生成的区块和交易进行验证,是支撑比特币转账交易的核心力量。因此,全节点需要拥有完整的区块数据。有时他们还需要承担路由功能。
在早期用户很少的时候,网络能的所有客户端都是全节点,下载全网络所有的数据,然后验证每一次新区块和新交易。但是,随着比特币的发展,普通计算机已经无法满足全节点的运行要求了。
运行一个全节点需要满足的条件如下:最新版本的windows,mac osx或者 linux系统;2G空白磁盘空间;145G的空白磁盘空间,最低100MB/s读写速度;
宽带速度至少50KB/s;每个月需要大约上传200G,下载20G;每天开机运行至少六小时;
从上面的数据可以看出全节点运行条件比较严格,门槛较高,尤其对欠发达地区难度更大。比特币目前可用的全节点在一万左右,美国占比最多。因为全节点会对交易信息进行验证,所以比特币网络的安全性和全节点的数量成正比。
轻量级节点
SPV是“Simplified Payment Verification”(简单支付验证)的缩写。轻量级节点的任务的“支付验证”,不是“交易验证”。支付验证不需要运行全节点,只需要保存所有的区块头就可以。交易验证需要有运行全节点的矿工完成,需要验证是够双花、余额足够、脚本等因素,而支付验证只需确定用于支付的这笔交易是否被验证过、有多少确认数即可。
轻量级节点主要是方便普通用户使用的,比如,你在手机上下载一个比特币钱包APP,你的手机就是一个轻量级节点,不需要下载全网数据,运营者会将用户钱包中的转账和完整区块链进行核对。