买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种基于RC4算法的代码全包加密方法_柚子(北京)移动技术有限公司_201710352860.5 

申请/专利权人:柚子(北京)移动技术有限公司

申请日:2017-05-18

公开(公告)日:2021-01-08

公开(公告)号:CN107257282B

主分类号:H04L9/28(20060101)

分类号:H04L9/28(20060101);H04L9/32(20060101);H04L9/08(20060101);G06F21/60(20130101);G06F21/12(20130101)

优先权:

专利状态码:有效-授权

法律状态:2021.01.08#授权;2018.07.06#实质审查的生效;2017.10.17#公开

摘要:本发明提出了一种基于RC4算法的代码全包加密方法,包括:服务器采用RC4算法对APP的代码进行加密处理;所述APP在启动运行后,提取所述MM1和SS2,并根据密钥私有算法将其还原为全局密文密钥M1和摘要密文S2,从所述M1中摘要得到摘要密钥M3,以M3为密钥采用RC4算法对APP的数字证书签名摘要S3进行加密,得到证书摘要密文S4,判断所述证书摘要密文S4与所述摘要密文S2是否一致;所述客户端对所述APP的代码加密文件进行解密。本发明采用基于标准RC4对称加密算法和私有密钥生成算法相结合,达到效率和安全性兼顾的效果。

主权项:1.一种基于RC4算法的代码全包加密方法,其特征在于,包括如下步骤:步骤S1,服务器采用RC4算法对APP的代码进行加密处理,包括:步骤S11,所述服务器获取所述APP的应用包名和时间戳,构造全局密文密钥M1;其中,所述服务器端程序自动构造编译APP安装包所需工程P1,服务器使用密钥私有算法构造RC4加密算法所需密钥,包括:从数据库读取当前APP的应用包名,并做除冗余处理,得到字符串K1,获取当前世界时间的时间戳,并做混淆处理,得到字符串K2以确保密钥的唯一性,使用密钥私有算法对K1和K2进行加密处理,得到全局密文密钥M1;步骤S12,采用密钥私有算法从所述全局密文密钥M1中摘取,得到代码密钥M2和摘要密钥M3,利用代码密钥M2对APP应用包的代码进行加密,得到代码密文;利用摘要密钥M3对所述APP的数字证书摘要进行加密,得到摘要密文S2;步骤S13,采用密钥私有算法将所述全局密文密钥M1和所述摘要密文S2进行混淆处理,得到被打散后的密钥MM1和被打散后的摘要密文SS2,并将MM1和SS2写入代码文件CF1中进行存储;步骤S14,编译APP安装包,按照C语言编译规范将CF1编译为只有CPU能识别的机器码,编译完成后使用数字证书对安装包文件进行签名;步骤S2,所述APP在启动运行后,提取所述MM1和SS2,并根据密钥私有算法将其还原为全局密文密钥M1和摘要密文S2,从所述全局密文密钥M1中摘取得到摘要密钥M3,以M3为密钥采用RC4算法对APP的数字证书摘要S3进行加密,得到证书摘要密文S4,判断所述证书摘要密文S4与所述摘要密文S2是否一致,如果是则执行步骤S3;步骤S3,客户端对所述APP的代码加密文件进行解密,包括:步骤S31,采用密钥私有算法从步骤S2中的全局密文密钥M1中摘取,得到密钥M2;步骤S32,利用所述M2对从APP安装包中读取的代码加密文件进行解密处理,获得代码明文文件。

