CN112417435A - 一种社区环境下执行的可信计算白名单 - Google Patents

一种社区环境下执行的可信计算白名单 Download PDF

Info

Publication number
CN112417435A
CN112417435A CN202011105379.4A CN202011105379A CN112417435A CN 112417435 A CN112417435 A CN 112417435A CN 202011105379 A CN202011105379 A CN 202011105379A CN 112417435 A CN112417435 A CN 112417435A
Authority
CN
China
Prior art keywords
white list
contract
whitelist
trusted computing
intelligent contract
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
CN202011105379.4A
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.)
Beijing Octa Innovations Information Technology Co Ltd
Original Assignee
Beijing Octa Innovations Information Technology Co Ltd
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 Beijing Octa Innovations Information Technology Co Ltd filed Critical Beijing Octa Innovations Information Technology Co Ltd
Priority to CN202011105379.4A priority Critical patent/CN112417435A/zh
Publication of CN112417435A publication Critical patent/CN112417435A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

本发明公开了一种社区环境下执行的可信计算白名单,具体步骤如下:建立白名单学习模型;建立智能合约学习模型;建立白名单检测模型;建立智能合约检测模型;建立智能合约生成模型,分别设置白名单学习神经网络和智能合约学习神经网络,所述白名单神经网络包括白名单输入层,白名单学习层、白名单储存层和白名单输出层,在合约生成模块中包括,白名单关联模块和合约生成模块,合约方在白名单内的允许生成合约,否则不生成合约。本发明通过自主学习提高了模型学习的效率,省去了人工训练步骤,通过自主检查白名单和智能合约,可以自主检查白名单和智能漏动,避免安全漏动的产生,大大提高了智能合约的安全性。

Description

一种社区环境下执行的可信计算白名单
技术领域
本发明涉及智能合约技术领域,具体为一种社区环境下执行的可信计算白名单。
背景技术
所谓的智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转,一个智能合约是一套以数字形式定义的承诺(commitment),包括合约参与方可以在上面执行这些承诺的协议,智能合约是“执行合约条款的计算机交易协议”,数字形式意味着合约不得不写入计算机可读的代码中。这是必须的,因为只要参与方达成协定,智能合约建立的权利和义务,是由一台计算机或者计算机网络执行的协议是技术实现,在这个基础上,合约承诺被实现,或者合约承诺实现被记录下来。选择哪个协议取决于许多因素,最重要的因素是在合约履行期间,被交易资产的本质区块链上的所有用户都可以看到基于区块链的智能合约,但是,这会导致包括安全漏洞在内的所有漏洞都可见,并且可能无法迅速修复,因此需要对智能合约进行漏洞检测,以保证智能合约本身和执行过程的安全性;
所谓白名单,与黑名单相对,白名单技术能够让企业批准哪些进程被允许在特定系统运行,该技术可以抵御零日恶意软件和有针对性的攻击,因为在默认情况下,任何未经批准的软件、工具和进程都不能在端点上运行。如果恶意软件试图在启用了白名单的端点安装,白名单技术会确定这不是可信进程,并否定其运行权限,如果企业不想要使用白名单来阻止进程的安装,企业也可以使用它来提供警报,白名单可以提高用户工作效率,并保持系统以最佳性能运作,使用白名单检测未经授权程序并警告工作人员,而不是在默认情况下完全阻止,对于正在运行的应用、工具和进程方面,白名单可以提供对系统的全面可视性,如果相同的未经授权的程序试图在多个端点运行,该数据可用于追踪攻击者的路径;白名单可以帮助抵御高级内存注入攻击;该技术提供了功能来验证内存中运行的所有经批准的进程,并确保这些进程在运行时没有被修改;
在现实应用中,在智能合约的生成过程中仅仅对智能合约的本身进行漏洞的检查,例如在授权公告号为CN106681739B的发明专利中公开了一种智能合约的生成方法,以及申请公布号CN110866255A的发明专利中公开了一种智能合约漏洞检测方法,传统技术中白名单和智能合约为两个相互独立的两个领域,两者的结合鲜有提出,使智能合约中的非白名单合约方的漏洞无法检测出来,存在安全风险。
发明内容
本发明的目的在于提供一种社区环境下执行的可信计算白名单,通过将白名单和智能合约关联,在生成智能合约前检测白名单,极大的提高了智能合约的安全性,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种社区环境下执行的可信计算白名单,具体步骤如下:
(1)建立白名单学习模型;
(2)建立智能合约学习模型;
(3)建立白名单检测模型;
(4)建立智能合约检测模型;
(5)建立智能合约生成模型。
优选的,在步骤(1)和步骤(2)中分别设置有白名单学习神经网络和智能合约学习神经网络。
优选的,所述白名单神经网络包括白名单输入层,白名单学习层、白名单储存层和白名单输出层。
优选的,所述智能合约学习神经网络包括智能合约输入层,智能合约学习层、智能合约储存层和智能合约输出层。
优选的,所述步骤(4)中,首先,对合约进行分片处理,将合约按照算法分隔成多个功能片,对功能片进行源代码分析,通过算法判断功能片的代码是否为源代码;其次,对每个片状合约进行多维度标记,并对每个维度分配特征向量;再次,将特征向量送入到合约检测模型内的检测,判定智能合约是否存在漏洞;最后,建立保护警示模块,当合约存在漏洞时,发出警示。
优选的,所述特征向量组合成一个特征向量集,即Yl=(y1y2...yi),其中i为第i特征向量,l为第l个功能片。
优选的,在合约检测模型中通过算法设置有参考特征向量集和安全阈值ΔP,即Xl=(x1x2...xn),其中,l为第l个功能片的参考向量集,n为第n个参考特征向量,通过算法计算Yl与Xl差值并与ΔP比较,如果在安全阈值ΔP内,即可以判断是安全的。
优选的,在计算计算Yl与Xl差值时,采用加权算法,即将每个功能片中的每个特征向量分别赋予相应的加权值,通过对特征向量值和参考特征向量值分别进行加权后进行比较。
优选的,在步骤(3)中白名单检测模型中文字识别模块、图像识别模块和文字提取模块。通过文字识别模块识别白名单的输入文字,通过图像识别模块来区分输入的白名单是文字还是图片,通过文字提取模块,提取图片中文字。
优选的,在合约生成模块中包括,白名单关联模块和合约生成模块,合约方在白名单内的允许生成合约,否则不生成合约。
与现有技术相比,本发明的有益效果是:
本发明通过设置白名单学习神经网络和智能合约学习神经网络,自主学习白名单和智能合约,通过学习形成白名单模型和智能合约模型,设置合约检模型和白名单检测模型,进行白名单比对和智能合约的检测,放置白名单漏洞和智能合约漏洞,通过文字识别模块识别白名单的输入文字,通过图像识别模块来区分输入的白名单是文字还是图片,通过文字提取模块,提取图片中文字,通过白名单关联模块,将白名单和智能合约关联起来,合约双方符合白名单,合约生成模块生成智能合约,否则不生成合约。
通过自主学习提高了模型学习的效率,省去了人工训练步骤,通过自主检查白名单和智能合约,可以自主检查白名单和智能漏动,避免安全漏动的产生,大大提高了智能合约的安全性。
附图说明
图1为本发明一种社区环境下执行的可信计算白名单的步骤框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明提供一种技术方案:一种社区环境下执行的可信计算白名单,具体步骤如下:
(1)建立白名单学习模型;
(2)建立智能合约学习模型;
(3)建立白名单检测模型;
(4)建立智能合约检测模型;
(5)建立智能合约生成模型。
在步骤(1)和步骤(2)中分别设置有白名单学习神经网络和智能合约学习神经网络。
所述白名单神经网络包括白名单输入层,白名单学习层、白名单储存层和白名单输出层。
所述智能合约学习神经网络包括智能合约输入层,智能合约学习层、智能合约储存层和智能合约输出层。
所述步骤(4)中,首先,对合约进行分片处理,将合约按照算法分隔成多个功能片,对功能片进行源代码分析,通过算法判断功能片的代码是否为源代码;其次,对每个片状合约进行多维度标记,并对每个维度分配特征向量;再次,将特征向量送入到合约检测模型内的检测,判定智能合约是否存在漏洞;最后,建立保护警示模块,当合约存在漏洞时,发出警示。
所述特征向量组合成一个特征向量集,即Yl=(y1y2...yi),其中i为第i特征向量,l为第l个功能片。
在合约检测模型中通过算法设置有参考特征向量集和安全阈值ΔP,即Xl=(x1x2...xn),其中,l为第l个功能片的参考向量集,n为第n个参考特征向量,通过算法计算Yl与Xl差值并与ΔP比较,如果在安全阈值ΔP内,即可以判断是安全的。
在计算计算Yl与Xl差值时,采用加权算法,即将每个功能片中的每个特征向量分别赋予相应的加权值,通过对特征向量值和参考特征向量值分别进行加权后进行比较。
在步骤(3)中白名单检测模型中文字识别模块、图像识别模块和文字提取模块。通过文字识别模块识别白名单的输入文字,通过图像识别模块来区分输入的白名单是文字还是图片,通过文字提取模块,提取图片中文字。
在合约生成模块中包括,白名单关联模块和合约生成模块,合约方在白名单内的允许生成合约,否则不生成合约。
工作原理:通过设置白名单学习神经网络和智能合约学习神经网络,自主学习白名单和智能合约,通过学习形成白名单模型和智能合约模型,设置合约检模型和白名单检测模型,进行白名单比对和智能合约的检测,放置白名单漏洞和智能合约漏洞,通过文字识别模块识别白名单的输入文字,通过图像识别模块来区分输入的白名单是文字还是图片,通过文字提取模块,提取图片中文字,通过白名单关联模块,将白名单和智能合约关联起来,合约双方符合白名单,合约生成模块生成智能合约,否则不生成合约,减少了智能合约的安全漏洞,提高了智能合约的安全性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (10)

