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

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

Info

Publication number
CN113726725A
CN113726725A CN202011598550.XA CN202011598550A CN113726725A CN 113726725 A CN113726725 A CN 113726725A CN 202011598550 A CN202011598550 A CN 202011598550A CN 113726725 A CN113726725 A CN 113726725A
Authority
CN
China
Prior art keywords
key
data
encryption
decryption
generated
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
CN202011598550.XA
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.)
JD Digital Technology Holdings Co Ltd
Original Assignee
JD Digital Technology Holdings 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 JD Digital Technology Holdings Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN202011598550.XA priority Critical patent/CN113726725A/zh
Publication of CN113726725A publication Critical patent/CN113726725A/zh
Pending legal-status Critical Current

Links

Images

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/045Network 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 hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/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)使用MD5(英文:MD5 Message-Digest Algorithm,中文:MD5信息摘要算法)等散列方式对登录密码等身份认证信息加密,其余使用明文传输;(3)使用对称加密,加密的密钥被加密后存储在客户端;(4)使用非对称加密。
上述的数据传输若使用对称算法加密,由于其密钥存储在客户端,容易被本地破解,而且由于数据传输使用对称加密,密钥是固定不变的,容易发生密钥泄漏,密钥泄漏后历史传输数据都会被解密。数据传输若使用非对称算法加密,则性能较差,且无法双向加密。
发明内容
本发明提供一种数据加解密方法、装置、电子设备及存储介质,用以解决现有技术中数据传输使用对称加密由于密钥固定不变存在容易泄露的问题和采用非对称加密存在低性能且无法双向加密的问题,采用对称加密算法和非对称加密算法相结合的方式,实现数据加密的安全性和高效性。
本发明提供一种数据加密方法,包括在客户端执行数据加密步骤,所述数据加密步骤包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明所述的一种数据加密方法,执行所述随机生成第一密钥的步骤之前,包括:
获取由服务器端生成的所述第二密钥,所述第二密钥存储在服务器端。
根据本发明所述的一种数据加密方法,所述获取由服务器端生成的所述第二密钥,包括:
获取由服务器端使用非对称加密算法RSA生成的所述第二密钥,所述第二密钥包括用于加密的公钥和用于解密的私钥。
根据本发明所述的一种数据加密方法,所述随机生成第一密钥,包括:
在客户端每次发起请求前,使用对称加密算法AES随机生成所述第一密钥;
将所述第一密钥缓存在客户端。
本发明提供一种数据解密方法,包括在服务器端执行数据解密步骤,所述数据解密步骤包括:
使用第二密钥对第三密钥进行解密,得到第一密钥;
使用所述第一密钥对第一被加密数据进行解密,得到需加密数据;
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明所述的一种数据解密方法,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
本发明提供一种数据加解密方法,包括在客户端执行数据加密步骤和/或在服务器端执行数据解密步骤,其中,
所述数据加密步骤,包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
所述数据解密步骤,包括:
使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥;
使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明提供的一种数据加解密方法,执行所述使用所述第一密钥对所述被加密数据进行解密,得到所述需加密数据之后,包括:
接收服务器端返回的第二被加密数据,所述第二被加密数据是由服务器端对客户端发起的请求数据进行处理并将处理后的响应数据使用所述第一密钥进行加密后得到的;
使用所述第一密钥对所述被第二被加密数据进行解密。
根据本发明提供的一种数据加解密方法,执行所述随机生成第一密钥的步骤之前,包括:
获取由服务器端生成的所述第二密钥,所述第二密钥存储在服务器端。
根据本发明提供的一种数据加解密方法,所述获取由服务器端生成的所述第二密钥,包括:
获取由服务器端使用非对称加密算法RSA生成的所述第二密钥,所述第二密钥包括用于加密的公钥和用于解密的私钥。
根据本发明提供的一种数据加解密方法,所述随机生成第一密钥,包括:
在客户端每次发起请求前,使用对称加密算法AES随机生成所述第一密钥;
将所述第一密钥缓存在客户端。
本发明提供一种数据加密装置,包括在客户端执行数据加密步骤的加密模块,所述加密模块用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明所述的一种数据加密装置,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
本发明提供一种数据解密装置,包括在服务器端执行数据解密步骤的解密模块,所述解密模块用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明所述的一种数据解密装置,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
本发明提供一种数据加解密装置,包括在客户端执行数据加密步骤的加密模块和/或在服务器端执行数据解密步骤的解密模块,其中,
加密模块,用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
解密模块,用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
根据本发明提供的一种数据加解密装置,还包括:
加解密模块,用于对客户端发起的请求数据进行处理,并将处理后的响应数据使用所述第一密钥进行加密,得到第二被加密数据,并将所述第二被加密数据返回给客户端,并使用所述第一密钥对所述被第二被加密数据进行解密。
根据本发明提供的一种数据加解密装置,还包括:
第二密钥生成模块,用于在服务器端生成所述第二密钥,并将所述第二密钥存储在服务器端。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据加解密方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据加解密方法的步骤。
本发明提供一种数据加解密方法、装置、电子设备及存储介质,用以解决现有技术中数据传输使用对称加密由于密钥固定不变存在容易泄露的问题和采用非对称加密存在低性能且无法双向加密的问题,采用对称加密算法和非对称加密算法相结合的方式,并且数据传输的加密密钥是通过客户端运行时随机产生的,实现数据加密的安全性和高效性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的数据加密方法的流程示意图;
图2是本发明提供的数据解密方法的流程示意图;
图3是本发明提供的数据加解密方法的流程示意图;
图4是本发明提供的响应数据处理的流程示意图;
图5是本发明提供的生成RSA公钥的流程示意图;
图6是本发明提供的RSA加解密过程的示意图;
图7是本发明提供的生成AES密钥的流程示意图;
图8是本发明提供的AES加解密过程的示意图
图9是本发明提供的数据加解密方法的时序图;
图10是本发明提供的数据加解密装置的结构示意图;
图11是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本发明中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个***中,或一些特征向量可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本发明中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本发明方案的目的。
数据加密,是指通过加密算法和加密密钥将明文转变为密文,而解密则是通过解密算法和解密密钥将密文恢复为明文,其核心是密码学。数据加密目前仍是计算机***对信息进行保护的一种最可靠的办法。其利用密码技术对信息进行加密,实现信息隐蔽,从而起到保护信息的安全的作用。
常见的加密算法可以分成三类,对称加密算法,非对称加密算法和Hash算法。其中,常见的对称加密算法:DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES。常见的非对称加密算法:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)。常见的Hash算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1。
本发明提供一种数据加解密方法、装置、电子设备及存储介质,用以解决现有技术中数据传输使用对称加密由于密钥固定不变存在容易泄露的问题和采用非对称加密存在低性能且无法双向加密的问题,采用对称加密算法和非对称加密算法相结合的方式,实现数据加密的安全性和高效性。
下面结合图1-图11描述本发明提供的一种数据加解密方法、装置、电子设备及存储介质。
图1是本发明提供的数据加密方法的流程示意图,如图所示。一种数据加密方法,包括在客户端执行数据加密步骤,所述数据加密步骤包括:
步骤101,随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥。
可选的,所述第一密钥是在在客户端每次发起请求前,使用对称加密算法AES随机生成的,并缓存在客户端已被后续加密数据调用。
可选的,所述第二密钥是预先由服务器端生成并存储在服务器端。
可选的,所述第二密钥是由服务器端使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥。
步骤102,使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端。
图2是本发明提供的数据解密方法的流程示意图,如图所示。一种数据解密方法,包括在服务器端执行数据解密步骤,所述数据解密步骤包括:
步骤201,使用第二密钥对第三密钥进行解密,得到第一密钥。
步骤202,使用所述第一密钥对第一被加密数据进行解密,得到需加密数据。
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的。
可选的,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;
所述第一密钥是使用对称加密算法AES随机生成的。
图3是本发明提供的数据加解密方法的流程示意图,如图所示。一种数据加解密方法,包括在客户端执行数据加密步骤310和/或在服务器端执行数据解密步骤320,其中,
所述数据加密步骤310,包括:
步骤311,随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥。
步骤312,使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端。
所述数据解密步骤320,包括:
步骤321,使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥。
步骤322,使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据。
本发明上述所述数据加解密方法,数据传输中的第二密钥是存在服务器端,第一密钥是由客户端每次发起请求时生成的,每个客户端不同,并且所述第一密钥在客户端每次发起请求时都会随机变化,所以提高了数据传输的安全性。
上述步骤是针对客户端发起请求时的数据传输,所述数据传输包括两部分,一部分为实际传输的数据,使用第一密钥进行加密后生成第一加密数据;另一部分为第三密钥,所述第三密钥是使用第二密钥对第一密钥进行加密后生成的。
以下针对本发明上述各步骤进行描述。
图4是本发明提供的响应数据处理的流程示意图,如图所示。执行所述使用所述第一密钥对所述被加密数据进行解密,得到所述需加密数据之后,包括:
步骤401,服务器端对客户端发起的请求数据进行处理,并将处理后的响应数据使用所述第一密钥进行加密,得到第二被加密数据。
步骤402,将所述第二被加密数据返回给客户端,并由客户端使用所述第一密钥对所述被第二被加密数据进行解密。
上述步骤是对服务器对客户端发起请求所返回的响应数据的数据传输,所述数据传输只包括第二被加密数据,所述第二被加密数据是使用所述第一密钥进行加密的,由于所述第一密钥是客户端随机生成的,并不存储在服务器端,所以每次返回的响应数据的加密密钥都不相同,提高了数据传输的安全性。
图5是本发明提供的生成RSA公钥的流程示意图,如图所示。执行所述随机生成第一密钥的步骤之前,包括:
步骤501,由服务器端生成所述第二密钥。
可选的,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥。
RSA(RSAalgorithm)加密算法由以下五部分构成:
(1)原文(Message):需要加密的信息,可以是数字、文字、视频、音频等,用M表示。
(2)密文(Ciphertext):加密后得到的信息,用C表示。
(3)公钥(Public Key)和私钥(Private Key),用PU和PR表示。
(4)加密算法(Encryption):若E(x)为加密算法,加密过程可以理解为C=E(M),根据原文和加密算法得到密文。
(5)解密算法(Decryption):若D(x)为解密算法,解密过程可以理解为M=D(C),根据密文和解密算法得到原文。
假设客户端与服务器端要进行加密通信,那么RSA进行加密和解密信息的步骤如下:
第一,随机选择两个不相同的素数p、q。
第二,将p、q相乘,记为n=p*q。
第三,计算n的欧拉函数ψ(n),欧拉函数证明,当p、q为不相同的素数时,ψ(n)=(p-1)*(q-1)。
第四,随机选择一个整数e,满足两个条件:ψ(n)与e互质,且1<e<ψ(n)。
第五,计算e对于ψ(n)的模反元素d,也就是说找到一个d满足ed=1modψ(n)。这个式子等价于ed-1=kψ(n),实际上就是对于方程ed-kψ(n)=1求(d,k)的整数解。这个方程可以用扩展欧几里得算法求解。
第六,最终把(e,n)封装成公钥,(d,n)封装成私钥。
可选的,本发明实施例可采用非对称加密算法RSA-2048,RSA-2048具有617个十进制数字,共2048bits,是目前最大的RSA数字。
图6是本发明提供的RSA加解密的示意图,如图所示。发送方
将明文P通过RSA加密函数使用公钥进行加密,得到密文C。接收方通过RSA解密函数使用私钥进行解密,得到明文P。
步骤502,将所述第二密钥存储在服务器端。
图7是本发明提供的生成AES密钥的流程示意图,如图所示,所述随机生成第一密钥,包括:
步骤601,在客户端每次发起请求前使用对称加密算法AES随机生成所述第一密钥。
AES(英文:Advanced Encryption Standard,中文:高级加密标准),对称加密算法是加密和解密用相同的密码,具体的加解密流程如图8所示:
(1)发送方:
通过AES加密函数将明文P和密钥K进行加密后,得到密文C进行网络传输。
(2)接收方:
通过AES解密函数将接收到密文C通过密钥K进行解密后,得到明文P。
其中,明文P是指没有经过加密的数据。
其中,密钥K是用来加密明文的密码,在对称加密算法中,加密和解密是相同的,密钥为接收方与发送方协商产生,但不可以直接在网络上传输,否则会导致密钥泄露,本发明是通过非对称加密算法加密密钥,然后再通过网络传输给对方,或者直接面对面商量密钥。密钥如果发生泄露,会被攻击者还原密文,窃取机密数据。
其中,AES加密函数:设AES加密函数为E,则C=E(K,P),其中P为明文,K为密钥,C为密文。也就是说,把明文P和密钥K作为加密函数的参数输入,则加密函数E会输出密文C。
其中,密文C是指经加密函数处理后的数据。
其中,AES解密函数:设AES解密函数为D,则P=D(K,C),其中C为密文,K为密钥,P为明文。也就是说,把密文C和密钥K作为解密函数的参数输入,则解密函数会输出明文P。
AES为分组密码,分组密码也就是把明文分成一组一组的,每组长度相等,每次加密一组数据,直到加密完整个明文。在AES标准规范中,分组长度只能是128位,也就是说,每个分组为16个字节(每个字节8位)。密钥的长度可以使用128位、192位或256位。密钥的长度不同,加密轮数也不同,比如AES-128,密钥的长度为128位,加密轮数为10轮;AES-256,密钥长度为128,加密轮数为14。
需要说明的是,对称加密算法的加密和解密用到的密钥是相同的,这种加密方式加密速度非常快,适合经常发送数据的场合,缺点是密钥的传输比较麻烦。而非对称加密算法的加密和解密用的密钥是不同的,这种加密方式是用数学上的难解问题构造的,所以通常加密解密的速度比较慢,适合偶尔发送数据的场合,优点是密钥传输方便。
本发明所述数据加解密方法是采用对称加密算法和非对称加密算法组合的方式进行加密的,即通过非对称RSA算法加密对称AES算法的密钥,传输到接收方,接收方解密得到AES密钥,然后发送方和接收方用AES密钥来通信。
可选的,在数据传输中,为保证数据的完整性和安全性,本发明采用非对称RSA-2048算法和对称AES-256算法组合使用,包括如下步骤:
第一,生成随机AES-256key。
第二,计算文件明文的SHA-256摘要。
第三,使用AES-256对文件进行加密。
第四,对加密后的文件进行前置操作。包括:(1)用接收方的RSA-2048公钥对AES-256key进行加密,保证仅有指定的接收方才能恢复相应的AES-256key;(2)SHA-256摘要,接收方可用于判断确认所接收解密的文件是正确的。
步骤702,将所述第一密钥缓存在客户端,以便对服务器端返回的响应数据进行解密。
图9是本发明提供的数据加解密方法的时序图,如图所示。所述数据加解密方法,包括:
步骤1,客户端向服务器端请求从服务器端获取RSA公钥,所述RSA公钥是由服务器端预先生成并保存在服务器端的。
步骤2,服务器端向客户端返回RSA公钥,客户端接收到服务器端发来的RSA公钥,并将所述RSA公钥进行暂时保存,以被后续加密时调用。
步骤3,客户端在每次发起请求时,随机生成一组AES密钥,并暂时保存在客户端以被后续解密步骤调用。
步骤4,客户端使用RSA公钥加密AES密钥,得到密钥encryptedKey。
步骤5,客户端使用AES密钥加密传输的数据,得到第一被加密数据encryptedData1。
可选的,上述步骤4和步骤5的顺序可调换,不影响本发明所述数据加解密方法的实现。
步骤6,客户端将密钥encryptedKey和第一被加密数据encryptedData1按照约定好的格式一起发送至服务器端。
步骤7,服务器端接收到密钥encryptedKey和第一被加密数据encryptedData1后,服务器端使用RSA私钥对密钥encryptedKey进行解密,得到AES密钥。
步骤8,服务器端使用步骤7中的AES密钥对第一被加密数据encryptedData1进行解密,得到明文数据。
步骤9,服务器端处理完客户端发来的请求书后,对返回客户端的响应数据使用步骤7的AES密钥进行加密得到第二被加密数据encryptedData2。
步骤10,服务器端将第二被加密数据encryptedData2返回给客户端。
步骤11,客户端对接收到服务器端返回的第二被加密数据encryptedData2使用上述步骤3生成的AES密钥进行解密。
本次客户端与服务器端的交互请求结束,当客户端下一次向服务器端发起请求时,重复执行上述步骤3~步骤11。
由此可知,本发明所述数据加解密方法,在客户端不存储加密密钥,而是每次发起请求时随机生成的,并且使用对称加密算法和非对称加密算法相结合的方式,兼顾数据加密的性能和数据传输的安全性。
下面对本发明提供的数据加解密装置进行描述,下文描述的数据加解密装置与上文描述的数据加解密方法可相互对应参照。
图10是本发明提供的数据加解密装置的结构示意图,如图所示。一种数据加解密装置1000,包括在客户端执行数据加密步骤的加密模块1010和/或在服务器端执行数据解密步骤的解密模块1020,其中,
加密模块1010,用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端。
解密模块1020,用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
可选的,上述所述数据加解密装置1000还包括加解密模块1030和第二密钥生成模块1040。
加解密模块1030,用于对客户端发起的请求数据进行处理,并将处理后的响应数据使用所述第一密钥进行加密,得到第二被加密数据,并将所述第二被加密数据返回给客户端,并使用所述第一密钥对所述被第二被加密数据进行解密。
第二密钥生成模块1040,用于在服务器端生成所述第二密钥,并将所述第二密钥存储在服务器端。
基于本发明的另一实施例,本发明提供一种数据加密装置,包括在客户端执行数据加密步骤的加密模块,所述加密模块用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
可选的,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
基于本发明的另一实施例,本发明提供一种数据解密装置,包括在服务器端执行数据解密步骤的解密模块,所述解密模块用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
可选的,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
以下通过一应用实施例提供的实验数据对本发明所述数据加解密方法进行描述:
实施例:
(1)在服务端生成RSA-2048密钥,所述密钥包括RSA公钥和RSA私钥,其中:
RSA公钥:
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6pXi9Wbn3shVKTxS2fiv/TqOuwLhXGSMqNsqlFOhSK//Rj8Bx/yuerm5SAuKWOEXXaHXHhMLMaTMdBfaSAIvH++vLESkK4dHNumffV153PXo0YE9Y70MwNpjPwrXWUvWxre2KvjbwxAJSaRPTn9nTwfN6O3rkgy4TPr3xnflAuTI5ORzKdDYWcYvkER47P9lwGTD9BOmQvGW80/+gGbA7U25NxRzhiqFPZ/DV+l9r+083553qGjXytVrRodldj7PN9rsN+BJTo1Zl3wwM7I2QQiOECbGz+0x7z7lZA4qBMtAuq9CVcbAvZBGt0zqFf508L5cR9P9Hy59H6TynlS3mQIDAQAB。
RSA私钥:
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDqleL1ZufeyFUpPFLZ+K/9Oo67AuFcZIyo2yqUU6FIr/9GPwHH/K56ublIC4pY4RddodceEwsxpMx0F9pIAi8f768sRKQrh0c26Z99XXnc9ejRgT1jvQzA2mM/CtdZS9bGt7Yq+NvDEAlJpE9Of2dPB83o7euSDLhM+vfGd+UC5Mjk5HMp0NhZxi+QRHjs/2XAZMP0E6ZC8ZbzT/6AZsDtTbk3FHOGKoU9n8NX6X2v7TzfnneoaNfK1WtGh2V2Ps832uw34ElOjVmXfDAzsjZBCI4QJsbP7THvPuVkDioEy0C6r0JVxsC9kEa3TOoV/nTwvlxH0/0fLn0fpPKeVLeZAgMBAAECggEBAJBQ0aVjP3aBDFMn91h9c9d3tOM77GSovxgKbPF/WZOcIpGWpYPg4X5Cz8eQwfXX1EYYEH1B/fr2hYlOO01depxNGhlDyTO2L4uKwkGfxh63chmhRqEbZsMmFzRrePxIecMatglNu/UO4ofZe6ixHF80T+rio6/f/2nsY45HqC3UYG41YxWyilTwXSXJLK1pcR1Z3xEhOzeQU+Mzye5NuGOrr++vQDhPggjCSKtYNzcJXgSYSK4FgDWpMopJ2zz13nzzvHzxoNveNq3PSg0pPRirVf5+y/pUw0GA8VRrhwD2Sh18BD+S0tQUYst6Mwhqx+ICULQxOjPSMjb1Jlxvi7kCgYEA+F1UkHwAFnrcaHCCSz3XFuBkcpEJbUog6/Vkpq9Jv+YZ4ubfnyd6nW4jCaHIj5cRPOxelWHHlLY8Dp6IXddKxL81CW/tpnFirQE/8IH90d9zTNlzFAW5BJkUjdmfQfPsW3ch1AabTUu6ThuXlvB8YVIHGDGqOFxDK+PYJN4g9VsCgYEA8cwc1i0c8E1AMbtIGYBv2eYqreSee06C2gg4ZMTv58LK0Y4ejlmid71gWMGxHIeQ4NZ4urqo8YhURyJ2mCF+Dr7ijYCuFoeuwOE5MHCTZftaXXUZmu8TvxGw3s1jzGq/DV5vfP3wmd3B3OzZT4X74kq5INFvtmEiUQ+phHRdNRsCgYEAxT/SVoG0zCW9gNDCGiG9/nQuMnMP6pVx+hRFYMBcMST9MCCuP0dqcTe0agTsNWYEEb+kCr3CdVAZ+H5dzTGcNw+ofps/Qe5RMReKAWgr/o+ZkdItPByjaYxuL45Dlmy0LZw66JpqowPergPp672I+v3blpJzHxnfWy80TWuA/3sCgYEAj3YvVdQGa30qLVeU+6x8sKgjgnE2pqp6cKqX6xH91WB5vcO41XTRNIIj/AVP9EFq8DvP/dpqCoR8nIgSHUkh5dXTzWkf4TY3tTDsIZVpnwR3JSQpQQfAi4kPi+II6GwdVu1E8MAqVOCB+XZ9qPUx8Z2sIZCh22/eUIIebfwsoSkCgYAFMQ4DXupzdM1xHZQ5BztW5/50UgZMvy9Z/d0KojSpoSMqTixIUGqgzh29rxE3u1KRanqg19rUli/5DfP1NEDJ5bX7c7os4LPpzzzXuJZJURRil2VipxlRbW2k5VqJ0qadgecQGL3DmfnoJEfgAEeeds0lsoH7JMKOnbAh8y2Q6Q==。
(2)在客户端生成AES-128密钥:/vWrlOuo46m5LdbGJLJOLQ==。
(3)在客户端使用RAS公钥对上述AES密钥加密得到encryptedKey:
LriTU+rVOZLVGFpF3T3pDYC8+dNJcl+nOX5KV3u/l3b52sOMbdwStQXNO751moX6hanwZCsxQ0yNawShLKavqcSEMJJqWZEMxVpVryq7mw/9griYG+8rORehNdrvAQ3b7xgtjnogrQ85TfKPkiSPrmlGJS7qlogiV/hLv3f/8O49x+OTdXYYLcD57osXN5LmhLWTtn8KatkqHEHE9sXk9e77K0CJAXQZ0v0wg5Nc/mWt8NScs9K9u89jXF3CjrfZiyfvRMb7XGs2wfORFMGHCq+uDFfi6XCnIF86p1WWdsxGRzPJSOjZZiA9O541nCtBRb6s6zCJOcpWK0cMOwJ1sw==。
(4)在客户端使用AES密钥对请求数据加密得到encryptedData1。其中,请求数据:username=zhangsan&password=123456;
encryptedData1:
0yzPXQql8Vkson53/dTh07HDCJ6f9x7XYQJSIdETb9ew4V5BxtUJLINW6g/rfvJ1。
(5)在服务端使用RSA私钥对encryptedKey解密得到AES密钥:/vWrlOuo46m5LdbGJLJOLQ==。
(6)服务端使用AES密钥对encryptedData1解密得到请求数据:username=zhangsan&password=123456。
(7)服务端使用AES密钥对响应数据加密得到encryptedData2。
其中,响应数据:success,那么加密后的encryptedData2:pQXw9v25oSpJx6bTCk2b6w==。
(8)客户端使用AES密钥对encryptedData2解密得到响应数据,所述响应数据的明文:success。
通过上述实施例可知,本发明采用对称加密算法和非对称加密算法相结合的方式,并且数据传输的加密密钥是通过客户端运行时随机产生的,实现数据加密的安全性和高效性。
图11示例了一种电子设备的实体结构示意图,如图11所示,该电子设备可以包括:处理器(processor)1110、通信接口(Communications Interface)1120、存储器(memory)1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信。处理器1110可以调用存储器1130中的逻辑指令,以执行数据加解密方法的步骤,所述数据加解密方法包括在客户端执行数据加密步骤和/或在服务器端执行数据解密步骤,其中,
所述数据加密步骤,包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
所述数据解密步骤,包括:
使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥;
使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据。
此外,上述的存储器1130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述所提供的数据加解密方法的步骤,所述数据加解密方法包括在客户端执行数据加密步骤和/或在服务器端执行数据解密步骤,其中,
所述数据加密步骤,包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
所述数据解密步骤,包括:
使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥;
使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的上述所提供的数据加解密方法的步骤,所述数据加解密方法包括在客户端执行数据加密步骤和/或在服务器端执行数据解密步骤,其中,
所述数据加密步骤,包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
所述数据解密步骤,包括:
使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥;
使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (20)

