技术领域
[0001] 本发明涉及一种基于复合特征节点类别挖掘的加密货币辅助监管方法,属于区块链监管技术领域。
相关背景技术
[0002] 加密货币的核心根基在于区块链技术,这是一个运用链式区块架构记录交易历史的分布式数据库系统,构成了一个全球共享、无需中心化权威管理、具备透明度及去中心化特性的分布式账本体系。
[0003] 以下是加密货币网络的主要特点和功能概述:
[0004] 1.去中心化架构:加密货币网络摒弃了传统的中心化管理模式,采用了去中心化的架构设计。这意味着网络的运行与维护不再依赖单一的中央机构,而是由全球范围内的众多参与者(节点)通过点对点网络协同进行。
[0005] 2.分布式账本:区块链作为加密货币的核心技术,实质上是一个公开透明、无法随意篡改的分布式账本系统。每个网络节点均保有一份完整的账本拷贝,并通过共识过程确保各节点间的数据一致性。
[0006] 3.共识机制:共识机制在加密货币网络中扮演着至关重要的角色,它是保障去中心化系统内达成共识的关键手段。这些机制确保只有经由网络中大部分节点确认有效的交易才会被整合进区块链中。
[0007] 4.网络通信与拓扑形态:加密货币网络内部的节点依据特定通信协议进行互联,形成了类似树状或网状的复杂拓扑结构。这样的结构不仅有利于信息迅速传播与全局共识的快速达成,同时也增强了网络对攻击和故障的抵抗能力。
[0008] 5.安全与匿名性:得益于分布式系统的属性,加密货币在网络层面展现了高度的安全性能,因为在大多数情况下,篡改已记录的历史数据需掌控大量节点,这在大规模的去中心化网络中极其困难。同时,尽管交易明细在区块链上公开可查,但借助先进的公钥密码学技术,加密货币能提供一定的匿名保护或假名交易特性。
[0009] 6.激励机制:为了激励节点积极参与交易验证、新区块生成以及网络安全保障,加密货币网络引入了一套完善的经济激励机制。当全节点成功创建新区块时,将获得新发行的加密货币作为奖励,这种正向反馈机制有力推动了网络的自我稳定与持续发展。
[0010] 由于区块链去中心化的特性,在其中的各种加密货币交易行为不受约束和监管,也给货币政策和经济稳定性带来了挑战。因此,对加密货币进行主动监管是保护多方安全的重要措施,通过区块链进行分析以理解其网络拓扑和运行逻辑,在出现安全威胁或违法行为时进行追溯和处理。
[0011] 由于加密货币在交易层面具有匿名性,需要在网络流量层面去挖掘信息辅助监管。加密货币的区块链网络中主要存在两种具有不同行为特征的网络节点:全节点和轻节点。二者具有以下区别:全节点存储了区块链网络的全部历史数据,即自创世区块开始至今的每一个区块及其包含的所有交易记录,而轻节点不存储完整的区块链数据,仅保存区块链的区块头信息或其他必要的最小数据集;全节点执行了区块链的全部规则和协议,能够独立验证每一笔交易和区块的有效性,无需依赖其他节点,而轻节点通常需要依赖全节点提供的服务来验证交易,它们不能独立验证交易和区块的完整合法性;由于需要存储整个区块链,全节点需要较大的硬盘空间、足够的计算能力以及稳定的网络连接,以便持续同步和验证新的区块,轻节点所需资源较少,适合在移动设备或低配计算机上运行,降低了进入门槛。综上所述,全节点提供完全的功能和最高的安全性,但需要更多的硬件资源;而轻节点牺牲了部分独立性和安全性,换来了更低的运行成本和更高的便捷性,适用于普通用户或资源受限环境下的交易验证和查询。对监管平台而言,实现加密货币节点类别挖掘,筛选出其中的轻节点,有助于增大监管平台的有效监管范围比例。
[0012] 基于以上全节点与轻节点的自身特性,其在加密货币网络中的行为也会产生明显的差别。然而,现有的技术普遍采用制定规则的方式进行网络节点类型的判断和挖掘,如节点在线时间记录或通信特定字段识别,这些启发式的规则并不能完全反映二者的根本差异,因此会产生多种规则判断冲突或无法判断的情况。使用机器学习结合复合特征,可以更准确的拟合全节点和轻节点的内在特征,高效率助力节点类型挖掘,并为加密货币的监管提供强有力的支持。
具体实施方式
[0029] 下面结合附图对本发明方法做进一步详细说明。
[0030] 如图2所示,一种基于复合特征节点类别挖掘的加密货币辅助监管方法,包括以下步骤:
[0031] 步骤1:流量解析。
[0032] 具体地,利用网关抓取加密货币网络中流量数据进行处理分析。每个数据流量包都包含大量的信息,需要从中筛选出所需重要信息。因此,针对节点类别挖掘问题,根据流量格式获取节点IP地址和其作为源IP发送流量的消息类型。
[0033] 以加密数字货币为例,其在区块链网络中的流量共包含27种消息。下面列举几种核心的消息类型:
[0034] 1)version:版本。当一个节点创建一个外向连接时,它将立即公布自己的正在使用的协议版本。远程节点将回应其版本。在两个节点交换完版本之前,无法进行进一步的通信。
[0035] 2)verack:verack消息是对version的回复。该消息只有一个报文头。
[0036] 3)addr:地址。提供网络上已知节点的信息。节点可通过该消息发送一个地址列表给其他节点。
[0037] 4)inv:节点通过此消息可以宣告已知的交易信息。这个消息可以主动发送,也可以用于应答getblocks消息。
[0038] 5)getdata:获取数据。用于响应inv,检索特定交易的内容,通常在收到inv包后,过滤已知交易信息后发送。
[0039] 为了区别不同的消息类型,需要对抓取的流量进行解析。图3表示了加密货币的流量包结构,包含消息首部和数据载荷。其中,长度为12字节的指令标识中表示当前流量的消息类型;魔法数用于在信息流状态未知时查找下一条信息;数据长度能够表示数据载荷的长度;校验和用于保证消息的完整性;数据载荷中包含了此消息的具体内容。
[0040] 因此,从抓取的流量包中能够获取参与交易验证的节点的IP和其发送的各消息类型。
[0041] 步骤2:消息统计。
[0042] 具体地,经过一段时间的流量抓取和流量解析,从节点IP地址及其统计数据中提取所有节点IP地址,形成集合CIP。
[0043] 将同一节点关联的流量汇总,统计出其在此段时间内每种消息类型出现的次数Ni,所有节点的消息类型统计构成了集合NIP。
[0044] 基于每种消息具有不同的作用,消息类型的统计量能够反映不同节点的行为特点,从而作为其节点类型判断的复合特征。
[0045] 步骤3:外部系统辅助。
[0046] 具体地,在利用复合特征进行节点类别挖掘之前,首先使用已有的外部系统进行类别判断,获得一部分节点的类别标签。
[0047] 其中,外部系统是利用节点的时空行为特征和协议特征进行粗粒度判断。由于外部系统的局限性,其并不能完全准确的判断节点类别,同时对于一部分行为特征不明显的节点将出现无法判断的情况。因此,经过外部系统辅助决策,对集合CIP的所有IP地址,给出初步判断结果并划分为三个子集:CSPV、CFULL和COTHER,分别表示轻节点集合、全节点集合和无法判断集合。
[0048] 步骤4:特征工程。
[0049] 具体地,特征的构建和预处理,对于之后的模型训练有重要影响,是机器学习领域中不可缺少的重要步骤。本步骤中,包括特征选择和特征缩放。
[0050] 首先通过计算特征之间的统计指标(如相关性、方差、信息增益等)来评估特征的重要性。然后选择最重要的特征,以提高模型性能、降低计算成本、减少过拟合。之后,使用归一化将特征数据缩放到特定的范围,即最小‑最大缩放(Min‑Max Scaling),归一化后的特征Xnorm表示为: 其中X是原始特征,Xmax是特征的最大值,Xmin是特征的最小值。
[0051] 经过特征工程处理,将每个IP地址对应的统计数据转化为其特征向量,对应于步骤3中划分的三个子集,其节点特征子集为XSPV、XFULL和XOTHER。
[0052] 步骤5:模型训练。
[0053] 具体地,通过对节点的复合特征进行编码和特征工程,获得能够隐性表示节点性质的特征向量,结合机器学习方法进行训练,获得具有类别预测能力的高性能模型,实现自动化、规模化预测。
[0054] 针对最终将节点类别划分为轻节点和全节点,采用聚类的思想,对节点进行类别挖掘,设定类别数为2。
[0055] 将已经过初步判断的轻节点和全节点作为训练集,其对应的特征融合为训练集特征Xtrain=XSPV∪XFULL,训练集标签为Ctrain=CSPV∪CFULL。选择聚类模型M,根据特征集合Xtrain训练该模型。
[0056] 训练过程包括:
[0057] 首先,从特征集合Xtrain中随机选取2个IP的特征向量x1,x2作为初始聚类中心,记为 表示第 0次更新的2个聚类中心,并形成2个对应类别集合
[0058] 然后,计算Xtrain中其他节点i的特征向量xi分别到聚类中心 和 的距离(如欧几里得距离),得到di1,di2。
[0059] 比较距离di1,di2的大小,若di1
[0060] 之后,计算集合C1中到所有IP特征向量的平均距离最小的点 并将其作为类别1新的聚类中心,C2同理,得到类别2新的聚类中心。
[0061] 复上述过程,直到聚类中心 收敛,收敛的判定规则为新聚类中心与上一轮聚类中心的距离小于预定值ε。
[0062] 最后,根据Ctrain评估模型M的聚类准确性,并根据结果调节模型。
[0063] 尝试训练所有的聚类模型,选择表现最好的模型作为算法最终模型M,并明确两个聚类中心μSPV,μFULL,分别表示轻节点和全节点的聚类中心。
[0064] 步骤6:模型预测。
[0065] 经过训练和调优得到具有判别能力的机器学习模型M,使用模型对外部系统初步判断中无法判断的IP地址集合COTHER进行聚类,更新轻节点和全节点的集合CSPV,CFULL。
[0066] 具体地,模型预测包括以下步骤:
[0067] 第一步:计算特征集合XOTHER中每个节点i的特征向量xi分别到两个聚类中心μSPV、μFULL的距离(如欧几里得距离),得到di1、di2。
[0068] 第二步:比较距离di1,di2的大小,若di1
[0069] 重复上述过程,直到将所有IP添加至两个集合中。
[0070] 将模型预测结果重写入外部辅助判断系统,并对轻节点对应的IP进行标记,纳入重点监测和监管目标名单,为加密货币监管提供方向、缩小范围。