1.一种基于知识图谱的区块链匿名追踪方法,其特征在于,包括如下:S1、对区块链切片文件进行解析,得到相应的交易信息,如金额,地址账户,时间戳;
S2、根据可疑事件发生的时间及金额,对可疑事件的发生时间及涉及的金额大小对应的区块链切片文件进行筛选得到相应的地址账户范围,将可疑地址或账户记为A={a1,…,an},其中ai表示第i个地址或账户;地址或账户的交易价值记为m={M1,…,Mn},Mi表示在切片起止条件间αi交易的价值大小;将地址账户间隐藏的规则定义为Rx,依存句法树规则库中的规则集合定义为R={R1,…,Rn},通过将规则Rx与规则库中的规则进行匹配的得到对应的逻辑关系;
S3、根据上述步骤S2得到的逻辑关系及地址账户采用Graph SAGE算法进行嵌入式学习;
S4、对步骤S1解析得到的区块链数据进行启发式实体识别,得到每个账户地址对应的区块链实体,按序号依次进行标识;
S5、使用机器学习对节点间的关系进行训练从而对可疑地址分析推理得到实体间潜在的关系;
S6、利用KSN算法以更加全面的网络拓扑特征来评估节点重要程度。
2.根据权利要求1所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S1中,区块链解析包括如下:S1.1通过区块链的钱包下载交易数据;
S1.2对区块数据进行结构化解析区块数据信息,将解析到的比特币数据的关键字段进行提取并存储到Key‑Value数据库中。
3.根据权利要求1所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S3中,Graph SAGE算法进行嵌入式学习包括如下:S3.1从解析好的区块链数据库中读取相应数据,如时间戳、地址或账户关系;
S3.2将读取出的数据转化为低维向量,其中每个地址的向量维度相同,对相应的地址或账户进行初始化,使之变为固定维度的低维向量;
S3.3将区块链网络中的地址账户按照逻辑关系表示成邻接矩阵A,其中每个地址账户对应唯一id,每个id都对应着该地址账户的初始特征表示向量;
S3.4将S3.3产生的表示地址账户逻辑关系的邻接矩阵A以及各个地址账户的初始向量化表示(也称节点特征)作为Graph SAGE算法的输入,这里将每个地址账户视为图结构中的一个节点,通过Graph SAGE算法的不断迭代执行最终生成了每个节点的向量表示。
4.根据权利要求3所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S3.4中,Graph SAGE算法的执行包括:步骤3.4.1首先对每个节点统一采样一个固定大小的邻域集,在每个迭代k处抽取不同的均匀样本;
步骤3.4.2其次每个节点 在其直接邻域 中聚合节点的表示转化为一个向量 时的向量表示被定义为输入节点特征,表示为:
其中 表示聚合领域的特征表示,u表示节点v的邻居,N(v)表示由邻居组成的节点邻域, 表示当前邻居节点特征,经过聚合函数后生成邻域的当前特征表示 步骤
3.4.3在聚合完相邻的特征向量后,Graph SAGE将节点的当前表示 与聚合邻域向量相连接,这个连接向量通过非线性激活函数σ的全连接层馈送,转化为下一步骤使用的参数,表示为 表示为:k
其中 表示在下一步迭代中的输入特征表示,W表示第k层的权重矩阵,σ表示激活函数一般为Sigmoid;
步骤3.4.4在Graph SAGE经过k次迭代后,对特征表示进行归一化 最终生成每个节点的特征表示
5.根据权利要求1所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S4中,对区块链实体的识别过程包括如下:步骤4.1对所有区块链地址账户按照交易类型进行启发式实体识别,具体如下:步骤4.1.1将所有交易集合定义为T,T={t1,t2,t3,…,tm},m表示交易总数;
步骤4.1.2对于每一笔交易将其定义为一个五元组t=(I,O,VI,VO,F),I表示输入地址账户集合,I={i1,i2,i3,…,in},n为输入地址账户数量;O={o1,o2,o3,…,ok},其中O表示输出地址账户集合,,k为输出地址账户数量;VI表示所有的地址账户输入价值总和,VO表示所有的地址账户输出价值总和,F表示交易费用,其中VI,VO,F集合的计算如公式3,4,5所示:其中 表示单个输入地址账户is的输入价值, 表示单个输入地址账户os的输出价值;
步骤4.2按照区块链的不同交易类型对实体进行识别,从而将不同的地址账户聚类到不同的实体。
6.根据权利要求1所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S5中,对节点向量表示关系的评估包括如下步骤:S5.1每个节点与其特征一一对应表示,从网络中抽取相应的关系及实体,并存留30%的测试集;
S5.2使用DisMult作为打分函数,函数的定义如下所示:其中es和eo是使用Graph SAGE学习到的节点特征表示,Rr是关系r对应的对角矩阵;
S5.3使用负采样训练机器学习模型,对每个正样本采样ω个负样本,即将s或o替换为其他实体,通过优化交叉熵损失函数使模型给正样本的打分高于负样本,具体定义如下所示:其中是T正样本和负样本集合,l是sigmoid函数,y=1表示正样本,y=0表示负样本;
步骤5.4将训练好的模型用于可疑地址的检测,以判断是否存在潜在的关系。
7.根据权利要求1所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S6中,对节点重要程度的评估包括如下步骤:S6.1将区块链网络视为无向图,并对每个节点生成二阶以内邻居节点集合,即从节点v出发2步以内可到达的邻居节点集合,记该集合为τ(v);
S6.2节点v的K‑shell值记为ks(v),K‑shell值通过递归地剥除网络边缘节点所有度为k的节点来解释网络的层次特征,位于核心的节点具有较高的影响力;
S6.3节点v的KSN(the K‑shell and Neighborhood Centrality)值定义如下:节点本身距离网络核心越近,则节点的KSN值越大,则其重要性越高。
8.根据权利要求7所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,所述S6.2对节点K‑shell值地计算如下:S6.2.1首先去除网络中度为k=1的节点,若剩余网络中还存在k=1的节点,则继续去除这些节点;
S6.2.2将所有被删除的度k=1的节点的K‑shell值记为ks=1;
S6.2.3依次令k=2,3,4,…,即完成了网络的K‑shell分解。
9.根据权利要求1‑8任一项所述的一种基于知识图谱的区块链匿名追踪方法,其特征在于,还包括S7、将节点的重要程度使用Gephi算法,进行不同程度的染色实现交易追踪的可视化;具体如下:步骤7.1将节点的KSN值归一化,具体定义如下:
其中KSN(v)表示计算前当前节点KSN值,v表示当前节点,V表示节点集合,K(v)表示归一化后节点的KSN值;
步骤7.2将归一化的值转化为具体模型色彩上的颜色深度,具体定义如下:C(v)=K(v)*α*m (10)其中α为超参数,用于将数值均匀地映射到RGB上,m为具体模型中色彩的表示范围,C(v)表示每个节点的色彩深度;
步骤7.3将生成的潜在节点关系加入邻接矩阵中,从而形成新的区块链网络;
步骤7.4将区块链中的边权重设为1,id与每个地址账户相对应,边的类型为有向边;
步骤7.5将步骤7.4产生的数据格式化为Gephi接收的数据文件格式,其中source表示边的开始节点编号,target表示边的目标节点编号,type表示有向图还是无向图,weight为边的权重;
步骤7.6将格式化的数据导入Gephi生成可视化关系图;
步骤7.7将步骤6.2中产生的节点色彩深度输入Gephi得到节点的色彩表示,从而实现节点的重要性及交易追踪的可视化。
10.一种电子设备,其特征在于,所述电子设备为控制设备或存储设备,所述控制设备内设置有权利要求1‑8任一项所述的一种基于知识图谱的区块链匿名追踪方法,所述存储设备内存储权利要求1‑8任一项所述的一种基于知识图谱的区块链匿名追踪方法的程序代码。