CN115567224A - 一种用于检测区块链交易异常的方法及相关产品 - Google Patents

一种用于检测区块链交易异常的方法及相关产品 Download PDF

Info

Publication number
CN115567224A
CN115567224A CN202211215287.0A CN202211215287A CN115567224A CN 115567224 A CN115567224 A CN 115567224A CN 202211215287 A CN202211215287 A CN 202211215287A CN 115567224 A CN115567224 A CN 115567224A
Authority
CN
China
Prior art keywords
transaction
network
nodes
node
graph
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211215287.0A
Other languages
English (en)
Inventor
李光松
王永娟
于刚
薛昊原
张晓琦
陆思奇
葛爱军
袁庆军
高承实
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Information Engineering University of PLA Strategic Support Force
Original Assignee
Information Engineering University of PLA Strategic Support Force
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Information Engineering University of PLA Strategic Support Force filed Critical Information Engineering University of PLA Strategic Support Force
Priority to CN202211215287.0A priority Critical patent/CN115567224A/zh
Publication of CN115567224A publication Critical patent/CN115567224A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种用于检测区块链交易异常的方法及相关产品,所述方法包括:获取区块链交易图;从所述区块链交易图中提取交易网络的结构特征和交易数据特征;将所述交易网络的结构特征和交易数据特征合并,以得到合并特征集;以及利用异常检测模型对所述合并特征集进行检测,以确定区块链中是否存在交易异常行为。根据本发明的方案,解决了目前对区块链交易异常行为的检测方法效果较差的问题。

Description