1.一种社区环境下执行的可信计算白名单,其特征在于,具体方法如下:
(1)建立白名单学习模型;
(2)建立智能合约学习模型;
(3)建立白名单检测模型;
(4)建立智能合约检测模型;
(5)建立智能合约生成模型。
2.根据权利要求1所述的一种社区环境下执行的可信计算白名单,其特征在于:在步骤(1)和步骤(2)中分别设置有白名单学习神经网络和智能合约学习神经网络。
3.根据权利要求2所述的一种社区环境下执行的可信计算白名单,其特征在于:所述白名单神经网络包括白名单输入层,白名单学习层、白名单储存层和白名单输出层。
4.根据权利要求2所述的一种社区环境下执行的可信计算白名单,其特征在于:所述智能合约学习神经网络包括智能合约输入层,智能合约学习层、智能合约储存层和智能合约输出层。
5.根据权利要求1所述的一种社区环境下执行的可信计算白名单,其特征在于:所述步骤(4)中,首先,对合约进行分片处理,将合约按照算法分隔成多个功能片,对功能片进行源代码分析,通过算法判断功能片的代码是否为源代码;其次,对每个片状合约进行多维度标记,并对每个维度分配特征向量;再次,将特征向量送入到合约检测模型内的检测,判定智能合约是否存在漏洞;最后,建立保护警示模块,当合约存在漏洞时,发出警示。
6.根据权利要求5所述的一种社区环境下执行的可信计算白名单,其特征在于:所述特征向量组合成一个特征向量集,即Yl=(y1y2...yi),其中i为第i特征向量,l为第l个功能片。
7.根据权利要求1所述的一种社区环境下执行的可信计算白名单,其特征在于:在合约检测模型中通过算法设置有参考特征向量集和安全阈值ΔP,即Xl=(x1x2...xn),其中,l为第l个功能片的参考向量集,n为第n个参考特征向量,通过算法计算Yl与Xl差值并与ΔP比较,如果在安全阈值ΔP内,即可以判断是安全的。
8.根据权利要求7所述的一种社区环境下执行的可信计算白名单,其特征在于:在计算计算Yl与Xl差值时,采用加权算法,即将每个功能片中的每个特征向量分别赋予相应的加权值,通过对特征向量值和参考特征向量值分别进行加权后进行比较。
9.根据权利要求1所述的一种社区环境下执行的可信计算白名单,其特征在于:在步骤(3)中白名单检测模型中文字识别模块、图像识别模块和文字提取模块。通过文字识别模块识别白名单的输入文字,通过图像识别模块来区分输入的白名单是文字还是图片,通过文字提取模块,提取图片中文字。
10.根据权利要求1所述的一种社区环境下执行的可信计算白名单,其特征在于:在合约生成模块中包括,白名单关联模块和合约生成模块,合约方在白名单内的允许生成合约,否则不生成合约。
CN202011105379.4A 2020-10-15 2020-10-15 一种社区环境下执行的可信计算白名单 Pending CN112417435A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011105379.4A CN112417435A (zh) 2020-10-15 2020-10-15 一种社区环境下执行的可信计算白名单

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011105379.4A CN112417435A (zh) 2020-10-15 2020-10-15 一种社区环境下执行的可信计算白名单

