一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于分类器的数字货币交易溯源方法和装置

2022-04-16 18:27:09 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,特别是指一种基于分类器的数字货币交易溯源方法和装置。


背景技术:

2.作为区块链思想的最初实现,以数字货币为首的数字货币发展迅速,交易规模不断攀升,同时,数字货币的去中心化特点和匿名性质,以及它允许用户在世界任何地方即时发送资金的便利性,为犯罪分子进行洗钱、黑市交易等违法行为提供了可乘之机,因此对非法数字货币,尤其是数字货币的交易溯源技术的研究十分有必要。
3.现有的数字货币交易溯源技术主要分为两个研究方向:交易层溯源技术和网络层溯源技术。交易层溯源技术是指通过对交易记录的分析,发现匿名交易地址之间的某种关系,如:“共同输入,找零地址”,利用启发式对可能属于同一实体的匿名地址进行聚类,或通过观察交易行为,实现符合特定模式的交易聚类。这种溯源技术只能实现同一实体的地址聚类,无法获得该实体的真实身份信息。
4.网络层溯源技术是指通过搜集数字货币网络层流量的信息,分析交易在网络中的传播路径,建立交易与产生该交易的节点ip之间的映射。
5.现有技术的一种利用无监督学习的网络层溯源技术中,基于路由攻击的方法,利用as级别的监听者,以一种不被察觉的方式截取目标节点发送的数据包,并采用了一种无监督学习算法-隔离森林,对目标节点创建的交易进行检测。实验表明,截取了50%的目标节点连接的as级攻击者可以以90%的召回率和0.003%的假阳性率对目标节点创建的交易进行去匿名化。
6.在现有的数字货币溯源技术中,交易层溯源技术仅实现可能属于同一实体的交易地址聚类,无法获得数字货币匿名用户的身份信息,去匿名化程度不够;而基于无监督学习的溯源技术主要利用网络流量分析和异常检测算法识别节点创建的交易,也存在溯源精度低的问题,另外检测数据中可能存在多种异常行为,这种目标行为之外的异常作为噪声数据,基于单纯的无监督学习的检测算法无法将其与目标行为进行区分。


技术实现要素:

