摘要:笔者谨就区块链P2P网络协议的演进过程进行阐述与分析。区块链技术的网络层通信协议为点对点结构,笔者以此为基石,搭建了区块链网络层,凭借其去中心化及点对点的独到特性,可摆脱中心服务器对网络层的限制与束缚。现阶段的主流区块链技术包括比特币、以太坊及超级账本三种类型,笔者以这三种类型为对象对区块链技术应用的优缺点进行分析,并为区块链P2P网络协议的进一步完善提供参考。
关键词:区块链;P2P网络协议;比特币
1 引言
P2P网络优势在于:去中心化,可基于全部节点,实现区块链资源及服务的均衡分布,并利用共识机制,为区块链一致性提供保障;可拓展性,区块链节点可以自由增加并减少,实现网络系统的拓展;健壮性,缺乏中心节点的情况下,对区块链的攻击对象不明确,即使某些节点被破坏,区块链的安全性也不会受到太大的影响,因而可加强区块链与P2P网络的相互结合。
2 区块链P2P网络类型
2.1中心化P2P网络
中心化P2P网络十分依赖中心服务器,并将接入节点地址数据作为网络核心。区块链技术环境下,普通网络节点与中心服务器相连,掌握节点地址,以便于进行节点通讯。Napster作为世界知名MP3共享软件,所采用的网络结构就是中心化P2P网络,通过该网络,实现音乐文件与保存文件的相互关联,用户可通过在对某文件进行查找时了解到的节点存储位置,实现点对点的连接,获取该MP3文件的共享。中心服务器的应用,可对网络稳定性造成决定性影响,若中心服务器存在问题,则P2P网络会瘫痪,P2P网络中心向用户提供索引与节点通信。
2.2全分布、非结构P2P网络
该网络结构下,P2P网络节点具备较大自由性,不存在中心节点的限制,以及同一的结构化标准,以随机图的形式提供网络服务。该网络结构中,Gnutella协议较为知名,该协议是一种点对点的搜索系统,通过洪泛技术发现节点并转发节点,通过TTL减值以有效控制传播次数。但同时,过于自由的网络机制,会导致P2P网络信息难以被新的入网节点所掌握,影响节点入网,同时导致网络结构的稳定性受到影响,资源大量被无端消耗,并造成网络阻塞。
2.3全分布、结构化P2P网络
该结构的应用中,节点地址管理是其中较为严重的问题,节点之间缺少规则限制的情况下,节点信息难以精准定位,需要进行查找,造成网络消耗。而全分布、结构化P2P网络,采用哈希表,以加密散列函数,对节点地址数据加以规范,该方式应用并不存在固定的网络结构,但需要基于固定的结构图进行网络节点管理。为此,以太坊采用节点椭圆加密转换的方式实现节点区分,精准定位节点地址。
2.4半分布式P2P网络
该网络结构兼具中心化及分布式两种结构的优势,划分网络节点,打造半分布式网络结构,由超级节点对网络节点地址加以维护,以保证中心服务器的功能性得以凸显。超级节点为分布式节点,具备入网及退出的自由性。其中具有代表性的应用为Kazza。半分布式结构将节点划分为普通节点及超级节点,超级节点的确定可基于普通节点,或可自行单独配置[1]。
3 区块链P2P网络协议演进
3.1比特币及P2P网络
为满足节点入网需求,其一,种子节点。种子节点为具备长期稳定性的网络节点,将其编写至代码中,初步启动种子节点,即可向入网节点提供节点地址。从而保证新节点与其他节点的相互连接,并获取相依的地址列表。其二,地址广播。该技术的应用,是以某网络节点作为中介与桥梁,通过该节点获取其他节点地址,该技术的具体应用,包括主动广播及主动获取两种方式。其三,建立地址数据库。该技术的应用,是出于避免种子节点连接站及带宽限制,对地址广播中的节点地址信息加以保存,形成数据库,若两个已建立连接的节点之间,一段时间内未有数据通信,则一个节点向另一节点发送信息,接收信息的节点回复响应报文,以维持连接。
3.2以太坊及P2P网络
以太坊的P2P网络,是以比特币的P2P网络结构为基础的,其交易系统与比特币十分相近,并强调打造以区块链为基础的生态环境,对以太坊及其分布式应用加以拓展。以太坊搭建了分布式信息通讯平台及存储平台,基于网络节点,实现对于其他节点地址的精准定位,通过DTH技术保证网络的结构化。以哈希算法进行数据散列,形成散列数据表,为每个网络节点提供用以维护的数据支撑。网络节点上分布散列表,任何网络节点都具备其独特的IP信息,可查找其他节点,并被其他节点定位。以太坊通过DHT机制加以维护,但该维护机制过于复杂,因此在网络节点高频率变化的情况下,该机制难以适应。另外,以太坊通过Kad协议以实现对网络节点地址的快速查找与精准定位。
3.3超级账本及P2P网络
比特币及以太坊高速发展的情况下,区块链技术也得以快速拓展,由网络代币交易系统,拓展至企业问题应对方案,包括物流体系等,可进行去中心化调整,实现对于货物的精准追踪,避免信息被篡改。超级账本可提供企业级区块链服务,在该P2P网络结构中,网络节点权限不同,需要经过超级节点处理交易。超级账本并未实现去中心化,但节点的划分可提升网络效率[2]。
4 对比分析
对不同的P2P网络结构进行对比分析,明确其优势与缺陷,并充分考量网络应用的实际需求。常见的区块链技术,应用于网络代币系统中,出于对P2P网络结构进行直观对比与分析的考量,从网络结构构成层面进行分析,具体的对比分析项目包括区中心化程度、节点接入网效率等方面。
相关期刊推荐:《计算机应用研究》是专业技术性刊物,报道国内外计算机应用领域的研究与探索以及计算机技术发展动态。内容涉及:系统软件和体系结构、计算机局域网、广域网、因特网、计算机通讯、人工智能与专家系统、虚拟现实技术、多媒体技术、图形图形处理、CAD/CAM、CIMS、GIS信息处理、信息交换、数据库系统、计算机硬件、故障诊断、维修技术、计算机安全防护与病毒防治等方面。有投稿需求的作者,可以咨询在线编辑。
首先,进行去中心化程度的对比。比特币代币系统的出现及成功,愈发提高了区块链去中心化特征的知名度。无论比特币还是以太坊,都具备完全去中心化的优势,这一点并不等同于传统中心金融机构的完全中心化。区块链P2P网络节点具有相同权限,无论种子节点还是普通节点,都具备一定的网络架构,去中心化程度较高。超级节点功能与去中心化服务器相同,采用分布式集群,其去中心化程度低于比特币等代币,但高于银行系统。
其次,节点的网络接入效率。效率越高,则服务水平越高。在接入网络时,需要明确节点接入区块链网络,并实现区块账本信息同步。银行中心系统的完全中心化环境下,节点接入效率最高。但比特币及以太坊,需要实现全部区块的同步,才可进行共识挖矿。考虑到比特币的网络节点可直接广播节点地址,因此相较于以太坊,其具有更高的节点发现效率。
最后,隐私保护层面。基础的隐私保护是保护身份标志,高等的因素保护是不保存用户登录及使用信息。区块链技术的去中心化特性,对隐私保护提出要求。节点IP信息是物理地理信息的集合,可以代表用户身份信息。多用户使用相同物理节点的情况下,可通过身份信息实现用户定位并对用户行为进行追踪。以太坊通过DHT对IP信息进行保存,以预防攻击,其账户并不包含身份信息,而比特币通过洪泛广播,具体的网络节点难以定位。同时对节点地址信息加以保护,账户匿名,以保护用户隐私[3]。
5 结 语
区块链P2P网络结构中,网络节点向全网开启,可通过任一节点进行去中心化的比特币交易,但同时也给新的网络节点入网造成困难。针对这一问题,比特币、以太坊及超级账本各自提出相应的解决办法,并且不断推动区块链P2P网络的演进与发展,技术应用的去中心化程度将进一步加深,入网效率及隐私保护水平必将进一步提高。
* 稍后学术顾问联系您