CN110751554A - 区块链中数字货币的智能监测方法及系统 - Google Patents

区块链中数字货币的智能监测方法及系统 Download PDF

Info

Publication number
CN110751554A
CN110751554A CN201910890582.8A CN201910890582A CN110751554A CN 110751554 A CN110751554 A CN 110751554A CN 201910890582 A CN201910890582 A CN 201910890582A CN 110751554 A CN110751554 A CN 110751554A
Authority
CN
China
Prior art keywords
transaction
address
data packet
digital currency
transaction address
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.)
Pending
Application number
CN201910890582.8A
Other languages
English (en)
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.)
Jinan University
University of Jinan
Original Assignee
Jinan University
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 Jinan University filed Critical Jinan University
Priority to CN201910890582.8A priority Critical patent/CN110751554A/zh
Publication of CN110751554A publication Critical patent/CN110751554A/zh
Pending legal-status Critical Current

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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/306Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information intercepting packet switched data communications, e.g. Web, Internet or IMS communications

Abstract

本发明公开了一种区块链中数字货币的智能监测方法及系统,方法包括:首先由区块链路由器向服务器请求获取异常交易地址;在区块链矿工节点向服务器请求获取敏感关键词文件;在区块链服务器中加载机器学习模型;在区块链路由器获取到网络中的数字货币数据包后,滤除包含异常交易地址的数字货币数据包;接着在区块链矿工节点滤除包含敏感关键词的数字货币数据包,控制未被滤除的交易数据进入矿池,由区块链矿工节点打包成区块数据;由区块链服务器的机器学习模型判定出区块数据中交易对应的交易地址是否为异常交易地址。本发明可以准确和全面地监测出交易的异常交易地址、敏感关键词和区块数据中的异常交易,提高数字货币交易的安全性和监管力度。

Description

