区域链的内容

[复制链接]

5

主题

13

帖子

3万

积分

三足乌州牧

Rank: 5Rank: 5

积分
35510
发表于 2018-8-1 22:00:31 | 显示全部楼层 |阅读模式
本帖最后由 sorrow 于 2018-8-1 22:58 编辑

1、区域链


比特币网络采用完全独立并兼容国际互联网(Internet)IPV6及P2P(peer-to-peer)网络架构,哈希根域名值,bit计量语言,明码广播无线传输,公钥私钥自治效验认证。


P2P是指位于同一网络中的每台计算机都彼此对等,各个节点共同提供网络服务,不存在任何“特殊”节点。每个网络节点以“扁平(flat)”的拓扑结构相互连通。在P2P网络中不存在任何服务端(server)、中央化的服务、以及层级结构。P2P网络的节点之间交互运作、协同处理:每个节点在对外提供服务的同时也使用网络中其他节点所提供的服务。P2P网络也因此具有可靠性、去中心化,以及开放性。早期的国际互联网就是P2P网络架构的一个典型用例:IP网络中的各个节点完全平等。当今的互联网架构具有分层架构,但是IP协议仍然保留了扁平拓扑的结构。在比特币之外,规模最大也最成功的P2P技术应用是在文件分享领域:Napster是该领域的先锋,BitTorrent是先锋架构的最新表杰作。

比特币所采用的P2P网络架构不仅仅是选择拓扑结构(金字塔分级确权)这样简单。比特币被设计为一种点对点、端对端,对等网络聚合链路,物理路由网关桥接,分布式bit语言表达的数字现金系统,它的网络架构既是这种核心特性的反映,也是该特性的基石。去中心化控制是设计时的核心原则,它只能通过维持一种扁平化、去中心化的P2P共识网络来实现。

“比特币网络”是按照比特币P2P协议运行的一系列节点的集合。除了比特币P2P协议之外,比特币网络中也包含其他协议。例如Stratum协议就被应用于挖矿、以及轻量级或移动端比特币钱包之中。网关(gateway)路由服务器提供这些协议,使用比特币P2P协议接入比特币网络,并把网络拓展到运行其他协议的各个节点。例如,Stratum服务器通过Stratum协议将所有的Stratum挖矿节点连接至比特币主网络、并将Stratum协议桥接(bridge)至比特币P2P协议之上。我们使用“扩展比特币网络(extended bitcoin network)”指代所有包含比特币P2P协议、矿池挖矿协议、Stratum协议以及其他连接比特币系统组件相关协议的整体网络结构。


2、 节点类型及分工

尽管比特币P2P网络中的各个节点相互对等,但是根据所提供的功能不同,各节点可能具有不同的分工。每个比特币节点都是路由、区块链数据库、挖矿、钱包服务的功能集合。一个全节点(full node)包括如图6-1所示的四个功能:

图6-1 一个包含四个完整功能的比特币网络节点:钱包、矿工、完整区块链、网络路由节点

每个节点都参与全网络的路由功能,同时也可能包含其他功能。每个节点都参与验证并传播交易及区块信息,发现并维持与对等节点的连接。在图6-1所示的全节点用例中,名为“网络路由节点”的橙色圆圈即表示该路由功能。

一些节点保有一份完整的、最新的区块链拷贝,这样的节点被称为“全节点”。全节点能够独立自主地校验所有交易,而不需借由任何外部参照。另外还有一些节点只保留了区块链的一部分,它们通过一种名为“简易支付验证(SPV)”的方式来完成交易验证。这样的节点被称为“SPV节点”,又叫“轻量级节点”。在如上图所示的全节点用例中,名为完整区块链的蓝色圆圈即表示了全节点区块链数据库功能。在图6-3中,SPV节点没有此蓝色圆圈,以示它们没有区块链的完整拷贝。

挖矿节点通过运行在特殊硬件设备上的工作量证明(proof-of-work)算法,以相互竞争的方式创建新的区块。一些挖矿节点同时也是全节点,保有区块链的完整拷贝;还有一些参与矿池挖矿的节点是轻量级节点,它们必须依赖矿池服务器维护的全节点进行工作。在全节点用例中,挖矿功能如图中名为“矿工”的黑色圆圈所示。

用户钱包也可以作为全节点的一部分,这在桌面比特币客户端中比较常见。当前,越来越多的用户钱包都是SPV节点,尤其是运行于诸如智能手机等资源受限设备上的比特币钱包应用;而这正变得越来越普遍。在图6-1中,名为“钱包”的绿色圆圈代表钱包功能。

在比特币P2P协议中,除了这些主要的节点类型之外,还有一些服务器及节点也在运行着其他协议,例如特殊矿池挖矿协议、轻量级客户端访问协议等。

图6-2描述了扩展比特币网络中最为常见的节点类型。

图6-2 扩展比特币网络的不同节点类型


3、扩展比特币网络

运行比特币P2P协议的比特币主网络由大约7000-10000个运行着不同版本比特币核心客户端(Bitcoin Core)的监听节点、以及几百个运行着各类比特币P2P协议的应用(例如BitcoinJ、Libbitcoin、btcd等)的节点组成。比特币P2P网络中的一小部分节点也是挖矿节点,它们竞争挖矿、验证交易、并创建新的区块。许多连接到比特币网络的大型公司运行着基于Bitcoin核心客户端的全节点客户端,它们具有区块链的完整拷贝及网络节点,但不具备挖矿及钱包功能。这些节点是网络中的边缘路由器(edge routers),通过它们可以搭建其他服务,例如交易所、钱包、区块浏览器、商家支付处理(merchant payment processing)等
回复

使用道具 举报

本版积分规则

快速回复 返回顶部 返回列表