[发明专利]一种动态网页程序代码的混淆加密方法及装置有效
申请号: | 201210110160.2 | 申请日: | 2012-04-13 |
公开(公告)号: | CN103377326B | 公开(公告)日: | 2017-07-11 |
发明(设计)人: | 董霙 | 申请(专利权)人: | 腾讯科技(北京)有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12 |
代理公司: | 北京派特恩知识产权代理有限公司11270 | 代理人: | 程立民,张颖玲 |
地址: | 100089 北京市海淀区海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 网页 程序代码 混淆 加密 方法 装置 | ||
1.一种动态网页程序代码的混淆加密方法,其特征在于,该方法包括:
识别待发布网页中的动态页面程序源代码中的变量、函数及字符串,对变量名、函数名和字符串进行混淆处理,其中,对变量名和函数名的混淆为不可逆混淆;
将混淆后的代码作为一个完整的字符串,使用加密函数,对混淆后的代码进行加密;
所述将混淆后的代码作为一个完整的字符串,使用加密函数,对混淆后的代码进行加密之前,所述方法还包括:
去除所述动态页面程序源代码中的回车符、换行符及多余的空格;
其中,所述加密函数的加密方法为:对输入的字符串进行逐个字符的位移操作,在位移的基础上,同时结合加密字典,对字符进行加密。
2.根据权利要求1所述的方法,其特征在于,所述对变量名、函数名进行混淆处理的方法为:
将变量名和函数名处理为字母x加数字的形式,使通过上述混淆处理的变量名和函数名与16进制的字符串的表达形式相似。
3.根据权利要求1所述的方法,其特征在于,所述对变量名、函数名进行混淆处理的方法为:
将变量名和函数名处理为罗马字母“o”、“l”和数字字符“0”、“1”四个字符的随机组合。
4.根据权利要求1、2或3所述的方法,其特征在于,所述对字符串的混淆方式为:
将源代码中的所有字符串转换为16进制的字符串表达方式。
5.根据权利要求1所述的方法,其特征在于,在所述混淆和加密的基础上,进一步使用可逆混淆函数对所述混淆和加密的后的结果进行进一步地混淆。
6.一种动态网页程序代码的混淆加密装置,其特征在于,该装置包括:
第一混淆模块,用于识别待发布网页中的动态页面程序源代码中的变量、函数及字符串,对变量名、函数名和字符串进行混淆处理,其中,对变量名和函数名的混淆为不可逆混淆;
加密模块,用于将经第一混淆模块混淆后的代码作为一个完整的字符串,使用加密函数,对混淆后的代码进行加密;
去除模块,用于去除所述动态页面程序源代码中的回车符、换行符及多余的空格;
其中,所述加密模块对输入的字符串进行逐个字符的位移操作,在位移的基础上,同时结合加密字典,对字符进行加密。
7.根据权利要求6所述的装置,其特征在于,所述第一混淆模块对变量名、函数名进行混淆处理时,将变量名和函数名处理为字母x加数字的形式,使混淆处理后的变量名和函数名与16进制的字符串的表达形式相似。
8.根据权利要求6所述的装置,其特征在于,所述第一混淆模块对变量名、函数名进行混淆处理时,将变量名和函数名处理为罗马字母“o”、“l”和数字字符“0”、“1”四个字符的随机组合。
9.根据权利要求6、7或8所述的装置,其特征在于,所述第一混淆模块对所述字符串进行混淆时,将源代码中的所有字符串转换为16进制的字符串表达方式。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二混淆模块,用于在第一混淆模块输出的混淆结果的基础上,进一步使用可逆混淆函数对所述混淆和加密的后的结果进行进一步地混淆。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(北京)有限公司,未经腾讯科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210110160.2/1.html,转载请声明来源钻瓜专利网。