一种用于检测区块链交易异常的方法及相关产品
技术领域
本发明一般地涉及区块链技术领域。更具体地,本发明涉及一种用于检测区块链交易异常的方法、用于检测区块链交易异常的设备和计算机可读存储介质。
背景技术
区块链是一种分布式加密账本,为非信任成员可以安全地进行交易提供平台,使得去中心化、低成本、点对点的交易成为可能,在金融、医疗、物流、物联网等领域得到了广泛应用。区块链使用分布式存储和集体维护来实现去中心化,使用SHA-256等非对称加密算法和可靠存储技术完成信用背书,保障了***的开源、公开和安全。然而,由于区块链具有巨大的流通市值、庞大的用户量和账户匿名性等特点,导致区块链上的交易频繁受到盗窃等异常行为的威胁。
区块链最成功的实践是以比特币为代表的加密数字货币。加密数字货币也越来越多地进入金融市场。加密数字货币具有匿名性的特点,不需要用户进行实名认证,因此越来越多的犯罪分子将加密货币作为犯罪工具,实施网络和金融犯罪。
区块链交易记录被分布式存储在公开的链上,这为研究和检测区块链的异常交易提供了相当大的优势,然而区块链的巨大容量对进一步探索它提出了挑战,由于区块链***中庞大的用户和交易数量,对异常的手动检测是不可能的,这也给区块链交易异常行为的检测带来巨大的难度。
针对区块链异常交易,目前普遍的检测方式是基于特征的分类方法、基于聚类的检测方法、基于统计分析模型的检测方法等。通过对比特币交易中的非法地址、交易金额的偏差、交易速度的异常等行为进行检测,来判别是否发生异常。但是这些区块链交易异常检测方法,主要聚焦于对地址的识别分类、异常金额的判断等问题,其检测效果并不理想。
鉴于此,如何解决目前对区块链交易异常行为的检测方法效果较差的问题,对于提升区块链网络交易的安全性具有重要意义。
发明内容
为解决上述一个或多个技术问题,本发明提出从区块链交易图中提取交易网络的结构特征,并将结构特征加入到数据特征中一同进行交易异常行为检测,从而有效提升了区块链交易异常行为检测的准确性。为此,本发明在如下的多个方面中提供方案。
在第一方面中,本发明提供了一种用于检测区块链交易异常的方法,包括:获取区块链交易图;从所述区块链交易图中提取交易网络的结构特征和交易数据特征;将所述交易网络的结构特征和交易数据特征合并,以得到合并特征集;以及利用异常检测模型对所述合并特征集进行检测,以确定区块链中是否存在交易异常行为。
在一个实施例中,所述区块链交易图中包括交易的节点、边和标记信息,所述边包括交易之间的比特币流转信息,所述标记信息包括交易的属性,其中从所述区块链交易图中提取交易网络的结构特征和交易数据特征包括:根据网络表示方法从所述区块链交易图中提取交易网络的结构特征;以及从所述区块链交易图中的节点、边和标记信息中提取交易数据特征。
在一个实施例中,所述根据网络表示方法从所述区块链交易图中提取交易网络的结构特征包括:基于深度游走的网络表示学习算法对所述区块链交易图进行特征提取,以获取交易网络的结构特征;和/或使用二阶属性网络嵌入所述区块链交易图进行特征提取,以获取交易网络的结构特征。
在一个实施例中,所述基于深度游走的网络表示学习算法对所述区块链交易图进行特征提取以获取交易网络的结构特征包括:将所述区块链交易图转换成网络图;利用设定的游走方式获得所述节点的采样序列;以及根据神经网络模型对所述节点的采样序列进行向量学习,以将获取的节点的表示向量作为交易网络的结构特征。
在一个实施例中,所述使用二阶属性网络嵌入所述区块链交易图进行特征提取以获取交易网络的结构特征包括:从相邻节点到目标节点的边的信息中提取节点和属性之间的关联信息,以得到结构信息矩阵和属性信息矩阵;以及利用神经网络模型分别对结构信息矩阵和属性信息矩阵进行学习,以获得节点的表示向量。
在一个实施例中,所述利用设定的游走方式获得所述节点的采样序列包括:利用随机游走的方式获得节点的采样序列;和/或基于交易总金额的有偏随机游走方式访问临近节点,以获得节点的采样序列。
在一个实施例中,所述基于交易总金额的有偏随机游走方式访问临近节点包括在起始节点之后以设定的概率访问临近节点;所述设定的概率包括:
Figure BDA0003875895300000031
其中A(vi,vj)表示节点vi和vj之间的交易量,
Figure BDA0003875895300000032
表示连接到节点vi的节点集。
在一个实施例中,所述利用异常检测模型对所述合并特征集进行检测以确定区块链中是否存在交易异常行为包括:将所述合并特征集进行标准化和采样处理,以得到均衡的交易特征数据集;以及利用异常检测模型对所述交易特征数据集进行检测,以确定是否发生交易异常。
在第二方面中,本发明还提供了一种用于检测区块链交易异常的设备,包括:处理器;以及存储器,其存储有用于检测区块链交易异常的计算机指令,当所述计算机指令由所述处理器运行时,使得设备执行根据前文及后文中一个或多个实施例所述的方法。
在第三方面中,本发明还提供了一种计算机可读存储介质,其上存储有用于检测区块链交易异常的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如前文及后文中一个或多个实施例所述的方法。
根据本发明的技术方案,可以通过对区块链交易的网络结构和属性信息进行学习,实现了从交易的邻域结构中挖掘隐含信息,并和数据信息一同进行异常检测,从而能够准确捕捉区块链网络结构特征的变化,有效提升了对交易异常检测的准确性。进一步,本发明中还对用于提取结构特征的网络表示方法进行改进,基于交易总结的有偏随机游走策略,实现了对交易量更大的交易节点的准确捕捉,有利于提升异常分析结果的准确性。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示意性示出根据本发明的实施例的检测区块链交易异常的场景的示意图;
图2是示意性示出根据本发明的实施例的用于检测区块链交易异常的方法的流程图;
图3是示意性示出根据本发明的实施例的获取交易网络的结构特征的方法的流程图;
图4是示意性示出根据本发明的实施例的使用二阶属性网络提取结构特征的示意图;
图5是示意性示出根据本发明的实施例的利用合并特征集进行异常检测的方法的流程图;
图6是示意性示出根据本发明的实施例的在不同间隔下交易的分布图;
图7是示意性示出根据本发明的实施例的采样前后数据集中正常和异常样本的分布示意图;
图8是示意性示出根据本发明的实施例的用于检测区块链交易异常的设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的区块链异常交易检测,主要是基于异常事件发生时的交易金额、交易地址等,仅对交易本身提取特征,即从交易数据中提取特征进行交易异常分析。这种方式实际上是将交易看做孤立的节点,只对交易本身提取特征,未对交易网络结构信息进行深入挖掘。发明人经过对交易网络结构在正常状态下和异常状态下的对比分析,发现区块链网络在正常运行状态下大致维持稳定状态,而当出现攻击异常时,网络结构会发生大的变化,通过对区块链网络结构的变化进行检测,可以有效提升交易异常检测的准确性。
基于此,本发明中从网络结构特征出发,使用网络表示学习来挖掘区块链交易网络结构中的隐藏信息,提取更准确和全面的特征集。将交易网络的结构特征和数据特征结合,综合对异常交易进行检测,从而有效提升了区块链中异常交易事件检测的准确性。
下面结合附图来详细描述本发明的具体实施方式。
图1是示意性示出根据本发明的实施例的检测区块链交易异常的场景 100的示意图。根据本发明的上下文,该场景100可以用于对区块链中各种交易异常事件的检测,例如攻击等。
如图1所示,本发明中区块链异常检测主要包括网络表示学习算法获取结构特征、特征合并和异常检测分析这三个部分。在一些实施例中,通过比特币交易数据集构成的交易图进行异常分析。该交易图中包含交易的节点、边和标记信息。其中节点表示交易,边包括交易之间的比特币流转信息,即某一表示交易的输出被下一交易作为输入而花费掉。标记信息包括交易的属性,例如“正常”、“异常”和“未知”这3种值。
使用网络表示学***均值。
与此同时,为了获得更加准确的检测效果,还可以对数据集进行预处理,例如使用随机过采样和合成少数过采样技术(Synthetic Minority Oversampling Technique,SMOTE两种过采样方法以及随机欠采样对不均衡的数据集进行处理。
接着,采用无监督和有监督的机器学习算法进行异常检测。在上述利用网络表示学习方法得到区块链交易节点的表示向量后,将其作为特征添加到原始数据的特征集中,并对数据集进行Z-score标准化和过采样及欠采样处理,以得到更均衡的交易特征数据集。在异常检测阶段,本发明中可以采用有监督和无监督算法来对特征集进行检测。有监督算法例如可以是逻辑回归(Logistic Regression,LR)、随机森林(Random Forest,RF)、自适应增强(Adaptive boosting,AdaBoost)、多层感知器(Multi-Layer Perception,MLP)和支持向量机(support vector machines,SVM),无监督算法则可以选用K-means。
图2是示意性示出根据本发明的实施例的用于检测区块链交易异常的方法200的流程图。
如图2所示,在步骤S201处,获取区块链交易图。在一些实施例中,该区块链交易图中包括交易的节点、边和标记信息。
在步骤S202处,从区块链交易图中提取交易网络的结构特征和交易数据特征。在一些实施例中,可以将根据交易图生成网络图,然后根据网络表示方法从区块链交易图中提取交易网络的结构特征,并从区块链交易图中的节点、边和标记信息中提取交易数据特征。
在步骤S203处,将交易网络的结构特征和交易数据特征合并,以得到合并特征集。在一些实施例中,将交易网络的结构特征和数据特征合并后,可以得到更加全面和准确的特征集,便于分析得到该交易网络中的隐藏信息,提升区块链交易异常行为检测地准确性。
在步骤S204处,利用异常检测模型对合并特征集进行检测,以确定区块链中是否存在交易异常行为。在一些实施例中,在利用网络表示学习方法得到区块链交易的结构特征后,将其作为特征添加到原始数据的特征集中,并对数据集进行Z-score标准化和过采样及欠采样处理,以得到更均衡的交易特征数据集。在异常检测阶段,本发明中可以采用5种有监督和1种无监督算法来对特征集进行检测。
图3是示意性示出根据本发明的实施例的获取交易网络的结构特征的方法300的流程图。需要说明的是获取交易网络的结构特征的方法300中步骤S301至步骤S303表示采用深度游走的方式获取交易网络的结构特征,步骤S304至步骤S305表示使用二阶属性网络获取结构特征的方式。因此,步骤S301至步骤S303与步骤S304至步骤S305为并列的两种结构特征的获取方式。
在一些实施例中,可以基于深度游走的网络表示学习算法对所述区块链交易图进行特征提取,以获取交易网络的结构特征,也可以使用二阶属性网络嵌入区块链交易图进行特征提取,以获取交易网络的结构特征。还可以同时综合采用两种方式分别进行特征提取,并对两种方式获取的结构特征分别进行检测,或加入同一特征集中进行异常检测。
如图3所示,在步骤S301处,将区块链交易图转换成网络图。在一些实施例中,通过网络图的结构表示交易中的信息。例如网络中节点和节点间的特征可以表示交易信息。
在步骤S302处,利用设定的游走方式获得节点的采样序列。在一些实施例中,可以采用多种不同的游走方式获取节点的采样序列,例如使用 3种网络表示学习算法深度游走(DeepWalk)、DeepWalk-Ba(DeepWalk Based on Amount)和二阶属性网络嵌入(Binarizedattributed network embedding,BANE)对比特币交易图进行特征提取,其中DeepWalk是一种学习网络节点潜在表示的算法。DeepWalk-Ba是DeepWalk算法的改进,将在下文中详细说明。BANE是一种属性化网络表示学习算法,在对节点和边进行学习的同时,对节点和边的属性信息也进行了分析。
在步骤S303处,根据神经网络模型对节点的采样序列进行向量学习,以将获取的节点的表示向量作为交易网络的结构特征。在一些实施例中,通过对交易网络的结构和属性信息进行学习,得到节点的表示向量。该节点的表示向量就可以表示交易网络的结构特征。
在一些实施例中,上述游走方式获得所述节点的采样序列包括利用随机游走的方式获得节点的采样序列;和/或基于交易总金额的有偏随机游走方式访问临近节点,以获得节点的采样序列。
当使用随机游走的方式获取节点的采样序列时,可以通过3个步骤实现。第一步网络生成:使用交易数据生成网络图G=(V,E),其中V代表顶点的集合,E代表边的集合。第二步利用随机游走获得节点采样序列。第三步使用skip-gram模型学习采样序列得到节点的表示向量。在随机游走的过程中,可以使用可重复访问节点的深度优先遍历算法随机游走(RandomWalk)遍历节点,对给定起始节点vi,从其邻居节点中随机选取节点vi+1进行访问并重复此过程,直到节点序列{vi,vi+1,…}达到一定的长度。在对网络中的每个节点获取到足够长度的序列后,对得到的节点序列集进行skip-gram向量学习,将离散的网络节点表示成向量,从而得到节点的表示向量。
当基于交易总金额的有偏随机游走方式访问临近节点时,可以在上述第二步中,起始节点vi之后,以设定的概率访问临近节点vj。其中设定的概率包括:
Figure BDA0003875895300000081
其中A(vi,vj)表示节点vi和vj之间的交易量,
Figure BDA0003875895300000082
表示连接到节点vi的节点集。
下面举例说明区块链交易网络的信息。区块链交易网络可以用 G=(V,E)表示,其中V={v1,v2,…,vn}为节点集合,vi,i∈{1,2,…,n}表示交易, E={(vi,vj)|i≠j}表示边的集合,(vi,vj)代表代币在两个交易之间的流转。使用Gl=(V,E,X,Y)表示具有节点特征和标记的网络,其中X∈R|v|×d为节点集合的特征矩阵,d为节点特征的维度,Y={y1,y2,…,yn}表示节点的标记集合, yi,i∈{0,1,…,n}的取值为0和1,0代表节点为正常交易,1代表节点为异常交易。区块链异常交易检测可以看做图分类任务,通过对训练数据集的学习,得到分类器f:
Figure BDA0003875895300000093
用来预测区块链交易的标记,对节点vi,若f(vi)=0,则vi为正常交易,若f(vi)=1,vi为异常交易。
采用DeepWalk-Ba算法提取结构特征的流程如下:
Figure BDA0003875895300000091
算法的输入为图G=(V,E)及表示学习的维度d、每个顶点的游走个数γγ、随机游走长度t等参数,输出为顶点表示矩阵φ∈R|V|×d,对输入的图 G=(V,E),将节点集V打乱为O,并从O中随机选取vi作为起始节点,根据有偏随机游走选取下一个节点,最后得到γ条最大长度为t的序列Wvi,再使用skip-gram学习节点的表达向量。
采用节点的有偏随机游走策略提取结构特征的算法如下:
Figure BDA0003875895300000092
Figure BDA0003875895300000101
对于游走序列walk的当前节点curr,其下一节点为根据交易总金额确定的离它最近的节点Vcurr
在一些实施例中,使用二阶属性网络嵌入所述区块链交易图进行特征提取时,在步骤S304处,从相邻节点到目标节点的边的信息中提取节点和属性之间的关联信息,以得到结构信息矩阵和属性信息矩阵。在一些实施例中,BANE算法中定义了一个邻接矩阵,通过以逐层方式聚合节点属性并从相邻节点到目标节点的边的信息来捕获节点和属性之间的关联信息。
在步骤S305处,利用神经网络模型分别对结构信息矩阵和属性信息矩阵进行学习,以获得节点的表示向量。在一些实施例中,通过分别对网络结构和网络属性两个矩阵进行学习,再将两个矩阵合并,以获得属性网络的表示向量。作为举例,如图4所示,通过使用二阶属性网络嵌入所述区块链交易图进行特征提取,获得了节点的表示向量C。网络结构矩阵为 A为一个n×n阶矩阵,属性信息矩阵B为一个n×d阶矩阵,学习后得到的网络表示矩阵C为一个n×k阶矩阵。
交易网络结构特征和数据特征如下表所示:
Figure BDA0003875895300000102
Figure BDA0003875895300000111
上述结构特征1、结构特征2和结构特征3分别是DeepWalk、 DeepWalk-Ba、BANE三种网络表示学习方法对区块链交易网络学习后得到的节点表示向量。其中,DeepWalk和DeepWalk-Ba对每个节点学习得到128维的特征,BANE得到了64维的特征。
对于数据特征,每个交易节点有166维特征,其中前94维是与交易直接相关的信息,包括交易时间间隔、输入交易和输出交易的数量、输入交易和输出交易比特币平均值等。剩余的72个特征是聚合特征,使用交易信息从中心节点向后或向前一跳获得,即二阶交易信息的特征。
将上述结构特征和数据特征进行合并以得到合并特征集时,可以看出,交易网络中每个节点具有166维的数据特征,使用网络表示学习方法对交易网络进行学习后,DeepWalk和DeepWalk-Ba对每个节点学习得到 128维的特征,BANE得到了64维的特征。原数据集节点的数据特征为 166维,特征合并后(就是每个节点的166维特征再加上128维或者64 维的结构特征),节点特征分别变为294和230维。
图5是示意性示出根据本发明的实施例的利用合并特征集进行异常检测的方法500的流程图。
在步骤S501处,将合并特征集进行标准化处理。在一些实施例中可以通过标准化处理减小数据尺度对检测结果的影响。
在步骤S502处,将合并特征集进行采样处理,以得到均衡的交易特征数据集。在一些实施例中,可以通过过采样和欠采样处理来减小数据不平衡的问题。关于标准化处理和过采样处理过程将在下述内容中详细说明。
在步骤S503处,利用异常检测模型对交易特征数据集进行检测,以确定是否发生交易异常。在一个应用场景中,异常交易检测可以看做一个二分类问题,只分正常和异常两类,一般用正类(P)表示异常,用负类 (N)表示正常。真(T)和假(F)针对预测与实际的比较结果,T指正确匹配,即预测正实际为正。预测负实际也是负。相应的,F表示不匹配,即预测错误。
采用精确率、召回率、F1值作为异常交易检测的评价指标,其中,精确率(P)表示预测为正例的数据中预测正确的数据所占比例;召回率(R) 表示真实为正例的数据里预测正确的数据所占比例;F1值是精确率和召回率的调和平均值。精确率、召回率、F1值的计算方法如下:
Figure BDA0003875895300000121
Figure BDA0003875895300000122
Figure BDA0003875895300000123
通过对使用原始特征集、增加了网络表示学习提取的特征后的合并特征集、经过标准化和采样处理的合并特征集作为检测模型的输入,并随机选取输入集的70%作为训练集,剩余30%作为测试集进行异常检测。设置 K-means的聚类个数k为2到13。在测试完成后,对不同的聚类个数k下的检测效果进行检查,选取分类效果最好的k值下的样本簇进行聚类,并据此计算检测的精确率等指标。
三组实验中,与对原始数据中的特征进行检测的第一组实验相比,基于网络表示学习的第二组实验的检测效果有大幅度的提升,证明了网络表示学习对区块链交易图提取特征的有效性。对3种网络表示学习方法, DeepWalk-Ba模型具有比DeepWalk更好的检测效果,证明有偏的随机游走可以更好地反映网络的特性,为特征提取贡献了更多信息。在3种方法中,使用了BANE提取特征的检测方法具有最好的检测效果,说明对交易网络结构特征和属性信息同时进行表示学习,获取到了更准确全面的特征信息。
图6是示意性示出根据本发明的实施例的在不同间隔下交易的分布图。图7是示意性示出根据本发明的实施例的采样前后数据集中正常和异常样本的分布示意图。
如图6所示,该区块链交易图中显示了在不同时间间隔上,3种不同标记的交易分布。该图中数据集包含203769个节点和234355条边,其中每个交易节点有166个特征,前94个特征表示与交易直接相关的信息,包括时间间隔、输入交易和输出交易的数量、输入交易和输出交易比特币平均值等,其中时间间隔表示交易广播到比特币交易网络的时间。剩余的 72个特征是聚合特征,是使用交易信息从中心节点向后或向前一跳获得。
本发明中选取Z-Score方法对特征数据进行标准化,Z-Score标准化方法利用原始数据的标准差和方差将不同数量级的数据变换为到相同的量级,并使用Z-Score值进行衡量,使得不同的特征数据具有可比性,其标准化过程如下:
假设具有n个特征的原始数据序列为:{x1,x2,……,xn},对其进行变换:
Figure BDA0003875895300000131
其中,
Figure BDA0003875895300000132
标准化完成后,序列变为 {y1,y2,……,yn},新序列均值为0,方差为1。
接着,需要对数据进行过采样和欠采样。
经过筛选后的数据集中,异常样本占正常样本的比例约为11%,由于很多异常检测模型的输出类别是基于阈值的,在训练数据中正常和异常样本的比例不平衡时,阈值的存在会导致模型输出倾向于占比高的类别。基于此,对于这种二分类问题中的数据不平衡问题,一般采取调整模型阈值或者对数据集进行采样处理的方式来解决。
本发明中使用随机过采样和合成少数过采样技术(Synthetic MinorityOversampling Technique,SMOTE)两种过采样方法以及随机欠采样对不均衡的数据集进行处理。随机过采样是对少数类样本的复制采样,而随机欠采样是对多数类样本的随机采样。SMOTE算法的基本思想是对少数类样本进行插值合成新样本并添加到数据集中,即对少数类样本a,从它相邻的样本中选择少数类样本b,然后在a,b的连线上随机生成一个新的样本c。如图7中示出了经过3种采样方法处理前后数据集中正常和异常样本的分布情况,可以看出经过采样处理后的数据集更加均衡。通过提升输入异常检测模型中的数据集的均衡性,可以有助于提升交易异常检测的结果的准确性。
图8是示意性示出根据本发明的实施例的用于检测区块链交易异常的设备800的示意图。该设备800可以包括根据本发明实施例的设备801以及其***设备和外部网络。如前所述,该设备801实现获取区块链交易图、提取结构特征、数据特征和利用异常检测模型进行检测等操作,以实现前述结合图2、图3或图4所述的本发明的方案。
如图8中所示,设备801可以包括CPU8011,其可以是通用CPU、专用CPU或者其他信息处理以及程序运行的执行单元。进一步,设备801 还可以包括大容量存储器8012和只读存储器ROM 8013,其中大容量存储器8012可以配置用于存储各类数据以及所需的各种程序,ROM 8013可以配置成存储对于设备801的加电自检、***中各功能模块的初始化、***的基本输入/输出的驱动程序及引导操作***所需的数据。
进一步,设备801还包括其他的硬件平台或组件,例如示出的TPU (TensorProcessing Unit,张量处理单元)8014、GPU(Graphic Processing Unit,图形处理器)8015、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)8016和MLU(MemoryLogic Unit),存储器逻辑单元) 8017。可以理解的是,尽管在设备801中示出了多种硬件平台或组件,但这里仅仅是示例性的而非限制性的,本领域技术人员可以根据实际需要增加或移除相应的硬件。例如,设备801可以仅包括CPU作为公知硬件平台和另一硬件平台作为本发明的测试硬件平台。
本发明的设备801还包括通信接口8018,从而可以通过该通信接口 8018连接到局域网/无线局域网(LAN/WLAN)805,进而可以通过 LAN/WLAN连接到本地服务器806或连接到因特网(“Internet”)807。替代地或附加地,本发明的设备801还可以通过通信接口8018基于无线通信技术直接连接到因特网或蜂窝网络,例如基于第三代(“3G”)、***(“4G”)或第5代(“5G”)的无线通信技术。在一些应用场景中,本发明的设备801还可以根据需要访问外部网络的服务器808以及可能的数据库809。
设备801的***设备可以包括显示装置802、输入装置803以及数据传输接口804。在一个实施例中,显示装置802可以例如包括一个或多个扬声器和/或一个或多个视觉显示器。输入装置803可以包括例如键盘、鼠标、麦克风、姿势捕捉相机,或其他输入按钮或控件,其配置用于接收数据的输入或用户指令。数据传输接口804可以包括例如串行接口、并行接口或通用串行总线接口(“USB”)、小型计算机***接口(“SCSI”)、串行ATA、火线(“FireWire”)、PCI Express和高清多媒体接口(“HDMI”) 等,其配置用于与其他设备或***的数据传输和交互。
本发明的设备801的上述CPU 8011、大容量存储器8012、只读存储器ROM 8013、TPU8014、GPU 8015、FPGA 8016、MLU 8017和通信接口8018可以通过总线8019相互连接,并且通过该总线与***设备实现数据交互。在一个实施例中,通过该总线8019,CPU 8011可以控制设备801 中的其他硬件组件及其***设备。
在工作中,本发明的设备801的处理器CPU 8011可以通过输入装置 803或数据传输接口804获取媒体数据包,并调取存储于存储器8012中的计算机程序指令或代码对获取到的信息进行处理,以完成媒体数据包中检测信息的填充或确定网络状况。
根据本发明的第四方面,本发明还提供了一种计算机可读存储介质,其上存储有用于检测区块链交易异常的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如前文中一个或多个实施例所述的方法。
从上面关于本发明模块化设计的描述可以看出,本发明的设备可以根据应用场景或需求进行灵活地布置而不限于附图所示出的架构。进一步,还应当理解,本发明示例的执行操作的任何模块、单元、组件、服务器、计算机或设备可以包括或以其他方式访问计算机可读介质,诸如存储介质、计算机存储介质或数据存储设备(可移除的)和/或不可移动的)例如磁盘、光盘或磁带。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,例如计算机可读指令、数据结构、程序模块或其他数据。基于此,本发明也公开了一种计算机可读存储介质,其上存储有用于识别分合指示牌的状态的方法的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现在前结合附图所描述的方法和操作。
虽然本说明书已经示出和描述了本发明的多个实施方式,但对于本领域技术人员显而易见的是,这样的实施方式是仅以示例的方式提供的。本领域技术人员在不偏离本发明思想和精神的情况下想到许多更改、改变和替代的方式。应当理解在实践本发明的过程中,可以采用本文所描述的本发明实施方式的各种替代方案。所附权利要求书旨在限定本发明的保护范围,并因此覆盖这些权利要求范围内的模块组成、等同或替代方案。