1.一种数据加密方法,其特征在于,包括在客户端执行数据加密步骤,所述数据加密步骤包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
2.根据权利要求1所述的数据加密方法,其特征在于,执行所述随机生成第一密钥的步骤之前,包括:
获取由服务器端生成的所述第二密钥,所述第二密钥存储在服务器端。
3.根据权利要求2所述的数据加密方法,其特征在于,所述获取由服务器端生成的所述第二密钥,包括:
获取由服务器端使用非对称加密算法RSA生成的所述第二密钥,所述第二密钥包括用于加密的公钥和用于解密的私钥。
4.根据权利要求1所述的数据加密方法,其特征在于,所述随机生成第一密钥,包括:
在客户端每次发起请求前,使用对称加密算法AES随机生成所述第一密钥;
将所述第一密钥缓存在客户端。
5.一种数据解密方法,其特征在于,包括在服务器端执行数据解密步骤,所述数据解密步骤包括:
使用第二密钥对第三密钥进行解密,得到第一密钥;
使用所述第一密钥对第一被加密数据进行解密,得到需加密数据;
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
6.根据权利要求5所述的数据解密方法,其特征在于,
所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;
所述第一密钥是使用对称加密算法AES随机生成的。
7.一种数据加解密方法,其特征在于,包括在客户端执行数据加密步骤和在服务器端执行数据解密步骤,其中,
所述数据加密步骤,包括:
随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥;
使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
所述数据解密步骤,包括:
使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥;
使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
8.根据权利要求7所述的数据加解密方法,其特征在于,执行所述使用所述第一密钥对所述被加密数据进行解密,得到所述需加密数据之后,包括:
接收服务器端返回的第二被加密数据,所述第二被加密数据是由服务器端对客户端发起的请求数据进行处理并将处理后的响应数据使用所述第一密钥进行加密后得到的;
使用所述第一密钥对所述被第二被加密数据进行解密。
9.根据权利要求7所述的数据加解密方法,其特征在于,执行所述随机生成第一密钥的步骤之前,包括:
获取由服务器端生成的所述第二密钥,所述第二密钥存储在服务器端。
10.根据权利要求9所述的数据加解密方法,其特征在于,所述获取由服务器端生成的所述第二密钥,包括:
获取由服务器端使用非对称加密算法RSA生成的所述第二密钥,所述第二密钥包括用于加密的公钥和用于解密的私钥。
11.根据权利要求7所述的数据加解密方法,其特征在于,所述随机生成第一密钥,包括:
在客户端每次发起请求前,使用对称加密算法AES随机生成所述第一密钥;
将所述第一密钥缓存在客户端。
12.一种数据加密装置,其特征在于,包括在客户端执行数据加密步骤的加密模块,所述加密模块用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
13.根据权利要求12所述的数据加密装置,其特征在于,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
14.一种数据解密装置,其特征在于,包括在服务器端执行数据解密步骤的解密模块,所述解密模块用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第二密钥是预先在服务器端生成的,所述第一密钥是在客户端发起请求前随机生成的,所述第三密钥是使用所述第二密钥对所述第一密钥进行加密获得的,所述第一被加密数据是使用所述第一密钥对所需加密数据进行加密获得的;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
15.根据权利要求14所述的数据解密装置,其特征在于,所述第二密钥是使用非对称加密算法RSA生成的,所述第二密钥包括用于加密的公钥和用于解密的私钥;所述第一密钥是使用对称加密算法AES随机生成的。
16.一种数据加解密装置,其特征在于,包括在客户端执行数据加密步骤的加密模块和/或在服务器端执行数据解密步骤的解密模块,其中,
加密模块,用于随机生成第一密钥,并将预先获取到服务器端的第二密钥对所述第一密钥进行加密,得到第三密钥,并使用所述第一密钥对需加密数据进行加密,得到第一被加密数据,并将所述第一被加密数据和所述第三密钥传输至服务器端;
解密模块,用于使用所述第二密钥对所述第三密钥进行解密,得到所述第一密钥,并使用所述第一密钥对所述第一被加密数据进行解密,得到所述需加密数据;
其中,所述第一密钥是使用对称加密算法生成,所述第二密钥是使用非对称加密算法生成。
17.根据权利要求16所述的数据加解密装置,其特征在于,还包括:
加解密模块,用于对客户端发起的请求数据进行处理,并将处理后的响应数据使用所述第一密钥进行加密,得到第二被加密数据,并将所述第二被加密数据返回给客户端,并使用所述第一密钥对所述被第二被加密数据进行解密。
18.根据权利要求16所述的数据加解密装置,其特征在于,还包括:
第二密钥生成模块,用于在服务器端生成所述第二密钥,并将所述第二密钥存储在服务器端。
19.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述数据加密方法的步骤。
20.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述数据加密方法的步骤。
CN202011598550.XA 2020-12-29 2020-12-29 一种数据加解密方法、装置、电子设备及存储介质 Pending CN113726725A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011598550.XA CN113726725A (zh) 2020-12-29 2020-12-29 一种数据加解密方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011598550.XA CN113726725A (zh) 2020-12-29 2020-12-29 一种数据加解密方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN113726725A true CN113726725A (zh) 2021-11-30

