Abstract:
The current software birthmark system only extracts raw program attributes which leads to unsatisfactory performance. To solve the problem, this paper proposes a k-gram software birthmark selection algorithm. A set is constructed by collecting the variants and same function software of a base software. Mutual information is calculated to measure correlation between opcode-gram and variants software category, the higher mutual information value opcode-grams which is considered more distinction and semantic-preserving are chosen as the final birthmarks. Experimental results show that birthmark selection both improves the credibility and the resilience.
Key words:
software birthmark,
code identification,
software protection,
software analysis,
mutual information
摘要: 现有软件胎记系统仅对程序属性进行粗略选取,导致系统性能不理想。为此,提出一种基于互信息的k-gram软件胎记选取算法。构建受保护软件的变体软件以及功能相似的软件组成的软件集合,利用互信息衡量k-gram碎片与受保护软件变体类别的相关性,以此作为胎记选取的效用指标,筛选出与受保护软件关联度高、不容易受到语义保持变换影响的碎片,获取有效的k-gram胎记。实验结果表明,该算法具有较好的可信度、性抗攻击能力,以及较高的盗版检测效率。
关键词:
软件胎记,
代码识别,
软件保护,
软件分析,
互信息
CLC Number:
MA Shi-Xin, LIU Fen-Lin, LUO Xiang-Yang, HU Bin. k-gram Software Birthmark Selection Based on Mutual Information[J]. Computer Engineering, 2012, 38(22): 43-46.
马世鑫, 刘粉林, 罗向阳, 芦斌. 基于互信息的k-gram软件胎记选取[J]. 计算机工程, 2012, 38(22): 43-46.