Claims (10)

1.一种用于检测区块链交易异常的方法,其特征在于,包括:
获取区块链交易图;
从所述区块链交易图中提取交易网络的结构特征和交易数据特征;
将所述交易网络的结构特征和交易数据特征合并,以得到合并特征集;以及
利用异常检测模型对所述合并特征集进行检测,以确定区块链中是否存在交易异常行为。
2.根据权利要求1所述的方法,其特征在于,所述区块链交易图中包括交易的节点、边和标记信息,所述边包括交易之间的比特币流转信息,所述标记信息包括交易的属性,其中从所述区块链交易图中提取交易网络的结构特征和交易数据特征包括:
根据网络表示方法从所述区块链交易图中提取交易网络的结构特征;以及
从所述区块链交易图中的节点、边和标记信息中提取交易数据特征。
3.根据权利要求2所述的方法,其特征在于,所述根据网络表示方法从所述区块链交易图中提取交易网络的结构特征包括:
基于深度游走的网络表示学习算法对所述区块链交易图进行特征提取,以获取交易网络的结构特征;和/或
使用二阶属性网络嵌入所述区块链交易图进行特征提取,以获取交易网络的结构特征。
4.根据权利要求3所述的方法,其特征在于,所述基于深度游走的网络表示学习算法对所述区块链交易图进行特征提取以获取交易网络的结构特征包括:
将所述区块链交易图转换成网络图;
利用设定的游走方式获得所述节点的采样序列;以及
根据神经网络模型对所述节点的采样序列进行向量学习,以将获取的节点的表示向量作为交易网络的结构特征。
5.根据权利要求3所述的方法,其特征在于,所述使用二阶属性网络嵌入所述区块链交易图进行特征提取以获取交易网络的结构特征包括:
从相邻节点到目标节点的边的信息中提取节点和属性之间的关联信息,以得到结构信息矩阵和属性信息矩阵;以及
利用神经网络模型分别对结构信息矩阵和属性信息矩阵进行学习,以获得节点的表示向量。
6.根据权利要求4所述的方法,其特征在于,所述利用设定的游走方式获得所述节点的采样序列包括:
利用随机游走的方式获得节点的采样序列;和/或
基于交易总金额的有偏随机游走方式访问临近节点,以获得节点的采样序列。
7.根据权利要求6所述的方法,其特征在于,所述基于交易总金额的有偏随机游走方式访问临近节点包括在起始节点之后以设定的概率访问临近节点;所述设定的概率包括:
Figure FDA0003875895290000021
其中A(vi,vj)表示节点vi和vj之间的交易量,
Figure FDA0003875895290000022
表示连接到节点vi的节点集。
8.根据权利要求1-7任意一项所述的方法,其特征在于,所述利用异常检测模型对所述合并特征集进行检测以确定区块链中是否存在交易异常行为包括:
将所述合并特征集进行标准化和采样处理,以得到均衡的交易特征数据集;以及
利用异常检测模型对所述交易特征数据集进行检测,以确定是否发生交易异常。
9.一种用于检测区块链交易异常的设备,其特征在于,包括:
处理器;以及
存储器,其存储有用于检测区块链交易异常的计算机指令,当所述计算机指令由所述处理器运行时,使得设备执行根据权利要求1-8的任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有用于检测区块链交易异常的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如权利要求1-8中任意一项所述的方法。
CN202211215287.0A 2022-09-30 2022-09-30 一种用于检测区块链交易异常的方法及相关产品 Pending CN115567224A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211215287.0A CN115567224A (zh) 2022-09-30 2022-09-30 一种用于检测区块链交易异常的方法及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211215287.0A CN115567224A (zh) 2022-09-30 2022-09-30 一种用于检测区块链交易异常的方法及相关产品

