一种元宇宙生态下基于分层图注意力机制的以太坊钓鱼识别方法技术

技术编号:39514988 阅读:9 留言:0更新日期:2023-11-25 18:52
本发明专利技术公开了一种基于局部特征与全局表征耦合的

【技术实现步骤摘要】
一种元宇宙生态下基于分层图注意力机制的以太坊钓鱼识别方法


[0001]本专利技术涉及区块链

图神经网络技术,尤其涉及图注意力机制

图数据增强和图对比学习方法


技术介绍

[0002]区块链最早由中本聪于
2008
年提出,它具有三大特点:去中心化

抗篡改

可追溯

区块链通过密码学

点对点传输和共识机制为加密货币交易提供了一个无需可信第三方的分布式交易环境

交易的参与者是匿名的,同时交易记录都是不可逆且可公开访问的

[0003]以太坊是目前最大的支持图灵完备智能合约的区块链平台,据权威机构指出每天大约有
70000
活跃地址在进行交易

随着以太坊的快速发展,经济价值愈发凸显,钓鱼诈骗行为也在平台日渐猖獗,亟需一种行之有效的方法对钓鱼地址进行识别,保障平台系统性安全,保证区块链生态系统良性运作,促进上层去中心化应用可持续发展

[0004]元宇宙是人类运用数字技术构建的,由现实世界映射或超越现实世界,可与现实世界交互的虚拟世界,具备新型社会体系的数字生活空间

用户能够在元宇宙中进行社交

娱乐

创作

教育

交易等社会性和精神性的活动

区块链作为元宇宙去中心化的组成部分,为元宇宙提供一个开放

透明

可信的协作机制

对以太坊钓鱼诈骗行为进行识别不仅能保障区块链平台系统性安全,还能维护元宇宙生态系统的信任体系

[0005]图表征学习是针对图数据的技术,它的主要思想是:利用图本身的结构,通过学习一类映射将高维空间的节点映射到低维空间,并优化这些映射,使学习到的向量能够真实反映原始空间上的拓扑结构

学习好的表示向量可以用于图相关的下游任务

传统机器学习或深度学习方法无法处理非结构化数据,如:社交网络

分子结构

交通流等,图表征学习方法的出现填补了这一空缺

常见的图表征学习方法有:
DeepWalk、Node2Vec、LINE、SDNE、Struct2Vec、Graph2Vec


[0006]图神经网络
(GNN

Graph Neural Netrok)
主要用于处理图结构数据,核心思想是采用聚合信息的方式来提取节点与其邻域之间的信息和依赖关系,在训练过程中,信息不断聚合最终得到节点的特征表示

由于图表征学习只利用了图的拓扑特征而没有使用节点本身的特征,所以图表征学习的效果不如
GNN


得益于
GNN
的优异表现,目前针对图数据的很多研究已经从图表征学习转移到
GNN


[0007]从结构上来说,区块链是天然的图结构数据,节点表示地址,边表示交易

传统的以太坊钓鱼诈骗识别主要是提取人工特征再结合机器学习算法进行分类,此类方法无法提取拓扑信息

图表征学习方法兴起之后,很多人着力研究更能表征图结构的方法,但是此类方法无法利用节点本身的特征

针对无法满足同时提取拓扑信息和节点特征的问题,以太坊钓鱼诈骗识别方法现在主要集中于
GNN
,同时
GNN
也天然适合区块链图数据挖掘


技术实现思路

[0008]本申请第一个方面公开一种基于分层图注意力机制的以太坊钓鱼识别方法,方法流程如图1所示,所述方法包括:
[0009]1)
构建以太坊交易网络

从以太坊浏览器开放接口获取交易数据,然后根据交易数据构建交易网络

由于网络规模十分巨大,所以需要对原始网络进行采样处理得到交易子图

[0010]2)
子图编码

将采样后的子图送入编码器得到子图的嵌入表示

[0011]3)
子图对比学习

对采样后的子图实施两种不同的图数据增强策略生成两种不同的子图视图,将视图送入编码器得到视图嵌入,两个视图嵌入经过映射头之后进行子图对比得到对比学习损失

[0012]4)
预测分类

子图嵌入送入预测头得到交叉熵损失,将交叉熵损失和对比学习损失进行加权相加作为最终的训练损失进行反向传播更新模型参数

训练结束之后,由预测头判断是否为钓鱼诈骗地址

[0013]所述步骤
1)
的原始数据包含
3870561
个交易地址
、195296158
条交易记录
、2010
个标签地址
(
即钓鱼诈骗地址,其余均为非标签地址
)。
采用基于交易额

交易次数

平均交易额的采样方法,经数据清洗和采样处理之后得到三个数据集,平均节点数量分别为:
32.8、31.4、32.6
,平均边数量分别为:
132.6、108.4、122.3。
[0014]所述步骤
2)
所用的编码器为分层图注意力编码器,如图2所示

使用节点级编码器提取子图内部节点间的信息,子图级编码器提取子图间的信息

[0015]节点级编码器首先会对节点原始特征进行线性变换得到节点向量,针对节点向量可以得到节点注意力层,之后可以通过
softmax
函数计算得到注意力分数,节点向量表示可以通过加权求和得到,最终的节点向量表示还要经过图池化操作得到

计算过程公式描述如下:
[0016]h0=
σ
(XW+b)
[0017][0018][0019][0020]h
l

SAGPooling(h
l
)
[0021]其中,
X
表示节点原始特征,
σ
表示激活函数,
h
j
表示邻域节点的特征,
θ
表示权重矩阵,
||
表示拼接操作,
N(i)
表示邻居节点数量,
SAGPooling
表示自注意力图池化

[0022]子图级编码器会将节点编码器生成的向量表示进行读出操作得到子图表示

针对节点向量表示和子图表示可以得到子图注本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于分层图注意力机制的以太坊钓鱼识别方法,所述方法步骤包括:
1)
构建以太坊交易网络
。2)
子图编码

将采样后的子图送入编码器得到子图的嵌入表示
。3)
子图对比学习
。4)
预测分类
。2.
根据权利要求1所述基于分层图注意力机制的以太坊钓鱼识别方法,其特征在于
:
步骤
1)
的原始数据包含
3870561
个交易地址
、195296158
条交易记录
、2010
个标签地址
(
即钓鱼诈骗地址,其余均为非标签地址
)。
采用基于交易额

交易次数

平均交易额的采样方法,经数据清洗和采样处理之后得到三个数据集,平均节点数量分别为:
32.8、31.4、32.6
,平均边数量分别为:
132.6、108.4、122.3。3.
根据权利要求1所述基于分层图注意力机制的以太坊钓鱼识别方法,其特征在于
:
步骤
2)
所用的编码器为分层图注意力编码器,如图2所示

使用节点级编码器提取子图内部节点间的信息,子图级编码器提取子图间的信息

节点级编码器首先会对节点原始特征进行线性变换得到节点向量,针对节点向量可以得到节点注意力层,之后可以通过
softmax
函数计算得到注意力分数,节点向量表示可以通过加权求和得到,最终的节点向量表示还要经过图池化操作得到

计算过程公式描述如下:
h0=
σ
(XW+b)(XW+b)(XW+b)h
l

SAGPooling(h
l
)
其中,
X
表示节点原始特征,
σ
表示激活函数,
h
j
表示邻域节点的特征,
θ
表示权重矩阵,
||
表示拼接操作,
N(i)
表示邻居节点数量,
...

【专利技术属性】
技术研发人员:陈乔松张星宇尹忠钰耿梓源胡杰
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1