跨协程运行时漏洞分析方法、装置、电子设备及存储介质

    公开(公告)号:CN116541855B

    公开(公告)日:2023-09-08

    申请号:CN202310822917.9

    申请日:2023-07-06

    Applicant: 北京大学

    Inventor: 张涛 陈钟

    Abstract: 本申请提供一种跨协程运行时漏洞分析方法、装置、电子设备及存储介质,涉及代码安全领域,所述方法包括:在go源码编译阶段预插桩探针;在程序运行时通过所述预插桩探针监控请求相关的函数、污点源函数、污点传播函数和污点汇聚函数,根据依次获取污点汇聚函数的参数的特征值在第一污点池中对应的污点特征调用索引信息以及污点特征调用索引信息对应的污点池索引值;对污点池索引值对应的第二污点池相关联的请求进行拦截。能够综合分析不同请求的不同协程的数据流,实现不同请求的不同协程之间污点传播的分析,降低漏报。同时通过本地两级污点池的设置实现漏洞的实时上报和拦截处置。

    源代码分析结果聚合方法、装置、电子设备及存储介质

    公开(公告)号:CN116521742A

    公开(公告)日:2023-08-01

    申请号:CN202310746822.3

    申请日:2023-06-25

    Applicant: 北京大学

    Inventor: 张涛 陈钟

    Abstract: 本申请提供一种源代码分析结果聚合方法、装置、电子设备及存储介质,涉及源代码分析领域,包括:对目标源代码进行文件统计,构造初始综合报告;获取所述目标源代码的多个不同来源的分析报告,对所述多个不同来源的分析报告进行编码生成对应的报告组件集合;将所述报告组件集合填充到初始综合报告中,输出最终综合报告。将不同来源的多份原始分析报告的结果进行清洗,并聚合填充到综合报告。利用多种分析报告的结果,实现根据问题在源代码中的位置进行编排的效果。相当于提供了不同维度分析结果的统一数据规格,为后续分析工作的流程化和标准化提供支撑,也便于深入挖掘不同分析维度间问题的事实联系,提升了源代码分析结果的关联性和指导意义。

    支持聚合的最小默克尔证明生成及区块链交易验证方法

    公开(公告)号:CN115082068A

    公开(公告)日:2022-09-20

    申请号:CN202210890874.3

    申请日:2022-07-27

    Abstract: 本发明涉及一种支持聚合的最小默克尔证明生成及区块链交易验证方法,包括完全二叉默克尔树数据结构设计,默克尔证明生成算法,以及默克尔证明验证算法。所述完全二叉默克尔树中的节点进行排序,顺序为从上到下、从左到右;一棵由N个交易生成的完全二叉默克尔树中,序号为0的节点为默克尔根哈希,序号为N‑1的节点为第1个交易的Hash,序号为N的节点为第2个交易的Hash,以此类推。本发明提出的默克尔证明生成与验证方法突破了传统默克尔证明仅支持单笔交易查询的限制,能够支持两笔及以上交易的共同验证,一方面扩展了默克尔证明的实用程度和适用范围,另一方面也提高了交易验证效率,进而有助于区块链整体运行效率的提高。

    一种基于秘密分享的区块链受控可追溯身份隐私方法

    公开(公告)号:CN114866259A

    公开(公告)日:2022-08-05

    申请号:CN202210776123.9

    申请日:2022-07-01

    Abstract: 本发明公开了一种基于秘密分享的区块链受控可追溯身份隐私方法。本发明包括注册阶段和追溯阶段;其中,注册阶段中,用户向身份认证机构发送身份信息和包含用户公钥M、随机数的值,认证机构在核验身份信息和账户公钥信息后,对进行盲签名;用户对签名脱盲得到证书;身份认证机构将加入映射表,并将作为叶子节点添加到默克尔树中;用户将可验证地分享给监管委员会以及向监管委员会做零知识证明;监管委员会对零知识证明验证通过后,将公钥和证书发布在区块链上;追溯阶段中,当收到公钥对应的账户出现违规行为的举报时,监管委员恢复出值并签名后发送给身份认证机构,查找到对应用户的。

    一种两方SM2数字签名生成方法

    公开(公告)号:CN109547209B

    公开(公告)日:2020-09-08

    申请号:CN201811381814.9

    申请日:2018-11-19

    Applicant: 北京大学

    Abstract: 本发明公布了一种两方SM2数字签名的生成方法,属于信息安全技术领域,利用Paillier同态加密方案使互不信任的双方可以合作生成SM2数字签名。本发明还针对性的给出了零知识证明的构造方法,以证明双方在合作过程中没有违反协议的行为,当签名失败时,通过零知识证明可以快速鉴别出不合作的一方。相比基于多项式秘密共享的两方签名方案,本发明方法具有更高的效率、更好的安全性及隐私性。

    一种智能合约安全增强方法

    公开(公告)号:CN111563237A

    公开(公告)日:2020-08-21

    申请号:CN202010211696.8

    申请日:2020-03-24

    Abstract: 本发明提供一种智能合约安全增强方法,涉及区块链智能合约安全技术领域。首先恢复智能合约字节码的控制流图,标记所有JUMP/JUMPI指令跳转的目的地址及其入栈指令、JUMP/JUMPI指令的位置以及跳转目的地址和跳转指令之间的前后位置关系;在智能合约原始字节码中寻找可插入替换字节码的位置并标记插入位置的地址;根据选择的不同地址混淆模式生成基础替换字节码;重构基础替换字节码和原始字节码中所有的跳转地址和跳转指令,恢复字节码的控制流图;在替换字节码中插入混淆后的跳转地址,将替换字节码插入到原始字节码中,生成新的智能合约字节码。该方法使常见的智能合约逆向分析工具的分析工作失效,增加合约的安全性。

    基于组合公钥的密码学货币地址在线生成方法

    公开(公告)号:CN106533661B

    公开(公告)日:2019-07-19

    申请号:CN201610938140.2

    申请日:2016-10-25

    Applicant: 北京大学

    Abstract: 本发明公布了一种密码学货币地址的在线生成方法,包括系统初始化过程、地址生成过程和支付签名过程;在系统初始化过程中,钱包生成了一个私钥和一个固定大小的公钥矩阵,私钥保存在私钥存储区中,公钥矩阵保存在钱包的在线存储区中;在地址生成过程中,每当钱包接收付款时,钱包通过唯一交易编号从公钥矩阵中导出对应的唯一地址,在这个过程中无需访问私钥存储;在支付签名过程中,钱包通过唯一交易编号生成对应的私钥,通过该私钥生成签名以完成支付。密码学货币为比特币、莱特币或以太坊等。利用本发明方法,可以快速生成交易地址,无需直接访问私钥,大大减小钱包对私钥和地址管理的开销。

Patent Agency Ranking