CN110213041A - 数据加密方法、解密方法、装置、电子设备及存储介质 - Google Patents

数据加密方法、解密方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN110213041A
CN110213041A CN201910344088.1A CN201910344088A CN110213041A CN 110213041 A CN110213041 A CN 110213041A CN 201910344088 A CN201910344088 A CN 201910344088A CN 110213041 A CN110213041 A CN 110213041A
Authority
CN
China
Prior art keywords
code key
data
symmetrical
encryption
key
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.)
Pending
Application number
CN201910344088.1A
Other languages
English (en)
Inventor
郭鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuba Co Ltd
Original Assignee
Wuba Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuba Co Ltd filed Critical Wuba Co Ltd
Priority to CN201910344088.1A priority Critical patent/CN110213041A/zh
Publication of CN110213041A publication Critical patent/CN110213041A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0435Network 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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

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

本发明提供了一种数据加密方法、解密方法、装置、电子设备及存储介质,其中,在数据加密方法中,客户端利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥;采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;发送请求数据包至服务器。可见,通过在对请求数据对称加密的基础上,对对称加密所使用的对称秘钥进行两次加密和签名,能够在提高对称秘钥安全性的基础上,有效提高请求数据的安全性。

Description

数据加密方法、解密方法、装置、电子设备及存储介质
技术领域
本申请涉及数据安全技术领域,尤其涉及一种数据加密方法、解密方法、装置、电子设备及存储介质。
背景技术
在客户端与服务器之间的通信过程中,为了保证数据传输的安全性,需要对一些涉及敏感或者机密的请求数据进行加密传输。
通常,技术人员会对客户端发起的请求数据非对称加密,然后将加密后的请求数据传输至服务器,再由服务器解密该加密后的请求数据,获得请求数据的原文。具体处理过程中,首先在客户端设置一对秘钥,在服务器也设置一对秘钥,客户端的秘钥与服务器的秘钥相同,然后利用客户端的公钥对请求数据非对称加密,并将加密后的请求数据传输至服务器,之后,利用服务器的私钥对加密后的请求数据解密,得到请求数据的原文。服务器将针对原文生成的返回值反馈至客户端,此时,需要利用服务器的公钥非对称加密返回值,而客户端接收到加密的返回值之后,利用客户端的私钥解密获得返回值的原文。
由以上传输数据的加密和解密过程可知,客户端与服务器均保存了用于解密的私钥,无论任何一方的私钥被破解或窃取,客户端与服务器之间全部传输数据的安全性都将受到威胁。
发明内容
本申请提供了一种数据加密方法、解密方法、装置、电子设备及存储介质,以解决现有请求数据加密安全性低的问题。
第一方面,本发明实施例提供了一种数据加密方法,包括:
利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;
采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;
利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥;
采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;
发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
在本发明实施例第一方面一种可能的实现方式中,所述利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据之前包括:
获取客户端的数据接口信息;
针对每一个所述数据接口信息,随机生成对应的对称秘钥。
在本发明实施例第一方面一种可能的实现方式中,所述利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据之前包括:
获取客户端发出的请求数据中的请求时间;
以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
在本发明实施例第一方面一种可能的实现方式中,所述随机生成对称秘钥之后包括:
匹配模块,用于匹配所述对称秘钥与历史对称秘钥记录,所述历史对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;
去重模块,用于如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
在本发明实施例第一方面一种可能的实现方式中,所述发送请求数据包至服务器之前包括:
将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,生成请求数据包。
第二方面,本申请提供了一种数据解密方法,包括:
接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;
采用验证算法验签所述签名数据;
如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;
采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;
利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
第三方面,本申请提供了一种数据加密装置,包括:
对称加密模块,用于利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;
乱序加密模块,用于采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;
非对称加密模块,用于利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥;
签名模块,用于采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;
数据包发送模块,用于发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
在本发明实施例第二方面一种可能的实现方式中,所述装置还包括:
数据接口信息获取模块,用于获取客户端的数据接口信息;
第一对称秘钥生成模块,用于针对每一个所述数据接口信息,随机生成对应的对称秘钥。
在本发明实施例第二方面一种可能的实现方式中,所述装置还包括:
请求时间获取模块,用于获取客户端发出的请求数据中的请求时间;
第二对称秘钥生成模块,用于以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
在本发明实施例第二方面一种可能的实现方式中,所述装置还包括:
匹配所述对称秘钥与历史对称秘钥记录,所述历史对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;
如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
在本发明实施例第二方面一种可能的实现方式中,所述装置还包括:
数据打包模块,用于将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,生成请求数据包。
第四方面,本发明实施例提供了一种数据解密装置,包括:
数据包接收模块,用于接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;
验签模块,用于采用验证算法验签所述签名数据;
非对称解密模块,用于如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;
排序解密模块,用于采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;
对称解密模块,用于利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
第五方面,本发明实施例提供了一种电子设备,包括:
客户端处理器,以及
客户端存储器,用于存储所述客户端处理器的可执行指令;
其中,所述客户端处理器配置为经由执行所述可执行指令来执行数据加密方法。
第六方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现数据加密方法。
第七方面,本发明实施例提供了一种电子设备,所述电子设备包括:
服务器处理器,以及
服务器存储器,用于存储所述服务器处理器的可执行指令;
其中,所述服务器处理器配置为经由执行所述可执行指令来执行数据解密方法。
第八方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现数据解密方法。
本发明实施例提供的数据加密方法、解密方法、装置、电子设备及存储介质,其中,在数据加密方法和数据解密方法中,客户端利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥;采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;发送请求数据包至服务器。服务器接收客户端发送的请求数据包;采用验证算法验签所述签名数据;如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥;采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。可见,本发明实施例通过在对请求数据对称加密的基础上,对对称加密所使用的对称秘钥进行两次加密,即一次为乱序加密,一次为非对称加密,从而在提高对称秘钥安全性的基础上,保证请求数据的安全性;同时对发送至服务器的加密秘钥和加密数据签名,进而利用签名数据验证对称秘钥和请求数据是否被篡改,通过这一判断步骤,避免服务器对遭到篡改的数据进行操作,以提高服务器的动作有效性,只有验签通过的数据,服务器才会进一步进行解密获得对称秘钥和请求数据,以有效提高请求数据的安全性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据加密方法的流程示意图;
图2为本发明实施例提供的一种针对数据接口生成对称秘钥的方法的流程示意图;
图3为本发明实施例提供的一种针对每个请求数据生成对称秘钥的方法的流程示意图;
图4为本发明实施例提供的一种对称秘钥去重方法的流程示意图;
图5为本发明实施例提供的一种请求数据包的结构示意图;
图6为本发明实施例提供的一种数据解密方法的流程示意图;
图7为本发明实施例提供的数据加密装置实施例一的结构示意图;
图8为本发明实施例提供的数据加密装置实施例二的结构示意图;
图9为本发明实施例提供的数据加密装置实施例三的结构示意图;
图10为本发明实施例提供的数据加密装置实施例四的结构示意图;
图11为本发明实施例提供的数据加密装置实施例五的结构示意图;
图12为本发明实施例提供的数据解密装置的结构示意图;
图13为本发明实施例提供的客户端电子设备的硬件结构示意图;
图14为本发明实施例提供的服务器电子设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的数据加密方法的流程示意图。如图1所示,本实施例提供的数据加密方法包括:
S1、利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据。
采用随机秘钥生成工具,生成对称秘钥,例如,首先定义一个62位字符串“abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789”,由random函数从该62位字符串中生成随机字符,按照需要的对称秘钥长度,设定随机选定的循环次数,如需要16位的对称秘钥,则循环16次,由全部随机的字符所组成的字符串即为随机生成的对称秘钥。可见,随机生成的对称秘钥无规律性,因此,难以被破解;同时,随着对称秘钥的字符串长度增加,对称秘钥的破解难度也将大幅增加,进而提高对称秘钥的安全性。相应地,利用具有较高安全性的对称秘钥对请求数据加密所获得的加密数据也具有较高的安全性。
S2、采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥。
为了进一步提高对称秘钥的安全性,采用乱序算法对称秘钥乱序加密,例如,随机生成的16位对称秘钥为“1zxhj69ANUY112yM”,采用乱序算法打乱该对称秘钥之后,可得到待加密秘钥“6A12YUyz1j9hMNlx”。可见,经过乱序算法处理后的待加密秘钥,能够进一步提高对称秘钥的被破解难度,从而提高对称秘钥的安全性。
S3、利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥。
预先在客户端与其对应的服务器中存储一套非对称秘钥,该非对称秘钥中的公钥预置于客户端内,该非对称秘钥中的私钥预置于服务器内,利用预置公钥对S2中获得的待加密秘钥非对称加密,得到加密秘钥。对应的,服务器能够利用预置私钥解密该加密秘钥。可见,通过对加密请求数据的对称秘钥加密,得到难以被破解的加密秘钥,以提高对请求数据的保护力度。
其中,为了提高对待加密秘钥的加密力度,可以通过提高非对称秘钥的安全性来实现,可以采用随机秘钥生成工具,生成一套非对称秘钥,进而提高非对称秘钥的安全性。
S4、采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据。
为了以防万一,对加密数据和加密秘钥进行签名,以方便服务器验证加密秘钥和加密数据是否在传输的过程中被篡改(秘钥是否被破解和/或加密数据被破解并被非法篡改),令服务器能够在真正解密加密秘钥和解密加密数据之前,先确定是否有必要进行解密操作,以免解密得到无效数据,甚至是解密得到病毒数据。
通常,例如采用MD(Message Digest Algorithm,消息摘要算法)、SHA(SecureHash Algorithm,安全散列算法)等进行签名。以MD5算法为例,采用MD5算法对加密数据和加密秘钥加密成一段唯一的固定长度的代码,即MD5校验码,如果服务器验签签名数据之后,也生成了同样的代码结果,则说明加密数据和加密秘钥都没有被篡改过。
S5、发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
服务器接收到客户端发送的请求数据即可展开验签、解密和反馈等动作。
由以上技术方案可知,通过在对请求数据对称加密的基础上,对对称加密所使用的对称秘钥进行两次加密,即一次为乱序加密,一次为非对称加密,从而在提高对称秘钥安全性的基础上,保证请求数据的安全性;同时对发送至服务器的加密秘钥和加密数据签名,进而利用签名数据验证对称秘钥和请求数据是否被篡改,通过这一判断步骤,避免服务器对遭到篡改的数据进行操作,以提高服务器的动作有效性,只有验签通过的数据,服务器才会进一步进行解密获得对称秘钥和请求数据,以有效提高请求数据的安全性。
通常,客户端存在若干数据接口,客户端与服务器之间的数据传输需要依靠这些数据接口,如果每个数据接口所传输的请求数据的对称秘钥均相同,一旦其中一个数据接口所对应的对称秘钥被破解,相当于全部数据接口的对称秘钥均被破解,相应地,通过各个数据接口所传输请求数据的安全性也将遭到威胁。因此,需要对各个数据接口所对应的对称秘钥加以区分,以提高各个数据接口之间的隔离安全性。
图2展示了一种针对数据接口生成对称秘钥的方法,包括:
S6、获取客户端的数据接口信息;
S7、针对每一个所述数据接口信息,随机生成对应的对称秘钥。
获取客户端与服务器之间用于数据传输的全部数据接口的信息,所述数据接口信息至少包括接口号,根据所述接口号能够准确区分各个数据接口。针对每一个数据接口,随机生成一个对应的对称秘钥,并将全部生成的对称秘钥均保存于指定的存储单元,一旦客户端发起请求数据,根据请求数据所要调用的数据接口,就可以从存储单元中确定该数据接口对应的对称秘钥,进而利用该对称秘钥对请求数据对称加密。
可见,不仅能够提高对称秘钥的生成效率,进而提高请求数据的整体传输效率,而且能够保证各个数据接口采用不同的对称秘钥,保证各个数据接口之间的对称秘钥互不影响,进而保证数据传输的安全性。
进一步地,还可以选择另一种生成对称秘钥的方法,以每个请求数据为基础,针对每个请求数据生成对应的对称秘钥。
图3展示了一种针对每个请求数据生成对称秘钥的方法,包括:
S8、获取客户端发出的请求数据中的请求时间;
S9、以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
每个请求数据的请求时间各不相同,因此,能够通过请求时间来准确区分每个请求数据。发出请求数据的时刻,即为请求时间,并以该请求时间作为生成对称秘钥的时间节点。这样能够准确对应各个请求数据生成对称秘钥,以提高对称秘钥的专属性,进而提高加密效果。
针对S8和S9获得的对称秘钥,如果一个请求数据经过传输并反馈之后,那么该请求数据所对应的对称秘钥的破解难度将大大降低。因此,一旦对应当前请求数据所生成的对称秘钥与前一个已经传输并反馈的请求数据所对应的对称秘钥相同,那么当前请求数据的对称秘钥将失去加密效果。为了进一步提高对称秘钥的破解难度,并且有效隔离各个请求数据的对称秘钥,需要针对每个请求数据生成不同的对称秘钥。同样的,针对S6和S7获得对称秘钥,如果两个数据接口的对称秘钥相同,一旦其中一个数据接口的请求数据经过传输并反馈之后,所对应的数据接口的对称秘钥的破解难度将大大降低,那么另一个数据接口的对称秘钥的破解难度也将大大降低。因此,为了进一步提高不同数据接口的对称秘钥的破解难度,有效隔离各个数据接口的对称秘钥,需要针对每个数据接口生成不同的对称秘钥。
图4展示了一种对称秘钥去重方法,包括:
S101、匹配所述对称秘钥与历史对称秘钥记录,所述历史对称对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;
S102、如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
将之前针对各个数据接口或者针对各个请求数据生成的对称秘钥数据全部记录下来,得到历史对称秘钥记录。如果当前生成的对称秘钥的字符与任一历史对称秘钥的字符完成相同,则说明当前生成了重复的对称秘钥,该对称秘钥的安全性较低,为了保证对称秘钥的安全性,需要重新对应当前数据接口或者当前请求数据生成新的对称秘钥。
对称秘钥保留一定时间之后,其被对应找到和破解的难度也将随之提升,因此,可以定期清理历史对称秘钥记录,删除保留时间超过预设保留时间的历史对称秘钥记录,而这些被删除的历史对称秘钥也能够重新作为对称秘钥被使用。
加密数据、加密秘钥和签名数据的数据量较大,因此,如果直接传输这些数据,不仅传输速度慢,而且在传输过程中,如果遭遇网络环境恶劣等问题,会出现数据丢失的问题,进而影响请求数据的安全性与可执行性。因此需要将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,如图5所示,生成请求数据包。以数据压缩的形式,将全部数据快速传送至服务器,并保证数据传输的有效性。
如图6所示,本发明实施例还提供了一种数据解密方法,包括:
S100、接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;
S200、采用验证算法验签所述签名数据;
S300、如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;
S400、采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;
S500、利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
服务器接收到客户端发送的经过打包的请求数据,首先需要采用验证算法验签请求数据包中的签名数据,只有签名数据验签通过,证明加密数据和加密秘钥均未在传输过程中被篡改,才能够进行下一步操作,以提高服务器的数据处理效率和质量。服务器通过自身存储的与客户端的预置公钥相对应的预置私钥解密加密秘钥,得到待加密秘钥,此时的待加密秘钥为经过乱序后的对称秘钥,因此,服务器需要采用排序算法将待加密秘钥恢复为乱序之前的对称秘钥。服务器得到对称秘钥之后,就可以利用该对称秘钥成功解密加密数据,得到请求数据原文。
图7为本发明实施例提供的数据加密装置实施例一的结构示意图,所述装置包括:对称加密模块1,用于利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;乱序加密模块2,用于采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;非对称加密模块3,用于利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥;签名模块4,用于采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;数据包发送模块5,用于发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
图8为本发明实施例提供的数据加密装置实施例二的结构示意图,所述装置还包括:数据接口信息获取模块6,用于获取客户端的数据接口信息;第一对称秘钥生成模块7,用于针对每一个所述数据接口信息,随机生成对应的对称秘钥。
图9为本发明实施例提供的数据加密装置实施例三的结构示意图,所述装置还包括:请求时间获取模块8,用于获取客户端发出的请求数据中的请求时间;第二对称秘钥生成模块9,用于以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
图10为本发明实施例提供的数据加密装置实施例四的结构示意图,所述装置还包括:匹配模块10,用于匹配所述对称秘钥与历史对称秘钥记录,所述历史对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;去重模块11,用于如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
图11为本发明实施例提供的数据加密装置实施例五的结构示意图,所述装置还包括:
数据打包模块12,用于将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,生成请求数据包。
图12为本发明实施例提供的数据解密装置的结构示意图,所述装置包括:数据包接收模块100,用于接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;验签模块200,用于采用验证算法验签所述签名数据;非对称解密模块300,用于如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;排序解密模块400,用于采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;对称解密模块500,用于利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
图13为本发明实施例提供的客户端电子设备的硬件结构示意图。该电子设备包括:客户端存储器101和客户端处理器102;
客户端存储器101,用于存储计算机程序;
客户端处理器102,用于执行存储器存储的计算机程序,以实现上述实施例中的流量数据监控方法。具体可以参见前述方法实施例中的相关描述。
可选地,客户端存储器101既可以是独立的,也可以跟客户端处理器102集成在一起。
当所述客户端存储器101是独立于客户端处理器102之外的器件时,所述电子设备还可以包括:
客户端总线103,用于连接所述客户端存储器101和客户端处理器102。
本发明实施例提供的电子设备可用于执行上述实施例中任一所示的数据加密方法,其实现方式和技术效果类似,本发明实施例此处不再赘述。
图14为本发明实施例提供的服务器电子设备的硬件结构示意图。该电子设备包括:服务器存储器201和服务器处理器202;
服务器存储器201,用于存储计算机程序;
服务器处理器202,用于执行存储器存储的计算机程序,以实现上述实施例中的流量数据监控方法。具体可以参见前述方法实施例中的相关描述。
可选地,服务器存储器201既可以是独立的,也可以跟服务器处理器202集成在一起。
当所述服务器存储器201是独立于服务器处理器202之外的器件时,所述电子设备还可以包括:
服务器总线203,用于连接所述服务器存储器201和服务器处理器202。
本发明实施例提供的电子设备可用于执行上述实施例中任一所示的数据解密方法,其实现方式和技术效果类似,本发明实施例此处不再赘述。
本发明实施例还提供一种可读存储介质,可读存储介质中存储有计算机程序,当消息发送的装置的至少一个客户端处理器执行该计算机程序时,消息发送的装置执行上述实施例任一所述的数据加密方法。
本发明实施例还提供一种可读存储介质,可读存储介质中存储有计算机程序,当消息发送的装置的至少一个服务器处理器执行该计算机程序时,消息发送的装置执行上述实施例任一所述的数据解密方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于以计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换,而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (16)