全文数据:一种基于RG4算法的代码全包加密方法技术领域[0001]本发明涉及移动终端技术领域,特别涉及一种基于RC4算法的代码全包加密方法。背景技术[0002]自HTML5技术诞生以来,对于Html、javascript、css代码的加密保护,至今依然是一个巨大的难题。基于HTML5跨平台技术开发的移动APP,通过解压其安装包,即可使用任意代码编辑器直接查看源代码,由此带来产品创意被复制,核心代码被窃取,私密数据泄露,知识产权被侵犯等一系列的问题,严重者甚至波及服务器的安全。[0003]国内外知名的跨平台APP开发技术提供商,如Phonegap、Appcelerator等,在对Html、Javascript、Css代码的加密保护上,均无良好的对策,通常使用混淆来增加代码的阅读难度,实现对代码的简单保护,但代码依然为可读的明文,未真正解决Html、Javascript、Css代码的加密保护问题。发明内容[0004]本发明的目的旨在至少解决所述技术缺陷之一。[0005]为此,本发明的目的在于提出一种基于RC4算法的代码全包加密方法。[0006]为了实现上述目的,本发明的实施例提供一种基于RC4算法的代码全包加密方法,包括如下步骤:[0007]步骤S1,服务器采用RC4算法对APP的代码进行加密处理,包括:[0008]步骤S11,所述服务器获取所述APP的应用包名和时间戳,构造全局密文密钥Ml;[0009]步骤S12,采用密钥私有算法从所述全局密文密钥Ml中摘取,得到代码密钥M2和摘要密钥M3,利用代码密钥M2对APP应用包的代码进行加密,得到代码密文;利用摘要密钥M3对所述APP的数字证书摘要进行加密,得到摘要密文S2;[0010]步骤S13,采用密钥算法将所述全局密文密钥Ml和所述摘要密文S2进行混淆处理,得到被打散后的密钥MM1和证书摘要密文SS2,并将MM1和SS2写入代码文件CF1中进行存储;[0011]步骤S14,编译APP安装包,按照C语言编译规范将CF1编译为只有CPU能识别的机器码,编译完成后使用数字证书对安装包文件进行签名;[0012]步骤S2,所述APP在启动运行后,提取所述MM1和SS2,并根据密钥私有算法将其还原为全局密文密钥Ml和摘要密文S2,从所述Ml中摘要得到摘要密钥M3,以M3为密钥采用RC4算法对APP的数字证书签名摘要S3进行加密,得到证书摘要密文S4,判断所述证书摘要密文S4与所述摘要密文S2是否一致,如果是则执行步骤S3;[0013]步骤S3,所述客户端对所述APP的代码加密文件进行解密,包括:[0014]步骤S31,采用密钥私有算法从步骤S2中的密钥Ml中摘取,得到密钥M2,[0015]步骤S32,利用所述M2对从APP安装包中读取的代码加密文件进行解密处理,获得代码明文文件。[0016]进一步,所述APP应用包的代码文件包括:Html、Javascript、Css代码文件。[0017]进一步,在所述步骤S11中,所述服务器从数据库读取当前APP的应用包名,并做除冗余处理,得到字符串K1,获取当前世界时时间戳,并做混淆处理,得到字符串K2以确保密钥的唯一性。[0018]进一步,在所述步骤S12中,利用代码密钥M2对APP应用包的代码进行加密,包括如下步骤:[0019]所述服务器从存储中遍历读取当前APP的Html、Javascript、Css代码文件,依次形成二进制Bufferl;[0020]以M2为密钥,使用标准RC4对称加密算法对Bufferl进行加密运算处理,得到密文Buffer2;[0021]保持Html、Javascript、Css代码文件在工程P1中的文件名及路径不变,并将Buffer2写入对应文件,其中,Html、Javascript、Css代码文件将变为使用任何代码编辑器均不可读的密文。[0022]进一步,在所述步骤S12中,利用摘要密钥M3对所述APP的数字证书摘要进行加密,包括如下步骤:[0023]所述服务器从存储中取得当前APP的签名所需数字证书CERT1,并获取其摘要S1;[0024]以M3为密钥,使用标准RC4对称加密算法对S1进行加密运算处理,得到证书摘要密文S2。[0025]进一步,在所述步骤S2中,[0026]判断所述证书摘要密文S4与所述摘要密文S2是否一致,[0027]如果一致,则判断APP的签名数字证书来自服务器,判断当前APP完整,未被破解篡改或者被二次打包,执行步骤S3进行解密,正常运行APP;[0028]如果不一致,则判断APP已被破解并使用新的数字证书进行二次打包后签名,遭到篡改,应当立即终止执行。[0029]进一步,步骤S32之后,还包括如下步骤:[0030]通过Hash结构H1保存代码明文文件至系统内存,当APP再次需要执行该代码文件时,则直接从内存获取使用该代码明文文件,实现对资源的加速读取;[0031]应用引擎执行保存于代码明文文件中的明文状态的Html、Javascript、Css代码;[0032]APP终止运行,将随系统清理该APP占用的内存而被回收。[0033]根据本发明实施例的基于RC4算法的代码全包加密方法,提供一种基于标准RC4对称加密算法的对fltml、Javascript、Css源代码加密方法,经过加密后的代码将为不可读的密文,无法使用代码编辑器对其进行阅读,有效的保护了APP源代码的安全。[0034]1、基于标准RC4对称加密算法和私有密钥生成算法相结合,达到效率和安全性兼顾的效果;[0035]2、采用动态密钥,每次编译APP安装包都生成并使用新的密钥,密钥仅在本次编译的APP中有效,即使密钥被黑客截取,也仅影响该版本APP,其他版本不受影响,进一步提升了安全性;[0036]3、本发明使用动态加密技术,通过服务器自动加密代码,APP运行时自动解密代码。使用者只需要在编译APP时勾选代码加密选项,服务器在编译APP安装包时将该APP对应的Html、Javascript、Css代码自动加密,当该APP安装到移动终端后,在运行过程中实时解密,APP退出即销毁,不留下解密痕迹,具有易用性和对用户友好性;[0037]4、加密方法对代码产生零修改,零影响。加密不改变代码量大小,加密后的代码不会比加密前多出一个字节,代码加密前后,APP的运行效率、使用体验不受影响;[0038]5、使用者在开发APP的过程中,无需针对代码保护问题投入额外的时间,按照正常的开发流程进行即可;[0039]6、针对APP的潜在安全问题,规定了一个安全区域,仅对该区域内代码进行加解密保护,区域外代码遵循使用者开发经验灵活处理;[0040]7、实现了统一的代码资源标准,在处理被保护代码时,重新分配APP资源的使用方式,统一资源管理,实现加速资源加载,节省系统开销,使得加密代码后的APP在运行过程中能提速运行;[0041]8、密钥同APP数字证书绑定,防止APP被二次打包,可有效防止APP代码被反编译,被篡改,被窃取数据,被盗版,保护软件知识产权;[0042]9、本发明兼容性强,兼容所有搭载Android和iOS操作系统的终端设备。[0043]本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明[0044]本发明的上述和或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:[0045]图1为根据本发明实施例的基于RC4算法的代码全包加密方法的流程图;[0046]图2为根据本发明实施例的服务器端加密的流程图;[0047]图3为根据本发明实施例的客户端防二次打包的流程图;[0048]图4为根据本发明实施例的客户端解密的流程图;[0049]图5a至图5f分别为根据本发明实施例的三组代码加密前后的对比效果图。具体实施方式[0050]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。[0051]本发明提出一种基于RC4算法的代码全包加密方法,基于标准RC4对称加密算法的对Html、Javascript、Css源代码加密方法,主要用于移动应用APP开发领域。本发明通过在服务器端对APP的批!111、扣\^3〇14?1:、〇33代码进行加密处理,对八??的数字证书摘要做加密处理,并编译APP安装包;移动终端使用者在安装并启动APP时,应用引擎对APP做是否被二次打包校验,并实施解密Html、Javascript、Css代码。[0052]如图1所示,本发明实施例的基于RC4算法的代码全包加密方法,包括如下步骤:[0053]步骤S1,服务器采用RC4算法对APP的代码进行加密处理,包括:[0054]步骤S11,服务器获取APP的应用包名和时间戳,构造全局密文密钥Ml。[0055]具体地,参考图1,服务器端程序自动构造编译APP安装包所需工程P1。服务器使用密钥私有算法构造RC4加密算法所需密钥,包括:从数据库读取当前APP的应用包名,并做除冗余处理,得到字符串K1,获取当前世界时时间戳,并做混淆处理,得到字符串K2以确保密钥的唯一性。使用密钥私有算法对K1和K2进行加密处理,得到全局密文密钥Ml。[0056]RC4对称算法使用起来简单快捷,密钥较短,且破译困难。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都可以对加密的数据进行解密。本发明通过一套私有算法进行运算生成密钥并存储,在该私有算法未公开的情况下,可有效保证密钥的安全性。[0057]步骤S12,采用密钥私有算法从全局密文密钥Ml中摘取,得到代码密钥M2和摘要密钥M3,利用代码密钥M2对APP应用包的代码进行加密,得到代码密文;利用摘要密钥M3对APP的数字证书摘要进行加密,得到摘要密文S2。[0058]在本发明的一个实施例中,APP应用包的代码文件包括:Html、Javascript、CSS代码文件。[0059]具体地,使用密钥私有算法从密钥Ml中摘取,得到密钥M2,作为本次加密运算的密钥;•服务器从存储中遍历读取当前APP的Html、Javascript、Css代码文件,依次形成二进制Buffer1〇[0060]具体地,利用代码密钥M2对APP应用包的代码进行加密,包括如下步骤:[0061]服务器从存储中遍历读取当前APP的Html、Javascript、Css代码文件,依次形成二进制Bufferl;[0062]以M2为密钥,使用标准RC4对称加密算法对Bufferl进行加密运算处理,得到密文Buffer2;[0063]保持Html、Javascript、Css代码文件在工程P1中的文件名及路径不变,并将Buffer2写入对应文件,其中,Html、Javascript、Css代码文件将变为使用任何代码编辑器均不可读的密文。[0064]经此步骤处理后,Html、Javascript、Css代码文件将变为使用任何代码编辑器均不可读的密文,如图5a至图5f所示。[0065]其中,加密前的Html代码如图a所示,加密后的Html代码如图b所示。加密前的Javascript代码如图〇所示,加密后的Javascript代码如图d所示。加密前的Css代码如图e所示,加密后的Css代码如图f所示。[0066]利用摘要密钥M3对APP的数字证书摘要进行加密,包括如下步骤:[0067]使用密钥私有算法从密钥Ml中摘取,得到密钥M3;服务器从存储中取得当前APP的签名所需数字证书CERT1,并获取其摘要S1。然后,以M3为密钥,使用标准RC4对称加密算法对S1进行加密运算处理,得到证书摘要密文S2。[0068]步骤S13,采用密钥算法将全局密文密钥Ml和摘要密文S2进行混淆处理,得到被打散后的密钥MM1和证书摘要密文SS2,并将MM1和SS2写入工程P1的C语言代码文件CF1中进行存储。[0069]步骤S14,编译APP安装包,按照ci吾言编译规范将CF1编译为只有CPU能识别的机器码,编译完成后使用数字证书对安装包文件进行签名;[0070]具体地,服务器程序开始编译APP工程P1,并按照c语言编译规范将CF1编译为只有CPU能识别的机器码,有效的保护了密钥Ml和数字证书摘要S2的唯一性和不被篡改;编译完成后使用数字证书CERT1对安装包文件进行签名。[0071]移动终端操作系统要求每一个安装进系统的应用程序都是经过数字证书签名的,未签名的应用程序将无法安装。通过使用数字证书对APP安装包进行签名,实现应用程序包的自我认证,标识APP的所有者,因此持有数字证书即意味对该APP的所有权。[0072]步骤S2,如图2所示,APP在启动运行后,提取丽1和SS2,并根据密钥私有算法将其还原为全局密文密钥Ml和摘要密文S2,从Ml中摘要得到摘要密钥M3,以M3为密钥采用RC4算法对APP的数字证书签名摘要S3进行加密,得到证书摘要密文S4,判断证书摘要密文S4与摘要密文S2是否一致,如果是则执行步骤S3。[0073]具体地,APP在移动终端启动运行之初,应用引擎从内存中取得中被打散后的密钥MM1和证书摘要密文SS2,根据密钥私有算法将其还原为Ml和S2。使用密钥私有算法从密钥Ml中摘取,得到密钥M3;[0074]应用引擎获取当前APP的数字证书签名摘要S3,以M3为密钥,使用标准RC4对称加密算法对S3进行加密运算处理,得到证书摘要密文S4。判断证书摘要密文S4与摘要密文S2是否一致,如果一致,说明本APP的签名数字证书来自服务器端,可认为当前APP完整,未被破解篡改或者被二次打包,应当执行步骤S3的解密HtmUjavascriptXss步骤,正常运行APP;如果不一致,则说明APP已被破解并使用新的数字证书进行二次打包后签名,遭到篡改,应当立即终止执行;[0075]步骤S3,如图3所示,客户端对APP的代码加密文件进行解密,包括:[0076]步骤S31,采用密钥私有算法从步骤S2中的密钥Ml中摘取,得到密钥M2,应用引擎从APP安装包中读取密文状态下的Html、JaVaScript、CSS代码文件,单独形成二进制Buffer3。[0077]步骤S32,以M2为密钥,使用标准RC4对称加密算法对Buffer3进行解密运算处理,得到明文Buffer4。[0078]需要说明的是,步骤S32之后,还包括如下步骤:通过Hash结构HI保存明文Buffer4至系统内存,当APP再次需要执行该代码文件时,则直接从内存获取使用该Buffer4,实现对资源的加速读取;应用引擎执行保存于Buffer4中的明文状态的Html、Javascript、Css代码;APP终止运行,HI将随系统清理该APP占用的内存而被回收,不留下任何痕迹。[0079]本发明实施例的基于RC4算法的代码全包加密方法,采用以下技术:可解密并执行Html、Javascript、Css代码文件的应用引擎DeepEngine;服务器端动态对Html、Javascript、Css代码加密技术;服务器端动态密钥生成技术,特别是密钥私有算法技术;月艮务器端智能编译APP安装包技术;APP端对Html、Javascript、Css代码实时解密技术;APP端防安装包被二次打包技术。[0080]本发明实施例的基于RC4算法的代码全包加密方法,可以实现以下功能:[0081]1、向使用者提供可以解密并执行Html、Javascript、Css代码文件的应用引擎DeepEngine;[0082]2、向使用者提供标准RC4对称加密算法所需密钥的私有算法,在本交底书中简称密钥私有算法;[0083]3、服务器端在编译APP又称客户端安装包之前,使用标准RC4对称加密算法和通过密钥私有算法运算得到的密钥,对处于明文状态的Html、JaVaSCriPt、CSS代码文件进行加密运算,得到加密后的密文文件;[0084]4、服务器端进行APP安装包的编译,并将密文状态下的Html、JavaSCript、CSS代码文件及应用引擎编译到APP安装包中;[0085]5、客户端使用者在安装并启动APP运行时,应用引擎先使用标准RC4对称加密算法对处于密文状态的HtmUjavascriptXss代码文件进行解密运算,得到解密后的明文代码,然后交给应用引擎执行;[0086]6、以上步骤使得从APP安装文件中解压获得的将是Html、JavaSCript、Css代码文件的密文文件,无法使用任何代码编辑器进行阅读查看,同时又不影响APP的运行效率和体验,达到了防止APP代码被反编译,被篡改,被窃取数据,被盗版,保护软件知识产权等目的。[0087]根据本发明实施例的基于RC4算法的代码全包加密方法,提供一种基于标准RC4对称加密算法的对Html、Javascript、Css源代码加密方法,经过加密后的代码将为不可读的密文,无法使用代码编辑器对其进行阅读,有效的保护了APP源代码的安全。[0088]1、基于标准RC4对称加密算法和私有密钥生成算法相结合,达到效率和安全性兼顾的效果;[0089]2、采用动态密钥,每次编译APP安装包都生成并使用新的密钥,密钥仅在本次编译的APP中有效,即使密钥被黑客截取,也仅影响该版本APP,其他版本不受影响,进一步提升了安全性;[0090]3、本发明使用动态加密技术,通过服务器自动加密代码,APP运行时自动解密代码。使用者只需要在编译APP时勾选代码加密选项,服务器在编译APP安装包时将该APP对应的Html、Javascript、Css代码自动加密,当该APP安装到移动终端后,在运行过程中实时解密,APP退出即销毁,不留下解密痕迹,具有易用性和对用户友好性;[0091]4、加密方法对代码产生零修改,零影响。加密不改变代码量大小,加密后的代码不会比加密前多出一个字节,代码加密前后,APP的运行效率、使用体验不受影响;[0092]5、使用者在开发APP的过程中,无需针对代码保护问题投入额外的时间,按照正常的开发流程进行即可;[0093]6、针对APP的潜在安全问题,规定了一个安全区域,仅对该区域内代码进行加解密保护,区域外代码遵循使用者开发经验灵活处理;[0094]7、实现了统一的代码资源标准,在处理被保护代码时,重新分配APP资源的使用方式,统一资源管理,实现加速资源加载,节省系统开销,使得加密代码后的APP在运行过程中能提速运行;[0095]8、密钥同APP数字证书绑定,防止APP被二次打包,可有效防止APP代码被反编译,被篡改,被窃取数据,被盗版,保护软件知识产权;[0096]9、本发明兼容性强,兼容所有搭载Android和iOS操作系统的终端设备。[0097]在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。[0098]尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