Publications (1)

Publication Number Publication Date
CN115567224A true CN115567224A (zh) 2023-01-03

Family

ID=84744499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211215287.0A Pending CN115567224A (zh) 2022-09-30 2022-09-30 一种用于检测区块链交易异常的方法及相关产品

Country Status (1)

Country Link
CN (1) CN115567224A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116843400A (zh) * 2023-03-30 2023-10-03 北京邮电大学 基于图表示学习的区块链碳排放交易异常检测方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116843400A (zh) * 2023-03-30 2023-10-03 北京邮电大学 基于图表示学习的区块链碳排放交易异常检测方法和装置

Similar Documents

Publication Publication Date Title
US11522873B2 (en) Detecting network attacks
TWI673625B (zh) 統一資源定位符(url)攻擊檢測方法、裝置以及電子設備
US11636380B2 (en) Method for protecting a machine learning model against extraction using an ensemble of a plurality of machine learning models
EP3651043B1 (en) Url attack detection method and apparatus, and electronic device
CN107577945B (zh) Url攻击检测方法、装置以及电子设备
CN111832019A (zh) 基于生成对抗网络的恶意代码检测方法
CN111652290B (zh) 一种对抗样本的检测方法及装置
CN110431560A (zh) 目标人物的搜索方法和装置、设备、程序产品和介质
Chaganti et al. Image-based malware representation approach with EfficientNet convolutional neural networks for effective malware classification
Lubenko et al. Going from small to large data in steganalysis
CN113011889B (zh) 账号异常识别方法、***、装置、设备及介质
Wang et al. Network Intrusion Detection Model Based on Improved BYOL Self‐Supervised Learning
CN112883990A (zh) 数据分类方法及装置、计算机存储介质、电子设备
CN112884204A (zh) 网络安全风险事件预测方法及装置
CN112632609A (zh) 异常检测方法、装置、电子设备及存储介质
CN115567224A (zh) 一种用于检测区块链交易异常的方法及相关产品
An et al. Benchmarking the robustness of image watermarks
US11727109B2 (en) Identifying adversarial attacks with advanced subset scanning
CN115204322B (zh) 行为链路异常识别方法和装置
CN113259369B (zh) 一种基于机器学习成员推断攻击的数据集认证方法及***
Xiao et al. Explainable fraud detection for few labeled time series data
CN115907954A (zh) 账户的识别方法、装置、计算机设备和存储介质
CN115330368A (zh) 集成无监督机器学习的区块链异常交易识别方法及***
CN116861226A (zh) 一种数据处理的方法以及相关装置
CN114021637A (zh) 一种基于度量空间下去中心化应用加密流量分类方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination