CN113283909A - 一种基于深度学习的以太坊钓鱼账户检测方法 - Google Patents

一种基于深度学习的以太坊钓鱼账户检测方法 Download PDF

Info

Publication number
CN113283909A
CN113283909A CN202110643095.9A CN202110643095A CN113283909A CN 113283909 A CN113283909 A CN 113283909A CN 202110643095 A CN202110643095 A CN 202110643095A CN 113283909 A CN113283909 A CN 113283909A
Authority
CN
China
Prior art keywords
transaction
account
phishing
node
wbs
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.)
Granted
Application number
CN202110643095.9A
Other languages
English (en)
Other versions
CN113283909B (zh
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.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
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 Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN202110643095.9A priority Critical patent/CN113283909B/zh
Publication of CN113283909A publication Critical patent/CN113283909A/zh
Application granted granted Critical
Publication of CN113283909B publication Critical patent/CN113283909B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Abstract

本发明提供一种基于深度学习的以太坊钓鱼账户检测方法,该方法结合交易时间和权值特征,将以太坊交易网络建模为时序加权有向图,能够有效捕捉到更全面的动态交易网络的性质;然后采用skip‑gram模型得到时序加权有向图中各账户节点的图嵌入特征向量,相对于传统手工特征,该模型得到的图嵌入特征向量能自适应捕捉到各账户间的隐含特性;最终将上述得到的图嵌入特征向量输入分类器,该分类器有效结合无监督学习中的k‑means聚类算法和监督学习中的支持向量机算法,在少量标签数据的情况下能够得到更加鲁棒的钓鱼账户分类结果;所提出的方法能够准确将钓鱼账户从大量账户中分类出来,保证了以太坊交易平台的生态安全。

Description

一种基于深度学习的以太坊钓鱼账户检测方法
技术领域
本发明涉及区块链中以太坊交易网络的安全领域,更具体地,涉及一种基于深度学习的以太坊钓鱼账户检测方法。
背景技术
区块链技术作为数字货币的底层技术,具有数据隐私保护、去中心化和不可篡改的特性,受到全世界研究学者的重点关注。而以太坊作为第二代的区块链平台,具有智能合约功能,并通过其专用加密货币以太币提供去中心化的以太虚拟机来处理点对点合约。由于以太坊的开源性,会导致包括安全漏洞在内的所有漏洞都可见,一旦这些漏洞被网络犯罪者攻击利用,会造成很大的安全隐患问题。而越是功能强大的智能合约,逻辑越是复杂,也越容易出现逻辑上的漏洞。其中,网络钓鱼是网络犯罪者最大的收入来源,有效检测和预防网络钓鱼犯罪对于以太坊分析生态系统来说是非常重要的。
由于区块链的开放性,研究人员能够自主访问以太坊交易记录,对这些交易记录的分析能够发现以太坊交易网络中账户存在的异常行为,从而能够进一步检测出钓鱼账户。针对交易记录的传统方法大多结合依赖于手工特征,然而这些传统手工特征泛化能力差,灵活性差,难以保证在不同场景下的适用性。在数量庞大的交易记录基础上,使用深度学习技术来进行钓鱼账户检测已经成为趋势,目前的方法大多使用有向加权图建模以太坊交易网络,其中以以太坊交易账户为节点,两个账户之间的一次交易作为边,然后使用深度学习技术提取各个账户节点的隐含特征,最后使用分类算法对正常账户和钓鱼账户进行正确分类。
现有技术中有从交易历史记录中提取节点及一阶邻居节点并构建交易的有向加权图,并提取各节点的交易特征;采用网络表示学习方法得到各节点结构特征相应的网络表示学习向量;将得到的网络表示向量输入one class SVM单分类模型进行分类,分类出最终的钓鱼账户节点。但是该方法在建模有向加权图的时候,将一对账户之间的多笔交易合并为一条边,忽略了账户之间的多样性和动态性,难以全面地分析交易行为;还有构建时间序列型与网络序列型两种小规模的子网络进行训练;采用垂直联邦学习策略,由服务器经注意力机制组合各个边缘段钓鱼检测模型的网络嵌入;服务端利用组合得到的网络嵌入训练自身的检测模型,并下发边缘端检测模型。但是该方法在训练钓鱼检测模型时使用全连接神经网络作为分类器,而该分类器的效果在具有大量训练数据的基础上才能够得到保证,以太坊交易网络中的钓鱼账户节点相对于正常账户节点在数量上是极少的,在样本不平衡的情况下神经网络模型并不能得到鲁棒的分类结果。
综上所述,上述钓鱼账户检测方法要么忽略了账户之间的多样性和动态性从而导致片面地交易行为分析,要么没有提供一个鲁棒的分类模型。因此,研究同时满足这些优势,并充分发挥以太坊交易网络庞大的事务信息的钓鱼账户检测方法是一个热点问题。
发明内容
本发明提供一种基于深度学习的以太坊钓鱼账户检测方法,该方法能够准确将钓鱼账户从大量账户中分类出来,保证了以太坊交易平台的生态安全。
为了达到上述技术效果,本发明的技术方案如下:
一种基于深度学习的以太坊钓鱼账户检测方法,包括以下步骤:
S1:通过以太坊区块资源管理平台来获取以太坊交易网络各交易账户的历史交易数据,并采用K序子图采样方法获得各交易账户的本地结构;
S2:将采集到的历史交易数据抽象为网络结构,并构造成一个时间加权有向图来表示以太坊交易网络各账户之间的多重交互关系;
S3:在构成的时间加权有向图中随机游走获得随机游走序列,然后使用这些序列来当作skip-gram模型的训练数据,最终交易网络中账户的隐含特征即图嵌入特征向量包含在skip-gram模型中隐藏层的权重矩阵中;
S4:将得到图特征向量输入到分类器中,分类器利用k-means聚类算法和支持向量机算法,得到了鲁棒的钓鱼账户分类结果。
进一步地,所述步骤S1的具体过程是:
通过以太坊区块资源管理平台Etherscan的API来获取目标账户的历史交易数据,由于交易记录的大小非常大,采用k阶子图采样方法,得到目标账户的局部结构,从而得到目标账号的交易数据,其中,k阶子图采样方法中的控制中心向内采样参数Kin设置为2,控制中心向外采样参数Kout设置为3。
进一步地,步骤S2中,根据数据收集获得的交易数据,交易数据包含TxHash、TimeStamp、From、To、Value,将历史交易数据中的TimeStamp、From、To、Value抽象为四元组(src,dst,w,t),即发送方src在时刻t将w以太币传输给接收方dst,将账户之间的多重交互建模为时间加权有向图。
进一步地,所述步骤S3中,游走序列的生成过程是:
使用基于TBS+WBS游走策略的随机漫步算法去生成游走序列:
TBS游走策略假设两个频繁交易的节点具有强关联性,被选取到的概率更大,概率计算如下:
Figure BDA0003107870640000031
其中,T(e)表示边e的时间戳,
Figure BDA0003107870640000032
表示一个降序函数;WBS游走策略假设相似的节点间的边带有比较大的权重,被选取到的概率更大,使用线性升序函数对权值进行预处理,弱化权值差异较大下的影响,对权重值概率计算如下:
Figure BDA0003107870640000033
其中,W(e)表示边e的权重值,
Figure BDA0003107870640000034
表示一个升序函数,在TBS和WBS游走策略上,采用改进的TBS+WBS游走策略,同时考虑交易的频繁程度和节点之间的权值,概率计算如下:
PTBS+WBS(e)=PTBS(e)a*PWBS(e)(1-a)
其中,a表示超参数,a设置为0.5;
根据上述TBS+WBS游走策略得出的概率去选择下一跳节点,若节点漫步序列为{v1,v2,v3,v4,v5,v6},则它的边漫步序列为{e1,e2,e3,e4,e5},其中T(e1)<T(e2)<T(e3)<T(e4)<T(e5),w(e1)>w(e2)>.w(e3)>w(e4)>w(e5);当t时刻到达vi点,则下一节点vi+1的选择由具有时间属性t和权值w的边ei决定,对应的侯选边有Nt+w(u)={e|Src(e)=u,T(e)≥t,W(e)≥w},若t=T(e5),w=W(e5),则Nt+w(A1)={e5,e6,e10};采用TBS+WBS来计算从候选边选取的概率;若T(e5)<T(e6)<T(e10),W(e5)>W(e6)>W(e10),则PTBS+WBS(e5)>PTBS+WBS(e6)>PTBS+WBS(e10),则e5有最大机会被选取成为下一条边,通过迭代选取,最终生成的序列长度为10,生成的游走序列后供后续模型的使用。
进一步地,所述步骤S3中,skip-gram模型的训练过程是:
在获得最终的图嵌入特征向量前,先训练了一个伪任务,该伪任务的目标是最大化序列上下文窗口中节点出现的概率,对应的目标函数是:
Figure BDA0003107870640000041
其中,i表示输入训练序列中的当前位置,k表示skip-gram的窗口大小,vi,vj表示在对应i,j位置上的序列值,θ是当前skip-gram模型的参数;使用随机游走产生的游走序列作为训练数据,设定的嵌入维度为128,skip-gram模型的窗口大小为4;
使用的skip-gram模型包括输入层、隐藏层和输出层,最终训练得出的隐藏层权重矩阵就是后续分类任务用到的图嵌入特征向量。
进一步地,所述步骤S4中,利用k-means聚类算法的过程是:
使用k-means聚类算法将样本集合分为2个簇,一个是正常的交易节点簇,一个是钓鱼节点簇,K-means聚类算法在不需要标签数据,并能够保证簇内的节点距离尽量接近,而让簇间节点的距离尽量远离,在交易节点为V=(v1,v2…,vn)时通过最小化平方误差计算中心点,如下:
Figure BDA0003107870640000042
其中,Vk表示第k类簇,uk表示的是第k类簇的质心,定义使用k-means算法得到的分类置信度和该交易节点与质心点uk的距离成反比,分类置信度计算如下:
Figure BDA0003107870640000043
其中,u1表示的是正常交易节点簇的质心,vi表示的是i交易节点,
Figure BDA0003107870640000044
表示降序函数,
Figure BDA0003107870640000045
表示升序函数,
Figure BDA0003107870640000046
表示。
进一步地,所述步骤S4中,利用支持向量机算法的过程是:
在具有少量的标签数据的基础上,采用支持向量机算法进行二分类,优化的目标函数如下:
Figure BDA0003107870640000047
其中,vi表示i交易节点,labeli表示是交易节点vi的标签值,(w,b)表示的是图嵌入特征向量空间中的超平面,使用支持向量机算法得到的分类置信度和该交易节点距离超平面的距离成正比,并使用一个升序函数进行值映射,分类置信度计算如下:
Figure BDA0003107870640000051
其中,(w,b)表示的是支持向量机算法计算得出的分类超平面,vi表示的是第i个交易节点,dist()表示距离函数,
Figure BDA0003107870640000052
表示升序函数,
Figure BDA0003107870640000053
表示预测的标签值,取值(1,-1)
Figure BDA0003107870640000054
其中,(a1,a2,b1,b2)表示超参数,
Figure BDA0003107870640000055
取值(1,-1)分别代表正常交易账户和钓鱼账户。
与现有技术相比,本发明技术方案的有益效果是:
本发明结合交易时间和权值特征,将以太坊交易网络建模为时序加权有向图,能够有效捕捉到更全面的动态交易网络的性质;然后采用skip-gram模型得到时序加权有向图中各账户节点的图嵌入特征向量,相对于传统手工特征,该模型得到的图嵌入特征向量能自适应捕捉到各账户间的隐含特性;最终将上述得到的图嵌入特征向量输入分类器,该分类器有效结合无监督学习中的k-means聚类算法和监督学习中的支持向量机算法,在少量标签数据的情况下能够得到更加鲁棒的钓鱼账户分类结果;所提出的方法能够准确将钓鱼账户从大量账户中分类出来,保证了以太坊交易平台的生态安全。
附图说明
图1是本发明一种基于深度学习的以太坊钓鱼账户检测方法的整体架构图;
图2是时间加权多有向图示例图;
图3是数据采集中的K阶子图;
图4是基于时间随机漫步及时间加权多有向图的图嵌入算法流程图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
如图1所示,一种基于深度学习的以太坊钓鱼账户检测方法,包括以下步骤:
S1:通过以太坊区块资源管理平台来获取以太坊交易网络各交易账户的历史交易数据,并采用K序子图采样方法获得各交易账户的本地结构;
S2:将采集到的历史交易数据抽象为网络结构,并构造成一个时间加权有向图来表示以太坊交易网络各账户之间的多重交互关系;
S3:在构成的时间加权有向图中随机游走获得随机游走序列,然后使用这些序列来当作skip-gram模型的训练数据,最终交易网络中账户的隐含特征即图嵌入特征向量包含在skip-gram模型中隐藏层的权重矩阵中;
S4:将得到图特征向量输入到分类器中,分类器利用k-means聚类算法和支持向量机算法,得到了鲁棒的钓鱼账户分类结果。
步骤S1的具体过程是:
通过以太坊区块资源管理平台Etherscan的API来获取目标账户的历史交易数据,由于交易记录的大小非常大,采用k阶子图采样方法,得到目标账户的局部结构,从而得到目标账号的交易数据,其中,k阶子图采样方法中的控制中心向内采样参数Kin设置为2,控制中心向外采样参数Kout设置为3,K阶子图见附图2。
如图3所示,步骤S2中,根据数据收集获得的交易数据,交易数据包含TxHash、TimeStamp、From、To、Value,将历史交易数据中的TimeStamp、From、To、Value抽象为四元组(src,dst,w,t),即发送方src在时刻t将w以太币传输给接收方dst,将账户之间的多重交互建模为时间加权有向图。
如图4所示,步骤S3中,游走序列的生成过程是:
使用基于TBS+WBS游走策略的随机漫步算法去生成游走序列:
TBS游走策略假设两个频繁交易的节点具有强关联性,被选取到的概率更大,概率计算如下:
Figure BDA0003107870640000061
其中,T(e)表示边e的时间戳,
Figure BDA0003107870640000062
表示一个降序函数;WBS游走策略假设相似的节点间的边带有比较大的权重,被选取到的概率更大,使用线性升序函数对权值进行预处理,弱化权值差异较大下的影响,对权重值概率计算如下:
Figure BDA0003107870640000071
其中,W(e)表示边e的权重值,
Figure BDA0003107870640000072
表示一个升序函数,在TBS和WBS游走策略上,采用改进的TBS+WBS游走策略,同时考虑交易的频繁程度和节点之间的权值,概率计算如下:
PTBS+WBS(e)=PTBS(e)a*PWBS(e)(1-a)
其中,a表示超参数,a设置为0.5;
根据上述TBS+WBS游走策略得出的概率去选择下一跳节点,若节点漫步序列为{v1,v2,v3,v4,v5,v6},则它的边漫步序列为{e1,e2,e3,e4,e5},其中T(e1)<T(e2)<T(e3)<T(e4)<T(e5),w(e1)>w(e2)>.w(e3)>w(e4)>w(e5);当t时刻到达vi点,则下一节点vi+1的选择由具有时间属性t和权值w的边ei决定,对应的侯选边有Nt+w(u)={e|Src(e)=u,T(e)≥t,W(e)≥e},若t=T(e5),w=W(e5),则Nt+w(A1)={e5,e6,e10};采用TBS+WBS来计算从候选边选取的概率;若T(e5)<T(e6)<T(e10),W(e5)>W(e6)>W(e10),则PTBS+WBS(e5)>PTBS+WBS(e6)>PTBS+WBS(e10),则e5有最大机会被选取成为下一条边,通过迭代选取,最终生成的序列长度为10,生成的游走序列后供后续模型的使用,T(ei)为第i条边所对应的发生交易的时间,N(u)为侯选边集合。
步骤S3中,skip-gram模型的训练过程是:
在获得最终的图嵌入特征向量前,先训练了一个伪任务,该伪任务的目标是最大化序列上下文窗口中节点出现的概率,对应的目标函数是:
Figure BDA0003107870640000073
其中,i表示输入训练序列中的当前位置,k表示skip-gram的窗口大小,vi,vj表示在对应i,j位置上的序列值,θ是当前skip-gram模型的参数;使用随机游走产生的游走序列作为训练数据,设定的嵌入维度为128,skip-gram模型的窗口大小为4;
使用的skip-gram模型包括输入层、隐藏层和输出层,最终训练得出的隐藏层权重矩阵就是后续分类任务用到的图嵌入特征向量。
步骤S4中,利用k-means聚类算法的过程是:
使用k-means聚类算法将样本集合分为2个簇,一个是正常的交易节点簇,一个是钓鱼节点簇,K-means聚类算法在不需要标签数据,并能够保证簇内的节点距离尽量接近,而让簇间节点的距离尽量远离,在交易节点为V=(v1,v2…,vn)时通过最小化平方误差计算中心点,如下:
Figure BDA0003107870640000081
其中,Vx表示第k类簇,k表示的是第k类簇的质心,定义使用k-means算法得到的分类置信度和该交易节点与质心点uk的距离成反比,分类置信度计算如下:
Figure BDA0003107870640000082
其中,u1表示的是正常交易节点簇的质心,vi表示的是i交易节点,
Figure BDA0003107870640000083
表示降序函数,
Figure BDA0003107870640000084
表示升序函数,
Figure BDA0003107870640000085
表示。
步骤S4中,利用支持向量机算法的过程是:
在具有少量的标签数据的基础上,采用支持向量机算法进行二分类,优化的目标函数如下:
Figure BDA0003107870640000086
其中,vi表示i交易节点,labeli表示是交易节点vi的标签值,(w,b)表示的是图嵌入特征向量空间中的超平面,使用支持向量机算法得到的分类置信度和该交易节点距离超平面的距离成正比,并使用一个升序函数进行值映射,分类置信度计算如下:
Figure BDA0003107870640000087
其中,(w,b)表示的是支持向量机算法计算得出的分类超平面,vi表示的是第i个交易节点,dist()表示距离函数,
Figure BDA0003107870640000088
表示升序函数,
Figure BDA0003107870640000089
表示预测的标签值,取值(1,-1)
Figure BDA00031078706400000810
其中,(a1,a2,b1,b2)表示超参数,
Figure BDA00031078706400000811
取值(1,-1)分别代表正常交易账户和钓鱼账户。
现有的有用知识证明方案,不能同时满足以太坊交易网络的高安全性、多样性、动态性、高实用性、和资源节约性。以太坊交易网络中的海量数据没有得到高效利用,且目前区块链应用的可视化支持较差。本发明与现有技术相比,具有如下优点和有益效果:
1、高安全性:本发明有效结合深度学习,能够准确地将以太坊交易网络中的钓鱼账户给区分出来,同时还能预防钓鱼账户的异常行为,提高以太坊交易网络的安全性;
2、多样性、动态性、高实用性:本发明使用时间加权多有向图对以太坊交易网络进行建模,从时间和账户两个维度对交易信息进行有效结合,能够应用在多样、动态的以太坊交易网络中,具有高实用性;
3、可视化:结合交易记录的时间和数量特征,将以太坊交易记录建模为一个复杂的网络,方便理解以太坊交易网络;
4、资源节约:采用图嵌入算法将以太坊交易网络中账户的特征映射到较低维度的特征空间中,并在其中高效挖掘各账户的隐含特征,节省深度学习中所消耗的大量算力;
5、充分利用区块链数据资源:区块链网络中节点数量众多,具有海量的交易数据,适用于深度学习模型的训练,采用深度学习中的图嵌入算法能够有效挖掘区块链账户节点的隐含特征。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

1.一种基于深度学习的以太坊钓鱼账户检测方法,其特征在于,包括以下步骤:
S1:通过以太坊区块资源管理平台来获取以太坊交易网络各交易账户的历史交易数据,并采用K序子图采样方法获得各交易账户的本地结构;
S2:将采集到的历史交易数据抽象为网络结构,并构造成一个时间加权有向图来表示以太坊交易网络各账户之间的多重交互关系;
S3:在构成的时间加权有向图中随机游走获得随机游走序列,然后使用这些序列来当作skip-gram模型的训练数据,最终交易网络中账户的隐含特征即图嵌入特征向量包含在skip-gram模型中隐藏层的权重矩阵中;
S4:将得到图特征向量输入到分类器中,分类器利用k-means聚类算法和支持向量机算法,得到了鲁棒的钓鱼账户分类结果。
2.根据权利要求1所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,所述步骤S1的具体过程是:
通过以太坊区块资源管理平台Etherscan的API来获取目标账户的历史交易数据,由于交易记录的大小非常大,采用k阶子图采样方法,得到目标账户的局部结构,从而得到目标账号的交易数据。
3.根据权利要求2所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,其中,k阶子图采样方法中的控制中心向内采样参数Kin设置为2,控制中心向外采样参数Kout设置为3。
4.根据权利要求3所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,步骤S2中,根据数据收集获得的交易数据,交易数据包含TxHash、TimeStamp、From、To、Value,将历史交易数据中的TimeStamp、From、To、Value抽象为四元组(src,dst,w,t),即发送方src在时刻t将w以太币传输给接收方dst,将账户之间的多重交互建模为时间加权有向图。
5.根据权利要求4所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,所述步骤S3中,游走序列的生成过程是:
使用基于TBS+WBS游走策略的随机漫步算法去生成游走序列:
TBS游走策略假设两个频繁交易的节点具有强关联性,被选取到的概率更大,概率计算如下:
Figure FDA0003107870630000021
其中,T(e)表示边e的时间戳,
Figure FDA0003107870630000022
表示一个降序函数;WBS游走策略假设相似的节点间的边带有比较大的权重,被选取到的概率更大,使用线性升序函数对权值进行预处理,弱化权值差异较大下的影响,对权重值概率计算如下:
Figure FDA0003107870630000023
其中,W(e)表示边e的权重值,
Figure FDA0003107870630000024
表示一个升序函数,在TBS和WBS游走策略上,采用改进的TBS+WBS游走策略,同时考虑交易的频繁程度和节点之间的权值,概率计算如下:
PTBS+WBS(e)=PTBS(e)a*PWBS(e)(1-a)
其中,a表示超参数;
根据上述TBS+WBS游走策略得出的概率去选择下一跳节点,若节点漫步序列为{v1,v2,v3,v4,v5,v6},则它的边漫步序列为{e1,e2,e3,e4,e5},其中T(e1)<T(e2)<T(e3)<T(e4)<T(e5),w(e1)>w(e2)>.w(e3)>w(e4)>w(e5);当t时刻到达vi点,则下一节点vi+1的选择由具有时间属性t和权值w的边ei决定,对应的侯选边有Nt+w(u)={e|Src(e)=u,T(e)≥t,W(e)≥e},若t=T(e5),w=W(e5),则Nt+w(A1)={e5,e6,e10};采用TBS+WBS来计算从候选边选取的概率;若T(e5)<T(e6)<T(e10),W(e5)>W(e6)>W(e10),则PTBS+WBS(e5)>PTBS+WBS(e6)>PTBS+WBS(e10),则e5有最大机会被选取成为下一条边,通过迭代选取,最终生成的序列长度为10,生成的游走序列后供后续模型的使用。
6.根据权利要求5所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,参数a设置为0.5。
7.根据权利要求6所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,所述步骤S3中,skip-gram模型的训练过程是:
在获得最终的图嵌入特征向量前,先训练了一个伪任务,该伪任务的目标是最大化序列上下文窗口中节点出现的概率,对应的目标函数是:
Figure FDA0003107870630000025
其中,i表示输入训练序列中的当前位置,k表示skip-gram的窗口大小,vi,vj表示在对应i,j位置上的序列值,θ是当前skip-gram模型的参数;
使用的skip-gram模型包括输入层、隐藏层和输出层,最终训练得出的隐藏层权重矩阵就是后续分类任务用到的图嵌入特征向量。
8.根据权利要求7所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,使用随机游走产生的游走序列作为训练数据,设定的嵌入维度为128,skip-gram模型的窗口大小为4。
9.根据权利要求8所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,所述步骤S4中,利用k-means聚类算法的过程是:
使用k-means聚类算法将样本集合分为2个簇,一个是正常的交易节点簇,一个是钓鱼节点簇,K-means聚类算法在不需要标签数据,并能够保证簇内的节点距离尽量接近,而让簇间节点的距离尽量远离,在交易节点为V=(v1,v2…,vn)时通过最小化平方误差计算中心点,如下:
Figure FDA0003107870630000031
其中,Vk表示第k类簇,uk表示的是第k类簇的质心,定义使用k-means算法得到的分类置信度和该交易节点与质心点uk的距离成反比,分类置信度计算如下:
Figure FDA0003107870630000032
其中,u1表示的是正常交易节点簇的质心,vi表示的是i交易节点,
Figure FDA0003107870630000033
表示降序函数,
Figure FDA0003107870630000034
表示升序函数,
Figure FDA0003107870630000035
表示。
10.根据权利要求9所述的基于深度学习的以太坊钓鱼账户检测方法,其特征在于,所述步骤S4中,利用支持向量机算法的过程是:
在具有少量的标签数据的基础上,采用支持向量机算法进行二分类,优化的目标函数如下:
Figure FDA0003107870630000036
其中,vi表示i交易节点,labeli表示是交易节点vi的标签值,(w,b)表示的是图嵌入特征向量空间中的超平面,使用支持向量机算法得到的分类置信度和该交易节点距离超平面的距离成正比,并使用一个升序函数进行值映射,分类置信度计算如下:
Figure FDA0003107870630000041
其中,(w,b)表示的是支持向量机算法计算得出的分类超平面,vi表示的是第i个交易节点,dist()表示距离函数,
Figure FDA0003107870630000042
表示升序函数,
Figure FDA0003107870630000043
表示预测的标签值,取值(1,-1)
Figure FDA0003107870630000044
其中,(a1,a2,b1,b2)表示超参数,
Figure FDA0003107870630000045
取值(1,-1)分别代表正常交易账户和钓鱼账户。
CN202110643095.9A 2021-06-09 2021-06-09 一种基于深度学习的以太坊钓鱼账户检测方法 Active CN113283909B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110643095.9A CN113283909B (zh) 2021-06-09 2021-06-09 一种基于深度学习的以太坊钓鱼账户检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110643095.9A CN113283909B (zh) 2021-06-09 2021-06-09 一种基于深度学习的以太坊钓鱼账户检测方法

Publications (2)

Publication Number Publication Date
CN113283909A true CN113283909A (zh) 2021-08-20
CN113283909B CN113283909B (zh) 2022-11-08

Family

ID=77283854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110643095.9A Active CN113283909B (zh) 2021-06-09 2021-06-09 一种基于深度学习的以太坊钓鱼账户检测方法

Country Status (1)

Country Link
CN (1) CN113283909B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113506179A (zh) * 2021-09-13 2021-10-15 北京大学深圳研究生院 数字货币交易中异常实体的检测方法、存储介质
CN113821798A (zh) * 2021-08-23 2021-12-21 中山大学 一种基于异构图神经网络的以太坊非法账户检测方法及系统
CN114612235A (zh) * 2022-03-09 2022-06-10 烟台大学 一种基于图嵌入的区块链异常行为检测方法
CN115187250A (zh) * 2022-09-09 2022-10-14 南方科技大学 一种以太坊隐私交易的探测方法、终端及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104463221A (zh) * 2014-12-22 2015-03-25 江苏科海智能系统有限公司 适用于支持向量机训练的不平衡样本加权方法
CN107438083A (zh) * 2017-09-06 2017-12-05 安徽大学 一种Android环境下钓鱼网站检测方法及其检测系统
US20190122258A1 (en) * 2017-10-23 2019-04-25 Adbank Inc. Detection system for identifying abuse and fraud using artificial intelligence across a peer-to-peer distributed content or payment networks
SG11201909012YA (en) * 2017-08-28 2019-10-30 Alibaba Group Holding Ltd Key data processing method and apparatus, and server
US20190379699A1 (en) * 2018-06-07 2019-12-12 Unifyvault LLC Systems and methods for blockchain security data intelligence
CN111447179A (zh) * 2020-03-03 2020-07-24 中山大学 一种针对以太网钓鱼诈骗的网络表示学习方法
US20200250398A1 (en) * 2019-02-01 2020-08-06 Owkin Inc. Systems and methods for image classification
CN112734425A (zh) * 2021-01-08 2021-04-30 浙江工业大学 一种针对以太坊平台中钓鱼用户的识别方法
CN112738034A (zh) * 2020-12-17 2021-04-30 杭州趣链科技有限公司 一种基于垂直联邦学习的区块链钓鱼节点检测方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104463221A (zh) * 2014-12-22 2015-03-25 江苏科海智能系统有限公司 适用于支持向量机训练的不平衡样本加权方法
SG11201909012YA (en) * 2017-08-28 2019-10-30 Alibaba Group Holding Ltd Key data processing method and apparatus, and server
CN107438083A (zh) * 2017-09-06 2017-12-05 安徽大学 一种Android环境下钓鱼网站检测方法及其检测系统
US20190122258A1 (en) * 2017-10-23 2019-04-25 Adbank Inc. Detection system for identifying abuse and fraud using artificial intelligence across a peer-to-peer distributed content or payment networks
US20190379699A1 (en) * 2018-06-07 2019-12-12 Unifyvault LLC Systems and methods for blockchain security data intelligence
US20200250398A1 (en) * 2019-02-01 2020-08-06 Owkin Inc. Systems and methods for image classification
CN111447179A (zh) * 2020-03-03 2020-07-24 中山大学 一种针对以太网钓鱼诈骗的网络表示学习方法
CN112738034A (zh) * 2020-12-17 2021-04-30 杭州趣链科技有限公司 一种基于垂直联邦学习的区块链钓鱼节点检测方法
CN112734425A (zh) * 2021-01-08 2021-04-30 浙江工业大学 一种针对以太坊平台中钓鱼用户的识别方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
褚蕾蕾等: "《现代数学与计算机文化》", 31 December 2019 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821798A (zh) * 2021-08-23 2021-12-21 中山大学 一种基于异构图神经网络的以太坊非法账户检测方法及系统
CN113506179A (zh) * 2021-09-13 2021-10-15 北京大学深圳研究生院 数字货币交易中异常实体的检测方法、存储介质
CN114612235A (zh) * 2022-03-09 2022-06-10 烟台大学 一种基于图嵌入的区块链异常行为检测方法
US11803855B2 (en) 2022-03-09 2023-10-31 Yantai University Method for detecting block chain abnormal behavior based on graph embedding
CN115187250A (zh) * 2022-09-09 2022-10-14 南方科技大学 一种以太坊隐私交易的探测方法、终端及存储介质

Also Published As

Publication number Publication date
CN113283909B (zh) 2022-11-08

Similar Documents

Publication Publication Date Title
CN113283909B (zh) 一种基于深度学习的以太坊钓鱼账户检测方法
Li et al. Electricity theft detection in power grids with deep learning and random forests
Guo et al. Semi‐supervised learning based on convolutional neural network and uncertainty filter for façade defects classification
Aldegheishem et al. Towards sustainable energy efficiency with intelligent electricity theft detection in smart grids emphasising enhanced neural networks
Savage et al. Detection of money laundering groups using supervised learning in networks
Amini et al. Effective intrusion detection with a neural network ensemble using fuzzy clustering and stacking combination method
CN111652290A (zh) 一种对抗样本的检测方法及装置
CN112287020B (zh) 一种基于图分析的大数据挖掘方法
Zhang Financial data anomaly detection method based on decision tree and random forest algorithm
CN113343123B (zh) 一种生成对抗多关系图网络的训练方法和检测方法
Ravipati et al. A survey on different machine learning algorithms and weak classifiers based on KDD and NSL-KDD datasets
Ohanuba et al. Topological data analysis via unsupervised machine learning for recognizing atmospheric river patterns on flood detection
CN114818999B (zh) 基于自编码器和生成对抗网络的账户识别方法及系统
Gao et al. Fast economic dispatch with false data injection attack in electricity-gas cyber–physical system: A data-driven approach
Bhardwaj et al. Deep learning architectures for crime occurrence detection and prediction
Johncy et al. An efficient power theft detection using mean-shift clustering and deep learning in smart grid
CN113469816A (zh) 基于多组学技术的数字货币识别方法、系统和存储介质
Huo et al. Traffic anomaly detection method based on improved GRU and EFMS-Kmeans clustering
Yang et al. Anti-money laundering supervision by intelligent algorithm
Lv et al. Detecting pyramid scheme accounts with time series financial transactions
Yang et al. DDMT: Denoising Diffusion Mask Transformer Models for Multivariate Time Series Anomaly Detection
Rituraj et al. A Comprehensive Investigation into the Application of Convolutional Neural Networks (ConvNet/CNN) in Smart Grids
Nguyen et al. Electricity theft detection in power grid with a hybrid convolutional neural network-support vector machine model
Sheng et al. Network traffic anomaly detection method based on chaotic neural network
Yu et al. Anti-Money Laundering Risk Identification of Financial Institutions based on Aspect-Level Graph Neural Networks

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
GR01 Patent grant
GR01 Patent grant