掌桥专利:专业的专利平台
掌桥专利
首页

基于跨模态检索的区块链赌博行为识别方法及系统

文献发布时间:2023-06-19 19:30:30


基于跨模态检索的区块链赌博行为识别方法及系统

技术领域

本发明属于区块链安全领域,具体涉及一种基于跨模态检索的区块链赌博行为识别方法及系统。

背景技术

近年来,区块链技术发展迅速,受到了各界的广泛关注。区块链本质上是一个分布式账本,在点对点网络中的所有参与节点之间共享。区块链最关键特征是它能在互不信任的点对点网络中维护一个安全且不可变的交易账本。区块链技术的出现为智能合约提供了执行环境。智能合约是存储在区块链上的程序,能够按照预设置的条件自动执行,且该执行是确定且不可逆的,从而确保所有参与者的公平。

传统的赌博网站存在诸如赌博过程不透明、奖池虚构和拒绝支付获胜者奖金等问题;相比之下,基于智能合约的赌博应用是严格按照预定义的规则来执行赌博规则,且整个过程是完全透明的。因此,基于智能合约的赌博应用数量在过去几年中飞速增长,这也进一步对区块链上的赌博行为识别和监管提出了严格要求。

当前,区块链网络中实体和交易数量已经达到数亿规模,且数量还在急剧上升。通过对这些实体和交易进行分析,用户能够清楚感知区块链中存在的赌博风险,从而保障用户自身权益;此外,对区块链中实体和交易的赌博行为进行识别也能为整个区块链生态系统提供一种新颖的安全防护方案。然而,现阶段并没有能够自动识别区块链赌博行为的技术方案,主要存在以下困难:

(1)区块链中的交易、账户、智能合约等数据是异构的、多模态的,要实现对赌博行为的分析,就需要联合交易、地址账户、智能合约等这多种实体类型。现阶段仍然缺乏针对性的跨模态数据提取方法。

(2)智能合约在部署到以太坊之前被编译成字节码。汇编语言形式的字节码不同于源码,它由一系列二进制码组成,很难利用工具直接进行理解和分析。现有的方法通常采用人工经验、反编译等手段对字节码进行分析,这些方法一方面无法准确捕捉到智能合约的语义信息,另一方面会产生大量的误判。

(3)不同地址的交易数据规模差异很大。一个地址参与交易的数量通常为一条到上万条不等,要实现对交易数据进行分析,需要为这些交易规模差异巨大的地址设计一个通用的特征提取框架。

发明内容

针对区块链中大规模赌博行为识别技术存在的难点,本发明提供了基于跨模态检索的区块链赌博行为识别方法及系统。本发明通过对区块链网络中大规模的异构数据进行收集,引入反编译技术和图信息提取技术对数据进行处理,其中反编译技术用于对智能合约的特征进行提取,图信息提取技术用于对地址的交易特征进行提取;最后,利用跨模态检索技术实现对参与赌博的智能合约和地址的识别。

本发明采用的技术方案如下:

第一个目的,本发明提供了一种基于跨模态检索的区块链赌博行为识别方法,包括如下步骤:

(1)智能合约赌博行为识别:利用智能合约字节码来识别与赌博相关的智能合约;

(2)地址赌博行为识别:利用图信息提取技术来识别与赌博合约相关的地址;

(3)赌博行为识别结果校正:根据地址赌博行为识别结果,采用反馈校正方法对步骤(1)得到的智能合约赌博行为识别结果进行校正。

进一步地,所述步骤(1)包括:

(1-1)通过反编译技术对智能合约字节码进行反编译,得到智能合约操作码序列;

(1-2)从智能合约操作码序列中提取与赌博行为相关的操作码,根据每一个与赌博行为相关的操作码的出现次数构建智能合约的特征向量;

(1-3)采用基于记忆组件的LightGBM分类模型对智能合约的特征向量进行分类,分类类型包括赌博合约和非赌博合约。

进一步地,所述步骤(2)包括:

(2-1)收集与赌博合约进行过交易的地址和对应的交易金额,对每一个交易地址构建交易图;

(2-2)从交易图中提取交易特征向量,包括基础指标特征、度指标特征和金额指标特征;所述的基础指标特征由交易图的边数量、点数量、输入边数量和输出边数量构成,所述的度指标特征由交易图的度数、入度数和出度数构成;所述的金额指标特征由总金额数、总输入金额数、总输出金额数、平均金额数、平均输入金额数、平均输出金额数、输入金额方差和输出金额方差构成;