区块链中数字货币的智能监测方法及系统
技术领域
本发明涉及区块链技术领域,特别涉及一种区块链中数字货币的智能监测方法及系统。
背景技术
人工智能、区块链技术等新兴技术的发展深刻地影响着人类的生活方式。其中,区块链技术作为最受关注的前沿技术之一,在2009年到2019年近十年的时间里,从数字货币领域不断地衍生到工业4.0的场景,构建了一种基于互联网的新生态。
区块链技术在金融领域最早的应用是数字货币,中本聪在2009提出的比特币经过十年的发展已经成为全球范围内参与范围最广、接受度最高的公有链之一。目前,比特币市场价值排名第一,市值一度超过2000亿美元,日交易量近230亿美元。除了比特币以外,以太坊作为全球第二的数字货币平台市值也高达320亿美元,日交易量高达100亿。区块链的巨大市场价值和超高回报率,让越来越多的投资者参与到比特币、以太坊等等数字货币的投资和使用中。
Chen W等人[Chen W,Zheng Z,Ngai E C H,et al.Exploiting Blockchain Datato Detect Smart Ponzi Schemes on Ethereum[J].IEEE Access,2019,7:37575-37586.]提出基于分析智能合约代码的区块链监管方案。Monamo P等人[Monamo P,Marivate V,Twala B.Unsupervised learning for robust Bitcoin fraud detection[C]//2016Information Security for South Africa(ISSA).IEEE,2016:129-134.]对如何识别和过滤区块链上的非法数据,进行了相关的区块链非法数据收集和分析工作。但是,这些项目大都只关注与区块链监管的某一个环节,而没有提出一套比较完善的可实施方案。
发明内容
本发明的第一目的在于克服现有技术的缺点与不足,提供一种区块链中数字货币的智能监测方法,该方法可以准确和全面地监测出交易的异常交易地址、敏感关键词和区块数据中的异常交易,提高数字货币交易的安全性和监管力度。
本发明的第二目的在于提供一种区块链中数字货币的智能监测系统。
本发明的第一目的通过下述技术方案实现:一种区块链中数字货币的智能监测方法,步骤为:
由区块链路由器向服务器请求获取异常交易地址,将其作为交易地址黑名单;由区块链矿工节点向服务器请求获取敏感关键词文件;在区块链服务器中加载机器学习模型;
在区块链路由器获取到网络中的数字货币数据包后,根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉;
在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词的数字货币数据包滤除掉,控制未被滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点打包成区块数据;
由区块链服务器向区块链全节点获取区块数据,并且提取区块数据交易中的交易地址,然后从交易地址中提取出特征,将提出的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址。
优选的,区块链路由器定时向服务器请求获取异常交易地址;
在区块链路由器获取到网络中的数字货币数据包后,根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,具体如下:
针对于从网络中获取到的数字货币数据包,从中提取出与交易相关的数据包,得到交易数据包;
对交易数据包进行解析,得到交易数据包中所包含的交易输出地址;
将交易输出地址与交易地址黑名单中的异常交易地址进行比对,判定交易输出地址是否为异常交易地址;
将交易输出地址判定为异常交易地址的交易数据包进行拦截,并且将拦截结果发送给向服务器。
更进一步的,区块链路由器向服务器发送的拦截结果为:
(addrn,tx_hash,amount,timestamp,type);
其中,addrn为被拦截交易数据包的交易输出地址,tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,type表示异常交易地址类型。
优选的,在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,进行如下过滤处理:
从数字货币数据包中提取出与交易相关的数据包,得到交易数据包;
对交易数据包进行解析,得到交易数据包的输出脚本;
检测输出脚本的内容,判定输出脚本的内容是否包含敏感关键词文件中的关键词,若是,则对输出脚本对应交易数据包进行拦截,并将拦截结果发送给服务器;并且控制未被拦截的交易数据包中的交易数据进入矿池。
更进一步的,区块链矿工节点向服务器发送的拦截结果为:
(tx_hash,amount,timestamp,keyword,scripttype);
其中tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,keyword表示被拦截交易数据包中的敏感关键词,scripttype表示被拦截交易数据包的脚本类型。
优选的,服务器在向区块链全节点获取到区块数据后,通过以下处理得到异常交易地址:
解析出区别数据中的交易txk(k∈[1,β]),其中β表示交易总数量;
从交易txk中提取中交易地址addrt;然后从交易地址addrt中提取出与交易地址相关的特征;
将上述提取的与交易地址相关的特征输入到机器学习模型中,通过机器学习模型检测交易txk是否为庞氏骗局交易;若是,则将检测结果存储在服务器中,并且将交易txk对应的交易地址判定为异常交易地址,同时更新服务器中的异常交易地址列表。
更进一步的,所述存储在服务器中的检测结果为:
(addrt,tx_hasht,amountt,timestampt,block_hasht,block_heightt);
其中addrt为交易txk的交易地址,tx_hasht为交易txk的交易号,amountt表示交易txk对应的交易金额,timestampt表示时间戳,block_hasht表示交易txk所在区块的hash值,block_heightt表示交易txk所在区块的高度。
更进一步的,从交易地址addrt中提取出与交易地址相关的特征包括:交易地址的第一次交易时间和最后一次交易时间相差的天数lifetime、交易地址至少有一笔交易的天数active_day、交易地址每天平均的交易数目frequency、交易地址接收/发送的金额总数量total_send_BTC/total_receive_BTC、交易地址接收/发送的金额总数量total_send_USD/total_receive_USD、交易地址接收/发送的平均金额数量total_send_BTC/total_receive_BTC、交易地址接收/发送的平均金额数量total_send_USD/total_receive_USD、交易地址转账数量占总数量的比例ratio,以及交易地址转账,后来又接收同个交易地址转账的交易地址数量payback。
优选的,在区块链服务器中加载的机器学习模型通过以下训练过程训练得到:
获取多个庞氏骗局交易的异常交易地址addrp和正常交易的正常交易地址addrnp
分别对异常交易地址addrp和正常交易地址addrnp进行特征提取,提取出的与交易地址相关的特征构成样本集;
利用Bootstrap方法对样本集进行抽取,生成多个不同的训练集;
针对于多个训练集,将训练集中的与交易地址相关的特征作为输入,通过bagging方法分别对应训练得到多个决策树,当训练达到所设定的训练次数,决策树训练完成;
训练完成后的多个决策树组成随机森林模型,随机森林模型即为训练得到的机器学习模型。
本发明的第二目的通过下述技术方案实现:一种区块链中数字货币的智能监测系统,包括设置在区块链路由器中的第一监测模块、设置在区块链矿工节点中的第二监测模块和设置在区块链服务器中的第三监测模块;
所述第一监测模块包括黑名单生成模块和第一过滤模块;其中:
黑名单生成模块,用于向服务器请求获取异常交易地址,将其作为交易地址黑名单;
第一过滤模块,在区块链路由器获取到网络中的数字货币数据包后,用于根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉;
所述第二监测模块包括敏感关键词获取模块、第二过滤模块和数据控制模块;其中:
敏感关键词获取模块,用于向服务器请求获取敏感关键词文件;
第二过滤模块,在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,用于根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词的数字货币数据包滤除掉;
数据控制模块,用于控制未被第二过滤模块滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点打包成区块数据;
所述第三监测模块包括学习模型加载模块、区块数据获取模块、交易地址提取模块、特征提取模块和异常交易地址判定模块;其中:
学习模型加载模块,用于加载机器学习模型;
区块数据获取模块,用于向区块链全节点获取区块数据;
交易地址提取模块,提取区块数据交易中的交易地址;
特征提取模块,用于从交易地址中提取出特征;
异常交易地址判定模块,用于将特征提取模块提取的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明公开了一种区块链中数字货币的智能监测方法,包括:首先由区块链路由器向服务器请求获取异常交易地址;由区块链矿工节点向服务器请求获取敏感关键词文件;在区块链服务器中加载机器学习模型;在区块链路由器获取到网络中的数字货币数据包后,滤除包含黑名单交易地址的数字货币数据包;接着在区块链矿工节点滤除包含敏感关键词的数字货币数据包,控制未被滤除的交易数据进入矿池,由区块链矿工节点打包成区块数据;由区块链服务器的机器学习模型判定出区块数据中交易对应的交易地址是否为异常交易地址。本发明通过在交易进入矿池前先进行异常交易地址和敏感关键词的滤除,再通过机器学习模型进行区块数据中的异常交易的排查,实现准确和全面地监测出交易的异常交易地址、敏感关键词和存在于区块数据中的异常交易,既能大量过滤网络中显而易见的异常交易,又能分析出潜在的异常交易,多层次地监管数字货币交易,从而实现对区块链数字货币中进行更为完整的监管。
(2)本发明区块链中数字货币的智能监测方法中,通过对数字货币数据包的内容进行检查并拦截如异常交易地址和敏感关键词的敏感内容,能够有效减少敏感内容在区块链中的存储量,通过对区块数据中的交易进行检查,能够有效减少区块链中诸如庞氏骗局的异常交易,提高区块链数字货币交易的安全性和监管力度。
(3)本发明区块链中数字货币的智能监测方法中,通过机器学习模型检测区块数据中的异常交易,能够准确又快速地分析出潜在的异常交易地址;同时,将所分析的异常交易地址及时更新到服务器,使得各个路由器能够实时获取到最新的异常交易地址,从而实现监管的自动化和智能化。
附图说明
图1是本发明区块链的网络部署图。
图2是本发明区块链中数字货币的智能监测系统的结构示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1中所示,区块链中主要包括以下几种设备:路由器、矿工节点Node2、全节点Node1、服务器、客户端Node3,它们之间能够通过有线或无线的方式进行通信,在本实施例中,为了解决现有区块链系统运行过程中包含的暗网交易、涉及金融诈骗的交易以及注入敏感内容的交易等,提供一种区块链中数字货币的智能监测方法,其中数字货币可以是比特币、以太坊等货币,如图1所示,该方法步骤为:
S1、由区块链路由器(如图1中R1、R2、R3)向服务器S请求获取异常交易地址,将其作为交易地址黑名单;由区块链矿工节点Node2向服务器S请求获取敏感关键词文件;在区块链服务器S中加载机器学习模型。
在本实施例中,路由器可定时向服务器请求获取异常交易地址,实现对交易地址黑名单进行更新。矿工节点可定时向服务器请求获取敏感关键词文件,以得到最新的敏感关键词。
其中,机器学习模型具体是采用随机森林算法训练得到,训练过程如下:
S11、获取多个庞氏骗局交易的异常交易地址addrp和正常交易的正常交易地址addrnp
本实施例庞氏骗局交易的异常交易地址具体是通过爬虫的方式获取到数字货币论坛中的帖子内容,若帖子中带有敏感关键字例如“scam”、“hyip”,则从帖子的内容中直接获取到庞氏骗局交易的异常交易地址,或者是从帖子的内容中获取到相关网址链接,根据网址链接获取到异常交易地址。正常交易地址具体是随机选择区块链中某一高度的区块,从区块中获取到交易地址。
S12、分别对异常交易地址addrp和正常交易地址addrnp进行特征提取,提取出的与交易地址相关的特征构成样本集。
其中,与交易地址相关的特征包括:交易地址的第一次交易时间和最后一次交易时间相差的天数lifetime、交易地址至少有一笔交易的天数active_day、交易地址每天平均的交易数目frequency、交易地址接收/发送的金额总数量(比特币)total_send_BTC/total_receive_BTC、交易地址接收/发送的金额总数量(美元)total_send_USD/total_receive_USD、交易地址接收/发送的平均金额数量(比特币)total_send_BTC/total_receive_BTC、交易地址接收/发送的平均金额数量(美元)total_send_USD/total_receive_USD、交易地址转账数量占总数量的比例ratio,以及交易地址转账,后来又接收同个交易地址转账的交易地址数量payback。
例如,当从交易地址中提取出交易地址发送的金额总数量的特征时,具体是从服务器中搜索出与交易地址相关的交易,然后将交易地址所发送的每个交易金额相加,从而得到交易地址发送的金额总数量的特征。
S13、利用Bootstrap方法对样本集进行抽取,生成多个不同的训练集。
S14、针对于多个训练集,将训练集中的与交易地址相关的特征作为输入,通过bagging方法分别对应训练得到多个决策树,当训练达到所设定的训练次数,决策树训练完成。
S15、训练完成后的多个决策树组成随机森林模型,随机森林模型即为训练得到的机器学习模型。
在本实施例中,交易可以通过客户端Node3发起,且在网络中具体是存储在数字货币数据包中。
S2、在区块链路由器获取到网络中的数字货币数据包后,根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉,具体如下:
S21、针对于从网络中获取到的数字货币数据包,从中提取出与交易相关的数据包,得到交易数据包;
S22、对交易数据包进行解析,得到交易数据包中所包含的交易输出地址addressout
S23、将交易输出地址addressout与交易地址黑名单中的异常交易地址进行比对,判定交易输出地址addressout是否为异常交易地址;若交易输出地址addressout包含于交易地址黑名单中,则判定交易输出地址addressout为异常交易地址,若交易输出地址addressout不包含于交易地址黑名单中,则交易输出地址addressout对应的交易数据包不进行任何处理。
S24、将交易输出地址判定为异常交易地址的交易数据包进行拦截,并且将拦截结果发送给向服务器。本实施例中,区块链路由器向服务器发送的拦截结果为:
(addrn,tx_hash,amount,timestamp,type);
其中,addrn为被拦截交易数据包的交易输出地址,tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,type表示异常交易地址类型。
S3、在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词例如非文明用语的数字货币数据包滤除掉,控制未被滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点从矿池中获取交易数据并将交易数据打包成区块数据。其中,由于区块链中的各个节点之间数据是相互同步的,因此,矿工节点将交易数据打包成区块数据之后,矿工节点会向其他矿工节点和全节点发送最新的区块数据。
其中,对获取到的数字货币数据包进行再次过滤,具体如下:
S31、从数字货币数据包中提取出与交易相关的数据包,得到交易数据包tx;
S32、对交易数据包tx进行解析,得到交易数据包tx的输出脚本scriptout
S33、检测输出脚本scriptout的内容,判定输出脚本scriptout的内容是否包含敏感关键词文件中的关键词,若是,则对输出脚本对应交易数据包进行拦截,并将拦截结果发送给服务器;并且控制未被拦截的交易数据包中的交易数据进入矿池。本实施例具体是使用Aho-Corasick敏感词模式匹配算法对输出脚本的内容进行判定。
本实施例中,区块链矿工节点向服务器发送的拦截结果为:
(tx_hash,amount,timestamp,keyword,scripttype);
其中tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,keyword表示被拦截交易数据包中的敏感关键词,scripttype表示被拦截交易数据包的脚本类型。
S4、由区块链服务器向区块链全节点Node1获取区块数据Draw,并且提取区块Draw数据交易中的交易地址,然后从交易地址中提取出特征,将提出的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址。
本实施例中,服务器在向区块链全节点获取到区块数据后,通过以下处理得到异常交易地址:
S41、解析出区块数据中的交易txk(k∈[1,β]),其中β表示交易总数量;
S42、从交易txk中提取中交易地址addrt;然后从交易地址addrt中提取出与交易地址相关的特征;
S43、将上述提取的与交易地址相关的特征输入到机器学习模型中,通过机器学习模型检测交易txk是否为庞氏骗局交易;若是,则将检测结果存储在服务器中,并且将交易txk对应的交易地址判定为异常交易地址,同时更新服务器中的异常交易地址列表。
本实施例中,存储在服务器中的检测结果为:
(addrt,tx_hasht,amountt,timestampt,block_hasht,block_heightt);
其中addrt为交易txk的交易地址,tx_hasht为交易txk的交易号,amountt表示交易txk对应的交易金额,timestampt表示时间戳,block_hasht表示交易txk所在区块的hash值,block_heightt表示交易txk所在区块的高度。
实施例2
本实施例公开了一种区块链中数字货币的智能监测系统,如图1和图2所示,包括设置在区块链路由器(如图1中R1、R2、R3)中的第一监测模块、设置在区块链矿工节点Node2中的第二监测模块和设置在区块链服务器S中的第三监测模块。在本实施例中,区块链路由器、区块链矿工节点和区块链服务器之间具体是通过有线连接或者无线连接的方式进行通信,且均是双向传输数字货币数据流。
所述第一监测模块包括黑名单生成模块和第一过滤模块;其中:
黑名单生成模块,用于向服务器请求获取异常交易地址,将其作为交易地址黑名单。
第一过滤模块,在区块链路由器获取到网络中的数字货币数据包后,用于根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉。
所述第一过滤模块进一步包括:第一提取模块、第一解析模块、第一异常交易地址判定模块和第一拦截模块:
第一提取模块,用于从网络中获取到的数字货币数据包中提取出与交易相关的数据包,得到交易数据包;
第一解析模块,用于对交易数据包进行解析,得到交易数据包中所包含的交易输出地址;
第一异常交易地址判定模块,用于将交易输出地址与交易地址黑名单中的异常交易地址进行比对,判定交易输出地址是否为异常交易地址;
第一拦截模块,用于将交易输出地址判定为异常交易地址的交易数据包进行拦截,并且将拦截结果发送给向服务器。
区块链路由器向服务器发送的拦截结果为:
(addrn,tx_hash,amount,timestamp,type);
其中,addrn为被拦截交易数据包的交易输出地址,tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,type表示异常交易地址类型。
所述第二监测模块包括敏感关键词获取模块、第二过滤模块和数据控制模块;其中:
敏感关键词获取模块,用于向服务器请求获取敏感关键词文件。
第二过滤模块,在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,用于根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词的数字货币数据包滤除掉。
所述第二过滤模块进一步包括:第二提取模块、第二解析模块、敏感关键词判定模块和第二拦截模块:
第二提取模块,用于从数字货币数据包中提取出与交易相关的数据包,得到交易数据包;
第二解析模块,用于对交易数据包进行解析,得到交易数据包的输出脚本;
敏感关键词判定模块,用于检测输出脚本的内容,判定输出脚本的内容是否包含敏感关键词文件中的关键词;
第二拦截模块,用于将输出脚本的内容判定包含敏感关键词文件中的关键词的交易数据包进行拦截,并将拦截结果发送给服务器。
本实施例中,上述区块链矿工节点向服务器发送的拦截结果为:
(tx_hash,amount,timestamp,keyword,scripttype);
其中tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,keyword表示被拦截交易数据包中的敏感关键词,scripttype表示被拦截交易数据包的脚本类型。
数据控制模块,用于控制未被第二过滤模块滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点Node2打包成区块数据。
所述第三监测模块包括学习模型加载模块、区块数据获取模块、交易地址提取模块、特征提取模块和异常交易地址判定模块;其中:
学习模型加载模块,用于加载机器学习模型;本实施例的机器学习模型可用于检测交易是否为庞氏骗局交易。
区块数据获取模块,用于向区块链全节点Node1获取区块数据。
交易地址提取模块,提取区块数据交易中的交易地址。
特征提取模块,用于从交易地址中提取出与交易相关的特征;特征包括:交易地址的第一次交易时间和最后一次交易时间相差的天数lifetime、交易地址至少有一笔交易的天数active_day、交易地址每天平均的交易数目frequency、交易地址接收/发送的金额总数量(比特币)total_send_BTC/total_receive_BTC、交易地址接收/发送的金额总数量(美元)total_send_USD/total_receive_USD、交易地址接收/发送的平均金额数量(比特币)total_send_BTC/total_receive_BTC、交易地址接收/发送的平均金额数量(美元)total_send_USD/total_receive_USD、交易地址转账数量占总数量的比例ratio,以及交易地址转账,后来又接收同个交易地址转账的交易地址数量payback。
异常交易地址判定模块,用于将特征提取模块提取的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址,也即是当机器学习模型检测到交易为庞氏骗局交易,异常交易地址判定模块判定区块数据交易对应的交易地址为异常交易地址,并根据机器学习模型的检测结果存储在服务器中,对服务器的异常交易地址列表进行更新。
本实施例中,上述存储在服务器中的检测结果为:
(addrt,tx_hasht,amountt,timestampt,block_hasht,block_heightt);
其中addrt为交易txk的交易地址,tx_hasht为交易txk的交易号,amountt表示交易txk对应的交易金额,timestampt表示时间戳,block_hasht表示交易txk所在区块的hash值,block_heightt表示交易txk所在区块的高度。
本实施例系统中,第三监测模块还包括样本集获取模块、训练集生成模块和机器学习模型训练模块:
样本集获取模块,用于获取多个庞氏骗局交易的异常交易地址addrp和正常交易的正常交易地址addrnp,将所获取到的异常交易地址addrp和正常交易地址addrnp提取出与交易地址相关的特征以构成样本集。
训练集生成模块,用于利用Bootstrap方法对样本集进行抽取,生成多个不同的训练集。
机器学习模型训练模块,用于针对于多个训练集,将训练集中的与交易地址相关的的特征作为输入,通过bagging方法分别对应训练得到多个决策树,当训练达到所设定的训练次数,决策树训练完成;训练完成后的多个决策树组成随机森林模型,随机森林模型即为机器学习模型。
在本实施例监测系统中,交易的监测不限于第一监测模块、第二监测模块和第三监测模块,具体可以根据实际需要设置更多层级的监测模块,实现对交易更多层级和更为严密的监测。
需要说明的是,本实施例提供的系统仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.一种区块链中数字货币的智能监测方法,其特征在于,步骤为:
由区块链路由器向服务器请求获取异常交易地址,将其作为交易地址黑名单;由区块链矿工节点向服务器请求获取敏感关键词文件;在区块链服务器中加载机器学习模型;
在区块链路由器获取到网络中的数字货币数据包后,根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉;
在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词的数字货币数据包滤除掉,控制未被滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点打包成区块数据;
由区块链服务器向区块链全节点获取区块数据,并且提取区块数据交易中的交易地址,然后从交易地址中提取出特征,将提出的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址。
2.根据权利要求1所述的区块链中数字货币的智能监测方法,其特征在于,
区块链路由器定时向服务器请求获取异常交易地址;
在区块链路由器获取到网络中的数字货币数据包后,根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,具体如下:
针对于从网络中获取到的数字货币数据包,从中提取出与交易相关的数据包,得到交易数据包;
对交易数据包进行解析,得到交易数据包中所包含的交易输出地址;
将交易输出地址与交易地址黑名单中的异常交易地址进行比对,判定交易输出地址是否为异常交易地址;
将交易输出地址判定为异常交易地址的交易数据包进行拦截,并且将拦截结果发送给向服务器。
3.根据权利要求2所述的区块链中数字货币的智能监测方法,其特征在于,区块链路由器向服务器发送的拦截结果为:
(addrn,tx_hash,amount,timestamp,type);
其中,addrn为被拦截交易数据包的交易输出地址,tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,type表示异常交易地址类型。
4.根据权利要求1所述的区块链中数字货币的智能监测方法,其特征在于,在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,进行如下过滤处理:
从数字货币数据包中提取出与交易相关的数据包,得到交易数据包;
对交易数据包进行解析,得到交易数据包的输出脚本;
检测输出脚本的内容,判定输出脚本的内容是否包含敏感关键词文件中的关键词,若是,则对输出脚本对应交易数据包进行拦截,并将拦截结果发送给服务器;并且控制未被拦截的交易数据包中的交易数据进入矿池。
5.根据权利要求4所述的区块链中数字货币的智能监测方法,其特征在于,区块链矿工节点向服务器发送的拦截结果为:
(tx_hash,amount,timestamp,keyword,scripttype);
其中tx_hash代表被拦截交易数据包的交易号,amount表示对应的交易金额,timestamp表示时间戳,keyword表示被拦截交易数据包中的敏感关键词,scripttype表示被拦截交易数据包的脚本类型。
6.根据权利要求1所述的区块链中数字货币的智能监测方法,其特征在于,服务器在向区块链全节点获取到区块数据后,通过以下处理得到异常交易地址:
解析出区别数据中的交易txk(k∈[1,β]),其中β表示交易总数量;
从交易txk中提取中交易地址addrt;然后从交易地址addrt中提取出与交易地址相关的特征;
将上述提取的与交易地址相关的特征输入到机器学习模型中,通过机器学习模型检测交易txk是否为庞氏骗局交易;若是,则将检测结果存储在服务器中,并且将交易txk对应的交易地址判定为异常交易地址,同时更新服务器中的异常交易地址列表。
7.根据权利要求6所述的区块链中数字货币的智能监测方法,其特征在于,所述存储在服务器中的检测结果为:
(addrt,tx_hasht,amountt,timestampt,block_hasht,block_heightt);
其中addrt为交易txk的交易地址,tx_hasht为交易txk的交易号,amountt表示交易txk对应的交易金额,timestampt表示时间戳,block_hasht表示交易txk所在区块的hash值,block_heightt表示交易txk所在区块的高度。
8.根据权利要求6所述的区块链中数字货币的智能监测方法,其特征在于,从交易地址addrt中提取出与交易地址相关的特征包括:交易地址的第一次交易时间和最后一次交易时间相差的天数lifetime、交易地址至少有一笔交易的天数active_day、交易地址每天平均的交易数目frequency、交易地址接收/发送的金额总数量total_send_BTC/total_receive_BTC、交易地址接收/发送的金额总数量total_send_USD/total_receive_USD、交易地址接收/发送的平均金额数量total_send_BTC/total_receive_BTC、交易地址接收/发送的平均金额数量total_send_USD/total_receive_USD、交易地址转账数量占总数量的比例ratio,以及交易地址转账,后来又接收同个交易地址转账的交易地址数量payback。
9.根据权利要求1所述的区块链中数字货币的智能监测方法,其特征在于,在区块链服务器中加载的机器学习模型通过以下训练过程训练得到:
获取多个庞氏骗局交易的异常交易地址addrp和正常交易的正常交易地址addrnp
分别对异常交易地址addrp和正常交易地址addrnp进行特征提取,提取出的与交易地址相关的特征构成样本集;
利用Bootstrap方法对样本集进行抽取,生成多个不同的训练集;
针对于多个训练集,将训练集中的与交易地址相关的特征作为输入,通过bagging方法分别对应训练得到多个决策树,当训练达到所设定的训练次数,决策树训练完成;
训练完成后的多个决策树组成随机森林模型,随机森林模型即为训练得到的机器学习模型。
10.一种区块链中数字货币的智能监测系统,其特征在于,包括设置在区块链路由器中的第一监测模块、设置在区块链矿工节点中的第二监测模块和设置在区块链服务器中的第三监测模块;
所述第一监测模块包括黑名单生成模块和第一过滤模块;其中:
黑名单生成模块,用于向服务器请求获取异常交易地址,将其作为交易地址黑名单;
第一过滤模块,在区块链路由器获取到网络中的数字货币数据包后,用于根据交易地址黑名单对获取到的数字货币数据包进行过滤处理,将包含黑名单交易地址的数字货币数据包滤除掉;
所述第二监测模块包括敏感关键词获取模块、第二过滤模块和数据控制模块;其中:
敏感关键词获取模块,用于向服务器请求获取敏感关键词文件;
第二过滤模块,在区块链矿工节点通过网络获取到区块链路由器过滤后的数字货币数据包后,用于根据敏感关键词文件对获取到的数字货币数据包进行再次过滤,将包含敏感关键词的数字货币数据包滤除掉;
数据控制模块,用于控制未被第二过滤模块滤除的数字货币数据包中交易数据包的交易数据进入矿池,由区块链矿工节点打包成区块数据;
所述第三监测模块包括学习模型加载模块、区块数据获取模块、交易地址提取模块、特征提取模块和异常交易地址判定模块;其中:
学习模型加载模块,用于加载机器学习模型;
区块数据获取模块,用于向区块链全节点获取区块数据;
交易地址提取模块,提取区块数据交易中的交易地址;
特征提取模块,用于从交易地址中提取出特征;
异常交易地址判定模块,用于将特征提取模块提取的特征输入到机器学习模型中,根据机器学习模型的输出判定出对应区块数据交易对应的交易地址是否为异常交易地址。
CN201910890582.8A 2019-09-20 2019-09-20 区块链中数字货币的智能监测方法及系统 Pending CN110751554A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910890582.8A CN110751554A (zh) 2019-09-20 2019-09-20 区块链中数字货币的智能监测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910890582.8A CN110751554A (zh) 2019-09-20 2019-09-20 区块链中数字货币的智能监测方法及系统

Publications (1)

Publication Number Publication Date
CN110751554A true CN110751554A (zh) 2020-02-04

Family

ID=69276785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910890582.8A Pending CN110751554A (zh) 2019-09-20 2019-09-20 区块链中数字货币的智能监测方法及系统

Country Status (1)

Country Link
CN (1) CN110751554A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111461711A (zh) * 2020-03-12 2020-07-28 上海宓猿信息技术有限公司 一种区块链交易的追踪系统
CN111694809A (zh) * 2020-06-11 2020-09-22 杭州云链趣链数字科技有限公司 基于区块链的文件过滤方法、装置和计算机设备
CN111754345A (zh) * 2020-06-18 2020-10-09 天津理工大学 一种基于改进随机森林的比特币地址分类方法
CN112001730A (zh) * 2020-08-25 2020-11-27 徐鹏飞 基于区块链和数字货币的数据安全检测方法及云计算中心
CN112104748A (zh) * 2020-11-09 2020-12-18 百度在线网络技术(北京)有限公司 区块链数据的监管方法、装置、电子设备和存储介质
CN112434742A (zh) * 2020-11-26 2021-03-02 西安交通大学 一种识别以太坊上庞氏骗局的方法、系统及设备
CN112990941A (zh) * 2021-03-10 2021-06-18 武汉大学 一种针对智能合约中庞氏骗局的漏洞检测方法及系统
CN113127933A (zh) * 2021-03-22 2021-07-16 西北大学 一种基于图匹配网络的智能合约庞氏骗局检测方法及系统
WO2024022242A1 (zh) * 2022-07-25 2024-02-01 天津理工大学 一种比特币交易自治消息提取及解析方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111461711A (zh) * 2020-03-12 2020-07-28 上海宓猿信息技术有限公司 一种区块链交易的追踪系统
CN111694809A (zh) * 2020-06-11 2020-09-22 杭州云链趣链数字科技有限公司 基于区块链的文件过滤方法、装置和计算机设备
CN111754345B (zh) * 2020-06-18 2022-03-18 天津理工大学 一种基于改进随机森林的比特币地址分类方法
CN111754345A (zh) * 2020-06-18 2020-10-09 天津理工大学 一种基于改进随机森林的比特币地址分类方法
CN112001730A (zh) * 2020-08-25 2020-11-27 徐鹏飞 基于区块链和数字货币的数据安全检测方法及云计算中心
CN112001730B (zh) * 2020-08-25 2021-10-22 徐鹏飞 基于区块链和数字货币的数据安全检测方法及云计算中心
CN112104748A (zh) * 2020-11-09 2020-12-18 百度在线网络技术(北京)有限公司 区块链数据的监管方法、装置、电子设备和存储介质
CN112434742A (zh) * 2020-11-26 2021-03-02 西安交通大学 一种识别以太坊上庞氏骗局的方法、系统及设备
CN112434742B (zh) * 2020-11-26 2024-04-05 西安交通大学 一种识别以太坊上庞氏骗局的方法、系统及设备
CN112990941A (zh) * 2021-03-10 2021-06-18 武汉大学 一种针对智能合约中庞氏骗局的漏洞检测方法及系统
CN112990941B (zh) * 2021-03-10 2022-06-07 武汉大学 一种针对智能合约中庞氏骗局的漏洞检测方法及系统
CN113127933A (zh) * 2021-03-22 2021-07-16 西北大学 一种基于图匹配网络的智能合约庞氏骗局检测方法及系统
WO2024022242A1 (zh) * 2022-07-25 2024-02-01 天津理工大学 一种比特币交易自治消息提取及解析方法

Similar Documents

Publication Publication Date Title
CN110751554A (zh) 区块链中数字货币的智能监测方法及系统
CN113344562B (zh) 基于深度神经网络的以太坊钓鱼诈骗账户检测方法与装置
CN103530367B (zh) 一种钓鱼网站鉴别系统和方法
CN107750053A (zh) 基于多因素的无线传感器网络动态信任评价系统及方法
CN104899513B (zh) 一种工业控制系统恶意数据攻击的数据图检测方法
CN104615760A (zh) 钓鱼网站识别方法和系统
CN109117634A (zh) 基于网络流量多视图融合的恶意软件检测方法及系统
CN106330611A (zh) 一种基于统计特征分类的匿名协议分类方法
Thanuja et al. Black hole detection using evolutionary algorithm for IDS/IPS in MANETs
CN103747003A (zh) 对等僵尸网络核心节点检测方法及检测装置
Varun et al. Mitigating frontrunning attacks in ethereum
CN112134873A (zh) 一种IoT网络异常流量实时检测方法及系统
CN111368004A (zh) 一种区块链金融数据处理系统
Caleb et al. Secured Node Identification Approach Based on Artificial Neural Network Infrastructure for Wireless Sensor Networks
Praseed et al. Fuzzy request set modelling for detecting multiplexed asymmetric ddos attacks on http/2 servers
CN109981596A (zh) 一种主机外联检测方法及装置
Gelenbe et al. G-networks can detect different types of cyberattacks
CN103647774A (zh) 基于云计算的web内容信息过滤方法
Doss et al. Packet integrity defense mechanism in OppNets
CN105991609B (zh) 一种风险事件确定方法及装置
US20230409714A1 (en) Machine Learning Techniques for Detecting Anomalous API Call Behavior
CN117216736A (zh) 异常账号的识别方法、数据调度平台及图计算平台
CN114205816A (zh) 一种电力移动物联网信息安全架构及其使用方法
CN114511330A (zh) 一种基于改进的cnn-rf的以太坊庞氏骗局检测方法及系统
Thulasiraman Cyber analytics for intrusion detection on the navy smart grid using supervised learning

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200204