Publications (1)

Publication Number Publication Date
CN112417435A true CN112417435A (zh) 2021-02-26

Family

ID=74854596

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011105379.4A Pending CN112417435A (zh) 2020-10-15 2020-10-15 一种社区环境下执行的可信计算白名单

Country Status (1)

Country Link
CN (1) CN112417435A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190122258A1 (en) * 2017-10-23 2019-04-25 Adbank Inc. Detection system for identifying abuse and fraud using artificial intelligence across a peer-to-peer distributed content or payment networks
CN109977682A (zh) * 2019-04-01 2019-07-05 中山大学 一种基于深度学习的区块链智能合约漏洞检测方法及装置
CN110443075A (zh) * 2019-08-05 2019-11-12 中国工商银行股份有限公司 一种区块链智能合约验证部署的方法及装置
CN110866255A (zh) * 2019-11-07 2020-03-06 博雅正链(北京)科技有限公司 一种智能合约漏洞检测方法
CN111159012A (zh) * 2019-12-10 2020-05-15 中国科学院深圳先进技术研究院 一种基于深度学习的智能合约漏洞检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190122258A1 (en) * 2017-10-23 2019-04-25 Adbank Inc. Detection system for identifying abuse and fraud using artificial intelligence across a peer-to-peer distributed content or payment networks
CN109977682A (zh) * 2019-04-01 2019-07-05 中山大学 一种基于深度学习的区块链智能合约漏洞检测方法及装置
CN110443075A (zh) * 2019-08-05 2019-11-12 中国工商银行股份有限公司 一种区块链智能合约验证部署的方法及装置
CN110866255A (zh) * 2019-11-07 2020-03-06 博雅正链(北京)科技有限公司 一种智能合约漏洞检测方法
CN111159012A (zh) * 2019-12-10 2020-05-15 中国科学院深圳先进技术研究院 一种基于深度学习的智能合约漏洞检测方法

Similar Documents

Publication Publication Date Title
CN110958220B (zh) 一种基于异构图嵌入的网络空间安全威胁检测方法及系统
US11531766B2 (en) Systems and methods for attributing security vulnerabilities to a configuration of a client device
CN109766694B (zh) 一种工控主机的程序协议白名单联动方法及装置
US20210382986A1 (en) Dynamic, Runtime Application Programming Interface Parameter Labeling, Flow Parameter Tracking and Security Policy Enforcement
CN113010896A (zh) 确定异常对象的方法、装置、设备、介质和程序产品
JP2023550974A (ja) イメージ基盤悪性コード検知方法および装置とこれを利用する人工知能基盤エンドポイント脅威検知および対応システム
Vasilyev et al. Cybersecurity risk assessment based on cognitive attack vector modeling with CVSS Score
JP2019036273A (ja) ユーザと銀行サービスとの相互通信中における潜在的に危険なデバイスを識別するシステム及び方法
US8549631B2 (en) Internet site security system and method thereto
Kashiyama et al. Study on cyber‐security for IoT edge utilizing pattern match accelerator
CN112417435A (zh) 一种社区环境下执行的可信计算白名单
CN115935370A (zh) 漏洞修复优先级的分类方法、装置、设备及存储介质
Newaz et al. Detection of malware using deep learning
Miciuła et al. Sources of threats and methods of securing information in companies in Poland compared to other EU countries
Goyal et al. Beyond the Basics: A Study of Advanced Techniques for Detecting and Preventing SQL Injection Attacks
Hovorushchenko Criteria and Rules for Classification of Software Failures and Vulnerabilities.
Kaur et al. Modeling a SQL injection attack
CN112199673A (zh) 权限提升行为的检测方法、装置及可读存储介质
CN114978766B (zh) 基于大数据的隐私安全保护方法、装置、设备及介质
El Attar et al. Robust clustering methods for detecting smartphone's abnormal behavior
CN116304876B (zh) 一种基于区块链的工业互联网平台运行方法、系统和设备
CN117134999B (zh) 一种边缘计算网关的安全防护方法、存储介质及网关
KR102541888B1 (ko) 이미지 기반 악성코드 탐지 방법 및 장치와 이를 이용하는 인공지능 기반 엔드포인트 위협탐지 및 대응 시스템
CN114710367B (zh) 网络流量的障碍成本的确定方法、装置及电子设备
Wijaya et al. Malware Classification Method Using API Call Categorization

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