(2-3)采用基于记忆组件的LightGBM分类模型对交易图的交易特征向量进行分类,分类类型包括赌博地址和非赌博地址。

进一步地,所述交易图的构建方法为:将每一个交易地址转换为点,如果所述交易地址在某一条交易中是支付地址,则构建从该交易地址出发的输出边;相反,如果所述交易地址是收款地址,则构建指向该交易地址的输入边;边的权重为交易金额。

进一步地,所述的基于记忆组件的LightGBM分类模型的训练过程为:

a,在第一轮训练中,使用所有训练样本训练LightGBM分类模型;

b,将被错误分类的样本及其对应的标签挑选出来,放入记忆组件中;

c,在第下一轮训练中,首先采用所有训练样本对LightGBM分类模型进行k个epoch的训练,然后添加一个额外的epoch来重放记忆组件中记录的错误分类的样本,所述额外的epoch的构建方法为:假设每个epoch的训练样本数量为n,则从记忆组件中所有错误分类的样本中随机选取出n个样本来构造额外的epoch,如果错误分类的样本数量不足n,则从全部的训练样本中随机抽取补足;

d,重复步骤b至c,直至迭代结束。

进一步地,步骤(3)中所述的反馈校正方法为:如果与赌博合约相关的所有地址中,被识别为赌博地址的比例不超过阈值,则将赌博合约的识别结果校正为非赌博合约。

第二个目的,本发明提供了一种基于跨模态检索技术的区块链赌博行为识别系统,包括:

智能合约赌博行为识别模块,其用于利用智能合约字节码来识别与赌博相关的智能合约;

地址赌博行为识别模块,其用于利用图信息提取技术来识别与赌博合约相关的地址;

赌博行为识别结果校正模块,其用于根据地址赌博行为识别模块的识别结果,采用反馈校正方法对智能合约赌博行为识别模块的识别结果进行校正。

作为本发明的优选,所述的智能合约赌博行为识别模块包括:

EVM反编译器,其用于通过反编译技术对智能合约字节码进行反编译,得到智能合约操作码序列;

操作符提取器,其用于从智能合约操作码序列中提取与赌博行为相关的操作码,根据每一个与赌博行为相关的操作码的出现次数构建智能合约的特征向量;

智能合约分类器,其用于采用基于记忆组件的LightGBM分类模型对智能合约的特征向量进行分类,分类类型包括赌博合约和非赌博合约。

作为本发明的优选,所述的地址赌博行为识别模块包括:

交易图构造器,其用于收集与赌博合约进行过交易的地址和对应的交易金额,对每一个交易地址构建交易图;

图结构提取器,其用于从交易图中提取交易特征向量,包括基础指标特征、度指标特征和金额指标特征;所述的基础指标特征由交易图的边数量、点数量、输入边数量和输出边数量构成,所述的度指标特征由交易图的度数、入度数和出度数构成;所述的金额指标特征由总金额数、总输入金额数、总输出金额数、平均金额数、平均输入金额数、平均输出金额数、输入金额方差和输出金额方差构成;

地址行为分类器,其用于采用基于记忆组件的LightGBM分类模型对交易图的交易特征向量进行分类,分类类型包括赌博地址和非赌博地址。

作为本发明的优选,所述赌博行为识别结果校正模块中的反馈校正方法为:如果与赌博合约相关的所有地址中,被识别为赌博地址的比例不超过阈值,则将赌博合约的识别结果校正为非赌博合约。

本发明在现有的区块链赌博实体行为识别研究中主要有以下贡献:

(1)本发明首次提出了从区块链多模态数据中检测赌博合约和赌博地址的新问题,,并提出了该问题的首个精准高效的解决思路,具体设计了两个针对多模态数据的特征提取方法,分别为智能合约字节码特征提取范式以及以太坊地址交易的特征提取范式,实现了对参与赌博的合约和地址的高精度识别。通过在百万级以上的数据集中验证得到,本发明所提出的方法在赌博地址和赌博合约两个任务的F1-score指标上分别达到了0.72和0.89,充分说明了本发明的有效性。

