-
公开(公告)号:CN116305161A
公开(公告)日:2023-06-23
申请号:CN202310304560.5
申请日:2023-03-21
Applicant: 深圳前海微众银行股份有限公司 , 清华大学
Abstract: 本申请实施例提供一种智能合约的漏洞检测方法及装置,涉及区块链技术领域,该方法包括:根据调用合约与被调用合约之间的任一调用关系,更新调用合约的控制流图,得到调用合约的合约间控制流图;基于合约间控制流图,通过符号执行方式执行调用合约;其中,在执行至合约间控制流图中任一调用关系时,收集调用合约在调用关系中的输入约束并将输入约束传递至被调用合约的被调执行过程;收集被调用合约在被调执行过程的输出约束并将输出约束传递至调用合约的后续执行过程;根据各调用关系的输入约束和输出约束,确定调用合约在合约调用过程中是否存在漏洞。上述的检测方法,可以保证检测多合约场景下调用过程中出现漏洞的情况,提高智能合约的安全性。
-
公开(公告)号:CN110544113B
公开(公告)日:2022-04-12
申请号:CN201910749662.1
申请日:2019-08-14
Applicant: 清华大学
Abstract: 本发明提供一种基于智能合约的交易中燃油费的输入确定方法及装置,方法包括:根据智能合约中函数的执行过程,生成控制流图;将函数每一种预先确定的参数值作为进行燃油费输入确定的种子输入函数,根据函数在执行过程中各节点消耗的实际燃油费,从种子中选择目标种子,并根据每个节点消耗的实际燃油费对各节点的权重进行更新;对目标种子进行变异,将变异后的目标种子作为下一次进行燃油费输入确定的种子,直到达到预设终止条件;将最后一次更新的各节点的权重之和作为基于智能合约的交易中燃油费的输入。本发明可以快速找到产生较高燃油费的输入,促使智能合约的函数消耗较高的燃油费。
-
公开(公告)号:CN110544113A
公开(公告)日:2019-12-06
申请号:CN201910749662.1
申请日:2019-08-14
Applicant: 清华大学
Abstract: 本发明提供一种基于智能合约的交易中燃油费的输入确定方法及装置,方法包括:根据智能合约中函数的执行过程,生成控制流图;将函数每一种预先确定的参数值作为进行燃油费输入确定的种子输入函数,根据函数在执行过程中各节点消耗的实际燃油费,从种子中选择目标种子,并根据每个节点消耗的实际燃油费对各节点的权重进行更新;对目标种子进行变异,将变异后的目标种子作为下一次进行燃油费输入确定的种子,直到达到预设终止条件;将最后一次更新的各节点的权重之和作为基于智能合约的交易中燃油费的输入。本发明可以快速找到产生较高燃油费的输入,促使智能合约的函数消耗较高的燃油费。
-
公开(公告)号:CN110263536B
公开(公告)日:2024-05-24
申请号:CN201910541002.4
申请日:2019-06-21
Applicant: 深圳前海微众银行股份有限公司 , 清华大学
Abstract: 本发明实施例涉及科技金融(Fintech)领域,尤其涉及一种区块链中智能合约的监控方法及装置,用以提高智能合约的安全性。本发明实施例包括:获取交易请求;根据所述交易请求,调用对应的智能合约;在所述智能合约执行所述交易请求的过程中,若确定调用的操作码为需关注的操作码,则判断所述需关注的操作码是否满足监控规则的错误条件;若是,则根据所述监控规则,输出所述调用的操作码的异常结果,并执行针对所述操作码的阻断操作。
-
公开(公告)号:CN110287002A
公开(公告)日:2019-09-27
申请号:CN201910532435.3
申请日:2019-06-19
Applicant: 清华大学
Abstract: 本发明实施例提供一种以太坊虚拟机缺陷检测方法及系统,所提供的方法包括:获取包含有若干个以太坊的真实智能合约构建的测试数据集,根据优先级条件对所述测试数据集中每一个智能合约进行排序,选取其中优先级最高的智能合约作为目标合约;基于所述目标合约,构建所述目标合约对应的标识关键位置的抽象语法树,根据预设规则,对所述标识关键位置的抽象语法树中的关键属性进行修改,获得变异后的智能合约;将所述变异后的智能合约作为输入数据,对若干个以太坊虚拟机平台进行模拟交易,获取执行结果。本发明实施例提供的方法及系统,能够迅速、准确地检索并挖掘出以太坊虚拟机的漏洞,从而保障以太坊生态环境的安全。
-
公开(公告)号:CN110263536A
公开(公告)日:2019-09-20
申请号:CN201910541002.4
申请日:2019-06-21
Applicant: 深圳前海微众银行股份有限公司 , 清华大学
Abstract: 本发明实施例涉及科技金融(Fintech)领域,尤其涉及一种区块链中智能合约的监控方法及装置,用以提高智能合约的安全性。本发明实施例包括:获取交易请求;根据所述交易请求,调用对应的智能合约;在所述智能合约执行所述交易请求的过程中,若确定调用的操作码为需关注的操作码,则判断所述需关注的操作码是否满足监控规则的错误条件;若是,则根据所述监控规则,输出所述调用的操作码的异常结果,并执行针对所述操作码的阻断操作。
-
-
-
-
-