CN115510948A - 一种基于鲁棒图分类的区块链钓鱼检测方法 - Google Patents
一种基于鲁棒图分类的区块链钓鱼检测方法 Download PDFInfo
- Publication number
- CN115510948A CN115510948A CN202211016797.5A CN202211016797A CN115510948A CN 115510948 A CN115510948 A CN 115510948A CN 202211016797 A CN202211016797 A CN 202211016797A CN 115510948 A CN115510948 A CN 115510948A
- Authority
- CN
- China
- Prior art keywords
- transaction
- evolution
- address
- graph
- time
- 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.)
- Withdrawn
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 23
- 238000010586 diagram Methods 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 21
- 230000008569 process Effects 0.000 claims abstract description 6
- 238000000605 extraction Methods 0.000 claims abstract description 4
- 239000011159 matrix material Substances 0.000 claims description 58
- 238000012549 training Methods 0.000 claims description 30
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000013145 classification model Methods 0.000 claims description 12
- 238000011176 pooling Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 5
- 238000004220 aggregation Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000003491 array Methods 0.000 claims 1
- 239000000284 extract Substances 0.000 abstract description 2
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 241001235534 Graphis <ascomycete fungus> Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本发明提出一种基于鲁棒图分类的区块链钓鱼检测方法,该方法通过利用目标用户的多个时间切片构建交易演化图,在保留区块链用户地址的空间结构与时间信息的基础上,设计一种快速的非参数钓鱼检测器来缩小可疑地址的搜索空间;基于鲁棒图分类的钓鱼检测器提取交易演化图中包含空间和时间信息的整个演变过程,提高了钓鱼检测的性能,也提高了目标用户地址不断演化的交易行为表征提取的准确度。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于鲁棒图分类的区块链钓鱼检测方法。
背景技术
图是一种能在复杂的实体之间建立模型的强大工具,其通常由链路、节点以及全局信息构成,是一种具有强大表征能力的数据结构。近年来,图神经网络巧妙地地从图数据中提取特征,并在众多图数据分析任务中表现出令人满意的性能。其中,以识别区块链交易平台中潜在钓鱼地址为目的的钓鱼检测任务是图神经网络成功应用的实际场景之一。
区块链作为一种去中心化和分布式的账本,具有全程留痕、不可伪造、可以追溯、公开透明、集体维护等特征,应用于在金融、科技、文化等众多领域。但区块链的去中心化在带来便利的同时,也产生了大量的金融钓鱼诈骗。钓鱼诈骗的攻击者利用欺骗性的电子邮件和伪造的Web站点进行诈骗活动,来骗取受骗者的财务信息,如区块链的私钥、账户用户名等。因此,区块链上的钓鱼检测引起了广泛的关注。钓鱼检测的目的是学习一种映射函数,将地址的历史交易行为映射为二进制输出0或1,分别表示目标地址是正常/异常的。虽然已有大量的方法被提出用于训练这类模型,但仍然存在几个挑战。
一方面,如何平衡结构信息和时间信息是一个难点。之前的模型往往侧重于结构信息或时间信息,这会导致相当大的信息丢失。更好地平衡结构与时间信息将有助于达到更出色的检测性能。由于采样序列长度限制导致的结构信息不完整,游走策略很难达到这种平衡。而静态子图将目标地址及其邻居地址在所有时期内的交易合并为一条,无法保留交易的时间信息。另一方面,钓鱼检测的鲁棒性也值得考虑,钓鱼诈骗犯或许可以通过与特定地址交易来绕过钓鱼检测。
为了解决上述提到的挑战,提出一种新的钓鱼检测方法是非常有必要的。
发明内容
针对现有技术的不足,本发明提供一种基于鲁棒图分类的区块链钓鱼方法。具体来说,就是对数据进行预处理,构建交易演化图TEGs,利用GNN模型提取特征以及图池化,通过修改模型参数最小化损失函数,达到钓鱼检测的目的。
本发明是通过以下技术方案来实现的:
一种基于鲁棒图分类的区块链钓鱼检测方法,该方法包括如下步骤:
(1)获取数据集及训练模型:将Xblock平台获取的以太坊交易数据集作为训练数据集Dataoracle,将所述训练数据集给定一系列动态快照图序列和对应的标签Y={y1,...,yT}作为输入,输入至图神经网络模型中,其中动态图的第p个快照用Gp表示,其拓扑结构表示为邻接矩阵{A1,...,An};
(2)构建交易演化图:对步骤(1)中的训练数据集Dataoracle进行多次预处理直至获取目标地址K阶邻居地址集和交易集,且K≥2;并且保留、利用交易集的前Q笔交易得到交易集来限制交易演化图的图规模;最后再对交易集进行预处理,计算其交易的交易演化时间,再将交易集平均划分到T个时间切片中,来模拟中心地址在T个时间中的交易演化过程,并且将训练数据中原始邻接矩阵{A1,...,An}根据T划分为交易演化图的邻接矩阵{A1,...,AT};将相同地址间的多笔交易合并为一笔交易,并将它们的交易金额总和与平均时间戳作为新的交易信息;最后根据最终得到的交易记录构建T个有向加权图,即交易演化图TEGs;
(3)演化特征提取:将第t个演化时间段的图结构信息映射到d维节点上得到当前结构特征Zt,当前结构特征Zt与前一时间的交易演化特征ht-1计算更新门zt与重置门rt,通过重置门rt存储前一时间的交易演化特征ht-1,并记忆当前时刻的状态来计算候选隐藏状态ht,通过候选隐藏状态ht与历史交易演化特征ht-1更新当前的交易演化特征ht,再利用当前的交易演化特征ht计算其当前的聚类分配矩阵Ct;
(4)构建当前交易演化图:演化图池化重复步骤(3)T次,分别得到地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT};根据交易演化图的邻接矩阵{A1,...,AT},地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}构建当前交易演化图,并对p时刻的演化图中邻接矩阵{A1,...,AT}和地址交易演化特征{h1,...,hT}池化;
(5)训练模型:交易行为识别通过步骤(4)得到的N个地址簇的演化特征利用特征聚合机制为不同时间的演化特征分配各自的时间系数,以此将T个演化特征聚合为目标地址唯一的演化特征hi,将目标地址和演化特征hi输入至由多层感知机构成的动态图分类模型中,并利用损失函数优化动态图分类模型,由步骤(2)得到的交易演化图TEGs和步骤(5)中的损失函数L对动态图分类模型的参数进行优化训练,降低模型的损失函数值,得到基于鲁棒图分类的钓鱼检测器;
(6)使用钓鱼检测器:对需要输入钓鱼检测器动态图分类的数据Dreal进行预处理,构建经过预处理的交易演化图TEGs;将得到的经过预处理的交易演化图TEGs输入到步骤(5)得到基于鲁棒图分类的钓鱼检测器,得到相应的任务结果。
进一步地,所述步骤(1)中动态快照图的第p个快照用Gp=(V,Ep,X)来表示,具体为,在区块链交易网络中,V={v1,...,vN}是具有|V|=N个用户钱包地址的集合;ei,j=<vi,vj>∈Ep表示地址vi与vj在固定时间跨度[Tp-1,Tp]间存在交易;X∈RN×D是节点属性矩阵,其中D表示X的维度;第p个快照图Gp的拓扑结构可以用邻接矩阵Ap∈RN×N表示,其中,如果地址vi将金额为value的物品转出至地址vj,则Ap,ij=value。
具体地,所述步骤(2)包括以下子步骤:
(2.1)对训练数据集Dataoracle预处理,即对于每个用户地址vi∈V,首先将vi视作中心地址,并提取其交易伙伴作为一阶交易地址,将地址间第一笔交易e0的时间戳将被定义为开始时间。
(2.2)保留一阶交易地址在开始时间后的交易伙伴,并重复步骤(1.1)直到获取目标地址vi的K阶邻居地址集Ni和交易集Ei,且K≥2;并且保留交易集Ei的前Q笔交易得到交易集Ei={e1,...,eQ},并利用得到交易集Ei={e1,...,eQ}限制交易演化图的图规模。
(2.3)从步骤(2.2)中获取的交易集Ei={e1,...,eQ}进行预处理,即对于目标地址vi,计算其交易ej的交易演化时间,其中ej∈Ei,其公式如下,
其中ti是ei的初始时间戳,tmax和tmin分别表示交易集合E中最大与最小时间戳。
ti是ei的初始时间戳,tmax和tmin分别表示交易集Ei中最大与最小时间戳。
(2.4)根据步骤(2.3)中的交易演化时间,将交易集Ei平均划分到T个时间切片中,来模拟中心地址vi在T个时间中的交易演化过程,并且将邻接矩阵{A1,...,An}根据T划分为{A1,...,AT},其中T<n,即把n划分为了T段,同一段的邻接矩阵叠加。
(2.5)将相同地址间的多笔交易合并为一笔交易,并将它们的交易金额总和与平均时间戳作为新的交易信息;然后根据最终得到的交易记录构建T个有向加权图,即交易演化图TEGs。
具体地,所述步骤(3)包括以下子步骤:
(3.1)将第t个演化时间段的图结构信息映射到d维节点上得到当前结构特征Zt,其中t∈{1,...,T}其表达式为:
其中,At是第t个演化时间段的邻接矩阵且At∈RN×N;是添加自连接的Gt的邻接矩阵且IN(t)是图网络Gt的自连边矩阵,是的度值矩阵且ht-1表示t-1时刻的用户行为特征;对于最初的交易模式图,采用节点属性作为图卷积第一层的输入,即h0=X,W0和W1分别表示隐藏层维度为H的隐藏层和输出层的权重参数,其中W0=RN×H,W1=RH×d;σ是激活函数,通常采用Relu函数;
(3.2)从步骤(3.1)得到的当前结构特征Zt与前一时间的交易演化特征ht-1计算更新门zp与重置门rt,其公式如下,
zp=σ(ZtWz+ht-1Uz)
rt=σ(ZtWr+ht-1Ur)
其中,Wz,Wr与Uz,Ur分别表示更新门与重置门的权重参数,其中Wr∈RN×d,Ur∈Rd×d。更新门决定到底要将多少过去的ht-1传递到未来,重置门主要决定有多少ht-1需要遗忘;
(3.3)通过重置门rp存储前一时间的交易演化特征hp-1,并记忆当前时刻的状态来计算候选隐藏状态hp,其公式如下,
hp=tanh(WhZt+(rt⊙ht-1)Uh)
其中Wh和Uh为权重参数,其中,Wh∈RN×d,Uh∈Rd×d;⊙表示矩阵元素相乘;
(3.4)利用步骤(3.3)得到的候选隐藏状态ht与历史交易演化特征ht-1更新当前的交易演化特征ht,其公式如下,
ht=(1-zt)⊙ht-1+zt⊙ht
(3.5)利用步骤(3.4)得到的当前的交易演化特征hp计算其当前的聚类分配矩阵Cp,其公式如下,
具体地,所述步骤(4)包括以下子步骤:
(4.1)重复步骤(3.1)到(3.5)T次,分别得到地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}。
(4.2)根据交易演化图的邻接矩阵{A1,...,AT},地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}构建当前交易演化图,p时刻的演化图中邻接矩阵{A1,...,AT}和地址交易演化特征{h1,...,hT}池化过程如下:
具体地,所述步骤(5)包括以下子步骤:
(5.2)将目标地址vi和演化特征hi输入至由多层感知机构成的动态图分类模型(MLP模型)中,并利用损失函数优化动态图分类模型,其损失函数为的标签Y的预测交叉熵,其公式如下:
其中,表示在训练集中目标地址vi的交易演化图;Y={y1,...,yn}表示演化图的标签集合;为Softmax函数,如果属于标签yi,则Yij=1,否则Yij=0;Yij表示的预测置信度的第j项,以及作为的邻接矩阵与节点属性Ai和Xi的函数,利用Yij(Ai,Xi)来表示;
(5.3)由取得的交易演化图TEGs和步骤(5.2)中的损失函数L对动态图分类模型的参数进行优化训练,训练目标是通过梯度的前向和反向传播调整网络的结构参数,降低模型的损失函数值,得到基于鲁棒图分类的钓鱼检测器。
本发明的有益效果如下:
发明首先为目标用户的多个时间切片构建交易演化图,旨在更好地保留区块链用户地址的空间结构与时间信息。其次,设计一种快速的非参数钓鱼检测器来缩小可疑地址的搜索空间。最后,提出基于鲁棒图分类的钓鱼检测器提取交易演化图中包含的空间和时间信息的演变过程,来提高目标用户地址不断演化的交易行为表征提取的准确度,最终提高钓鱼检测的性能。
附图说明
图1是交易演化图的构建流程;
图2是基于鲁棒图分类的区块链钓鱼检测器的框架图;
图3是基于鲁棒图分类的区块链钓鱼检测的方法流程图。
具体实施方式
下面结合附图对本发明作进一步描述。
本发明实施例提供了一种基于鲁棒图分类的区块链钓鱼检测方法,请参考图1,图2,包括以下步骤:
(1)将Xblock平台获取的以太坊交易数据集作为训练数据集Dataoracle。
(1.1)所述的图神经网络模型执行的下游任务为动态图分类任务,并采用标记的动态图和相应的标签Y={y1,...,yn}作为输入,输入至图神经网络模型中,其中动态图的第p个快照用Gp表示,其拓扑结构表示为邻接矩阵{A1,...,An}。
该数据集为针对动态图分类任务,给定一系列快照图其中Gp=(V,Ep,X)表示动态图的第p个快照。在区块链交易网络中,V={v1,...,vN}是具有|V|=N个用户钱包地址的集合。ei,j=<vi,vj>∈Ep表示地址vi与vj在固定时间跨度[Tp-1,Tp]间存在交易;X是节点属性矩阵,且X∈RN×D,其中D表示X的维度;第p个快照图Gp的拓扑结构可以用邻接矩阵Ap表示,且Ap∈RN×N,其中,当地址vi将金额为value的物品转出至地址vj,则Ap,ij=value。
(2)构建交易演化图
(2.1)从步骤(1.2)中的训练数据集Dataoracle预处理,即对于每个用户地址vi∈V,首先将vi视作中心地址,并提取其交易伙伴作为一阶交易地址,这些地址间第一笔交易e0的时间戳将被定义为开始时间。
(2.2)使用步骤(2.1)的方法保留一阶交易地址在开始时间后的交易伙伴,并重复步骤(2.1)直到获取vi的K阶邻居地址集Ni和交易集Ei,且K大于等于2,并且保留交易集Ei的前Q笔交易得到交易集Ei={e1,...,eQ},并利用得到交易集Ei={e1,...,eQ}来限制交易演化图(TEGs)的图规模。
(2.3)从步骤(2.2)中获取的交易集E={e1,...,e|E|}进行预处理,即对于目标地址vi,计算其交易ei∈E的交易演化时间,其公式如下,
(2.4)将相同地址间的多笔交易合并为一笔交易,并将它们的交易金额总和与平均时间戳作为新的交易信息;然后根据最终得到的交易记录构建T个有向加权图,作为最终的交易演化图。
(3)演化特征提取
(3.1)采用双层GCN的结构作为特征提取器,具体为将第p个演化时间段的图结构信息映射到d维节点上得到当前结构特征Zt,其表达式为:
其中Ap∈RN×N是第p个演化时间段的邻接矩阵,是添加自连接的Gp的邻接矩阵,IN(p)是图网络Gp的自连边矩阵,是的度值矩阵。hp-1表示p-1时刻的用户行为特征。对于最初的交易模式图,采用节点属性作为图卷积第一层的输入,即h0=X。W0=RN×H和W1=RH×d分别表示隐藏层维度为H的隐藏层和输出层的权重参数。σ是激活函数,通常采用Relu函数。
(3.2)从步骤(3.1)得到的当前结构特征Zt与前一时间的交易演化特征hp-1计算更新门zp与重置门rp,其公式如下,
zp=σ(ZpWz+hp-1Uz)
rp=σ(ZpWr+hp-1Ur)
其中,Wz,Wr∈RN×d与Uz,Ur∈Rd×d分别表示更新门与重置门的权重参数。更新门决定到底要将多少过去的hp-1传递到未来,重置门主要决定有多少hp-1需要遗忘。
(3.3)通过重置门rp存储前一时间的交易演化特征hp-1,并记忆当前时刻的状态来计算候选隐藏状态hp,其公式如下,
hp=tanh(WhZp+(rp⊙hp-1)Uh)
其中Wh∈RN×d和Uh∈Rd×d为权重参数。⊙表示矩阵元素相乘。
(3.4)利用步骤(3.3)得到的候选隐藏状态hp与历史交易演化特征hp更新当前的交易演化特征hp,其公式如下,
hp=(1-zp)⊙hp-1+zp⊙hp
(4)演化图池化
(4.1)利用步骤(3.4)得到的当前的交易演化特征hp计算其当前的聚类分配矩阵Cp,其公式如下,
(4.2)根据的邻接矩阵{A1,...,AT},地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}构建当前交易演化图,p时刻的演化图池化过程如下,
(5)交易行为识别
(5.1)从步骤(4.2)中得到的N个地址簇的演化特征 利用特征聚合机制为不同时间的演化特征分配各自的时间系数α=[α1,...,αT],以此将T个演化特征聚合为目标地址vi唯一的演化特征hi,其公式如下,
(5.2)将目标地址vi和演化特征hi输入至带有Softmax分类器的MLP模型中(即多层感知机构成的动态图分类模型),利用损失函数优化带有Softmax分类器的MLP层得到,其损失函数为步骤(1.1)中的标签Y上的预测交叉熵,其公式如下,
其中表示在训练集中目标地址vi的交易演化图;Y={y1,...,yn}表示演化图的标签集合。如果属于标签yi,则Yij=1,否则Yij=0。Yij表示的预测置信度的第j项,并且可以考虑作为的邻接矩阵与节点属性Ai和Xi的函数,因此可以表示为Yij(Ai,Xi)。
(5.3)从步骤(2.4)取得的演化图TEGs和步骤(5.2)中的损失函数L对MLP模型的参数进行优化,训练目标是通过梯度的前向和反向传播调整网络的结构参数,不断降低模型的损失函数值,得到基于鲁棒图分类的钓鱼检测器;所述MLP模型为带有Softmax分类器的MLP模型;
(6)钓鱼检测器的使用
(6.1)对需要输入钓鱼检测器动态图分类的数据Dreal进行预处理,再构建经过预处理的交易演化图TEGs。
(6.2)将步骤(6.1)获取经过预处理的交易演化图TEGs输入至完成训练的基于鲁棒图分类的钓鱼检测器中,即得到相应的任务结果。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (6)
1.一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,该方法包括如下步骤:
(1)获取数据集及训练模型:将Xblock平台获取的以太坊交易数据集作为训练数据集Dataoracle,将所述训练数据集给定一系列动态快照图序列和对应的标签Y={y1,...,yT}作为输入,输入至图神经网络模型中,其中动态图的第p个快照用Gp表示,其拓扑结构表示为邻接矩阵{A1,...,An};
(2)构建交易演化图:对步骤(1)中的训练数据集Dataoracle进行多次预处理直至获取目标地址K阶邻居地址集和交易集,且K≥2;并且保留、利用交易集的前Q笔交易得到交易集来限制交易演化图的图规模;最后再对交易集进行预处理,计算其交易的交易演化时间,再将交易集平均划分到T个时间切片中,来模拟中心地址在T个时间中的交易演化过程,并且将训练数据中原始邻接矩阵{A1,...,An}根据T划分为交易演化图的邻接矩阵{A1,...,AT};将相同地址间的多笔交易合并为一笔交易,并将它们的交易金额总和与平均时间戳作为新的交易信息;最后根据最终得到的交易记录构建T个有向加权图,即交易演化图TEGs;
(3)演化特征提取:将第t个演化时间段的图结构信息映射到d维节点上得到当前结构特征Zt,当前结构特征Zt与前一时间的交易演化特征ht-1计算更新门zt与重置门rt,通过重置门rt存储前一时间的交易演化特征ht-1,并记忆当前时刻的状态来计算候选隐藏状态ht,通过候选隐藏状态ht与历史交易演化特征ht-1更新当前的交易演化特征ht,再利用当前的交易演化特征ht计算其当前的聚类分配矩阵Ct;
(4)构建当前交易演化图:演化图池化重复步骤(3)T次,分别得到地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT};根据交易演化图的邻接矩阵{A1,...,AT},地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}构建当前交易演化图,并对p时刻的演化图中邻接矩阵{A1,...,AT}和地址交易演化特征{h1,...,hT}池化;
(5)训练模型:交易行为识别通过步骤(4)得到的N个地址簇的演化特征利用特征聚合机制为不同时间的演化特征分配各自的时间系数,以此将T个演化特征聚合为目标地址唯一的演化特征hi,将目标地址和演化特征hi输入至由多层感知机构成的动态图分类模型中,并利用损失函数优化动态图分类模型,由步骤(2)得到的交易演化图TEGs和步骤(5)中的损失函数L对动态图分类模型的参数进行优化训练,降低模型的损失函数值,得到基于鲁棒图分类的钓鱼检测器;
(6)使用钓鱼检测器:对需要输入钓鱼检测器动态图分类的数据Dreal进行预处理,构建经过预处理的交易演化图TEGs;将得到的经过预处理的交易演化图TEGs输入到步骤(5)得到基于鲁棒图分类的钓鱼检测器,得到相应的任务结果。
2.根据权利要求1所述的一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,所述步骤(1)中动态快照图的第p个快照用Gp=(V,Ep,X)来表示,具体为,在区块链交易网络中,V={v1,...,vN}是具有|V|=N个用户钱包地址的集合;ei,j=<vi,vj>∈Ep表示地址vi与vj在固定时间跨度[Tp-1,Tp]间存在交易;X∈RN×D是节点属性矩阵,其中D表示X的维度;第p个快照图Gp的拓扑结构可以用邻接矩阵Ap∈RN×N表示,其中,如果地址vi将金额为value的物品转出至地址vj,则Ap,ij=value。
3.根据权利要求1所述的一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,所述步骤(2)包括以下子步骤:
(2.1)对训练数据集Dataoracle预处理,即对于每个用户地址vi∈V,首先将vi视作中心地址,并提取其交易伙伴作为一阶交易地址,将地址间第一笔交易e0的时间戳将被定义为开始时间;
(2.2)保留一阶交易地址在开始时间后的交易伙伴,并重复步骤(1.1)直到获取目标地址vi的K阶邻居地址集Ni和交易集Ei,且K≥2;并且保留交易集Ei的前Q笔交易得到交易集Ei={e1,...,eQ},并利用得到交易集Ei={e1,...,eQ}限制交易演化图的图规模;
(2.3)从步骤(2.2)中获取的交易集Ei={e1,...,eQ}进行预处理,即对于目标地址vi,计算其交易ej的交易演化时间,其中ej∈Ei,其公式如下,
其中ti是ei的初始时间戳,tmax和tmin分别表示交易集合E中最大与最小时间戳;
其中,ET是个整体演化时间,ETej(vi,Ei)表示对于目标地址vi,ej交易的演化时间;
ti是ei的初始时间戳,tmax和tmin分别表示交易集Ei中最大与最小时间戳;
(2.4)根据步骤(2.3)中的交易演化时间,将交易集Ei平均划分到T个时间切片中,来模拟中心地址vi在T个时间中的交易演化过程,并且将邻接矩阵{A1,...,An}根据T划分为{A1,...,AT},其中T<n,即把n划分为了T段,同一段的邻接矩阵叠加;
(2.5)将相同地址间的多笔交易合并为一笔交易,并将它们的交易金额总和与平均时间戳作为新的交易信息;然后根据最终得到的交易记录构建T个有向加权图,即交易演化图TEGs。
4.根据权利要求1所述的一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,所述步骤(3)包括以下子步骤:
(3.1)将第t个演化时间段的图结构信息映射到d维节点上得到当前结构特征Zt,其中t∈{1,...,T}其表达式为:
其中,At是第t个演化时间段的邻接矩阵且At∈RN×N;是添加自连接的Gt的邻接矩阵且IN(t)是图网络Gt的自连边矩阵,是的度值矩阵且ht-1表示t-1时刻的用户行为特征;对于最初的交易模式图,采用节点属性作为图卷积第一层的输入,即h0=X,W0和W1分别表示隐藏层维度为H的隐藏层和输出层的权重参数,其中W0=RN×H,W1=RH×d;σ是激活函数,通常采用Relu函数;
(3.2)从步骤(3.1)得到的当前结构特征Zt与前一时间的交易演化特征ht-1计算更新门zp与重置门rt,其公式如下,
zp=σ(ZtWz+ht-1Uz)
rt=σ(ZtWr+ht-1Ur)
其中,Wz,Wr与Uz,Ur分别表示更新门与重置门的权重参数,其中Wr∈RN×d,Ur∈Rd×d;更新门决定到底要将多少过去的ht-1传递到未来,重置门主要决定有多少ht-1需要遗忘;
(3.3)通过重置门rp存储前一时间的交易演化特征hp-1,并记忆当前时刻的状态来计算候选隐藏状态hp,其公式如下,
hp=tanh(WhZt+(rt⊙ht-1)Uh)
其中Wh和Uh为权重参数,其中,Wh∈RN×d,Uh∈Rd×d;⊙表示矩阵元素相乘;
(3.4)利用步骤(3.3)得到的候选隐藏状态ht与历史交易演化特征ht-1更新当前的交易演化特征ht,其公式如下,
ht=(1-zt)⊙ht-1+ztht
(3.5)利用步骤(3.4)得到的当前的交易演化特征hp计算其当前的聚类分配矩阵Cp,其公式如下,
5.根据权利要求1所述的一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,所述步骤(4)包括以下子步骤:
(4.1)重复步骤(3.1)到(3.5)T次,分别得到地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT};
(4.2)根据交易演化图的邻接矩阵{A1,...,AT},地址交易演化特征{h1,...,hT}和分配矩阵{C1,...,CT}构建当前交易演化图,p时刻的演化图中邻接矩阵{A1,...,AT}和地址交易演化特征{h1,...,hT}池化过程如下:
6.根据权利要求1所述的一种基于鲁棒图分类的区块链钓鱼检测方法,其特征在于,所述步骤(5)包括以下子步骤:
(5.2)将目标地址vi和演化特征hi输入至由多层感知机构成的动态图分类模型中,即输入MLP模型,并利用损失函数优化动态图分类模型,其损失函数为的标签Y的预测交叉熵,其公式如下:
其中,表示在训练集中目标地址vi的交易演化图;Y={y1,...,yn}表示演化图的标签集合;为Softmax函数,如果属于标签yi,则Yij=1,否则Yij=0;Yij表示的预测置信度的第j项,以及作为的邻接矩阵与节点属性Ai和Xi的函数,利用Yij(Ai,Xi)来表示;
(5.3)由取得的交易演化图TEGs和步骤(5.2)中的损失函数L对动态图分类模型的参数进行优化训练,训练目标是通过梯度的前向和反向传播调整网络的结构参数,降低模型的损失函数值,得到基于鲁棒图分类的钓鱼检测器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211016797.5A CN115510948A (zh) | 2022-08-24 | 2022-08-24 | 一种基于鲁棒图分类的区块链钓鱼检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211016797.5A CN115510948A (zh) | 2022-08-24 | 2022-08-24 | 一种基于鲁棒图分类的区块链钓鱼检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115510948A true CN115510948A (zh) | 2022-12-23 |
Family
ID=84501541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211016797.5A Withdrawn CN115510948A (zh) | 2022-08-24 | 2022-08-24 | 一种基于鲁棒图分类的区块链钓鱼检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115510948A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116527313A (zh) * | 2023-03-23 | 2023-08-01 | 中国科学院信息工程研究所 | 一种区块链钓鱼行为检测方法及装置 |
-
2022
- 2022-08-24 CN CN202211016797.5A patent/CN115510948A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116527313A (zh) * | 2023-03-23 | 2023-08-01 | 中国科学院信息工程研究所 | 一种区块链钓鱼行为检测方法及装置 |
CN116527313B (zh) * | 2023-03-23 | 2024-04-19 | 中国科学院信息工程研究所 | 一种区块链钓鱼行为检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110298663B (zh) | 基于序列宽深学习的欺诈交易检测方法 | |
Matijaš et al. | Load forecasting using a multivariate meta-learning system | |
CN111079931A (zh) | 一种基于图神经网络的状态空间概率性多时间序列预测方法 | |
CN110503531A (zh) | 时序感知的动态社交场景推荐方法 | |
CN113362160A (zh) | 一种用于***反欺诈的联邦学习方法和装置 | |
Esquivel et al. | Spatio-temporal prediction of Baltimore crime events using CLSTM neural networks | |
CN112685504B (zh) | 一种面向生产过程的分布式迁移图学习方法 | |
CN111292195A (zh) | 风险账户的识别方法及装置 | |
CN109272332B (zh) | 一种基于递归神经网络的客户流失预测方法 | |
CN111785014A (zh) | 一种基于dtw-rgcn的路网交通数据修复的方法 | |
CN113297936B (zh) | 一种基于局部图卷积网络的排球群体行为识别方法 | |
CN113283902B (zh) | 一种基于图神经网络的多通道区块链钓鱼节点检测方法 | |
CN111582538A (zh) | 一种基于图神经网络的社群价值预测方法及*** | |
CN110889560A (zh) | 一种具有深度可解释性的快递序列预测的方法 | |
CN117061322A (zh) | 物联网流量池管理方法及*** | |
CN110991247B (zh) | 一种基于深度学习与nca融合的电子元器件识别方法 | |
Tian et al. | Genetic algorithm based deep learning model selection for visual data classification | |
CN115510948A (zh) | 一种基于鲁棒图分类的区块链钓鱼检测方法 | |
Chatterjee et al. | Non-dominated sorting genetic algorithm—II supported neural network in classifying forest types | |
CN113409157B (zh) | 一种跨社交网络用户对齐方法以及装置 | |
CN117808214A (zh) | 水利工程数据分析*** | |
CN111783688B (zh) | 一种基于卷积神经网络的遥感图像场景分类方法 | |
CN116258504B (zh) | 银行客户关系管理***及其方法 | |
CN114265954B (zh) | 基于位置与结构信息的图表示学习方法 | |
CN114417938B (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20221223 |