7.有鉴于此,本发明的目的在于提出一种基于分类器的数字货币交易溯源方法和装置,采用基于有监督学习技术训练的分类器进行溯源识别,相比于现有的基于无监督学习的溯源技术,能提高数字货币交易溯源精度。
8.基于上述目的,本发明提供一种基于分类器的数字货币交易溯源方法,包括:
9.截获目标节点与其对等节点之间发送或接收的数字货币交易流量;
10.针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;
11.针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;
12.其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
13.可选的,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记,具体包括:
14.针对预先采集的所述目标节点发送或接收的数字货币交易流量所涉及的每笔数字货币交易,统计出所述节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量作为训练样本;
15.将得到的所有训练样本组成样本集合后,使用至少两种不同的无监督异常检测算法对所述样本集合进行异常检测,分别得到检测出的异常集合;
16.将得到的异常集合取交集,将交集中的训练样本标记为正样本;
17.通过无监督学习算法计算各训练样本的输出概率,并确定出正样本的输出概率中的最小值;
18.对于其它训练样本,若该训练样本的输出概率小于所述最小值,则将该训练样本标记为负样本;否则,标记为正样本。
19.可选的,所述统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量,具体包括:
20.构建的该笔数字货币交易的特征向量包括:inv_num,getdata_num,ratio,sum;
21.其中,inv_num,getdata_num分别表示针对该笔数字货币交易统计出的目标节点发送的交易广播消息的数量、接收的交易请求消息的数量,ratio表示inv_num与getdata_num之比,sum表示inv_num与getdata_num之和。
22.进一步,在所述构建该笔数字货币交易的特征向量后,还包括:
23.对所述特征向量进行扩充:
24.将通过无监督学习算法计算出的所述特征向量的输出概率扩充到所述特征向量后,得到扩充后的特征向量。
25.可选的,所述基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建,具体为:
26.将该笔数字货币交易的扩充后的特征向量输入到预先训练得到的分类器;
27.根据所述分类器的输出,溯源出该笔数字货币交易是否为所述目标节点创建的。
28.可选的,在所述利用正、负样本对所述分类器进行训练之前,还包括:
29.对所述训练样本进行扩充:
30.将通过无监督学习算法计算出的所述训练样本的输出概率扩充到所述训练样本后,得到扩充后的训练样本。
31.可选的,所述分类器是利用训练样本基于有监督学习技术预先训练得到的,具体为:
32.所述分类器是利用利用扩充后的训练样本基于有监督学习技术预先训练得到的。
33.本发明还提供一种基于分类器的数字货币交易溯源装置,包括:
34.流量获取模块,用于截获目标节点与其对等节点之间发送或接收的数字货币交易流量;
35.特征向量构建模块,用于针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;
36.交易溯源模块,用于针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;
37.其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
38.本发明还提供一种电子设备,包括中央处理单元、信号处理和存储单元,以及存储在信号处理和存储单元上并可在中央处理单元上运行的计算机程序,其中,所述中央处理单元执行如上所述的基于分类器的数字货币交易溯源方法。
39.本发明的技术方案中,截获目标节点发送或接收的数字货币交易流量;针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
40.由于基于广播与请求消息数量构建的特征向量,可以反映一个节点创建的交易与转发的交易之间的显著差异,因此利用构建的特征向量,以及基于监督学习技术预先训练得到的分类器进行节点创建交易与转发交易之间的识别,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
41.本发明技术方案针对目标节点,能够从该节点广播出的交易中识别出目标节点自身创建的交易,实现交易的去匿名化。利用若干个无监督异常检测算法从采集的样本集合中识别可疑交易组成可疑交易集合,并通过对可疑交易集合求交集的方式标记正样本,最后对样本集合进行过采样来构造训练集,以此来训练一个半监督学习模型,使用xgboost算法解决交易的二分类问题,从目标节点的网络层流量中识别其自身创建的交易,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
42.进一步,本发明技术方案利用无监督表示学习进行特征工程,将原始特征空间在无监督算法下的输出概率作为一个新的特征值,并将其扩充到最终的特征向量中,以此来增强特征向量对样本的表示能力。
43.进一步,本发明技术方案采用“无监督 有监督”的技术架构,能更进一步提高数字货币交易溯源精度。
附图说明
44.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1为现有技术的数字货币网络中交易广播与请求过程的示意图;
46.图2为本发明实施例提供的基于分类器的数字货币交易溯源方法流程图;
47.图3为本发明实施例提供的截获数字货币交易流量的示意图;
48.图4为本发明实施例提供的一种分类器训练方法流程图;
49.图5为本发明实施例提供的一种基于分类器的数字货币交易溯源装置的内部结构框图;
50.图6为本发明实施例提供的一种基于分类器的数字货币交易溯源方法的实验结果示意图;
51.图7为本发明实施例提供的一种电子设备硬件结构示意图。
具体实施方式
52.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
53.需要说明的是,除非另外定义,本发明实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
54.本发明的发明人考虑到,当节点进行数字货币交易,即将本节点拥有的数字货币发送到接收方的数字货币地址时,需要在对等网络中广播这笔交易,网络中的其它节点会对这笔交易进行转发和验证,最终这笔交易被添加到区块链“账本”中。
55.如图1所示,当节点创建或收到一笔新的交易后,会将该笔交易的哈希值包含在交易广播消息(比如inv消息)中发送给网络中的对等节点,首次接收到该交易的对等节点会返回包含该笔交易的哈希值的交易请求消息(比如getdata消息)来请求完整交易信息,最后,节点会发送交易响应信息(比如tx消息)来响应来自对等节点的交易请求消息。
56.通过对数字货币流量的分析,发明人观察到:相比于转发交易,节点自身创建的交易的传播模式更为独特,因此,本发明技术方案利用节点创建交易与转发交易在广播与请求消息数量上的显著差异构建特征向量;
57.也就是说,相比于转发交易,数字货币节点自身创建交易在网络层中的异常表现,这种异常主要体现在交易广播消息和请求消息的数量上,因此,本发明技术方案基于这种异常表现,从网络流量中提取特征值,构建特征向量与空间。
58.基于上述的分析,本发明的技术方案中,截获目标节点发送或接收的数字货币交易流量;针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
59.由于基于广播与请求消息数量构建的特征向量,可以反映创建的交易与转发的交易之间的显著差异,因此利用构建的特征向量,以及基于监督学习技术预先训练得到的分类器进行创建的交易与转发的交易之间的识别,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
60.本发明技术方案针对目标节点,能够从该节点广播出的交易中识别出目标节点自身创建的交易,实现交易的去匿名化。利用若干个无监督异常检测算法从采集的样本集合中识别可疑交易组成可疑交易集合,并通过对可疑交易集合求交集的方式标记正样本,最后对样本集合进行过采样来构造训练集,以此来训练一个半监督学习模型,使用xgboost算法解决交易的二分类问题,从目标节点的网络层流量中识别其自身创建的交易,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
61.进一步,本发明技术方案还可通过无监督学习算法计算特征向量的输出概率,并对所述特征向量进行扩充,从而通过无监督表示学习增强特征向量的表示;采用“无监督 有监督”的技术架构,能更进一步提高数字货币交易溯源精度。
62.下面结合附图详细说明本发明实施例的技术方案。
63.本发明实施例提供的一种基于分类器的数字货币交易溯源方法,流程如图2所示,包括如下步骤:
64.步骤s201:截获目标节点发送或接收的数字货币交易流量。
65.具体地,可以如图3所示,依赖as(自治域)或ixp(互联网交换中心)级别的攻击者捕获数字货币交易流量,他们在数字货币网络(比如比特币网络)中担任托管节点的主机之间的中间人角色,可以在不被察觉的情况下截获数字货币网络(比如比特币网络)中位于不同as中的数字货币节点(比如比特币节点)之间的流量;即攻击者在截获目标节点与其部分对等节点连接的情况进行流量采集。
66.也就是说,可以在目标节点所在自治域的入口或出口网关处,截获目标节点与其对等节点之间发送或接收的数字货币交易流量。
67.步骤s202:针对截获的流量所涉及的每笔数字货币交易,构建该笔数字货币交易的特征向量。
68.本步骤中,针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量。
69.具体地,针对截获的流量,分析流量中出现的数字货币消息类型,主要关注三种消息类型:交易广播消息、交易请求消息,tx消息;并从这些类型的消息中解析出交易的哈希
值。相同哈希值的消息属于同一笔数字货币交易。从消息中解析出交易的哈希值后,建立该交易的哈希值与该消息的对应关系;基于交易的哈希值与消息的对应关系,可以统计出所述流量中每一个交易的哈希值所对应的目标节点发送的交易广播消息的数量,以及每一个交易的哈希值所对应的目标节点接收的交易请求消息的数量,即针对截获的流量所涉及的每笔数字货币交易,统计出所述目标节点发送的交易广播消息、接收的交易请求消息的数量。
70.对于一笔数字货币交易,节点发送的交易广播消息数量inv_num,相比于转发的交易,节点会将自身创建的交易广播给更多的对等节点;
71.对于一笔数字货币交易,节点接收的交易请求消息数量getdata_num,对等节点只会对自己从未收到过的交易发送交易请求消息,相比于转发的交易,更多的对等节点会向节点请求其自身创建的交易。
72.对于一笔数字货币交易,节点收到的交易请求消息数量getdata_num与发送的交易广播消息数量inv_num之比ratio,即一笔交易的广播数量与请求数量之比,相比于转发交易,节点自身创建的交易应具有更高的请求广播比,即请求/广播。
73.对于一笔数字货币交易,节点发送的交易广播消息数量与收到的交易请求消息数量之和sum,相比于转发的交易,节点自身创建的交易具有更高的消息数量之和。
74.由此,在示例性的实施例中,基于针对一笔数字货币交易统计出的目标节点发送的交易广播消息、接收的交易请求消息的数量,构建的该笔数字货币交易的特征向量可以包括:inv_num,getdata_num,ratio,sum;
75.其中,inv_num,getdata_num分别表示针对该笔数字货币交易统计出的目标节点发送的交易广播消息的数量、接收的交易请求消息的数量,ratio表示inv_num与getdata_num之比,sum表示inv_num与getdata_num之和。
76.即构建的特征向量x=[inv_num,getdata_num,ratio,sum];
[0077]
其中n表示所述流量涉及的数字货币交易的数量,d表示特征向量x中的特征值数量,表示n
×
d大小的实数矩阵。
[0078]
作为一种更优的实施方式,还可对所述特征向量进行扩充:利用无监督表示学习,将特征向量x通过无监督学习算法(比如,隔离森林isolation forest算法)计算的输出概率score(x)扩充到特征向量中,得到扩充后的特征向量x_new;也就是说,将通过无监督学习算法计算出的所述特征向量的输出概率扩充到所述特征向量后,得到扩充后的特征向量。
[0079]
即扩充后的特征向量x_new=[x,score(x)]=[inv_num,getdata_num,ratio,sum,score(x)];
[0080][0081]
步骤s203:基于构建的数字货币交易的特征向量,以及预先训练得到的分类器,进行数字货币交易的溯源。
[0082]
本步骤中,针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建,即识别该笔数字货币交易是否为所述目标节点创建,从而实现交易溯源。
[0083]
具体地,针对每笔数字货币交易,可以将该笔数字货币交易的特征向量输入到预先训练得到的分类器;根据分类器的输出,溯源该笔数字货币交易是否为所述目标节点创建,还是所述目标节点转发的,即识别该笔数字货币交易是否为所述目标节点创建,还是所述目标节点转发的。
[0084]
作为一种更优的实施方式,可以将该笔数字货币交易的扩充后的特征向量输入到预先训练得到的分类器;根据所述分类器的输出,溯源出该笔数字货币交易是否为所述目标节点创建的,还是所述目标节点转发的,即识别该笔数字货币交易是否为所述目标节点创建,还是所述目标节点转发的。
[0085]
其中,上述的分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从数字货币网络中的所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。具体训练方法流程如图4所示,包括如下步骤:
[0086]
步骤s401:从数字货币网络中采集所述目标节点发送或接收的数字货币交易流量;
[0087]
本步骤中,可以从数字货币网络中的所述目标节点所在自治域的入口或出口网关处,采集该节点与其对等节点之间发送或接收的数字货币交易流量。
[0088]
步骤s402:针对采集的流量所涉及的每笔数字货币交易,构建该笔数字货币交易的特征向量作为训练样本;
[0089]
本步骤中,针对采集的流量所涉及的每笔数字货币交易,统计所述节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量。
[0090]
在示例性的实施例中,基于针对一笔数字货币交易统计出的所述节点发送的交易广播消息、接收的交易请求消息的数量,构建的该笔数字货币交易的特征向量与上述步骤s202中构建的特征向量类似,可以包括:inv_num,getdata_num,ratio,sum;其中,inv_num,getdata_num分别表示针对该笔数字货币交易统计出的所述节点发送的交易广播消息的数量、接收的交易请求消息的数量,ratio表示inv_num与getdata_num之比,sum表示inv_num与getdata_num之和。
[0091]
作为一种更优的实施方式,还可对构建的特征向量进行扩充:利用无监督表示学习,将特征向量x通过无监督学习算法(比如,隔离森林isolation forest算法)计算出输出概率score(x),将计算出的输出概率扩充到特征向量中,得到扩充后的特征向量x_new;也就是说,将通过无监督学习算法计算出的所述特征向量的输出概率扩充到所述特征向量后,得到扩充后的特征向量。
[0092]
步骤s403:将得到的所有训练样本组成样本集合后,使用至少两种不同的无监督异常检测算法对所述样本集合进行异常检测,分别得到检测出的异常集合,即可疑交易集合。
[0093]
在一个示例性的实施例中,使用了三种基于无监督学习算法的无监督异常检测算法对所述样本集合进行异常检测;三种无监督异常检测算法可以是分别基于隔离森林、单分类支持向量机、自编码器三种无监督学习算法的;
[0094]
基于无监督学习算法的无监督异常检测算法对样本集合进行检测的过程为:使用
所述无监督学习算法计算所述样本集合中各训练样本的输出概率;将输出概率高于设定阈值的训练样本组成异常集合。
[0095]
使用三种不同的无监督异常检测算法对所述样本集合进行异常检测后,分别得到检测出的三个异常集合。
[0096]
步骤s404:将得到的异常集合取交集,将交集中的训练样本标记为正样本。
[0097]
步骤s405:通过无监督学习算法计算各训练样本的输出概率,并确定出正样本的输出概率中的最小值。
[0098]
本步骤中,针对步骤s402中构建的每笔数字货币交易的特征向量,将作为训练样本的特征向量通过无监督学习算法(比如,隔离森林isolation forest算法)计算出输出概率。
[0099]
进而,针对上述步骤s404中标记的正样本,确定出正样本的输出概率中的最小值a。
[0100]
步骤s406:将其它训练样本的输出概率与确定出的最小值a进行比较;根据比较结果标记所述训练样本为正样本或负样本。
[0101]
本步骤中,对于除正样本之外的其它训练样本,若该训练样本的输出概率小于所述最小值a,则将该训练样本标记为负样本;否则,标记为正样本。
[0102]
步骤s407:利用正、负样本对所述分类器进行训练。
[0103]
本步骤中,将训练样本输入到所述分类器,根据分类器的输出以及所述训练样本标记的正、或负样本,对分类器进行参数调整。
[0104]
作为一种更优的实施方式,还可对作为训练样本的特征向量进行扩充:利用无监督表示学习,将特征向量通过无监督学习算法(比如,隔离森林isolation forest算法)计算出输出概率,将计算出的输出概率扩充到所述特征向量中,得到扩充后的特征向量;亦即,将计算出的输出概率扩充到所述训练样本的特征空间后,得到特征空间扩充后的训练样本。
[0105]
基于扩充后的训练样本对分类器进行训练时,将特征空间扩充后的训练样本输入到所述分类器,根据分类器的输出以及所述扩充后的训练样本标记的正、或负样本,对分类器进行参数调整。
[0106]
以此来训练一个半监督学习模型的分类器,使用xgboost算法解决交易的二分类问题。
[0107]
基于上述的基于分类器的数字货币交易溯源方法,本发明实施例提供的一种基于分类器的数字货币交易溯源装置,其内部结构如图5所示,包括:流量获取模块501、特征向量构建模块502、交易溯源模块503;
[0108]
其中,流量获取模块501用于截获目标节点发送或接收的数字货币交易流量;
[0109]
特征向量构建模块502用于针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;
[0110]
更优地,特征向量构建模块502还可对所述特征向量进行扩充:将通过无监督学习算法计算出的所述特征向量的输出概率扩充到所述特征向量后,得到扩充后的特征向量。
[0111]
交易溯源模块503用于针对每笔数字货币交易,基于该笔数字货币交易的特征向
量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;
[0112]
更优地,交易溯源模块503可以针对每笔数字货币交易,将该笔数字货币交易扩充后的特征向量,输入到预先训练得到的分类器,根据所述分类器的输出溯源该笔数字货币交易是否为所述目标节点创建。
[0113]
其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从数字货币网络中的所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
[0114]
进一步,本发明实施例提供的一种基于分类器的数字货币交易溯源装置中还可包括:分类器训练模块504;
[0115]
分类器训练模块504用于针对预先从数字货币网络中采集的所述目标节点发送或接收的数字货币交易流量所涉及的每笔数字货币交易,统计出所述节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量作为训练样本;将得到的所有训练样本组成样本集合后,使用至少两种不同的无监督异常检测算法对所述样本集合进行异常检测,分别检测出异常集合;将得到的异常集合取交集,将交集中的训练样本标记为正样本;通过无监督学习算法计算各训练样本的输出概率,并确定出正样本的输出概率中的最小值;对于其它训练样本,若该训练样本的输出概率小于所述最小值,则将该训练样本标记为负样本;否则,标记为正样本;利用标记了正、负样本的训练样本对所述分类器进行训练。
[0116]
更优地,分类器训练模块504还可对所述训练样本进行扩充:将通过无监督学习算法计算出的所述训练样本的输出概率扩充到所述训练样本后,得到扩充后的训练样本;并在训练分类器时,利用扩充后的训练样本对所述分类器进行训练。
[0117]
上述的基于分类器的数字货币交易溯源装置中各模块的功能的实现方法可参考上述图2、4所示流程各步骤中的方法,此处不再赘述。
[0118]
本发明的基于分类器的数字货币交易溯源技术,不需要部署大量的探针节点,并且几乎不需要资金成本,对计算机与网络资源的消耗非常低。该技术利用节点自身创建交易与转发交易在流量和网络消息数量上的差异构建特征空间,并通过无监督表示学习增强特征向量的表示,使用本发明中的溯源方法,即使只采集目标节点与其一半或者更少对等节点之间的连接下的流量,也能以85%以上的精确率和100%的召回率对目标节点创建的交易进行识别,如图6所示。其中,本方法的评估指标定义如下:
[0119][0120][0121][0122]
图7示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备
可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
[0123]
处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的基于分类器的数字货币交易溯源方法。
[0124]
存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
[0125]
输入/输出接口1030用于连接输入/输出模块,可以与非线性接收机相连,从非线性接收机接收信息,实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0126]
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0127]
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
[0128]
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0129]
本发明的技术方案中,截获目标节点发送或接收的数字货币交易流量;针对截获的流量所涉及的每笔数字货币交易,统计所述目标节点发送的交易广播消息、接收的交易请求消息的数量,并根据统计的消息的数量构建该笔数字货币交易的特征向量;针对每笔数字货币交易,基于该笔数字货币交易的特征向量,以及预先训练得到的分类器,溯源该笔数字货币交易是否为所述目标节点创建;其中,所述分类器是利用训练样本基于有监督学习技术预先训练得到的;其中,所述训练样本是根据预先从所述目标节点采集的发送或接收的数字货币交易流量构建的,并根据至少两种不同的无监督异常检测算法的检测结果进行正、负样本的标记。
[0130]
由于基于广播与请求消息数量构建的特征向量,可以反映创建的交易与转发的交易之间的显著差异,因此利用构建的特征向量,以及基于监督学习技术预先训练得到的分类器进行创建的交易与转发的交易之间的识别,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
[0131]
本发明技术方案针对目标节点,能够从该节点广播出的交易中识别出目标节点自身创建的交易,实现交易的去匿名化。利用若干个无监督异常检测算法从采集的样本集合中识别可疑交易组成异常集合,并通过对异常集合求交集的方式标记正样本,最后对样本
集合进行过采样来构造训练集,以此来训练一个半监督学习模型,使用xgboost算法解决交易的二分类问题,从目标节点的网络层流量中识别其自身创建的交易,相比于现有的基于无监督学习的溯源技术,能大大提高数字货币交易溯源精度。
[0132]
进一步,本发明技术方案利用无监督表示学习进行特征工程,将原始特征空间在无监督算法下的输出概率作为一个新的特征值,并将其扩充到最终的特征向量中,以此来增强特征向量对样本的表示能力。
[0133]
进一步,本发明技术方案采用“无监督 有监督”的技术架构,能更进一步提高数字货币交易溯源精度。
[0134]
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0135]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0136]
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
[0137]
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0138]
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献