Family

ID=78672431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011598550.XA Pending CN113726725A (zh) 2020-12-29 2020-12-29 一种数据加解密方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113726725A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172719A (zh) * 2021-12-03 2022-03-11 杭州安恒信息技术股份有限公司 一种加解密方法、装置、设备及计算机可读存储介质
CN114338239A (zh) * 2022-03-03 2022-04-12 福建天晴数码有限公司 一种数据加密传输的方法及其***
CN114362934A (zh) * 2021-12-20 2022-04-15 卓尔智联(武汉)研究院有限公司 密钥生成方法、装置、电子设备及存储介质
CN114500037A (zh) * 2022-01-24 2022-05-13 深圳壹账通智能科技有限公司 可配置的接口加密方法、装置、计算机设备和存储介质
CN114978769A (zh) * 2022-07-19 2022-08-30 济南慧天云海信息技术有限公司 单向导入装置、方法、介质、设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219041A (zh) * 2014-09-23 2014-12-17 中国南方电网有限责任公司 一种适用于移动互联网的数据传输加密方法
CN104821944A (zh) * 2015-04-28 2015-08-05 广东小天才科技有限公司 一种混合加密的网络数据安全方法及***
CN104868996A (zh) * 2014-02-25 2015-08-26 中兴通讯股份有限公司 一种数据加密解密方法、装置以及终端
CN110535868A (zh) * 2019-09-05 2019-12-03 山东浪潮商用***有限公司 基于混合加密算法的数据传输方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104868996A (zh) * 2014-02-25 2015-08-26 中兴通讯股份有限公司 一种数据加密解密方法、装置以及终端
CN104219041A (zh) * 2014-09-23 2014-12-17 中国南方电网有限责任公司 一种适用于移动互联网的数据传输加密方法
CN104821944A (zh) * 2015-04-28 2015-08-05 广东小天才科技有限公司 一种混合加密的网络数据安全方法及***
CN110535868A (zh) * 2019-09-05 2019-12-03 山东浪潮商用***有限公司 基于混合加密算法的数据传输方法及***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴功宜 等: "《计算机网络技术教程 自顶向下分析与设计方法》", vol. 2, 机械工业出版社, pages: 342 - 342 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172719A (zh) * 2021-12-03 2022-03-11 杭州安恒信息技术股份有限公司 一种加解密方法、装置、设备及计算机可读存储介质
CN114362934A (zh) * 2021-12-20 2022-04-15 卓尔智联(武汉)研究院有限公司 密钥生成方法、装置、电子设备及存储介质
CN114500037A (zh) * 2022-01-24 2022-05-13 深圳壹账通智能科技有限公司 可配置的接口加密方法、装置、计算机设备和存储介质
CN114500037B (zh) * 2022-01-24 2023-02-28 深圳壹账通智能科技有限公司 可配置的接口加密方法、装置、计算机设备和存储介质
CN114338239A (zh) * 2022-03-03 2022-04-12 福建天晴数码有限公司 一种数据加密传输的方法及其***
CN114338239B (zh) * 2022-03-03 2023-09-01 福建天晴数码有限公司 一种数据加密传输的方法及其***
CN114978769A (zh) * 2022-07-19 2022-08-30 济南慧天云海信息技术有限公司 单向导入装置、方法、介质、设备
CN114978769B (zh) * 2022-07-19 2023-08-18 济南慧天云海信息技术有限公司 单向导入装置、方法、介质、设备

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
CN107294937B (zh) 基于网络通信的数据传输方法、客户端及服务器
Harba Secure data encryption through a combination of AES, RSA and HMAC
US9172529B2 (en) Hybrid encryption schemes
CN113726725A (zh) 一种数据加解密方法、装置、电子设备及存储介质
CN108347419A (zh) 数据传输方法和装置
US11316671B2 (en) Accelerated encryption and decryption of files with shared secret and method therefor
CN104023013A (zh) 数据传输方法、服务端和客户端
US20150229621A1 (en) One-time-pad data encryption in communication channels
US9130744B1 (en) Sending an encrypted key pair and a secret shared by two devices to a trusted intermediary
CN1820448B (zh) 用于使用三阶段加密来加密和验证消息的***和方法
KR20160020866A (ko) 폐쇄형 네트워크에서 암복호화 서비스 제공 시스템 및 방법
CN111404953A (zh) 一种消息加密方法、解密方法及相关装置、***
JP2020532177A (ja) データの高度なセキュリティ、高速暗号化および、伝送のためのコンピュータ実装システムおよび方法
EP2571192A1 (en) Hybrid encryption schemes
CN116248316A (zh) 文件加密方法、文件解密方法、装置及存储介质
CN112995210B (zh) 一种数据传输方法、装置及电子设备
KR101793528B1 (ko) 무인증서 공개키 암호 시스템
KR100388059B1 (ko) 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
CN114362912A (zh) 基于分布式密钥中心的标识密码生成方法、电子设备及介质
EP4123956A1 (en) Method for securely transferring data elements values
Abdelgader et al. Design of a secure file transfer system using hybrid encryption techniques
KR100864092B1 (ko) 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법
Parsovs Security of the proposed Mobile-ID document decryption feature
Zakir et al. A Survey on Various Encryption/Decryption Techniques Used in Mobile and Cloud Computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB02 Change of applicant information

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant before: Jingdong Digital Technology Holding Co., Ltd

CB02 Change of applicant information
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination