利用白盒库文件和白盒密钥文件进行加解密的方法及装置制造方法及图纸

技术编号:18259622 阅读:29 留言:0更新日期:2018-06-20 10:20
本申请涉及终端安全防护技术领域,尤其涉及一种利用白盒库文件和白盒密钥文件进行加解密的方法及装置,用以解决现有技术中存在的密钥不安全的问题。本申请主要包括:通过库文件生成请求中携带的第一参数组合,获取白盒库文件;通过密钥文件生成请求中携带的第二参数组合,获取白盒密钥文件;根据所述白盒库文件和所述白盒密钥文件进行加解密处理,通过上述技术方案,使得密钥更新较为方便,而且,在更新密钥时,不需要更新白盒库文件,因此,可以简化动态白盒加密流程,且提升密钥的安全性。进而,提升用户在对密文进行解密以及对明文进行加密时的安全性。

Method and device for encryption and decryption by using white box file and white box key file

This application involves the field of terminal security protection technology, especially a method and device for encryption and decryption using white box library files and white box key files to solve the problem of key unsecurity existing in the existing technology. The application mainly includes: the white box library files are obtained by the combination of the first parameters carried in the database file, and the white box key file is obtained by the second parameters combined with the key file. The white box library file and the white box key file are encrypted and decrypted according to the white box Library file and the white box key file. The case makes it more convenient to update the key, and it does not need to update the white box library files when updating the key. Therefore, it can simplify the dynamic white box encryption process and improve the security of the key. Furthermore, it can enhance the security of users in decrypting ciphertext and encrypting plaintext.

