Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种区块链中以太坊ERC20蜜罐合约检测器及其检测方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:黑龙江大学

摘要:本发明公开了一种区块链中以太坊ERC20蜜罐合约检测器及其检测方法,属于区块链技术。该方法首先将蜜罐合约检测器集成到以太坊客户端中,蜜罐合约检测器根据合约地址验证该合约是否属于ERC20标准的合约,接着获取合约字节码并转换为以太坊虚拟机的操作码;进而划分基本块,通过代币转移的方式找到合约的入口,模拟执行以太坊虚拟机操作码并模拟合约控制流,检测合约是否存在符合预定义蜜罐合约模式的情况。本发明与现有蜜罐检测器不同,不依赖合约交互记录或者合约创建者提供的源代码,针对合约字节码实施静态数据流分析以推断合约中的蜜罐机制,此外,检测器只关注ERC20的代币转移方法控制流,相比对合约进行整体分析具有快速分析的优势。

主权项:1.一种区块链中以太坊ERC20蜜罐合约检测方法,其特征在于,所述方法首先将蜜罐合约检测器集成到以太坊客户端中,蜜罐合约检测器根据合约地址验证该合约是否属于ERC20标准的合约,接着获取合约字节码并将其转换为以太坊虚拟机操作码;接着划分基本块,找到代币转移方法在合约中的入口,模拟执行以太坊虚拟机操作码并模拟合约控制流,检测合约是否存在符合预定义蜜罐合约模式的情况;所述方法对于ERC20标准合约的判断方式是:判断合约地址的合约字节码中是否包含ERC20标准中是否存在代币转移、代币授权和从指定地址向另一个地址转移代币对应方式的函数签名,同时包含三种函数签名则视为该合约为ERC20合约,否则视为非ERC20合约;所述方法对于基本块的划分逻辑如下:JUMPDEST操作码代表一个基本块的开始,JUMP、JUMPI、STOP、REVERT、RETURN和SELFDESTRUCT操作码代表一个基本块的结束;此外额外定义两种基本块划分方法以用于适配特殊情况:当两个JUMPDEST操作码连续出现时,将第一个JUMPDEST单独组成一个基本块;将INVALID操作码单独视为一个基本块;所述方法中的预定义蜜罐合约模式包括黑名单蜜罐模式、交易锁蜜罐模式和代理合约蜜罐模型,其判断方式如下:黑名单蜜罐模式:在执行代币转移操作时,合约逻辑设计为先检查代币接收方地址是否为去中心化交易所中的流动池地址,在是流动池地址的情况下检查代表黑名单的代币发送方地址对应的布尔型映射,如果布尔值为真则停止执行代币转移操作,并且回滚已经执行的所有操作;交易锁蜜罐模式:在执行代币转移操作时,合约逻辑设计为检查代表黑名单的代币发送方地址和代币接收方地址对应的布尔型映射,如果布尔值为真则停止执行代币转移操作,并且回滚已经执行的所有操作;代理合约蜜罐模式:在代币转移操作对应控制流中存在调用外部合约的操作。

全文数据:

权利要求:

百度查询: 黑龙江大学 一种区块链中以太坊ERC20蜜罐合约检测器及其检测方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。