[发明专利]一种源代码防护方法及装置有效
申请号: | 201710179802.7 | 申请日: | 2017-03-23 |
公开(公告)号: | CN108629162B | 公开(公告)日: | 2020-06-02 |
发明(设计)人: | 陈华 | 申请(专利权)人: | 北京小唱科技有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F8/72 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100028 北京市朝阳区太*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 源代码 防护 方法 装置 | ||
本发明提供了一种源代码防护方法,所述方法包括:获取待防护源代码;将所述源代码的函数名进行乱码转换,和/或将所述源代码中的特定函数代码进行隐藏,以实现对待防护代码的防护处理;将防护处理后的所述源代码应用于客户端。本发明提供的源代码防护方法,使用某些混淆工具将应用程序的源代码的函数名进行乱码转换,将源代码的函数名映射成乱码。这样,当破解者对应用程序的源代码进行破译时,破解出的代码将变成乱码,使得破解者无法获取应用程序的业务逻辑。或者当破解者对应用程序的源代码进行破解时,将应用程序的源代码中的特定函数代码进行隐藏,破解者将无法获知这部分特定函数代码,以实现对待防护代码的防护处理,避免造成厂商的损失。
技术领域
本发明涉及信息安全技术领域,特别是涉及一种源代码防护方法及装置。
背景技术
目前随着信息科技的不断发展,整个社会对应用程序的依赖程度越来越高,从而应用程序的安全的重要性也越来越高。
目前,各种对应用程序安全造成威胁的攻击也越来越多,例如:漏洞攻击。漏洞是在硬件、软件、协议的具体实现或者系统安全策略上存在的缺陷,由于应用程序存在漏洞,因此会导致不法分子在未授权的情况下访问或者更改应用程序的源代码。显然,在上述情况下,对应用程序的源代码进行防护就显得尤为重要了。
现在的应用程序的源代码很容易通过一系列反汇编工具破译,反汇编程序为解密程序,将应用程序的源代码破译后,掌握应用程序的逻辑,会造成应用程序的源代码的泄露从而对应用程序厂商造成损失。
发明内容
本发明提供了一种源代码防护方法及装置,以解决现有技术中应用程序的源代码易被破译,造成损失等问题。
为了解决上述问题,本发明公开了一种源代码防护方法,所述方法包括:获取待防护源代码;将所述源代码的函数名进行乱码转换,和/或将所述源代码中的特定函数代码进行隐藏,以实现对待防护代码的防护处理;将防护处理后的所述源代码应用于客户端。
优选地,所述将所述源代码进行乱码转换的步骤,包括:使用混淆工具对所述源代码的函数名进行混淆生成第一代码;将所述第一代码导入设定文件中。
优选地,所述将所述源代码中的特定函数代码进行隐藏的步骤,包括:确定所述源代码中的特定函数代码,以及所述特定函数代码对应的第一计算机语言;采用第二计算机语言将所述特定函数代码进行转换;将转换后的所述特定函数代码进行隐藏;将隐藏后的所述特定函数代码通过设定指令嵌套包装
优选地,所述源代码中包含参数值转换程序,在所述防护处理后的所述源代码应用于客户端的步骤之后,所述方法还包括:接收到用户发送的访问服务器的请求时,从服务器获取第一参数对应的参数值;确定与所述服务器之间约定的参数值对应的字符串;调用所述参数值转换程序,对所述字符串进行转换,得到至少一个参数值;将获取的所述参数值与转换后得到的参数值进行匹配;依据匹配结果响应所述访问服务器的请求。
优选地,所述依据比较结果响应所述访问服务器的请求的步骤,包括:当所述参数值与转换后得到的参数值中某一参数值匹配时,则响应访问请求;当所述参数值与所述转换后得到的各参数值均不匹配时,则结束访问请求。
为了解决上述问题,本发明还公开了一种源代码防护装置,所述装置包括:第一获取模块,用于获取待防护源代码;转换模块,用于将所述源代码进行乱码转换;隐藏模块,用于将所述源代码中的特定函数代码进行隐藏,以实现对待防护代码的防护处理;应用模块,用于将防护处理后的所述源代码应用于客户端。
优选地,所述转换模块包括:生成第一代码子模块,用于对所述源代码进行混淆生成第一代码;导入子模块,用于将所述第一代码导入设定文件中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京小唱科技有限公司,未经北京小唱科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710179802.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:授权监控方法、服务器及可读存储介质
- 下一篇:一种APP的反调试方法