【技术实现步骤摘要】
利用白盒库文件和白盒密钥文件进行加解密的方法及装置
本申请涉及终端安全防护
,尤其涉及一种利用白盒库文件和白盒密钥文件进行加解密的方法及装置。
技术介绍
随着终端技术的发展,终端中安装的应用程序越来越多。用户在使用这些应用程序的过程中会产生一些不希望被攻击者窃取的数据,或者用户不希望应用程序本身的执行逻辑被攻击者逆向破解。为了保护应用程序及其运行过程中产生的数据的安全,常常需要对这些数据进行加密。传统的加密技术是黑盒加密技术,黑盒加密技术一般是指,在黑盒(black-box)环境下,利用加密算法对明文数据进行加密,得到密文数据及密钥的技术。其中,黑盒环境是指,安全可靠、对攻击者来说不可见的运行环境,在该环境下,攻击者只能获取加密算法的输入或输出,而无法获得密钥。近年来,智能终端大量普及,由于智能终端的运行环境是相对开放的,也即智能终端的运行环境对攻击者而言是可见的(俗称白盒(white-box)环境),因此黑盒加密技术不再适用,白盒密码技术相应地被提出。白盒密码技术是指,在白盒环境下能够抵御攻击的密码技术。其核心思想是,把密码算法进行混淆,使得攻击者无法得知具体的算法流程,进而达到保护密钥信息的目的,防止攻击者在白盒环境中提取出密钥,从而保证被保护数据的安全。现有的白盒加密技术,通常是先选定一个密钥,然后对明文到密文的映射进行置乱编码,将编码的结果用查找表(也称白盒库文件)的方式表示,使得攻击者无法从查找表中分析得到密钥。例如Chow等人设计出的白盒AES算法。但是现有的白盒AES算法已被破解,使得白盒环境下的数据仍然存在安全威胁。
技术实现思路
本申请实施例提供一种利用白盒库文件和白盒密钥文件进行加解密的方法及装置,用以解决现有技术中存在的密钥不安全的问题。为了解决上述技术问题,本申请实施例采用下述技术方案:一种利用白盒库文件和白盒密钥文件进行加解密的方法,包括:提交库文件生成请求给服务器,其中,所述库文件生成请求中携带有用户选择的第一参数组合;接收所述服务器根据所述第一参数组合反馈的白盒库文件;提交密钥文件生成请求给服务器,其中,所述密钥文件生成请求中携带有用户选择的第二参数组合;接收所述服务器根据所述第二参数组合反馈的白盒密钥文件;根据所述白盒库文件和所述白盒密钥文件进行加解密处理。一种利用白盒库文件和白盒密钥文件进行加解密的装置,包括:发送模块,用于提交库文件生成请求给服务器,其中,所述库文件生成请求中携带有用户选择的第一参数组合;接收模块,用于接收所述服务器根据所述第一参数组合反馈的白盒库文件;所述发送模块,还用于提交密钥文件生成请求给服务器,其中,所述密钥文件生成请求中携带有用户选择的第二参数组合;所述接收模块,还用于接收所述服务器根据所述第二参数组合反馈的白盒密钥文件;处理模块,用于根据所述白盒库文件和所述白盒密钥文件进行加解密处理。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:通过上述技术方案,使得密钥更新较为方便,而且,在更新密钥时,不需要更新白盒库文件,因此,可以简化动态白盒加密流程,且提升密钥的安全性。进而,提升用户在对密文进行解密以及对明文进行加密时的安全性。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1(a)为本申请提供的白盒库文件的生成方法的流程示意图之一;图1(b)为本申请提供的白盒库文件的生成方法的流程示意图之二;图2为本申请提供的白盒库文件的下载方法的流程示意图;图3(a)为本申请提供的白盒库文件的下载方法的流程示意图之一;图3(b)为本申请提供的白盒库文件的下载方法的流程示意图之二;图4(a)为本申请提供的白盒密钥文件的生成方法的流程示意图之一;图4(b)为本申请提供的白盒密钥文件的生成方法的流程示意图之二;图5为本申请提供的白盒密钥文件的下载方法的流程示意图;图6(a)为本申请提供的白盒密钥文件的下载方法的流程示意图之一;图6(b)为本申请提供的白盒密钥文件的下载方法的流程示意图之二;图7为本申请提供的利用白盒库文件和白盒密钥文件的进行加解密的方法流程示意图;图8(a)为本申请提供的白盒库文件的生成装置的结构示意图;图8(b)为本申请提供的白盒库文件的下载装置的结构示意图;图8(c)为本申请提供的白盒密钥文件的生成装置的结构示意图;图8(d)为本申请提供的白盒密钥文件的下载装置的结构示意图;图8(e)为本申请提供的利用白盒库文件和白盒密钥文件进行加解密的装置结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本申请各实施例提供的技术方案。在本申请中,主要介绍了一种动态白盒技术方案。所谓动态白盒是指白盒库文件生成后不需要再更新,原始密钥通过特定的白盒密钥生成工具进行密钥转换,得到白盒密钥;白盒密钥与相应文件传输相匹配的白盒库文件后,就可以通过查表的方式对明文进行加密,或对密文进行解密。在该动态白盒的加解密方案中,白盒密钥是安全的,攻击者不能通过分析白盒密钥得到任何关于原始密钥的信息,从而,能够加强原始密钥的破解难度,保障加解密操作的安全性。下面分别通过动态白盒技术中的几个方案分支,对整个动态白盒技术进行全面介绍。其中,整个动态白盒技术包括:动态白盒库文件的生成方案;动态白盒库文件的下载方案;动态白盒密钥文件的生成方案;动态白盒密钥文件的下载方案;以及,利用白盒库文件以及白盒密钥文件进行加解密的方案。参照图1(a)所示,为本申请提供的白盒库文件的生成方法的流程示意图,需要说明的是,该白盒库文件的生成方案的执行主体可以为服务器,这里的服务器可以是专门用于进行白盒文件处理的白盒系统服务器,也可以是集成在开发商服务器内的子服务器。该生成方法主要包括以下步骤:步骤11:根据确定的第一参数组合,确定与所述第一参数组合匹配的第一代码块。可选地,在本申请中,步骤11在根据确定的第一参数组合,确定与所述第一参数组合匹配的第一代码块时,参照图1(b)所示,具体执行为:步骤111:从接收到的库文件生成请求中确定第一参数组合。具体地,在本申请中,库文件生成请求可以由客户端生成并提交。其中,库文件生成请求中携带有第一参数组合,该第一参数组合中至少包括:算法标识、适用平台标识和目标功能这三种类型。-所述算法标识,指的是加密算法中的一种算法标识或多种算法标识的组合。目前支持的加密算法包括:高级加密标准(AdvancedEncryptionStandard,AES)算法,数据加密算法(DataEncryptionStandard,DES,三重数据加密算法(TripleDataEncryptionStandard,TDES和分组密码算法SM4。-所述适用平台标识,指的是该动态白盒技术所适用的终端操作系统。支持的操作系统至少包括:Android操作系统或iOS操作系统,其实也本文档来自技高网...
利用白盒库文件和白盒密钥文件进行加解密的方法及装置

【技术保护点】
1.一种利用白盒库文件和白盒密钥文件进行加解密的方法,其特征在于,包括:提交库文件生成请求给服务器,其中,所述库文件生成请求中携带有用户选择的第一参数组合;接收所述服务器根据所述第一参数组合反馈的白盒库文件;提交密钥文件生成请求给服务器,其中,所述密钥文件生成请求中携带有用户选择的第二参数组合;接收所述服务器根据所述第二参数组合反馈的白盒密钥文件;根据所述白盒库文件和所述白盒密钥文件进行加解密处理。

【技术特征摘要】
1.一种利用白盒库文件和白盒密钥文件进行加解密的方法,其特征在于,包括:提交库文件生成请求给服务器,其中,所述库文件生成请求中携带有用户选择的第一参数组合;接收所述服务器根据所述第一参数组合反馈的白盒库文件;提交密钥文件生成请求给服务器,其中,所述密钥文件生成请求中携带有用户选择的第二参数组合;接收所述服务器根据所述第二参数组合反馈的白盒密钥文件;根据所述白盒库文件和所述白盒密钥文件进行加解密处理。2.如权利要求1所述的方法,其特征在于,根据所述白盒库文件和所述白盒密钥文件进行加解密处理,具体包括:根据所述白盒库文件和所述白盒密钥文件对用户输入的明文进行加密处理,或者,根据所述白盒库文件和所述白盒密钥文件对用户输入的密文进行解密处理。3.如权利要求2所述的方法,其特征在于,根据所述白盒库文件和所述白盒密钥文件对用户输入的明文进行加密处理,具体包括:根据所述白盒密钥文件,确定与原始密钥对应的白盒密钥;根据所述白盒库文件,对所述白盒密钥以及用户输入的明文进行白盒加密处理,得到所述明文对应的密文。4.如权利要求2所述的方法,其特征在于,根据所述白盒库文件和所述白盒密钥文件对用户输入的密文进行解密处理,具体包括:根据所述白盒密钥文件,确定与原始密钥对应的白盒密钥;根据所述白盒库文件,对所述白盒密钥以及用户输入的密文进行白盒解密处理,得到所述密文对应的明文。5.如权利要求1-4任一项所述的方法,其特征在于,所述白盒库文件通过以下方式确定:根据接收到的第一参数组合,确定与所述第一参数组合匹配的第一代码块;运行所述第一代码块,随机生成查找表源文件;将所述查找表源文件件进行编译,得到白盒库文件。6.如权利要求1-4任一项所述的方法,其特征在于,所述白盒密钥文件通过以下方式确定:根据接收到的第二参数组合,确定与所述第二参数组合匹配的第二代码块;运行所述第二代码块,得到白盒密钥文件。7.一种利用白盒...

【专利技术属性】
技术研发人员:阚志刚陈彪王全洲卢佐华方宁
申请(专利权)人:北京梆梆安全科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1