1.一种数据加密方法,其特征在于,所述方法包括:
利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;
采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;
利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥;
采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;
发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
2.根据权利要求1所述的方法,其特征在于,所述利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据之前包括:
获取客户端的数据接口信息;
针对每一个所述数据接口信息,随机生成对应的对称秘钥。
3.根据权利要求1所述的方法,其特征在于,所述利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据之前包括:
获取客户端发出的请求数据中的请求时间;
以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
4.根据权利要求2或3所述的方法,其特征在于,所述随机生成对称秘钥之后包括:
匹配所述对称秘钥与历史对称秘钥记录,所述历史对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;
如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
5.根据权利要求1所述的方法,其特征在于,所述发送请求数据包至服务器之前包括:
将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,生成请求数据包。
6.一种数据解密方法,其特征在于,所述方法包括:
接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;
采用验证算法验签所述签名数据;
如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;
采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;
利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
7.一种数据加密装置,其特征在于,所述装置包括:
对称加密模块,用于利用随机生成的对称秘钥对称加密客户端发出的请求数据,得到加密数据;
乱序加密模块,用于采用乱序算法打乱所述对称秘钥的字符排序,得到待加密秘钥;
非对称加密模块,用于利用所述客户端的预置公钥非对称加密所述待加密秘钥,得到加密秘钥,所述预置公钥与服务器中的预置私钥形成一对非对称秘钥;
签名模块,用于采用签名算法签名所述加密数据和所述加密秘钥,得到签名数据;
数据包发送模块,用于发送请求数据包至服务器,所述请求数据包包括所述加密数据、所述加密秘钥和所述签名数据。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
数据接口信息获取模块,用于获取客户端的数据接口信息;
第一对称秘钥生成模块,用于针对每一个所述数据接口信息,随机生成对应的对称秘钥。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
请求时间获取模块,用于获取客户端发出的请求数据中的请求时间;
第二对称秘钥生成模块,用于以每一个所述请求时间为对称秘钥的生成时间节点,随机生成所述对称秘钥。
10.根据权利要求8或9所述的装置,其特征在于,所述装置还包括:
匹配模块,用于匹配所述对称秘钥与历史对称秘钥记录,所述历史对称秘钥记录包含所述客户端历史随机生成的全部历史对称秘钥;
去重模块,用于如果所述对称秘钥的字符与任一所述历史对称秘钥的字符完全相同,则重新随机生成对称秘钥。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
数据打包模块,用于将所述加密数据、所述加密秘钥和所述签名数据按照预设标准格式打包,生成请求数据包。
12.一种数据解密装置,其特征在于,所述装置包括:
数据包接收模块,用于接收客户端发送的请求数据包,所述请求数据包包含签名数据、对称加密后的请求数据和非对称加密后的待加密秘钥;
验签模块,用于采用验证算法验签所述签名数据;
非对称解密模块,用于如果验证通过,则利用预置私钥解密所述非对称加密后的待加密秘钥,得到待加密秘钥,所述预置私钥与非对称加密待加密秘钥所使用的公钥形成一对非对称秘钥;
排序解密模块,用于采用排序算法恢复所述待加密秘钥的字符原始排序,得到对称秘钥;
对称解密模块,用于利用所述对称秘钥解密所述对称加密后的请求数据,得到所述请求数据的原文。
13.一种电子设备,其特征在于,所述电子设备包括:
客户端处理器,以及
客户端存储器,用于存储所述客户端处理器的可执行指令;
其中,所述客户端处理器配置为经由执行所述可执行指令来执行权利要求1-5任一所述的数据加密方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一所述的数据加密方法。
15.一种电子设备,其特征在于,所述电子设备包括:
服务器处理器,以及
服务器存储器,用于存储所述服务器处理器的可执行指令;
其中,所述服务器处理器配置为经由执行所述可执行指令来执行权利要求6所述的数据解密方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求6所述的数据解密方法。
CN201910344088.1A 2019-04-26 2019-04-26 数据加密方法、解密方法、装置、电子设备及存储介质 Pending CN110213041A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910344088.1A CN110213041A (zh) 2019-04-26 2019-04-26 数据加密方法、解密方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910344088.1A CN110213041A (zh) 2019-04-26 2019-04-26 数据加密方法、解密方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN110213041A true CN110213041A (zh) 2019-09-06