(2)本发明创新性地提出了跨模态的分类结果校正机制。该校正机制能够利用赌博地址的分类结果对赌博合约的分类结果进行校正,能够在不降低召回率的前提下提高分类的精确度,从而提高框架整体的识别准确率。通过采用分类结果校正机制,赌博合约分类的F1-score指标从0.82上升到了0.89,充分说明了本发明的有效性。

(3)本发明创新性地提出了带有记忆组件的LightGBM分类模型。该分类模型在训练过程中,通过挑选出上一轮训练时被错误分类的样本,并将其用于下一轮训练中的样本子集构建中,能够进一步提高赌博行为识别的分类准确度。

附图说明

图1为本发明的整体设计结构图。

图2为本发明的识别步骤示意图。

图3为本发明的交易图结构示意图。

具体实施方式

为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,以令本领域技术人员参照说明书文字能够据以实施。下面将附图结合具体实施方式对本发明的技术加以详细说明。

本发明的整体设计结构图如图1所示,重点分为赌博合约分类和赌博地址分类两部分。赌博合约分类部分包括EVM反编译器、操作符提取器和智能合约分类器;赌博地址分类部分包括交易图构造器、图结构提取器和地址行为分类器。

第一个步骤:赌博合约分类

组件1:EVM反编译器。由于大多数智能合约以字节码的形式存在,因此本发明实现了一个EVM反汇编程序来从中提取EVM操作码。

具体来说,字节码是一个可执行程序,由一系列<操作码、数据>对组成。以太坊虚拟机(EVM)是以太坊上字节码的运行时环境。为了分析智能合约的执行逻辑,系统需要首先使用EVM的操作码规则将字节码解析为二进制码。解析后的二进制码包括了EVM操作码和操作数,EVM操作码分为特定的指令集,例如算术运算、逻辑和比较运算、控制流、系统调用、堆栈操作和内存操作。除了典型的字节码操作之外,EVM还必须管理账户信息(例如,地址和余额)、当前gas价格和区块信息。表1列出了几种常见的以太坊操作码,每个操作码对应一个特定的汇编语言操作。

表1常见的以太坊操作码

组件2:操作符提取器。通过EVM反编译器对智能合约的字节码进行反汇编后,系统能够得到其对应的EVM操作码序列。由于操作码序列是非结构化数据,并且不同合约的操作码序列具有不同的长度,因此系统需要将操作码序列进一步编码为固定长度的特征向量。

本发明研究了EVM反编译器中的所有136个操作码操作,并计算了每个智能合约中每个操作码的出现次数。与其他智能合约不同,赌博合约经常涉及随机数生成操作和赌博资金收集操作。通过进一步观察,本发明发现一些操作码很少出现在合约中(例如,PUSH5-PUSH32、DUP5-DUP16、SWAP5-SWAP16等)。基于这些观察,系统丢弃了部分很少使用且与赌博无关的操作码。最后,系统确定了80个操作码操作,并利用智能合约中每个操作码操作的出现次数作为特征。

组件3:智能合约分类器。在智能合约二进制程序经过EVM反汇编器和操作码特征提取器之后,系统能够将每个智能合约映射到一个特征向量。然后,系统使用分类模型来区分赌博合约的特征向量和其他合约的特征向量。本实施例中,系统选择LightGBM作为系统的智能合约分类器。同时,为了使模型更加智能,本发明创新提出了基于记忆组件的LightGBM分类模型。

传统LightGBM使用损失函数的负梯度作为当前决策树的残差逼近,然后使用残差逼近来拟合新的决策树。本发明提出的基于记忆组件的LightGBM分类模型的工作过程可以概括为:

(1)在第一轮训练中,系统使用所有训练样本训练LightGBM分类模型。

(2)系统将训练好的分类模型中所有被错误分类的样本及其对应的标签都挑选出来,放入记忆组件中。

(3)在第下一轮训练中,系统使用所有训练样本重新训练分类模型。然而,在每k个epoch之后,系统添加一个额外的epoch来重放记忆组件中记录的错误分类的样本。更具体地说,假设每个epoch的训练样本数量为n,则系统从记忆组件中所有错误分类的样本中随机选取出n个样本来构造下一轮的训练子集,如果错误的分类的样本数量不足n,则从全部的训练样本中随机抽取补足。

(4)迭代步骤(2)至(3)直到收敛。通过添加记忆组件,使得最终训练得到的LightGBM模型能够提高学习错误样本的能力,最终提高了分类的准确性。

第二个步骤:赌博地址分类

组件1:交易图构造器。与传统交易不同,区块链平台上的交易特征能够利用的信息极少。因此本系统仅提取付款地址、收款地址和交易金额作为交易的特征。对于每个地址,系统获取所有与该地址发生过交易的地址进行建模,并将交易转换为边,地址信息转换为点,构造地址交易图。本实施例中,如果该地址在某一条交易中是支付地址,则构建从该地址出发的输出边。相反,如果该地址是收款地址,则构建指向该地址的输入边。边的权重被设置为交易金额。图3展示了一个典型的交易图。

组件2:图结构提取器。为了从交易图中提取特征,系统使用了三种指标,即基本指标、度指标和金额指标,如表2所示。

表2从交易图中提取的信息

基本指标:主要关注图的整体结构,该指标能够捕获交易图中的节点数、边数和边类型。

度指标:涉及图的节点信息。度指标主要对节点的平均度、平均入度和平均出度进行建模,其中,节点i的出度是指从节点i指向其他节点的边的数目,节点i的入度是指从其他节点指向节点i的边的数目。

金额指标:集中在交易图中边的信息。金额指标主要包括边的交易金额总和、平均交易金额和交易金额方差。

组件3:地址行为分类器。在获得每个地址的交易图特征后,系统使用机器学习模型对地址进行分类,即分类为赌博地址和非赌博地址。本实施例中,采用与赌博合约分类部分相同的基于记忆组件的LightGBM模型作为分类器,使用地址数据对其进行训练。

第三个步骤:赌博行为识别结果校正

由于以太坊上的合约数量众多,赌博合约只占其中的一小部分。因此,即使智能合约分类器的误报率很小,也会导致大量非赌博合约被归类为赌博合约。因此本发明设计了一种基于信息反馈的校正机制,以进一步降低智能合约分类器的误报率。

根据经验,如果与合约关联的大多数地址不是赌博地址,那么该合约很大可能不是赌博合约。经过实验横向比较,系统最终选择阈值为80%,如果与合约相关联的地址中只有不到80%是赌博地址,那么该合约很可能是误报样本。采用这种方法后,智能合约分类器的误报率大大降低。

上述各组件构成了本发明的基于跨模态检索的区块链赌博行为识别系统,该系统的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。系统实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。例如,在本发明的一项具体实施中,基于跨模态检索的区块链赌博行为识别方法,包括如下步骤,如图2所示:

(1)智能合约赌博行为识别:基于智能合约字节码识别涉及赌博行为的智能合约。具体来说,通过反编译技术对字节码进行反编译,得到智能合约操作码(Opcode);然后,为操作码定义相应的特征提取规则,采用一种新颖的赌博行为分类器,该分类器由机器学习模型和记忆组件组成,能够识别赌博合约。

(2)区块链地址赌博行为识别:在完成第(1)步后,收集参与赌博的智能合约,通过捕捉与这些智能合约有过交易的地址,从而找出疑似参与赌博的地址。为了从这些地址中筛选出真正参与赌博的地址,利用图信息提取技术为每个地址构建了一个交易图,交易图模拟了指定地址和其他地址之间的交易活动,从而揭示了地址的交易特征。同时,利用赌博行为分类器对交易特征进行分类,以识别赌博地址。

(3)赌博行为识别结果校正:采用一种基于信息反馈的校正方法来提高赌博行为识别系统的整体精度。通过对第(2)步中地址分类的结果来对第(1)步中智能合约的分类结果进行校正,从而提高区块链赌博行为识别的总体准确率。

本实施例中,通过在百万级以上的数据集中验证得到,本发明所提出的方法在赌博地址和赌博合约两个任务的F1-score指标上分别达到了0.72和0.89,充分说明了本发明的有效性;若去掉信息反馈的校正方法,赌博合约分类的F1-score指标为0.82,可见,通过采用分类结果校正机制,赌博合约分类的F1-score指标从0.82上升到了0.89,充分说明了信息反馈的校正方法的有效性。

上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

相关技术
  • 一种基于字典学习的对抗跨模态检索方法和系统
  • 基于语义保持的跨模态内容检索方法和系统
  • 一种基于草图检索三维模型的跨模态检索方法
  • 一种基于多模态融合的安卓赌博应用识别方法和系统
  • 基于跨模态动态卷积网络的跨模态视频时刻检索方法
技术分类

06120115931331