基于simhash与倒排索引的复用代码快速溯源方法

TP393.08; 提出了一种新颖的复用代码精确快速溯源方法。该方法以函数为单位,基于simhash与倒排索引技术,能在海量代码中快速溯源相似函数。首先基于simhash利用海量样本构建具有三级倒排索引结构的代码库。对于待溯源函数,依据函数中代码块的simhash值快速发现相似代码块,继而倒排索引潜在相似函数,依据代码块跳转关系精确判定是否相似,并溯源至所在样本。实验结果表明,该方法在保证高准确率与召回率的前提下,基于代码库能快速识别样本中的编译器插入函数与复用函数。...

Full description

Saved in:
Bibliographic Details
Published in通信学报 Vol. 37; no. 11; pp. 104 - 113
Main Authors 乔延臣, 云晓春, 庹宇鹏, 张永铮
Format Journal Article
LanguageChinese
Published 中国科学院研究生院,北京 100039 2016
中国科学院信息工程研究所,北京 100093%中国科学院研究生院,北京 100039
中国科学院计算技术研究所,北京 100080
中国科学院信息工程研究所,北京 100093
Subjects
Online AccessGet full text
ISSN1000-436X
DOI10.11959/j.issn.1000-436x.2016225

Cover

More Information
Summary:TP393.08; 提出了一种新颖的复用代码精确快速溯源方法。该方法以函数为单位,基于simhash与倒排索引技术,能在海量代码中快速溯源相似函数。首先基于simhash利用海量样本构建具有三级倒排索引结构的代码库。对于待溯源函数,依据函数中代码块的simhash值快速发现相似代码块,继而倒排索引潜在相似函数,依据代码块跳转关系精确判定是否相似,并溯源至所在样本。实验结果表明,该方法在保证高准确率与召回率的前提下,基于代码库能快速识别样本中的编译器插入函数与复用函数。
ISSN:1000-436X
DOI:10.11959/j.issn.1000-436x.2016225