权利要求:1.一种基于RC4算法的代码全包加密方法,其特征在于,包括如下步骤:步骤S1,服务器采用RC4算法对APP的代码进行加密处理,包括:步骤S11,所述服务器获取所述APP的应用包名和时间戳,构造全局密文密钥M1;步骤S12,采用密钥私有算法从所述全局密文密钥Ml中摘取,得到代码密钥M2和摘要密钥M3,利用代码密钥M2对APP应用包的代码进行加密,得到代码密文;利用摘要密钥M3对所述APP的数字证书摘要进行加密,得到摘要密文S2;步骤S13,采用密钥算法将所述全局密文密钥Ml和所述摘要密文S2进行混淆处理,得到被打散后的密钥MM1和证书摘要密文SS2,并将MM1和SS2写入代码文件CF1中进行存储;步骤S14,编译APP安装包,按照C语言编译规范将CF1编译为只有CPU能识别的机器码,编译完成后使用数字证书对安装包文件进行签名;步骤S2,所述APP在启动运行后,提取所述MM1和SS2,并根据密钥私有算法将其还原为全局密文密钥Ml和摘要密文S2,从所述Ml中摘要得到摘要密钥M3,以M3为密钥采用RC4算法对APP的数字证书签名摘要S3进行加密,得到证书摘要密文S4,判断所述证书摘要密文S4与所述摘要密文S2是否一致,如果是则执行步骤S3;步骤S3,所述客户端对所述APP的代码加密文件进行解密,包括:步骤S31,采用密钥私有算法从步骤S2中的密钥Ml中摘取,得到密钥M2,步骤S32,利用所述M2对从APP安装包中读取的代码加密文件进行解密处理,获得代码明文文件。2.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,所述APP应用包的代码文件包括:Html、Javascript、Css代码文件。3.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,在所述步骤S11中,所述服务器从数据库读取当前APP的应用包名,并做除冗余处理,得到字符串K1,获取当前世界时时间戳,并做混淆处理,得到字符串K2以确保密钥的唯一性。4.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,在所述步骤S12中,利用代码密钥M2对APP应用包的代码进行加密,包括如下步骤:所述服务器从存储中遍历读取当前APP的Html、JavaScriPt、CSS代码文件,依次形成二进制Buffer1;以M2为密钥,使用标准RC4对称加密算法对Bufferl进行加密运算处理,得到密文Buffer2;保持Html、Javascript、Css代码文件在工程P1中的文件名及路径不变,并将Buffer2写入对应文件,其中,Html、Javascript、Css代码文件将变为使用任何代码编辑器均不可读的密文。5.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,在所述步骤S12中,利用摘要密钥M3对所述APP的数字证书摘要进行加密,包括如下步骤:所述服务器从存储中取得当前APP的签名所需数字证书CERT1,并获取其摘要S1;以M3为密钥,使用标准RC4对称加密算法对S1进行加密运算处理,得到证书摘要密文S2。6.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,在所述步骤S2中,判断所述证书摘要密文S4与所述摘要密文S2是否一致,如果一致,则判断APP的签名数字证书来自服务器,判断当前APP完整,未被破解篡改或者被二次打包,执行步骤S3进行解密,正常运行APP;如果不一致,则判断APP已被破解并使用新的数字证书进行二次打包后签名,遭到篡改,应当立即终止执行。7.如权利要求1所述的基于RC4算法的代码全包加密方法,其特征在于,所述步骤S32之后,还包括如下步骤:通过Hash结构H1保存代码明文文件至系统内存,当APP再次需要执行该代码文件时,则直接从内存获取使用该代码明文文件,实现对资源的加速读取;应用引擎执行保存于代码明文文件中的明文状态的Html、javascript、Css代码;APP终止运行,将随系统清理该App占用的内存而被回收。’

百度查询: 柚子(北京)移动技术有限公司 一种基于RC4算法的代码全包加密方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。