[发明专利]基于Hybrid APP自身特征的前端代码加密方法有效
申请号: | 201710581868.9 | 申请日: | 2017-07-17 |
公开(公告)号: | CN107294702B | 公开(公告)日: | 2020-04-28 |
发明(设计)人: | 翟栋;邓密密 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/08 |
代理公司: | 四川省成都市天策商标专利事务所 51213 | 代理人: | 刘兴亮;李洁 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 hybrid app 自身 特征 前端 代码 加密 方法 | ||
本发明公开了一种基于Hybrid APP自身特征的前端代码加密方法,包括如下步骤:步骤1,计算Hybrid APP的dex文件的MD5值,并保存;步骤2,对前端js代码文件进行加密,加密密钥为步骤1所得的MD5值;步骤3,将步骤2所得MD5值分做两段,记做密钥段a和密钥段b;步骤4,将密钥段a分散插入js代码的加密密文中;步骤5,将密钥段b保存在调用js页面的对应java函数中;步骤6,解密时首先按照规律从密文中提取密钥段a然后从java代码中提取密钥段b并将两者进行拼接,得到解密密钥。本发明保证了密钥的唯一性;使得js页面在脱离了APP环境的情况下不可阅、不可用且不可破解,保证了前端代码的安全。
技术领域
本发明涉及一种代码加密方法,具体涉及一种基于Hybrid APP自身特征的前端代码加密方法,属于移动终端应用安全技术领域。
背景技术
Hybrid APP是指混合开发应用程序,主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台开发的应用。Hybrid APP兼具了Native APP良好用户体验的优势,也兼具了Web APP使用HTML5跨平台开发低成本的优势。据统计目前有超过50%的移动应用是使用的混合开发技术。
随着移动互联网的发展,移动应用安全已成为开发者/发布者/使用者共同关注的热点问题。目前市场上针对native APP一般是采用加壳的方式进行应用加固,但该类加壳只局限于dex文件。js代码是作为资源文件存在于APP包中,其相较于本地代码更容易获得,于是针对Hybrid APP中js代码的保护成了开发者研究的重点。
JavaScript是一种解释性脚本语言,执行前代码不进行预编译。所以该类代码文件不能像java文件那样在内存中进行加解密。目前js代码的加密方式有编码解码字符串、使用转义字符、添加空字符、添加无用内容等,但这些大多只能起到混淆的作用,稍微耗费一些时间就可以得到还原后代码,所以最为安全的还是使用加密解密算法。
目前针对Hybrid APP中js代码的保护一般是将代码加密,然后将解密逻辑和密文整合成一个js文件。此类加密方法中密钥被窃取后则可以很轻易的对js文件进行解密,获得源码,于是密钥的选取与保存成了关键问题。
发明内容
本发明提供了一种新的Hybrid APP前端代码加密方法,所要解决的主要问题是加解密涉及的密钥选取与密钥隐藏。利用APP dex文件的MD5值作为加解密密钥,并将密钥分做两段,一段存储在前端代码中一段存储在java代码中,解密时前端代码将两段密钥拼接进行解密。该方法在保证了运行效率的前提下,有效实现了密钥隐藏,提高了前端代码的安全性。
为了实现上述目的,本发明采用如下技术方案。
基于Hybrid APP自身特征的前端代码加密方法,包括如下步骤:
步骤1,计算Hybrid APP的dex文件的MD5值,并保存;
步骤2,对前端js代码文件进行加密,加密密钥为步骤1所得的MD5值;
步骤3,将步骤1所得MD5值分做两段,记做密钥段a和密钥段b;
步骤4,将密钥段a分散插入js代码文件的加密密文中;
步骤5,将密钥段b保存在调用js代码文件页面的对应java函数中;
步骤6,解密时首先按照规律从密文中提取密钥段a然后从java函数中提取密钥段b并将两者进行拼接,得到解密密钥。
更进一步的方案是:
步骤2中,采用任意对称加密算法对前端js代码文件进行加密。
更进一步的方案是:
步骤3中,采用任意比例对MD5值分段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710581868.9/2.html,转载请声明来源钻瓜专利网。