-
公开(公告)号:CN110737469B
公开(公告)日:2021-09-03
申请号:CN201910951997.1
申请日:2019-09-29
Applicant: 南京大学
Abstract: 一种功能粒度上基于语义信息的源代码相似度评估方法,其特征是在功能粒度上使用标识符和控制流图对源码分别进行表示,其中功能是由函数和函数间的调用关系组成的介于源代码文件和函数之间的代码表示,计算功能对应的标识符和控制流图的嵌入向量,将控制流图中节点对应的代码片段用相应的标识符表示替换,再与控制流图的嵌入向量组合得到功能的嵌入向量,接着计算功能的嵌入向量之间的距离,得到源代码之间的相似度,可以较为准确的衡量Type‑4克隆。
-
公开(公告)号:CN111459604A
公开(公告)日:2020-07-28
申请号:CN201910055700.3
申请日:2019-01-18
Applicant: 南京大学
Abstract: 本发明是一种基于窥孔优化的智能合约性能优化方法,该方法首先对智能合约进行收集,对智能合约集合中的每一个智能合约进行拆分指令序列处理,获得的所有指令序列再次进行去重,得到指令序列集。获得指令序列集后进行标准化处理,对指令中可能重复出现的寄存器、常数进行标准化。标准化后的指令集需进行等价指令序列识别,即将等价的指令序列分类,并记录执行时间,每一类作为一个替换规则。在优化过程中使用替换规则进行匹配,如果碰到等价片段,则选择执行时间最短的片段将其替换,如果该等价片段性能优于性能最好片段则不进行替换。最后将该等价片段更新到替换规则中以提升优化效果。
-
公开(公告)号:CN111459786B
公开(公告)日:2023-08-29
申请号:CN201910051630.4
申请日:2019-01-18
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提出一种基于变异fuzz的智能合约安全测试方法,该方法以智能合约的源代码作为输入,获取智能合约的二进制接口(Application Binary Interface,ABI),从ABI中找到函数类型的元素,提取它们的函数声明;在此基础上,进一步开展测试数据生成:若被测函数没有种子,则随机生成测试数据,否则将会有一定几率基于种子变异产生测试数据;接着,使用测试数据执行私有链上的智能合约,进而开展漏洞检测,更新种子,再次回到测试输入产生步骤,如此反复直到达到事先设置测试终止条件(该终止条件可以为测试时间、路径覆盖率等)。通过该方法,测试人员可以在短时间内检查智能合约是否存在安全性问题,并且可以参考输入复现其问题。
-
公开(公告)号:CN110825381A
公开(公告)日:2020-02-21
申请号:CN201910951999.0
申请日:2019-09-29
Applicant: 南京大学
Abstract: 一种结合源代码语义与语法特征的基于卷积神经网络的bug定位方法,其特征是提出一种根据用户提交的bug报告定位到产生bug的源代码文件的方法,该方法使用CNN分别对bug报告、源代码语义以及源代码语法进行特征提取,再对这些特征进行融合并提取出统一的特征,最后使用CNN对bug报告和源代码进行相关性预测,得到与bug报告相关的TopK份源代码文件。从而使得当用户提交新的bug报告时,维护人员能及时定位到相关源代码文件并通知开发人员进行修复,从而提高修复bug以及项目维护的效率。该方法的整体流程如摘要附图所示。
-
公开(公告)号:CN111190997B
公开(公告)日:2024-01-05
申请号:CN201811298287.5
申请日:2018-10-26
Applicant: 南京大学
IPC: G06F16/33 , G06F16/332 , G06F16/35 , G06F40/289
Abstract: 一种使用神经网络和机器学习排序算法的问答系统实现方法,其根据自然语言格式的问题,使用维基百科文档集作为数据源,给出短文本格式的答案。该方法分为文档检索和机器阅读理解两部分。文档检索部分使用LSI模型对问题和文档进行建模,根据用户提出的问题在维基百科文档库中查找最相关的五篇文档,然后将问题和这五篇文档作为下一阶段的输入,阅读理解部分使用双向神经网络分别对问题和文章中的段落进行建模,最后再使用一个双向神经网络学习最优的答案片段,将最终答案和答案所在段落反馈给用户。
-
公开(公告)号:CN110609821A
公开(公告)日:2019-12-24
申请号:CN201810561189.X
申请日:2018-05-29
Applicant: 南京大学
Abstract: 本发明旨在从原始法律案件中提取五种不同的司法特征,包括时间戳、地点、诉讼原因以及案件事实的文本描述,并将上述特征输入到PTM模型中。其中,文本是必需元素。本发明学习测试中的法律案件的主题,并结合在训练过程中学习到的主题并通过一种投票机制来推断该法律案件的判罚。
-
公开(公告)号:CN111459786A
公开(公告)日:2020-07-28
申请号:CN201910051630.4
申请日:2019-01-18
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明提出一种基于变异fuzz的智能合约安全测试方法,该方法以智能合约的源代码作为输入,获取智能合约的二进制接口(Application Binary Interface,ABI),从ABI中找到函数类型的元素,提取它们的函数声明;在此基础上,进一步开展测试数据生成:若被测函数没有种子,则随机生成测试数据,否则将会有一定几率基于种子变异产生测试数据;接着,使用测试数据执行私有链上的智能合约,进而开展漏洞检测,更新种子,再次回到测试输入产生步骤,如此反复直到达到事先设置测试终止条件(该终止条件可以为测试时间、路径覆盖率等)。通过该方法,测试人员可以在短时间内检查智能合约是否存在安全性问题,并且可以参考输入复现其问题。
-
公开(公告)号:CN111190997A
公开(公告)日:2020-05-22
申请号:CN201811298287.5
申请日:2018-10-26
Applicant: 南京大学
IPC: G06F16/33 , G06F16/332 , G06F16/35 , G06F40/289
Abstract: 一种使用神经网络和机器学习排序算法的问答系统实现方法,其根据自然语言格式的问题,使用维基百科文档集作为数据源,给出短文本格式的答案。该方法分为文档检索和机器阅读理解两部分。文档检索部分使用LSI模型对问题和文档进行建模,根据用户提出的问题在维基百科文档库中查找最相关的五篇文档,然后将问题和这五篇文档作为下一阶段的输入,阅读理解部分使用双向神经网络分别对问题和文章中的段落进行建模,最后再使用一个双向神经网络学习最优的答案片段,将最终答案和答案所在段落反馈给用户。
-
公开(公告)号:CN110737469A
公开(公告)日:2020-01-31
申请号:CN201910951997.1
申请日:2019-09-29
Applicant: 南京大学
Abstract: 一种功能粒度上基于语义信息的源代码相似度评估方法,其特征是在功能粒度上使用标识符和控制流图对源码分别进行表示,其中功能是由函数和函数间的调用关系组成的介于源代码文件和函数之间的代码表示,计算功能对应的标识符和控制流图的嵌入向量,将控制流图中节点对应的代码片段用相应的标识符表示替换,再与控制流图的嵌入向量组合得到功能的嵌入向量,接着计算功能的嵌入向量之间的距离,得到源代码之间的相似度,可以较为准确的衡量Type-4克隆。
-
-
-
-
-
-
-
-