Family

ID=67786432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910344088.1A Pending CN110213041A (zh) 2019-04-26 2019-04-26 数据加密方法、解密方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110213041A (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855622A (zh) * 2019-10-17 2020-02-28 上海海加网络科技有限公司 一种分布式系统敏感数据传输保护方法及装置
CN110868291A (zh) * 2019-11-26 2020-03-06 普联技术有限公司 一种数据加密传输方法、装置、系统及存储介质
CN112153046A (zh) * 2020-09-24 2020-12-29 施耐德电气(中国)有限公司 数据加密和数据解密的方法、相关设备以及存储介质
CN112235299A (zh) * 2020-10-14 2021-01-15 杭州海康威视数字技术股份有限公司 数据加解密方法、装置、设备、系统及介质
CN112910843A (zh) * 2021-01-15 2021-06-04 深圳市欢太科技有限公司 数据传输方法、电子设备、服务器、移动终端及存储介质
CN112927080A (zh) * 2021-03-05 2021-06-08 广东电网有限责任公司 基于区块链技术的电力行业多方信息共享方法
CN113301036A (zh) * 2021-05-18 2021-08-24 中国经济信息社有限公司 通信加密方法和装置、设备及存储介质
CN113352318A (zh) * 2021-04-29 2021-09-07 国网浙江省电力有限公司嘉兴供电公司 一种智能机器人通信链路自检选择方法
CN113364760A (zh) * 2021-06-01 2021-09-07 平安科技(深圳)有限公司 一种数据加密处理方法、装置、计算机设备及存储介质
CN113645209A (zh) * 2021-07-30 2021-11-12 北京三快在线科技有限公司 一种基于白盒的车机端软件加解密方法及装置
CN113779634A (zh) * 2021-09-17 2021-12-10 江苏通付盾区块链科技有限公司 一种数据存储方法及系统
CN114338113A (zh) * 2021-12-09 2022-04-12 安天科技集团股份有限公司 一种数据加密、解密方法、装置、电子设备及存储介质
CN114389847A (zh) * 2021-12-15 2022-04-22 北京达佳互联信息技术有限公司 访问请求加密方法、装置、电子设备及存储介质
CN115022023A (zh) * 2022-05-31 2022-09-06 北京结慧科技有限公司 数据加密传输方法及数据解密方法
US20230099755A1 (en) * 2021-09-24 2023-03-30 Sap Se Sql extension to key transfer system with authenticity, confidentiality, and integrity

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105071935A (zh) * 2015-07-09 2015-11-18 浪潮通用软件有限公司 一种数据处理方法、异构系统和集成系统
US20150350894A1 (en) * 2014-05-29 2015-12-03 Entersekt, LLC Method and System for Establishing a Secure Communication Channel
CN105790925A (zh) * 2014-12-24 2016-07-20 北京奇虎科技有限公司 数据加密解密方法和装置
CN106534079A (zh) * 2016-10-19 2017-03-22 华迪计算机集团有限公司 一种用于数据文件安全处理的方法及系统
CN106790223A (zh) * 2017-01-13 2017-05-31 无锡英威腾电梯控制技术有限公司 一种数据传输的方法和设备及其系统
CN107911370A (zh) * 2017-11-22 2018-04-13 深圳市智物联网络有限公司 一种数据加密方法及装置、数据解密方法及装置
CN108040077A (zh) * 2018-02-09 2018-05-15 成都康赛信息技术有限公司 防止网络系统数据泄露的混合置乱加密算法
CN109413051A (zh) * 2018-10-09 2019-03-01 深圳南方德尔汽车电子有限公司 数据加密方法、装置、计算机设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150350894A1 (en) * 2014-05-29 2015-12-03 Entersekt, LLC Method and System for Establishing a Secure Communication Channel
CN105790925A (zh) * 2014-12-24 2016-07-20 北京奇虎科技有限公司 数据加密解密方法和装置
CN105071935A (zh) * 2015-07-09 2015-11-18 浪潮通用软件有限公司 一种数据处理方法、异构系统和集成系统
CN106534079A (zh) * 2016-10-19 2017-03-22 华迪计算机集团有限公司 一种用于数据文件安全处理的方法及系统
CN106790223A (zh) * 2017-01-13 2017-05-31 无锡英威腾电梯控制技术有限公司 一种数据传输的方法和设备及其系统
CN107911370A (zh) * 2017-11-22 2018-04-13 深圳市智物联网络有限公司 一种数据加密方法及装置、数据解密方法及装置
CN108040077A (zh) * 2018-02-09 2018-05-15 成都康赛信息技术有限公司 防止网络系统数据泄露的混合置乱加密算法
CN109413051A (zh) * 2018-10-09 2019-03-01 深圳南方德尔汽车电子有限公司 数据加密方法、装置、计算机设备及存储介质

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855622A (zh) * 2019-10-17 2020-02-28 上海海加网络科技有限公司 一种分布式系统敏感数据传输保护方法及装置
CN110868291A (zh) * 2019-11-26 2020-03-06 普联技术有限公司 一种数据加密传输方法、装置、系统及存储介质
CN112153046B (zh) * 2020-09-24 2023-04-07 施耐德电气(中国)有限公司 数据加密和数据解密的方法、相关设备以及存储介质
CN112153046A (zh) * 2020-09-24 2020-12-29 施耐德电气(中国)有限公司 数据加密和数据解密的方法、相关设备以及存储介质
CN112235299A (zh) * 2020-10-14 2021-01-15 杭州海康威视数字技术股份有限公司 数据加解密方法、装置、设备、系统及介质
CN112910843A (zh) * 2021-01-15 2021-06-04 深圳市欢太科技有限公司 数据传输方法、电子设备、服务器、移动终端及存储介质
CN112927080A (zh) * 2021-03-05 2021-06-08 广东电网有限责任公司 基于区块链技术的电力行业多方信息共享方法
CN113352318A (zh) * 2021-04-29 2021-09-07 国网浙江省电力有限公司嘉兴供电公司 一种智能机器人通信链路自检选择方法
CN113301036A (zh) * 2021-05-18 2021-08-24 中国经济信息社有限公司 通信加密方法和装置、设备及存储介质
CN113364760A (zh) * 2021-06-01 2021-09-07 平安科技(深圳)有限公司 一种数据加密处理方法、装置、计算机设备及存储介质
CN113645209A (zh) * 2021-07-30 2021-11-12 北京三快在线科技有限公司 一种基于白盒的车机端软件加解密方法及装置
CN113779634A (zh) * 2021-09-17 2021-12-10 江苏通付盾区块链科技有限公司 一种数据存储方法及系统
US20230099755A1 (en) * 2021-09-24 2023-03-30 Sap Se Sql extension to key transfer system with authenticity, confidentiality, and integrity
CN114338113A (zh) * 2021-12-09 2022-04-12 安天科技集团股份有限公司 一种数据加密、解密方法、装置、电子设备及存储介质
CN114338113B (zh) * 2021-12-09 2023-08-01 安天科技集团股份有限公司 一种数据加密、解密方法、装置、电子设备及存储介质
CN114389847A (zh) * 2021-12-15 2022-04-22 北京达佳互联信息技术有限公司 访问请求加密方法、装置、电子设备及存储介质
CN114389847B (zh) * 2021-12-15 2024-02-06 北京达佳互联信息技术有限公司 访问请求加密方法、装置、电子设备及存储介质
CN115022023A (zh) * 2022-05-31 2022-09-06 北京结慧科技有限公司 数据加密传输方法及数据解密方法

Similar Documents

Publication Publication Date Title
CN110213041A (zh) 数据加密方法、解密方法、装置、电子设备及存储介质
KR101999188B1 (ko) 비밀 공유를 위한 타원 곡선 암호를 사용하는 개인용 장치 보안
KR100479260B1 (ko) 무선 데이터의 암호 및 복호 방법과 그 장치
CN103905204B (zh) 数据的传输方法和传输系统
CN104917741B (zh) 一种基于usbkey的明文文档公网安全传输系统
CN104283688B (zh) 一种USBKey安全认证系统及安全认证方法
CN111324881B (zh) 一种融合Kerberos认证服务器与区块链的数据安全分享系统及方法
US8806206B2 (en) Cooperation method and system of hardware secure units, and application device
CN106060078B (zh) 应用于云平台的用户信息加密方法、注册方法及验证方法
CN104468126B (zh) 一种安全通信系统及方法
CN109150821A (zh) 基于超文本传输协议http的数据交互方法及系统
CN108449756A (zh) 一种网络密钥更新的系统、方法及装置
CN109257183A (zh) 基于量子游走隐形传输的仲裁量子签名方法
CN111181723B (zh) 物联网设备间离线安全认证的方法和装置
US20220029819A1 (en) Ssl communication system, client, server, ssl communication method, and computer program
CN109962777A (zh) 许可区块链系统中的密钥生成、获取密钥的方法及设备
CN108199847A (zh) 数字安全处理方法、计算机设备及存储介质
CN109413116A (zh) 一种可信的云端身份认证方法及系统
CN108243197A (zh) 一种数据分发、转发方法及装置
CN113194083A (zh) 一种采用视频分段加密后进行抛转传输方法
CN107113164A (zh) 加密数据的重复删除
CN108200085B (zh) 一种数据分发、转发方法及装置
CN113347143A (zh) 一种身份验证方法、装置、设备及存储介质
JP6533542B2 (ja) 秘密鍵複製システム、端末および秘密鍵複製方法
CN113268746B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190906

RJ01 Rejection of invention patent application after publication