CN110166425B - 数据处理方法、装置、系统及计算机可读存储介质 - Google Patents
数据处理方法、装置、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110166425B CN110166425B CN201910281400.7A CN201910281400A CN110166425B CN 110166425 B CN110166425 B CN 110166425B CN 201910281400 A CN201910281400 A CN 201910281400A CN 110166425 B CN110166425 B CN 110166425B
- Authority
- CN
- China
- Prior art keywords
- client
- algorithm
- ciphertext
- sub
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种数据处理方法、装置、系统及计算机可读存储介质,该方法包括:客户端发送数据请求至服务器,数据请求包括客户端ID信息;服务器利用与客户端ID信息对应的第一预设密钥和第一子密钥,对客户端ID信息分别加密,生成客户端ID密文和第一子密文,根据客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有客户端ID密文的客户端白盒算法,发送客户端白盒算法和第一子密文至客户端;客户端根据预先保存的第二子密钥对客户端ID信息加密,生成第二子密文,对第一子密文和第二子密文进行组合,生成客户端ID密文,根据客户端ID密文和客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种数据处理方法、装置、系统及计算机可读存储介质。
背景技术
目前,为了确保数据的安全使用,需要对数据进行加密和解密处理。
服务器可以向移动终端分发设备密钥,以便于移动终端使用该设备密钥对数据进行加密或解密操作。
但是由于移动终端使用场景以及开源操作系统的特殊性,以明文形式存储于移动终端侧的密钥普遍存在着安全隐患,在密钥明存的场景下,容易造成密钥被窃取、篡改等数据安全问题。
发明内容
本发明提供了一种数据处理方法、装置、系统及计算机可读存储介质,以解决相关技术中密钥以明文形式存储在客户端侧所导致的数据安全度低的问题。
为了解决上述问题,根据本发明的第一方面,本发明公开了一种数据处理方法,应用于包括服务器和客户端的系统,所述方法包括:
所述客户端发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
所述服务器利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
所述服务器根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
所述服务器发送所述客户端白盒算法和所述第一子密文至所述客户端;
所述客户端根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
所述客户端对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
所述客户端根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
根据本发明的第二方面,本发明公开了一种数据处理方法,应用于服务器,所述方法包括:
接收数据请求,所述数据请求包括客户端ID信息;
利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
根据本发明的第三方面,本发明公开了一种数据处理方法,应用于客户端,所述方法包括:
发送数据请求,所述数据请求包括客户端ID信息;
接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
根据本发明的第四方面,本发明公开了一种数据处理系统,包括客户端和服务器;
所述客户端,用于发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
所述服务器,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
所述服务器,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
所述服务器,用于发送所述客户端白盒算法和所述第一子密文至所述客户端;
所述客户端,用于根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
所述客户端,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
所述客户端,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
根据本发明的第五方面,本发明公开了一种数据处理装置,应用于服务器,所述装置包括:
第一接收模块,用于接收数据请求,所述数据请求包括客户端ID信息;
加密模块,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
生成模块,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
响应模块,用于响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
根据本发明的第六方面,本发明公开了一种数据处理装置,应用于客户端,所述装置包括:
第一发送模块,用于发送数据请求,所述数据请求包括客户端ID信息;
第一接收模块,用于接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
生成模块,用于根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
组合模块,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
处理模块,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
根据本发明的第七方面,本发明公开了一种服务器,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上述应用于服务器的所述的数据处理方法的步骤。
根据本发明的第八方面,本发明公开了一种客户端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上述应用客户端的所述的数据处理方法的步骤。
根据本发明的第九方面,本发明公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上述应用于客户端的所述的数据处理方法中的步骤,或,如上述应用于服务器的所述的数据处理方法的步骤。
与现有技术相比,本发明包括以下优点:
这样,本发明实施例为了避免数据密钥以明文存储在客户端,服务器可以根据客户端ID密文以及预设混淆策略,来对第二预设密钥、预设处理算法进行混淆,生成混淆有客户端ID密文的客户端白盒算法,并将该客户端白盒算法分发至客户端,避免了第二预设密钥在客户端的明文存储,提升了客户端侧存储的密钥的安全性;此外,本发明实施例在生成客户端白盒算法时,在进行所述混淆时,利用客户端ID密文而非客户端ID明文进行混淆,并使用该客户端ID密文对应的第一预设密钥中的一部分密钥来对客户端ID进行加密,将加密得到的第一子密文连同该客户端白盒算法分发至客户端。使得客户端侧只存储有客户端ID对应的第一预设密钥的部分密钥,确保了第一预设密钥的安全。
附图说明
图1是本发明的一种数据处理方法实施例的步骤流程图之一;
图2是本发明实施例的一种数据处理过程的示意图;
图3是本发明的一种数据处理方法实施例的步骤流程图之二;
图4是本发明的一种数据处理方法实施例的步骤流程图之三;
图5是本发明的一种数据处理方法实施例的步骤流程图之四;
图6是本发明的一种数据处理方法实施例的步骤流程图之五;
图7是本发明的一种数据处理系统实施例的结构框图;
图8是本发明的一种数据处理装置实施例的结构框图;
图9是本发明的另一种数据处理装置实施例的结构框图。
具体实施方式
为了避免密钥以明文形式存储在客户端侧所导致的数据安全度低的问题,本发明提供了一种数据处理方法,该数据处理方法可以应用于包括客户端和服务器的系统,服务器可以根据客户端ID密文,利用第二预设密钥、预设处理算法(例如预设加密算法或预设解密算法)和预设混淆策略来生成客户端白盒算法,使得该客户端白盒算法经过客户端ID密文的外部混淆处理。客户端接收到该客户端白盒算法来对数据进行处理,由于客户端侧没有明存任何密钥,而只是存储了经过客户端ID密文混淆后的客户端白盒算法,从而确保了客户端白盒算法对应的第二预设密钥的安全。并且,该客户端白盒算法是经过客户端ID密文混淆,且客户端侧只可以获取该客户端ID密文对应的第一预设密钥所分解的第二子密钥,又进一步确保了客户端ID密文的授权获取,不仅实现了客户端ID与该客户端白盒算法的绑定,还确保了数据加解密密钥的非明文存储。下面对上述提到的数据处理方法进行具体描述。
参照图1,示出了本发明的一种数据处理方法实施例的步骤流程图,应用于包括服务器和客户端的系统,该方法具体可以包括如下步骤:
步骤101,所述客户端发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
其中,该数据请求可以为白盒请求。
客户端可以向服务器请求数据的加密或解密的密钥,从而对数据进行加密或解密处理操作,而为了避免密钥在客户端侧的明存所导致的数据安全问题,服务器在分发密钥时,以白盒的方式来分发密钥和处理算法(即步骤103所述的第二预设密钥和预设处理算法),从而使得处理算法和完整的密钥不以明文的方式出现,而是混淆在多个表中,客户端可以通过查表的方式来进行数据的加密或解密操作。而为了确保白盒与客户端的绑定,即只有具有该客户端ID的客户端才可以使用该白盒,客户端向服务器发送的数据请求可以包括客户端ID信息。
步骤102,所述服务器利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文;
其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
其中,服务器侧预先可以根据客户端ID信息来对每个客户端配置第一预设密钥,该第一预设密钥为用于对客户端ID信息进行加密的密钥,其与客户端ID相绑定。其中,该第一预设密钥可以是对称加密算法的密钥,也可以是非对称加密算法中的密钥。例如该第一预设密钥为RSA(RSA是一种非对称加密算法,其命名是提出该非对称加密算法的三个人的姓氏开头字母的组合)私钥。
此外,服务器侧预先还对该第一预设密钥进行分解,从而将第一预设密钥分为两部分,分别为第一子密钥和第二子密钥。
可选地,在对第一预设密钥进行分解时,可以使用随机数来对第一预设密钥进行分解。例如可以基于随机数,利用预设分解算法来对第一预设密钥进行分解。其中,该预设分解算法包括但不限于减法运算、加法运算、乘法运算异或运算等运算方法。
以预设分解算法为减法运算为例进行说明,例如第一预设密钥为123,随机数为3,计算123-3=120,因此,分解得到第一子密钥为3,第二子密钥为120。
由于服务器侧相较于客户端侧是安全的,因此,服务器侧可以保存与客户端ID信息对应的第一预设密钥、由该第一预设密钥分解的第一子密钥以及第二子密钥。
而为了确保第一预设密钥不以明文存储在客户端侧,服务器可以预先将分解得到的两个子密钥中的任意一个子密钥(本实施例中为后文所述的第二子密钥)分发至客户端侧保存,使得客户端侧并不保存完整的第一预设密钥,确保客户端侧的密钥安全存储。
在本步骤中,在服务器接收到客户端的请求白盒的请求之后,服务器可以利用第一预设密钥123来对客户端ID信息进行加密,得到客户端ID密文M;此外,服务器还利用第一子密钥3来对客户端ID信息进行加密,得到第一子密文M1。
步骤103,所述服务器根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
其中,为了分发第二预设密钥、预设处理算法至客户端,为了确保第二预设密钥在客户端侧不以明文存储,服务器侧需要将第二预设密钥、预设处理算法生成客户端白盒算法;并且,为了确保生成的客户端白盒算法能够与客户端ID相绑定,在生成该客户端白盒算法时,还会利用客户端ID密文以及预设混淆策略,来对第二预设密钥、预设处理算法进行外部混淆,以确保只有具有该客户端ID密文的客户端,才可以有权限使用该客户端白盒算法。
其中,本文所述的预设处理算法可以是预设加密算法,也可以是预设解密算法,当该预设处理算法为预设加密算法时,则生成的客户端白盒算法用于对数据进行加密处理,且加密的实现过程为采用预设加密算法和第二预设密钥来对待处理数据进行加密;类似的,当该预设处理算法为预设解密算法时,则生成的客户端白盒算法用于对数据进行解密处理,且解密的实现过程为采用预设解密算法和第二预设密钥来对待处理数据进行解密。
此外,本发明对于预设处理算法的算法类型不做限制,可以是任意一种对称算法。
可选地,在执行步骤103时,服务器可以根据所述客户端ID密文,利用预设混淆策略,生成至少一个混淆算法;然后,服务器根据第二预设密钥、预设处理算法以及所述至少一个混淆算法,生成混淆有所述客户端ID密文的客户端白盒算法。
其中,混淆算法的结构可以是矩阵队列。
该预设混淆策略可以是获取哈希值,那么服务器在根据客户端ID密文,利用预设混淆策略来生成至少一个混淆算法时,则可以对客户端ID密文进行哈希运算,得到客户端ID密文的哈希值,然后,将该客户端ID密文的哈希值作为该混淆算法,例如混淆矩阵C1;
或者,该预设混淆策略可以是利用随机函数的种子来生成随机数,那么服务器在根据客户端ID密文,利用预设混淆策略来生成至少一个混淆算法时,则可以对将客户端ID信息密文作为随机函数的种子,以该种子来生成随机数A,然后,将生成的该随机数A作为该混淆算法,例如混淆矩阵C2。
其中,服务器为了使生成的客户端白盒算法能够与客户端ID密文相绑定,在生成客户端白盒算法时,不仅仅会利用第二预设密钥以及预设处理算法,还会利用所述基于客户端ID密文所生成的至少一个混淆算法,来对第二预设密钥以及预设处理算法进行外部混淆。
需要说明的是,白盒加密、白盒解密属于对称算法技术,是能够在白盒环境下抵御攻击的一种特殊的加密方法。因此,上述预设处理算法为对称算法,例如AES(AdvancedEncryption Standard,高级加密标准)、DES(Data Encryption Standard,数据加密标准)。其中,预设加密算法和预设解密算法是互逆的过程。
白盒加密/解密的核心思想是混淆,即将明文混淆成无法直接识别的字符,可以说加密是隐藏信息,而混淆就是指扰乱信息。
为了进一步保证在客户端存储的密钥安全性,本发明实施例提出的技术方案采用白盒加密/解密方式来对混淆算法、加密/解密算法、第二预设密钥进行封装。从而可以将第二预设密钥隐藏在客户端白盒算法中。
其中,客户端白盒算法是基于客户端发送的客户端ID密文对应生成的,客户端白盒算法可以包括至少一个混淆算法,和,经过混淆后的第二预设密钥以及预设处理算法所对应的白盒表。
该至少一个混淆算法是基于混淆策略而生成,例如可以是根据客户端ID密文通过预设的特定方法生成混淆矩阵。例如可以使用客户端ID密文的哈希值作为混淆矩阵;或者利用客户端ID密文生成的随机数作为混淆矩阵等,以实现每个客户端白盒算法都只能够适用于其对应的客户端。
在本发明实施例中,在对第二预设密钥、预设处理算法以及至少一个混淆矩阵,来生成客户端白盒算法时,可以采用传统技术中利用矩阵来对第二预设密钥和预设处理算法进行混淆的方式,来生成客户端白盒算法。
其中,传统技术所生成的未经过外部混淆的客户端白盒算法,所使用的矩阵只是一个无任何规律的随机数所生成的矩阵,而在本发明实施例中,所使用的矩阵则是利用预设混淆策略来对客户端ID密文进行混淆所生成的混淆矩阵,该混淆矩阵是与客户端ID密文相关的,从而存在一定规律,并是无任何规律的随机数所生成的随机矩阵,因此,本发明实施例生成的客户端白盒算法能够与客户端ID相绑定。
步骤104,所述服务器响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文至所述客户端;
其中,服务器侧在生成客户端白盒算法后,可以响应于客户端的数据请求,来将经过客户端ID密文混淆后的客户端白盒算法以及第一子密文发送至客户端。以便客户端对从服务器下载的数据进行加密(包括签名)或解密等操作。
其中,对于客户端对该客户端白盒算法的使用方式,如果该客户端白盒算法生成时是基于预设加密算法,则该客户端白盒算法可以用于对数据加密(包括签名);如果该客户端白盒算法生成时是基于预设解密算法,而该客户端白盒算法用于对下载自服务器的数据密文进行数据解密。
当然,在其他实施例中,生成的该客户端白盒算法中的白盒表也可以基于预设加密算法以及预设解密算法,以及该两个算法分别对应的两组密钥。使得客户端可以使用该客户端白盒算法可以用于数据加密、数据签名、数据解密多种操作。
另外,由于该客户端白盒算法是经过客户端ID密文混淆后的客户端白盒算法,而客户端侧又仅保存有该客户端ID密文对应的第一预设密钥的部分密钥,因此,为了确保客户端能够对该客户端白盒算法进行有效使用,服务器在下发客户端白盒算法时,还会下发由服务器侧的第一子密钥对客户端ID信息加密过生成的第一子密文。
步骤105,所述客户端根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
以上述示例来举例,这里可以使用第二子密钥120来对客户端ID信息进行加密,从而生成第二子密文M2。
其中,步骤105在步骤101之后执行,但是本发明对于步骤104和步骤105之间的执行顺序不做限制。步骤105可以在步骤104之前或之后执行。
步骤106,所述客户端对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
其中,在对第一子密文M1和第二子密文M2进行组合时,具体的组合方法与第一预设密钥对应的加密算法相关。
以第一预设密钥为RSA私钥为例,在对M1和M2进行组合时,可以将M1和M2相乘,将相乘结果与预设常数求模得到客户端ID密文,即经过这种组合的运算之后得到的结果与采用RSA私钥对客户端ID进行加密得到的客户端ID密文相同。
步骤107,所述客户端根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
其中,由于该客户端白盒算法经过客户端ID密文进行过混淆处理,而这里客户端已经获取到客户端ID密文,则可以使用该客户端ID密文以及该客户端白盒算法,来对待处理数据进行加密或解密处理。
其中,如上文所述,在对待处理数据进行何种处理,取决于该客户端白盒算法生成时所依据的预设处理算法是预设加密算法还是预设解密算法。如果是预设加密算法,则该客户端白盒算法为白盒加密算法,可以对待处理数据进行加密处理(包括签名处理),其中,加密密钥不仅可以用于对数据进行加密,得到数据密文;加密密钥还可以用于对数据进行签名,具体而言,可以采用加密密钥对数据的摘要进行加密,得到客户端的签名,将该签名拼接到数据的后缀部分;如果是预设解密算法,则该客户端白盒算法为白盒解密算法,可以对待处理数据进行解密处理,其中,这里的待处理数据可以为下载自服务器的经过加密的数据密文。
可选地,如上所述,所述客户端白盒算法可以包括至少一个混淆算法。
其中,客户端白盒算法中混淆算法的个数为一个或两个,该混淆算法的个数应与客户端生成的逆混淆算法的个数相同。也就是说,当在客户端白盒算法中包括一个混淆算法时,则客户端在使用该客户端白盒算法时,需要在客户端上对应生成一个逆混淆算法。
以客户端白盒算法为白盒加密算法为例来说明,该混淆算法在客户端白盒算法中可以位于加密算法之后(也即用于对加密后的数据进行混淆),也可以位于加密算法之前(也即用于对加密前的数据进行混淆)。本发明所给出的优选实施例是两个混淆算法分别设置在加密算法前、后,并在客户端需要使用客户端白盒算法时,在客户端生成两个逆混淆算法,以抵消两次混淆处理的效果。
可选地,在执行步骤107时,可以通过S21和S22来实现:
S21,客户端根据所述客户端ID密文,利用所述预设混淆策略,生成与所述至少一个混淆算法对应的至少一个逆混淆算法;
其中,客户端在生成逆混淆算法时,与服务器生成混淆算法的原理相同,客户端侧预先配置有与服务器相同的预设混淆策略,从而可以根据步骤106生成的客户端ID密文,利用预设混淆策略,来生成与所述至少一个混淆算法对应的至少一个逆混淆算法。
举例来说,如图2所示,客户端白盒算法包括位于加密算法部分之前的第一混淆算法,和,位于加密算法部分之后的第二混淆算法。例如该第一混淆算法为上述混淆矩阵C1,第二混淆算法为上述混淆矩阵C2,则本步骤可以计算客户端ID密文的哈希值,并将该哈希值的矩阵作为混淆矩阵C1,再计算混淆矩阵C1的逆,得到逆混淆矩阵C3;类似的,利用客户端ID信息密文作为随机函数的种子所生成的随机数A,来生成混淆矩阵C2,再计算混淆矩阵C2的逆,得到逆混淆矩阵C4。其中,混淆矩阵C1与逆混淆矩阵C3互为逆矩阵,混淆矩阵C2与逆混淆矩阵C4互为逆矩阵。
S22,客户端利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据。
以客户端白盒算法为白盒加密算法为例进行说明,客户端在使用客户端白盒算法来对待处理数据进行加密处理时,如果不使用所述生成的至少一个逆混淆算法,则会使得输入至客户端白盒算法的待处理数据,在进行数据加密之前,进行混淆矩阵C1的混淆处理,在经过混淆处理后再进行数据加密,并将数据密文再经过混淆矩阵C2的混淆处理,最后输出混淆处理后的数据。那么处理后输出的数据并非是单独经过第二预设密钥和预设加密算法加密处理的数据密文,而是在加密前和加密后均经过混淆处理的数据,则会造成数据加解密错误的问题,难以达到准确使用第二预设密钥和预设加密算法来对待处理数据进行准确加密的目的。
所以,在本步骤中,为了抵消客户端白盒算法中对待处理数据的混淆处理,而只是单独进行数据的加密处理,客户端可以利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行加密处理,得到处理后的数据。
这样,本发明实施例在使用经过外部混淆的客户端白盒算法进行数据加密或解密处理时,根据客户端ID密文并利用与服务器侧一致的预设混淆策略,来生成与客户端白盒算法中的至少一个混淆算法相对应的至少一个逆混淆算法,并利用该至少一个逆混淆算法和客户端白盒算法来对待处理数据进行加密或解密处理,从而能够抵消客户端白盒算法中至少一个混淆算法对待处理数据的混淆处理,客户端白盒算法输出的数据只经过第二预设密钥和预设处理算法的处理,在实现了客户端白盒算法与客户端的绑定的同时,又确保了客户端白盒算法对应的加密算法、或解密算法的准确使用。
可选地,当所述客户端白盒算法包括第一混淆算法和第二混淆算法时,所述至少一个逆混淆算法包括与所述第一混淆算法对应的第一逆混淆算法,和,与所述第二混淆算法对应的第二逆混淆算法。
如图2所示,客户端侧生成了与第一混淆算法对应的第一逆混淆算法,与第二混淆算法对应的第二逆混淆算法。
那么在执行S22时,则通过S31~S33来实现:
S31,客户端根据所述第一逆混淆算法对所述待处理数据进行混淆处理;
其中,如图2所示,在将待处理数据(例如7)输入至客户端白盒算法之前,首先通过第一逆混淆算法将7变为6。
S32,客户端利用所述客户端白盒算法,对经所述第一逆混淆算法混淆处理后的所述待处理数据进行处理,生成经所述第二混淆算法混淆后的数据;
以客户端白盒算法为白盒加密算法为例进行说明,在本步骤中,客户端将经过混淆处理后的6输入至客户端白盒算法,客户端白盒算法中的第一混淆算法来对6进行混淆处理,从而抵消第一逆混淆算法的混淆操作,也就是将6还原为7;之后,客户端白盒算法中的加密算法部分(由加密密钥和预设加密算法混淆后得到的白盒表)将7进行加密,生成12;随后利用第二混淆算法,将加密后的数据进行混淆,这里,将12混淆成15;最后,客户端白盒算法,输出经过第二混淆算法混淆后的加密数据15。
S33,客户端根据所述第二逆混淆算法,对所述经所述第二混淆算法混淆后的数据进行解混淆处理,生成经所述预设处理算法和所述第二预设密钥处理得到的数据。
本步骤,客户端的对由客户端白盒算法输出的经过第二混淆算法混淆后的加密数据15,再利用第二逆混淆算法进行再次混淆处理,从而抵消在客户端白盒算法中第二混淆算法对加密数据12的混淆处理,也就是,将15还原为12,使得最终生成的加密数据12是仅利用客户端白盒算法对应的预设加密算法和第二预设密钥进行了加密操作的结果。
其中,这里以客户端白盒算法为白盒加密算法为例进行的说明,若客户端白盒算法为白盒解密算法,方法类似,这里不再赘述。
这样,本发明实施例的方法在客户端白盒算法包括第一混淆算法和第二混淆算法的情况下,为了对客户端白盒算法对应的加密算法或解密算法的准确使用,可以生成与第一混淆算法互逆的第一逆混淆算法,以及与第二混淆算法互逆的第二逆混淆算法,并利用第一逆混淆算法来对输入至客户端白盒算法之前的待处理数据进行混淆处理,从而能够利用第一逆混淆算法来将第一混淆算法的混淆处理进行抵消;待客户端白盒算法输出经过第二混淆算法混淆处理后的数据后,本发明实施例的方法还可以利用第二逆混淆算法来对该第二混淆算法进行抵消,从而生成只利用客户端白盒算法中的预设处理算法,以及第二预设密钥进行处理后的数据密文或数据明文,确保客户端白盒算法中的预设处理算法以及第二预设密钥来对待处理数据的准确加密或解密处理。
另外,如果客户端没有正确的客户端ID以及部分第一预设密钥(例如部分RSA密钥),就不可以生成准确的逆混淆算法,从而不可以使用准确的逆混淆算法抵消客户端白盒算法中的混淆算法(即基于客户端ID密文的外部混淆编码),从而在使用客户端白盒算法进行数据的加密或解密时,就不可以完成正确的加密或解密处理。这样,可以确保客户端白盒算法与客户端ID的绑定。
参照图3,基于图1所示的实施例本发明提供了另一可选实施例,在步骤101之前,根据本发明实施例的方法还可以包括步骤201~步骤206:
步骤201,客户端发送注册请求至服务器,所述注册请求包括客户端ID信息;
其中,该注册请求表示客户端向服务器请求与客户端ID绑定的密钥,即后文所述的第一预设密钥。
步骤202,服务器对所述客户端ID信息分配第一预设密钥;
其中,不同客户端ID信息对应的第一预设密钥不同。
步骤203,服务器对所述第一预设密钥进行分解,生成第一子密钥和第二子密钥;
可选地,步骤204,服务器对所述第二子密钥作混淆处理;
其中,服务器为了确保分配至客户端的第二子密钥,在传输至客户端的过程中的密钥安全性,可以对第二子密钥作混淆处理。具体混淆方式可以基于混淆策略,本发明对该混淆策略的具体实现方式不做限制。
步骤205,服务器响应于所述注册请求,发送经所述混淆处理后的所述第二子密钥至客户端;
步骤206,客户端接收来自服务器的与所述客户端ID信息关联的经混淆处理后第二子密钥并保存;
其中,所述第二子密钥为由与所述客户端ID信息关联的第一预设密钥分解而得到的两个子密钥之一;
其中,客户端可以将接收到的经过混淆处理后的第二子密钥写入缓存中,使得存储的第二子密钥是以密文的形式保存的。
那么基于图3所示的实施例,在执行步骤105时,则客户端对预先保存的所述经混淆处理后的第二子密钥进行解混淆处理,生成第二子密钥;然后,再利用解混淆处理后的所述第二子密钥对所述客户端ID信息加密,生成第二子密文。
也就是说,在使用该第二子密钥之前,该第二子密钥以密文的形式存储在磁盘中,而只有在客户端需要使用该第二子密钥来对客户端ID信息进行加密时,才会在内存中对所述经混淆处理后的第二子密钥进行解混淆处理,从而得到第二子密钥,并利用解混淆后的第二子密钥来对客户端ID信息进行加密,生成上文所述的第二子密文M2。
其中,对于服务器在对第二子密钥进行混淆处理时所使用的混淆策略,可以预先配置在客户端,这样,客户端就可以使用与服务器侧相同的混淆策略来对经过混淆处理后的第二子密钥进行解混淆处理,得到第二子密钥的明文。
这样,本发明实施例的服务器在接收到客户端的注册请求后,可以对客户端ID分配第一预设密钥,该第一预设密钥与客户端ID绑定,用于对该客户端ID进行加密,而为了确保该第一预设密钥在客户端侧的安全性,服务器将该第一预设密钥分解为两部分,将其中的一部分密钥以密文的形式分发到客户端,使得客户端保存的只是与客户端ID绑定的部分密钥,且是部分密钥的密文,双重保护了与客户端ID绑定的第一预设密钥的安全,避免了其在客户端的明文存储。
参照图4,基于图1所示的实施例本发明提供了另一可选实施例,该数据处理方法包括如下步骤:
步骤101,所述客户端发送数据请求至所述服务器,所述数据请求包括客户端ID信息、数据ID;
其中,该数据ID为客户端请求处理的数据的ID。该数据一般为服务器侧存储的数据。客户端这里的数据请求,用于请求与该数据ID以及与客户端ID绑定的客户端白盒算法。
可选地,在步骤101之前,客户端可以识别客户端ID信息的获取方式,例如该客户端ID信息由哪个函数传递过来,以及识别获取到的客户端ID信息。那么在发送数据请求时,客户端不仅可以将客户端ID信息和数据ID加载到数据请求中,还将客户端ID信息的获取方式(例如传递该客户端ID信息的函数的函数名)加载到数据请求中。
这样,本发明实施例通过将客户端ID信息的获取方式加载到数据请求中,可以使服务器来对该客户端ID的合法性进行判断,避免客户端非法窃取已绑定客户端白盒算法的客户端ID,并以窃取的该客户端ID来发送数据请求,请求客户端白盒算法的情况,避免与客户端ID绑定的客户端白盒算分被窃取客户端ID的非法客户端使用。
步骤102,所述服务器利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文;
其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
可选地,为了避免非法客户端窃取有权限的客户端的ID,来发送数据请求的情况,在本发明实施例中,该所述数据请求还可以包括客户端ID信息的获取方式,那么在步骤102之前,根据本发明实施例的方法还可以包括:服务器判断所述客户端ID信息的获取方式是否为预设获取方式;
若所述客户端ID信息的获取方式为预设获取方式,则执行步骤108(或者步骤102)。
具体而言,服务器侧预先可以设置哪些是合法的客户端ID的获取方式,例如函数1、函数2为合法,其他函数未非法。那么服务器侧在接收到客户端的数据请求后,可以对其进行解析,获取到客户端ID信息的获取方式,并判断该获取方式是否为预设获取方式,这里为判断函数名是否为预设函数名,若是,则说明该客户端是具有该客户端ID信息的客户端,执行步骤108(或者步骤102),来生成绑定于该客户端的客户端白盒算法;相反,若否,则说明该客户端所发送的客户端ID信息可能并非是该客户端的实际客户端ID信息,有可能是窃取自其它有权限的客户端的客户端ID信息,那么为了提升分发的密钥的安全性,可以不执行步骤108(或者步骤102),或者,使用一个假的密钥来生成客户端白盒算法,那么客户端即便收到该客户端白盒算法,也无法对数据进行准确的加密/解密/签名等操作。
步骤108,所述服务器根据预先设置的数据ID与密钥、处理算法的对应关系,获取与所述数据ID匹配的第二预设密钥和预设处理算法;
具体而言,本发明实施例的方法可以为存储在服务器侧的每个数据分别配置用于加密或解密的密钥以及用于加密或解密的处理算法。
其中,本发明对于服务器侧所存储的数据的类型不做限制,例如视频数据、音频数据、文档数据等。该数据是服务器可以分发至客户端的数据,客户端侧可以对接收自服务器的该数据进行加密或解密处理。当然多数场景下,服务器下发至客户端的数据为数据密文,客户端侧则需要使用本发明实施例的方法的服务器所下发的客户端白盒算法,来对数据密文进行解密。
以视频数据为例进行说明,服务器侧可以为每个视频分配固定的密钥、处理算法(加密算法或解密算法),使得某个视频只可以使用对应于该视频的密钥以及处理算法生成的客户端白盒算法来进行加密或解密处理。
在服务器侧的视频数据存储完成之后,本发明实施例的方法就可以为每个视频ID设置与之对应的密钥以及处理算法,从而生成预先设置的视频ID与密钥、处理算法的对应关系。例如视频1对应于密钥1和AES加密算法;视频2对应于密钥2和DES解密算法。
那么在生成客户端白盒算法时,本发明实施例的方法可以根据该对应关系,来获取与数据请求中的视频ID对应的第二预设密钥以及预设处理算法。
其中,本发明对于步骤102和步骤108之间的执行顺序不做限制,都在步骤101之后执行。
在执行步骤102和步骤108之后,执行步骤103。
步骤103,所述服务器根据所述客户端ID密文,利用所述第二预设密钥、所述预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
其中,由于该第二预设密钥、预设处理算法都是与上述数据ID绑定的,因此,这里生成的客户端白盒算法专门用于对具有该数据ID的数据进行加密或解密处理。
在执行步骤102和步骤108之后,执行这里的步骤103。
步骤104,所述服务器响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文至所述客户端;
步骤105,所述客户端根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
其中,步骤105在步骤101之后执行,但是本发明对于步骤104和步骤105之间的执行顺序不做限制。步骤105可以在步骤104之前或之后执行。
步骤106,所述客户端对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
步骤107,所述客户端根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
这样,本发明实施例的服务器预先对每个数据ID分配密钥以及处理算法,从而生成数据ID与密钥、处理算法的对应关系,那么在客户端向服务器发送的数据请求包括数据ID时,则服务器可以根据该对应关系来获取与该数据请求中的数据ID相绑定的第二预设密钥,以及预设处理算法,并根据客户端ID密文,利用所述第二预设密钥、所述预设处理算法以及预设混淆策略,来生成混淆有所述客户端ID密文的客户端白盒算法。使得生成的客户端白盒算法不仅能够与客户端ID相绑定,还与数据ID绑定,那么只有能够生成该客户端ID密文的客户端,才可以使用该客户端白盒算法来对具有该数据ID的待处理数据进行加密、签名或解密处理。实现了客户端白盒算法与客户端、待处理数据的同时绑定,确保了数据的独立加解密。
参照图5,示出了本发明的一种数据处理方法实施例的步骤流程图,应用于服务器,该方法具体可以包括如下步骤:
步骤401,接收数据请求,所述数据请求包括客户端ID信息;
步骤402,利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文;
其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
步骤403,根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
步骤404,响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
这样,本发明实施例为了避免数据密钥以明文存储在客户端,服务器可以根据客户端ID密文以及预设混淆策略,来对第二预设密钥、预设处理算法进行混淆,生成混淆有客户端ID密文的客户端白盒算法,并将该客户端白盒算法分发至客户端,避免了第二预设密钥在客户端的明文存储,提升了客户端侧存储的密钥的安全性;此外,本发明实施例在生成客户端白盒算法时,在进行所述混淆时,利用客户端ID密文而非客户端ID明文进行混淆,并使用该客户端ID密文对应的第一预设密钥中的一部分密钥来对客户端ID进行加密,将加密得到的第一子密文连同该客户端白盒算法分发至客户端。使得客户端侧只存储有客户端ID对应的第一预设密钥的部分密钥,确保了第一预设密钥的安全。
可选地,在基于图5所示实施例提供的另一可选实施例中,在执行步骤403时,可以根据所述客户端ID密文,利用预设混淆策略,生成至少一个混淆算法;然后,根据第二预设密钥、预设处理算法以及所述至少一个混淆算法,生成混淆有所述客户端ID密文的客户端白盒算法。
可选地,在基于图5所示实施例提供的另一可选实施例中,所述数据请求还包括数据ID,那么在执行步骤403之前,根据本发明实施例的方法还可以包括:根据预先设置的数据ID与密钥、处理算法的对应关系,获取与所述数据ID匹配的第二预设密钥和预设处理算法。
可选地,在基于图5所示实施例提供的另一可选实施例中,在步骤401之前,根据本发明实施例的方法还可以包括:接收注册请求,所述注册请求包括客户端ID信息;为所述客户端ID信息分配第一预设密钥;对所述第一预设密钥进行分解,生成第一子密钥和第二子密钥;响应于所述注册请求,发送所述第二子密钥。
可选地,在基于图5所示实施例提供的另一可选实施例中,在执行所述响应于所述注册请求,发送所述第二子密钥之前,根据本发明实施例的方法还可以包括:对所述第二子密钥作混淆处理。那么在执行所述响应于所述注册请求,发送所述第二子密钥的步骤时,则响应于所述注册请求,发送经所述混淆处理后的所述第二子密钥。
可选地,在基于图5所示实施例提供的另一可选实施例中,所述数据请求还包括客户端ID信息的获取方式,在执行步骤402之前,根据本发明实施例的方法还可以包括:判断所述客户端ID信息的获取方式是否为预设获取方式。那么若所述客户端ID信息的获取方式为预设获取方式,则执行步骤402。
参照图6,示出了本发明的一种数据处理方法实施例的步骤流程图,应用于客户端,该方法具体可以包括如下步骤:
步骤501,发送数据请求,所述数据请求包括客户端ID信息;
步骤502,接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
其中,所述客户端白盒算法为根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略而生成的算法;
其中,所述客户端ID密文和所述第一子密文为由与所述客户端ID信息对应的第一预设密钥和第一子密钥,分别对所述客户端ID信息加密而生成的两组密文信息,其中,所述第一预设密钥包括所述第一子密钥和第二子密钥;
步骤503,根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
其中,本发明对于步骤502和步骤503之间的执行顺序不做限制。
步骤504,对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
步骤505,根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
这样,本发明实施例为了避免数据密钥以明文存储在客户端,客户端可以接收混淆有客户端ID密文的客户端白盒算法,其中,该客户端白盒算法为根据客户端ID密文以及预设混淆策略,来对第二预设密钥、预设处理算法进行混淆,生成的客户端白盒算法,避免了第二预设密钥在客户端的明文存储,提升了客户端侧存储的密钥的安全性;此外,本发明实施例的客户端白盒算法是经客户端ID密文而非客户端ID明文进行混淆,并且,客户端在接收到客户端白盒算法的同时,还接收到与客户端ID对应的第一预设密钥的一部分密钥对客户端ID加密后的第一子密文,客户端侧只存储有第一预设密钥的另一部分密钥,确保了第一预设密钥的安全。由于在使用客户端白盒算法时,需要客户端具有与该客户端白盒算法绑定的客户端ID、且具备准确的部分第一预设密钥,因此,可以确保客户端白盒算法的安全使用。
可选地,在基于图6所示实施例提供的另一可选实施例中,所述客户端白盒算法包括至少一个混淆算法,那么在执行步骤505时,可以根据所述客户端ID密文,利用所述预设混淆策略,生成与所述至少一个混淆算法对应的至少一个逆混淆算法;利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据。
可选地,在基于图6所示实施例提供的另一可选实施例中,当所述客户端白盒算法包括第一混淆算法和第二混淆算法时,所述至少一个逆混淆算法包括与所述第一混淆算法对应的第一逆混淆算法,和,与所述第二混淆算法对应的第二逆混淆算法。
那么在执行步骤505时,则可以首先,根据所述第一逆混淆算法对所述待处理数据进行混淆处理;然后,利用所述客户端白盒算法,对经所述第一逆混淆算法混淆处理后的所述待处理数据进行处理,生成经所述第二混淆算法混淆后的数据;最后,根据所述第二逆混淆算法,对所述经所述第二混淆算法混淆后的数据进行解混淆处理,生成经所述预设处理算法和所述第二预设密钥处理得到的数据。
可选地,在基于图6所示实施例提供的另一可选实施例中,步骤501之前,根据本发明实施例的方法还可以包括:发送注册请求,所述注册请求包括客户端ID信息;接收与所述客户端ID信息关联的第二子密钥并保存,其中,所述第二子密钥为由与所述客户端ID信息关联的第一预设密钥分解而得到的两个子密钥之一。
可选地,在基于图6所示实施例提供的另一可选实施例中,在执行所述接收与所述客户端ID信息关联的第二子密钥并保存的步骤时,可以接收与所述客户端ID信息关联的经混淆处理后的第二子密钥并保存;在执行步骤503时,则可以对预先保存的所述经混淆处理后的第二子密钥进行解混淆处理,生成第二子密钥;利用解混淆处理后的所述第二子密钥对所述客户端ID信息加密,生成第二子密文。
可选地,在基于图6所示实施例提供的另一可选实施例中,步骤501之前,根据本发明实施例的方法还可以包括:识别客户端ID信息的获取方式,以及识别获取到的客户端ID信息;那么在执行步骤501时,则可以将所述客户端ID信息以及所述获取方式加载至数据请求中,并发送所述数据请求。
关于上述图5和图6所示实施例提供的单侧数据处理方法,具体参见上述图1~图4所示实施例中的相应介绍和说明,这里不再赘述。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
与上述本发明实施例所提供的应用于包括服务器和客户端的系统的数据处理方法相对应,参照图7,示出了本发明一种数据处理系统实施例的结构框图,具体可以包括客户端和服务器;
所述客户端,用于发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
所述服务器,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
所述服务器,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
所述服务器,用于发送所述客户端白盒算法和所述第一子密文至所述客户端;
所述客户端,用于根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
所述客户端,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
所述客户端,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
与上述本发明实施例所提供的应用于服务器的数据处理方法相对应,参照图8,示出了本发明一种数据处理装置实施例的结构框图,应用于服务器,具体可以包括如下模块:
第一接收模块801,用于接收数据请求,所述数据请求包括客户端ID信息;
加密模块802,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
第一生成模块803,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
响应模块804,用于响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
可选地,所述第一生成模块803包括:
第一生成子模块,用于根据所述客户端ID密文,利用预设混淆策略,生成至少一个混淆算法;
第二生成子模块,用于根据第二预设密钥、预设处理算法以及所述至少一个混淆算法,生成混淆有所述客户端ID密文的客户端白盒算法。
可选地,所述装置还包括:
获取模块,用于若所述数据请求还包括数据ID,则根据预先设置的数据ID与密钥、处理算法的对应关系,获取与所述数据ID匹配的第二预设密钥和预设处理算法。
可选地,所述装置还包括:
第二接收模块,用于接收注册请求,所述注册请求包括客户端ID信息;
分配模块,用于为所述客户端ID信息分配第一预设密钥;
分解模块,用于对所述第一预设密钥进行分解,生成第一子密钥和第二子密钥;
第一发送模块,用于响应于所述注册请求,发送所述第二子密钥。
可选地,所述装置还包括:
混淆模块,用于对所述第二子密钥作混淆处理;
所述响应模块804,还用于响应于所述注册请求,发送经所述混淆处理后的所述第二子密钥。
可选地,所述数据请求还包括客户端ID信息的获取方式,所述装置还包括:
判断模块,用于判断所述客户端ID信息的获取方式是否为预设获取方式;
所述加密模块802,还用于若所述判断模块判断所述客户端ID信息的获取方式为预设获取方式,则利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文。
与上述本发明实施例所提供的应用于客户端的数据处理方法相对应,参照图9,示出了本发明一种数据处理装置实施例的结构框图,应用于客户端,具体可以包括如下模块;
第二发送模块901,用于发送数据请求,所述数据请求包括客户端ID信息;
第三接收模块902,用于接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
第二生成模块903,用于根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
组合模块904,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
处理模块905,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据。
可选地,所述客户端白盒算法包括至少一个混淆算法;
可选地,所述处理模块905包括:
第三生成子模块,用于根据所述客户端ID密文,利用所述预设混淆策略,生成与所述至少一个混淆算法对应的至少一个逆混淆算法;
处理子模块,用于利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据。
可选地,当所述客户端白盒算法包括第一混淆算法和第二混淆算法时,所述至少一个逆混淆算法包括与所述第一混淆算法对应的第一逆混淆算法,和,与所述第二混淆算法对应的第二逆混淆算法;
所述处理子模块包括:
混淆单元,用于根据所述第一逆混淆算法对所述待处理数据进行混淆处理;
第一处理单元,用于利用所述客户端白盒算法,对经所述第一逆混淆算法混淆处理后的所述待处理数据进行处理,生成经所述第二混淆算法混淆后的数据;
第二处理单元,用于根据所述第二逆混淆算法,对所述经所述第二混淆算法混淆后的数据进行解混淆处理,生成经所述预设处理算法和所述第二预设密钥处理得到的数据。
可选地,所述装置还包括:
第三发送模块,用于发送注册请求,所述注册请求包括客户端ID信息;
第四接收模块,用于接收与所述客户端ID信息关联的第二子密钥并保存,其中,所述第二子密钥为由与所述客户端ID信息关联的第一预设密钥分解而得到的两个子密钥之一。
可选地,所述第四接收模块,还用于接收与所述客户端ID信息关联的经混淆处理后的第二子密钥并保存;
所述第二生成模块903包括:对预先保存的所述经混淆处理后的第二子密钥进行解混淆处理,生成第二子密钥;利用解混淆处理后的所述第二子密钥对所述客户端ID信息加密,生成第二子密文。
可选地,所述装置还包括:
识别模块,用于识别客户端ID信息的获取方式,以及识别获取到的客户端ID信息;
所述第二发送模块901,还用于将所述客户端ID信息以及所述获取方式加载至数据请求中,并发送所述数据请求。
对于装置实施例而言,由于其与对应的方法实施例基本相似,所以描述的比较简单,相关之处参见相应方法实施例的部分说明即可。
根据本发明的又一个实施例,本发明还提供了一种服务器,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上述任意一个实施例所述的应用于服务器的数据处理方法的步骤。
根据本发明的又一个实施例,本发明还提供了一种客户端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如上述任意一个实施例所述的应用于客户端的数据处理方法的步骤。
根据本发明的再一个实施例,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如上述任意一个实施例所述的应用于服务器的数据处理方法中的步骤,或实现如上述任意一个实施例所述的应用于客户端的数据处理方法中的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据处理方法、一种数据处理装置、一种数据处理系统、一种服务器、一种客户端、一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (29)
1.一种数据处理方法,其特征在于,应用于包括服务器和客户端的系统,所述方法包括:
所述客户端发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
所述服务器利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
所述服务器根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
所述服务器发送所述客户端白盒算法和所述第一子密文至所述客户端;
所述客户端根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
所述客户端对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
所述客户端根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用所述预设处理算法和所述第二预设密钥对待处理数据进行加密。
2.一种数据处理方法,其特征在于,应用于服务器,所述方法包括:
接收数据请求,所述数据请求包括客户端ID信息;
利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用所述预设处理算法和所述第二预设密钥对待处理数据进行加密;
响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
3.根据权利要求2所述的方法,其特征在于,所述根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法,包括:
根据所述客户端ID密文,利用预设混淆策略,生成至少一个混淆算法;
根据第二预设密钥、预设处理算法以及所述至少一个混淆算法,生成混淆有所述客户端ID密文的客户端白盒算法。
4.根据权利要求2所述的方法,其特征在于,所述数据请求还包括数据ID;
所述根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法之前,所述方法还包括:
根据预先设置的数据ID与密钥、处理算法的对应关系,获取与所述数据ID匹配的第二预设密钥和预设处理算法。
5.根据权利要求2所述的方法,其特征在于,所述接收数据请求之前,所述方法还包括:
接收注册请求,所述注册请求包括客户端ID信息;
为所述客户端ID信息分配第一预设密钥;
对所述第一预设密钥进行分解,生成第一子密钥和第二子密钥;
响应于所述注册请求,发送所述第二子密钥。
6.根据权利要求5所述的方法,其特征在于,所述响应于所述注册请求,发送所述第二子密钥之前,所述方法还包括:对所述第二子密钥作混淆处理;
所述响应于所述注册请求,发送所述第二子密钥,包括:响应于所述注册请求,发送经所述混淆处理后的所述第二子密钥。
7.根据权利要求2所述的方法,其特征在于,所述数据请求还包括客户端ID信息的获取方式,利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文之前,所述方法还包括:
判断所述客户端ID信息的获取方式是否为预设获取方式;
若所述客户端ID信息的获取方式为预设获取方式,则执行利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文的步骤。
8.一种数据处理方法,其特征在于,应用于客户端,所述方法包括:
发送数据请求,所述数据请求包括客户端ID信息;
接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用预设处理算法和第二预设密钥对待处理数据进行加密。
9.根据权利要求8所述的方法,其特征在于,所述客户端白盒算法包括至少一个混淆算法;
所述根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据,包括:
根据所述客户端ID密文,利用预设混淆策略,生成与所述至少一个混淆算法对应的至少一个逆混淆算法;
利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据。
10.根据权利要求9所述的方法,其特征在于,当所述客户端白盒算法包括第一混淆算法和第二混淆算法时,所述至少一个逆混淆算法包括与所述第一混淆算法对应的第一逆混淆算法,和,与所述第二混淆算法对应的第二逆混淆算法;
所述利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据,包括:
根据所述第一逆混淆算法对所述待处理数据进行混淆处理;
利用所述客户端白盒算法,对经所述第一逆混淆算法混淆处理后的所述待处理数据进行处理,生成经所述第二混淆算法混淆后的数据;
根据所述第二逆混淆算法,对所述经所述第二混淆算法混淆后的数据进行解混淆处理,生成经预设处理算法和第二预设密钥处理得到的数据。
11.根据权利要求8所述的方法,其特征在于,所述发送数据请求之前,所述方法还包括:
发送注册请求,所述注册请求包括客户端ID信息;
接收与所述客户端ID信息关联的第二子密钥并保存,其中,所述第二子密钥为由与所述客户端ID信息关联的第一预设密钥分解而得到的两个子密钥之一。
12.根据权利要求11所述的方法,其特征在于,所述接收与所述客户端ID信息关联的第二子密钥并保存,包括:接收与所述客户端ID信息关联的经混淆处理后的第二子密钥并保存;
所述根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文,包括:对预先保存的所述经混淆处理后的第二子密钥进行解混淆处理,生成第二子密钥;利用解混淆处理后的所述第二子密钥对所述客户端ID信息加密,生成第二子密文。
13.根据权利要求8所述的方法,其特征在于,
所述发送数据请求之前,所述方法还包括:识别客户端ID信息的获取方式,以及识别获取到的客户端ID信息;
所述发送数据请求,包括:将所述客户端ID信息以及所述获取方式加载至数据请求中,并发送所述数据请求。
14.一种数据处理系统,其特征在于,包括客户端和服务器;
所述客户端,用于发送数据请求至所述服务器,所述数据请求包括客户端ID信息;
所述服务器,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
所述服务器,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;
所述服务器,用于发送所述客户端白盒算法和所述第一子密文至所述客户端;
所述客户端,用于根据预先保存的所述第二子密钥对所述客户端ID信息加密,生成第二子密文;
所述客户端,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
所述客户端,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用所述预设处理算法和所述第二预设密钥对待处理数据进行加密。
15.一种数据处理装置,其特征在于,应用于服务器,所述装置包括:
第一接收模块,用于接收数据请求,所述数据请求包括客户端ID信息;
加密模块,用于利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文,其中,所述第一预设密钥预先分解得到第二子密钥和所述第一子密钥,所述第二子密钥保存至客户端;
生成模块,用于根据所述客户端ID密文,利用第二预设密钥、预设处理算法以及预设混淆策略,生成混淆有所述客户端ID密文的客户端白盒算法;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用所述预设处理算法和所述第二预设密钥对待处理数据进行加密;
响应模块,用于响应于所述数据请求,发送所述客户端白盒算法和所述第一子密文。
16.根据权利要求15所述的装置,其特征在于,所述生成模块包括:
第一生成子模块,用于根据所述客户端ID密文,利用预设混淆策略,生成至少一个混淆算法;
第二生成子模块,用于根据第二预设密钥、预设处理算法以及所述至少一个混淆算法,生成混淆有所述客户端ID密文的客户端白盒算法。
17.根据权利要求15所述的装置,其特征在于,所述装置还包括:
获取模块,用于若所述数据请求还包括数据ID,则根据预先设置的数据ID与密钥、处理算法的对应关系,获取与所述数据ID匹配的第二预设密钥和预设处理算法。
18.根据权利要求15所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收注册请求,所述注册请求包括客户端ID信息;
分配模块,用于为所述客户端ID信息分配第一预设密钥;
分解模块,用于对所述第一预设密钥进行分解,生成第一子密钥和第二子密钥;
发送模块,用于响应于所述注册请求,发送所述第二子密钥。
19.根据权利要求18所述的装置,其特征在于,所述装置还包括:
混淆模块,用于对所述第二子密钥作混淆处理;
所述响应模块,还用于响应于所述注册请求,发送经所述混淆处理后的所述第二子密钥。
20.根据权利要求15所述的装置,其特征在于,所述数据请求还包括客户端ID信息的获取方式,所述装置还包括:
判断模块,用于判断所述客户端ID信息的获取方式是否为预设获取方式;
所述加密模块,还用于若所述判断模块判断所述客户端ID信息的获取方式为预设获取方式,则利用与所述客户端ID信息对应的第一预设密钥和第一子密钥,对所述客户端ID信息分别加密,生成客户端ID密文和第一子密文。
21.一种数据处理装置,其特征在于,应用于客户端,所述装置包括:
第一发送模块,用于发送数据请求,所述数据请求包括客户端ID信息;
第一接收模块,用于接收与所述客户端ID信息对应的第一子密文和混淆有客户端ID密文的客户端白盒算法;
生成模块,用于根据预先保存的第二子密钥对所述客户端ID信息加密,生成第二子密文;
组合模块,用于对所述第一子密文和所述第二子密文进行组合,生成所述客户端ID密文;
处理模块,用于根据所述客户端ID密文和所述客户端白盒算法,对待处理数据进行处理,得到处理后的数据;其中,所述客户端ID密文,用于向客户端提供使用所述客户端白盒算法的权限;所述客户端白盒算法用于对待处理数据进行加密处理,包括:采用预设处理算法和第二预设密钥对待处理数据进行加密。
22.根据权利要求21所述的装置,其特征在于,所述客户端白盒算法包括至少一个混淆算法;
所述处理模块包括:
生成子模块,用于根据所述客户端ID密文,利用预设混淆策略,生成与所述至少一个混淆算法对应的至少一个逆混淆算法;
处理子模块,用于利用所述至少一个逆混淆算法、所述客户端白盒算法对待处理数据进行处理,得到处理后的数据。
23.根据权利要求22所述的装置,其特征在于,当所述客户端白盒算法包括第一混淆算法和第二混淆算法时,所述至少一个逆混淆算法包括与所述第一混淆算法对应的第一逆混淆算法,和,与所述第二混淆算法对应的第二逆混淆算法;
所述处理子模块包括:
混淆单元,用于根据所述第一逆混淆算法对所述待处理数据进行混淆处理;
第一处理单元,用于利用所述客户端白盒算法,对经所述第一逆混淆算法混淆处理后的所述待处理数据进行处理,生成经所述第二混淆算法混淆后的数据;
第二处理单元,用于根据所述第二逆混淆算法,对所述经所述第二混淆算法混淆后的数据进行解混淆处理,生成经预设处理算法和第二预设密钥处理得到的数据。
24.根据权利要求21所述的装置,其特征在于,所述装置还包括:
第二发送模块,用于发送注册请求,所述注册请求包括客户端ID信息;
第二接收模块,用于接收与所述客户端ID信息关联的第二子密钥并保存,其中,所述第二子密钥为由与所述客户端ID信息关联的第一预设密钥分解而得到的两个子密钥之一。
25.根据权利要求24所述的装置,其特征在于,
第三接收模块,还用于接收与所述客户端ID信息关联的经混淆处理后的第二子密钥并保存;
所述生成模块包括:对预先保存的所述经混淆处理后的第二子密钥进行解混淆处理,生成第二子密钥;利用解混淆处理后的所述第二子密钥对所述客户端ID信息加密,生成第二子密文。
26.根据权利要求21所述的装置,其特征在于,所述装置还包括:
识别模块,用于识别客户端ID信息的获取方式,以及识别获取到的客户端ID信息;
所述第一发送模块,还用于将所述客户端ID信息以及所述获取方式加载至数据请求中,并发送所述数据请求。
27.一种服务器,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求2至7中任一项所述的数据处理方法的步骤。
28.一种客户端,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求8至13中任一项所述的数据处理方法的步骤。
29.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如权利要求2至7中任一项所述的数据处理方法中的步骤,或8至13中任一项所述的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910281400.7A CN110166425B (zh) | 2019-04-09 | 2019-04-09 | 数据处理方法、装置、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910281400.7A CN110166425B (zh) | 2019-04-09 | 2019-04-09 | 数据处理方法、装置、系统及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110166425A CN110166425A (zh) | 2019-08-23 |
CN110166425B true CN110166425B (zh) | 2021-08-20 |
Family
ID=67639154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910281400.7A Active CN110166425B (zh) | 2019-04-09 | 2019-04-09 | 数据处理方法、装置、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166425B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110781140B (zh) * | 2019-09-06 | 2023-08-18 | 平安科技(深圳)有限公司 | 区块链中数据签名的方法、装置、计算机设备及存储介质 |
CN112016104B (zh) * | 2020-07-14 | 2024-04-23 | 北京淇瑀信息科技有限公司 | 一种金融敏感数据的加密方法、装置和系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721411A (zh) * | 2015-05-15 | 2016-06-29 | 乐视云计算有限公司 | 一种防止盗链的方法、防止盗链的服务器及客户端 |
CN106549768A (zh) * | 2016-12-08 | 2017-03-29 | 上海众人网络安全技术有限公司 | 一种时间型插件认证的方法及系统 |
CN106921493A (zh) * | 2017-03-31 | 2017-07-04 | 杭州翼兔网络科技有限公司 | 一种加密方法及系统 |
CN107947917A (zh) * | 2017-12-29 | 2018-04-20 | 北京梆梆安全科技有限公司 | 一种生成白盒密钥的方法及装置 |
CN108111622A (zh) * | 2017-12-29 | 2018-06-01 | 北京梆梆安全科技有限公司 | 一种下载白盒库文件的方法、装置及系统 |
CN108200085A (zh) * | 2018-01-31 | 2018-06-22 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
CN108243197A (zh) * | 2018-01-31 | 2018-07-03 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
CN108400868A (zh) * | 2018-01-17 | 2018-08-14 | 深圳市文鼎创数据科技有限公司 | 种子密钥的存储方法、装置及移动终端 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201418815D0 (en) * | 2014-10-22 | 2014-12-03 | Irdeto Bv | Providing access to content |
CN106685662B (zh) * | 2016-12-23 | 2019-09-24 | 中国电子科技集团公司第三十研究所 | 一种基于余数系统的商密sm2加密算法的白盒软件实现方法 |
CN107342861B (zh) * | 2017-07-14 | 2021-03-02 | 银联商务有限公司 | 一种数据处理方法、装置及系统 |
-
2019
- 2019-04-09 CN CN201910281400.7A patent/CN110166425B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721411A (zh) * | 2015-05-15 | 2016-06-29 | 乐视云计算有限公司 | 一种防止盗链的方法、防止盗链的服务器及客户端 |
CN106549768A (zh) * | 2016-12-08 | 2017-03-29 | 上海众人网络安全技术有限公司 | 一种时间型插件认证的方法及系统 |
CN106921493A (zh) * | 2017-03-31 | 2017-07-04 | 杭州翼兔网络科技有限公司 | 一种加密方法及系统 |
CN107947917A (zh) * | 2017-12-29 | 2018-04-20 | 北京梆梆安全科技有限公司 | 一种生成白盒密钥的方法及装置 |
CN108111622A (zh) * | 2017-12-29 | 2018-06-01 | 北京梆梆安全科技有限公司 | 一种下载白盒库文件的方法、装置及系统 |
CN108400868A (zh) * | 2018-01-17 | 2018-08-14 | 深圳市文鼎创数据科技有限公司 | 种子密钥的存储方法、装置及移动终端 |
CN108200085A (zh) * | 2018-01-31 | 2018-06-22 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
CN108243197A (zh) * | 2018-01-31 | 2018-07-03 | 北京深思数盾科技股份有限公司 | 一种数据分发、转发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110166425A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110177073B (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
KR101010040B1 (ko) | 파일의 암호화·복호화 방법, 장치, 프로그램 및 이프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 | |
CN112514321B (zh) | 共享秘密建立 | |
CN109728914B (zh) | 数字签名验证方法、系统、装置及计算机可读存储介质 | |
CN103608820B (zh) | 用于使得软件应用能够在硬件设备上执行的计算机实现方法和硬件 | |
US9515818B2 (en) | Multi-block cryptographic operation | |
EP3555786B1 (en) | Secure provisioning of unique time-limited certificates to virtual application instances in dynamic and elastic systems | |
CN110650010A (zh) | 一种非对称密钥中的私钥生成和使用方法、装置和设备 | |
US11063743B2 (en) | Method of RSA signature of decryption protected using assymetric multiplicative splitting | |
US7805616B1 (en) | Generating and interpreting secure and system dependent software license keys | |
CN110149312B (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
JP2007511810A (ja) | 乱数関数を利用した実行証明 | |
US11870913B2 (en) | Method for generating a digital signature of an input message | |
CN110166425B (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
CN110049032A (zh) | 一种双向认证的数据内容加密方法及装置 | |
CN110149311B (zh) | 数据处理方法、装置、服务器及可读存储介质 | |
Kaur et al. | Security in cloud computing using hybrid of algorithms | |
CN117436043A (zh) | 待执行文件的来源验证方法、设备以及可读存储介质 | |
EP3238365B1 (en) | Cryptographic system and method | |
WO2014109059A1 (ja) | データの暗号化記憶システム及び方法 | |
CN117318954A (zh) | 一种设备证书生成方法、数字化内容呈现方法及相关设备 | |
CN108023726B (zh) | 加密装置及加密方法 | |
JP5136234B2 (ja) | 復号プログラム、復号装置、復号方法、及び暗号システム | |
JP2011081654A (ja) | 情報処理装置、プログラム保護システム、プログラム保護方法およびプログラム | |
CN117118730A (zh) | 一种具有抗伪装攻击的代理重加密数据共享方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |