发明名称 Android平台上已安装软件保护方法
摘要 本发明公开一种Android平台上已安装软件保护方法,当应用程序在安装时,先给优化后的可执行代码文件的摘要值利用私钥进行加密,最后将加密后的文件的摘要值进行存储。当应用程序在安装时对优化后的可执行文件的做单向散列运算生成的摘要值文件再利用密钥给生成的摘要值加密,最后再次给加密后的摘要值做单向散列运算得到摘要值,作为验证的根文件。本发明能够克服现有的保护方案的不足及Android本身验证机制的安全隐患,且对Android本身系统结构并无修改,不需要添加任何模块,对应用程序的开发人员不造成任何影响。
申请公布号 CN104573490A 申请公布日期 2015.04.29
申请号 CN201310522197.0 申请日期 2013.10.29
申请人 桂林电子科技大学 发明人 丁勇;张皎;李新国;丁继强;官秀国
分类号 G06F21/51(2013.01)I 主分类号 G06F21/51(2013.01)I
代理机构 桂林市持衡专利商标事务所有限公司 45107 代理人 陈跃琳
主权项 Android平台上已安装软件保护方法,其特征是包括如下步骤:(1)应用程序安装阶段:(1.1)调取应用程序安装完成后的优化代码文件即可执行文件,并对可执行文件进行单向散列函数运算,得到可执行文件的摘要值;(1.2)利用加密函数触发密钥生成器,生成加密密钥对可执行文件的摘要值进行加密,且调出提示信息让用户输入一个保护密钥的口令,最后将由口令保护的加密密钥保存到应用程序资源文件目录中;(1.3)对加密后的摘要值再进行单向散列函数运算,得到最终的摘要值,并将最终的摘要值保存到应用程序资源文件目录中;(2)启动过程验证阶段:(2.1)启动时由单向散列函数对可执行文件进行单向散列运算,得到可执行文件的摘要值;(2.2)由加密函数对得到的摘要值进行加密,并调用应用程序资源文件目录中的加密密钥,提示用户输入口令获得密钥;(2.3)对加密后的摘要值再进行单向散列函数运算,得到最终需要比对的摘要值;(2.4)由对比函数对步骤(1.3)所得的最终的摘要值和(2.3)所得到的最终需要比对的摘要值进行比较;若比较结果相同,则应用程序没有被篡改,继续启动应用程序;若比对结果不同,则应用程序被篡改,终止应用程序的启动。
地址 541004 广西壮族自治区桂林市金鸡路1号