CN112671733A - 数据通信方法、密钥管理***、设备及存储介质 - Google Patents

数据通信方法、密钥管理***、设备及存储介质 Download PDF

Info

Publication number
CN112671733A
CN112671733A CN202011486200.4A CN202011486200A CN112671733A CN 112671733 A CN112671733 A CN 112671733A CN 202011486200 A CN202011486200 A CN 202011486200A CN 112671733 A CN112671733 A CN 112671733A
Authority
CN
China
Prior art keywords
data
key
request
response
ciphertext
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
CN202011486200.4A
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202011486200.4A priority Critical patent/CN112671733A/zh
Publication of CN112671733A publication Critical patent/CN112671733A/zh
Priority to PCT/CN2021/090448 priority patent/WO2022126972A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • 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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

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

数据通信方法、密钥管理***、设备及存储介质
技术领域
本发明涉及信息安全技术领域,尤其涉及一种数据通信方法、密钥管理***、设备及存储介质。
背景技术
目前互联网应用的客户端和服务端之间通常通过HTTP请求-API服务响应的方式进行数据通信,为防止数据通信过程中用户或服务端的明文数据被劫持与篡改,客户端与服务端会约定某种数据加密方式,以加密后的密文数据进行传输,但对于不同的用户通常会出现多个用户共用密钥进行加解密的情况,导致客户端和服务端之间的数据传输存在安全隐患。此外,由于当前加解密代码是采用侵入式方式嵌入至客户端或服务端中,使得当前***的非业务代码过多,代码侵入性强,导致业务***耦合度高。
发明内容
本发明实施例提供一种数据通信方法、密钥管理***、设备及存储介质,以解决现有的当前***的非业务代码过多,代码侵入性强,导致业务***耦合度高的问题。
一种数据通信方法,应用于密钥管理***,密钥管理***包括代理客户端和代理服务端;所述代理客户端与数据请求方连接,所述代理服务端与服务响应方连接;所述数据通信方法包括:
获取数据请求方对应的专用密钥;
当所述数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述专用密钥对请求报文数据进行加密,得到密文请求数据,以使所述数据请求方基于所述密文请求数据向所述服务响应方发起数据请求;
当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述专用密钥对所述密文请求数据进行解密,得到明文请求数据,以使所述服务响应方基于所述明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;
当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述专用密钥对响应报文数据进行加密,得到密文响应数据,以将所述密文响应数据返回至所述数据请求方;
当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述专用密钥对所述密文响应数据进行解密,得到明文响应数据,以完成数据通信。
一种密钥管理***,包括:
专用密钥获取模块,用于获取数据请求方对应的专用密钥;
第一加密模块,用于当所述数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述专用密钥对请求报文数据进行加密,得到密文请求数据,以使所述数据请求方基于所述密文请求数据向所述服务响应方发起数据请求;
第一解密模块,用于当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述专用密钥对所述密文请求数据进行解密,得到明文请求数据,以使所述服务响应方基于所述明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;
第二加密模块,用于当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述专用密钥对响应报文数据进行加密,得到密文响应数据,以将所述密文响应数据返回至所述数据请求方;
第二解密模块,用于当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述专用密钥对所述密文响应数据进行解密,得到明文响应数据,以完成数据通信。
一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述数据通信方法的步骤。
上述数据通信方法、密钥管理***、设备及存储介质中,通过针对不同的数据请求方生成对应的专用密钥,以在后续数据请求方与服务响应方进行数据通信时,采用该专用密钥进行加解密,以避免在数据通信时多用户共用密钥的情况出现,提高客户端(数据请求方)与服务端(服务响应方)数据通信的安全性。然后,在数据通信时,在数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述专用密钥对请求报文数据进行加密,或者对密文响应数据进行解密,触发代理服务端采用所述专用密钥对密文响应数据加密,或者对密文请求数据进行解密,以将客户端与服务端之间数据通信所涉及的密钥加解密抽离出原始的业务,作为单独的密钥管理***,设置在客户端和服务端之间,实现在客户端和服务端之间进行数据通信时,直接触发该密钥管理***中对应的代理客户端或代理服务端进行加解密的目的,减少原业务***中的非业务代码,降低业务***的耦合度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中数据通信方法的一应用环境示意图;
图2是本发明一实施例中数据通信方法的一流程图;
图3是本发明一实施例中数据通信方法的一流程图;
图4是图2中步骤S201的一具体流程图;
图5是本发明一实施例中数据通信方法的一流程图;
图6是本发明一实施例中数据通信方法的一流程图;
图7是本发明一实施例中数据通信方法的一流程图;
图8是本发明一实施例中数据通信方法的一流程图;
图9是本发明一实施例中密钥管理***的一示意图;
图10是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
该方法可应用于密钥管理***,所述密钥管理***包括代理客户端和代理服务端;所述代理客户端与数据请求方(即指安装在计算机设备上的客户端)连接,所述代理服务端与服务响应方(即服务端)连接。其中,计算机设备通过密钥管理***与服务器进行通信。计算机设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器来实现。
在一实施例中,如图2所示,提供一种数据通信方法,包括如下步骤:
S201:获取数据请求方对应的专用密钥。
具体地,本方法可应用在一种密钥管理***中,该密钥管理***设置在客户端和服务端之间,以在客户端和服务端之间进行数据通信时,直接触发该密钥管理***中对应的代理客户端或代理服务端进行加解密,减少非业务代码,降低业务***的耦合度;同时该密钥管理***可对用户的专用密钥进行统一管理,方便维护。其中,代理客户端用于连接数据请求方,以对数据请求方发送或接收的数据进行加解密。代理服务端用于连接服务响应方,以对服务响应方发送或接收的数据进行加解密。需要说明的是,该代理金额护端可通过插件实现,该代理服务端通过插件或***实现。
具体地,该密钥管理***可针对不同的数据请求方生成对应的专用密钥,以在后续数据请求方与服务响应方进行数据通信时,采用该专用密钥进行加解密,以避免在数据通信时多用户共用密钥的情况出现,提高客户端(数据请求方)与服务端(服务响应方)数据通信的安全性。
需要强调的是,为进一步保证上述专用密钥的私密和安全性,上述目标代码还可以存储于一区块链的节点中。
S202:当数据请求方向服务响应方发起数据请求时,触发代理客户端采用专用密钥对请求报文数据进行加密,得到密文请求数据,以使数据请求方基于密文请求数据向服务响应方发起数据请求。
其中,请求报文数据为本次数据请求对应的未经加密处理的报文数据。具体地,当数据请求方向服务响应方发起数据请求时,该代理客户端封对请求报文数据进行加密生成密文请求数据,再向API服务响应方发起数据请求。
S203:当服务响应方接收到数据请求时,触发代理服务端采用专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
其中,明文请求数据是指对密文请求数据解密后所得到的明文数据。响应报文数据是指未经加密处理的响应数据。具体地,当服务响应方接收到数据请求时,触发代理服务端采用专用密钥对密文请求数据进行解密,得到明文请求数据,以便服务响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
S204:当服务响应方响应数据请求时,触发代理服务端采用专用密钥对响应报文数据进行加密,得到密文响应数据,以将密文响应数据返回至数据请求方。
具体地,当服务响应方响应数据请求时,触发代理服务端采用专用密钥对响应报文数据进行加密,得到密文响应数据,以将密文响应数据返回至数据请求方。
S205:当数据请求方接收到密文响应数据时,触发代理客户端采用专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
其中,明文响应数据是指对密文响应数据进行解密后所得到的响应数据。具体地,当数据请求方接收服务响应方返回的密文响应数据时,触发代理客户端采用专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
作为一实施方式,以下结合本方法的密钥***对客户端和服务端之间数据通信的整体过程进行说明:首先该密钥***先按照预设的密钥生成规则生成数据请求方回应的专用密钥,当数据请当数据请求方向服务响应方发起数据请求时,在将该数据请求发送至服务响应方之前,触发代理客户端采用专用密钥对请求报文数据进行加密,得到密文请求数据,以基于密文请求数据向服务响应方发起数据请求;此时,服务响应方接收该数据请求,触发代理服务端采用专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务器响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;然后,在服务响应方响应数据请求之前,触发代理服务端采用专用密钥对响应报文数据进行加密,得到密文响应数据,并将密文响应数据返回至数据请求方;最后,在数据请求方接收到密文响应数据时,触发代理客户端采用专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
本实施例中,通过针对不同的数据请求方生成对应的专用密钥,以在后续数据请求方与服务响应方进行数据通信时,采用该专用密钥进行加解密,以避免在数据通信时多用户共用密钥的情况出现,提高客户端(数据请求方)与服务端(服务响应方)数据通信的安全性。然后,在数据通信时,在数据请求方向服务响应方发起数据请求时,触发代理客户端采用专用密钥对请求报文数据进行加密,或者对密文响应数据进行解密,触发代理服务端采用专用密钥对密文响应数据加密,或者对密文请求数据进行解密,以将客户端与服务端之间交互通信所涉及的密钥加解密抽离出原始的业务,作为单独的密钥管理***,设置在客户端和服务端之间,实现在客户端和服务端之间进行数据通信时,直接触发该密钥管理***中对应的代理客户端或代理服务端进行加解密的目的,减少原业务***中的非业务代码,降低业务***的耦合度。
在一实施例中,如图3所示,该方法还包括如下步骤:
S301:获取数据请求方对应的专用密钥。
具体地,步骤S301与步骤S201保持一致,为避免重复,此处不再赘述。进一步地,在生成数据请求方对应的专用密钥之前还可进一步判断数据请求方对应的用户ID是否为黑名单ID;若不为黑名单ID,则执行生成数据请求方对应的专用密钥的步骤。具体地,通过判断本次数据通信的数据请求方对应的用户ID是否在黑名单中,即黑名单ID,若在,则判定可能存在安全隐患,则不会生成该数据请求方对应的专用密钥。
S302:采用非对称加密算法生成数据请求方对应的非对称密钥;其中,非对称密钥包括公钥和私钥。
其中,非对称密钥用于对专用密钥进行加解密。该非对称密钥中的公钥用于代理客户端的加解密;私钥用于代理服务端的加解密。本实施例中的非对称加密算法包括但不限于RSA算法、DSA算法、ECC算法以及DH算法,此处不做限定。
可以理解地是,该专用密钥为对称密钥,即数据请求方与服务响应方的加解密所采用的密钥相同,当任何一端密钥泄露,则会出现安全隐患,且采用相同的专用密钥进行加解密,需要多次生成不同的专用密钥以规避风险,加重了密钥管理的负担。故本实施例中,为解决上述问题通过采用非对称密钥对专用密钥进行加密,使数据请求方与服务响应方的加解密采用不同的密钥,可有效提升专用密钥的安全性。
需要强调的是,为进一步保证上述非对称密钥中私钥的私密和安全性,上述目标代码还可以存储于一区块链的节点中。
S303:当数据请求方向服务响应方发起数据请求时,触发代理客户端采用公钥对专用密钥进行加密,得到第一密钥;以及,采用第一密钥对请求报文数据进行加密,得到密文请求数据,以基于密文请求数据向服务响应方发起数据请求。
S304:当服务响应方接收到数据请求时,触发代理服务端采用私钥对第一密钥进行解密;以及,触发代理服务端采用解密后的专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务器响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
S305:当服务响应方响应数据请求时,触发代理服务端采用私钥对专用密钥进行加密,得到第二密钥;以及,采用第二密钥对响应报文数据进行加密,得到密文响应数据,并将密文响应数据返回至数据请求方。
S306:当数据请求方接收到密文响应数据时,触发代理客户端采用公钥对第二密钥进行解密;以及,采用解密后的专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
作为另一实施方式,以下结合本实施例中的密钥***对客户端和服务端之间数据通信的整体过程进行说明:当数据请求方向服务响应方发起数据请求时,在将该数据请求发送至服务响应方之前,触发代理客户端采用公钥对专用密钥进行加密,以及采用专用密钥对请求报文数据进行加密,得到密文请求数据,以便基于密文请求数据向服务响应方发起数据请求;此时,服务响应方接收到数据请求,触发代理服务端采用私钥对加密后的专用密钥进行解密;以及,触发代理服务端采用解密后的专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务器响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;并在服务响应方响应数据请求之前,触发代理服务端采用私钥对专用密钥进行加密;以及,采用加密后的专用密钥对响应报文数据进行加密,得到密文响应数据,并将密文响应数据返回至数据请求方;最后,在数据请求方接收到密文响应数据时,触发代理客户端采用公钥对加密后的专用密钥进行解密;以及,采用解密后的专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
在一实施例中,如图4所示,步骤S201中,具体包括如下步骤:
S401:获取专用密钥的密钥长度。
其中,专用密钥的密钥长度包括但不限于128位或256位,可根据实际需求配置,此处不做限定。
S402:基于数据请求方对应的特定信息以及随机数,生成密钥长度的专用密钥。
其中,特定信息即指数据请求方对应的可用于证明用户身份的专属数据,例如用户ID、用户角色等等。具体地,通过将特定信息与随机数结合的方式,生成固定密钥长度的专用密钥,以使专用密钥与用户身份绑定,不同的用户所采用的密钥不同,实现多场景的密钥需求,提升***安全性。
在一实施例中,如图5所示,该方法还包括:
S501:配置专用密钥对应的第一密钥有效期以及非对称密钥的第二密钥有效期。
S502:根据第一密钥有效期,更新专用密钥;以及,根据第二密钥有效期,更新非对称密钥。
其中,第一密钥有效期与第二密钥有效期可相同或不同。具体地,当***当前日期为第一密钥有效期时,可重复执行步骤S302,以更新该数据请求方对应的专用密钥;当***当前日期为第二密钥有效期时,可重复执行步骤S202,以更新该数据请求方对应的非对称密钥。
在一实施例中,如图6所示,该方法还包括如下步骤:
S601:将第一密钥存储至第一缓存中。
S602:将第二密钥存储至第二缓存中。
其中,第一密钥指数据请求方对应的采用公钥加密后的专用密钥。第二密钥指服务响应方对应的采用私钥加密后的专用密钥。第一缓存用于存储数据请求方对应的第一密钥。第二缓存用于存储服务响应方对应的第二密钥。
S603:当数据请求方再次向服务响应方发起数据请求时,触发代理客户端采用缓存的第一密钥对请求报文数据进行加密,得到密文请求数据,以基于密文请求数据向服务响应方发起数据请求。
S604:当服务响应方接收到数据请求时,触发代理服务端采用私钥对第一密钥进行解密;以及,触发代理服务端采用解密后的专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务器响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
S605:当服务响应方响应数据请求时,触发代理服务端采用缓存的第二密钥对响应报文数据进行加密,得到密文响应数据,并将密文响应数据返回至数据请求方。
S606:当数据请求方接收到密文响应数据时,触发代理客户端采用公钥对第二密钥进行解密;以及,采用解密后的专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
可以理解地,在采用公钥对专用密钥进行加密得到第一密钥后,以及在采用私钥对专用密钥进行加密后得到第二密钥后,可将第一密钥或第二密钥缓存,以便后续该数据请求方与服务响应方进行通信时,可直接从缓存中读取第一密钥或第二密钥进行加密,无需重复执行专用密钥加密的步骤,提高***性能。
在一实施例中,如图7所示,步骤S505之后,该方法还包括如下步骤:
S701:当更新专用密钥时,清除第一缓存中的数据以及第二缓存中的数据;或者,
S702:当更新非对称密钥时,清除第一缓存中的数据以及第二缓存中数据。
具体地,在更新专用密钥或非对称密钥后,还需要同步更新第一缓存中的数据以及第二缓存中数据,以保证后续数据通信采用更新后的密钥进行加密或解密。
在一实施例中,如图8所示,该方法还包括如下步骤:
S801:对数据请求方更新后的非对称密钥进行去重检测。
S802:若数据请求方对应的非对称密钥与其他数据请求方对应的非对称密钥相同,则重复执行步骤S302。
具体地,为避免更新后的非对称密钥与***中存储的其他数据请求方对应的非对称密钥出现重复的情况,可在生成非对称密钥后,对更新后的非对称密钥进行去重处理,以进一步提升密钥安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种密钥管理***,该密钥管理***与上述实施例中数据通信方法一一对应。如图9所示,该密钥管理***包括专用密钥获取模块10、第一加密模块20、第一解密模块30、第二加密模块40和第二解密模块50。各功能模块详细说明如下:
专用密钥获取模块10,用于获取数据请求方对应的专用密钥。
第一加密模块20,用于当数据请求方向服务响应方发起数据请求时,触发代理客户端采用专用密钥对请求报文数据进行加密,得到密文请求数据,以使数据请求方基于密文请求数据向服务响应方发起数据请求。
第一解密模块30,用于当服务响应方接收到数据请求时,触发代理服务端采用专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
第二加密模块40,用于当服务响应方响应数据请求时,触发代理服务端采用专用密钥对响应报文数据进行加密,得到密文响应数据,以将密文响应数据返回至数据请求方。
第二解密模块50,用于当数据请求方接收到密文响应数据时,触发代理客户端采用专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
具体地,该密钥管理***还包括非对称密钥生成模块、第三加密模块、第三解密模块、第四加密模块以及第四解密模块。
非对称密钥生成模块,用于采用非对称加密算法生成数据请求方对应的非对称密钥;其中,非对称密钥包括公钥和私钥。
第三加密模块,用于当数据请求方向服务响应方发起数据请求时,触发代理客户端采用公钥对专用密钥进行加密,得到第一密钥;以及,采用第一密钥对请求报文数据进行加密,得到密文请求数据。
第三解密模块,用于当服务响应方接收到数据请求时,触发代理服务端采用私钥对第一密钥进行解密;以及,触发代理服务端采用解密后的专用密钥对密文请求数据进行解密,得到明文请求数据。
第四加密模块,用于当服务响应方响应数据请求时,触发代理服务端采用私钥对专用密钥进行加密,得到第二密钥;以及,采用第二密钥对响应报文数据进行加密,得到密文响应数据。
第四解密模块,用于当数据请求方接收到密文响应数据时,触发代理客户端采用公钥对第二密钥进行解密;以及,采用解密后的专用密钥对密文响应数据进行解密,得到明文响应数据。
具体地,专用密钥获取模块包括密钥长度获取单元和专用密钥生成单元。
密钥长度获取单元,用于获取专用密钥的密钥长度。
专用密钥生成单元,用于基于数据请求方对应的特定信息以及随机数,生成密钥长度的专用密钥。
具体地,该密钥管理***还包括第一存储模块、第二存储模块、第五加密模块、第五解密模块以及第六加密模块。
第一存储模块,用于将第一密钥存储至第一缓存中。
第二存储模块,用于将第二密钥存储至第二缓存中。
第五加密模块,用于当数据请求方再次向服务响应方发起数据请求时,触发代理客户端采用缓存的第一密钥对请求报文数据进行加密,得到密文请求数据,以基于密文请求数据向服务响应方发起数据请求。
第五解密模块,用于当服务响应方接收到数据请求时,触发代理服务端采用私钥对第一密钥进行解密;以及,触发代理服务端采用解密后的专用密钥对密文请求数据进行解密,得到明文请求数据,以使服务器响应方基于明文请求数据按照预设业务逻辑进行处理,得到响应报文数据。
第六加密模块,用于当服务响应方响应数据请求时,触发代理服务端采用缓存的第二密钥对响应报文数据进行加密,得到密文响应数据,并将密文响应数据返回至数据请求方。
第六解密模块,用于当数据请求方接收到密文响应数据时,触发代理客户端采用公钥对第二密钥进行解密;以及,采用解密后的专用密钥对密文响应数据进行解密,得到明文响应数据,以完成数据通信。
具体地,该密钥管理***还包括密钥有效期配置模块和密钥更新模块。
密钥有效期配置模块,用于配置专用密钥对应的第一密钥有效期以及非对称密钥的第二密钥有效期。
密钥更新模块,用于根据第一密钥有效期,更新专用密钥;以及,根据第二密钥有效期,更新非对称密钥。
具体地,该密钥管理***还包括第一更新模块和第二更新模块。
第一更新模块,用于当更新专用密钥时,清除第一缓存中的数据以及第二缓存中的数据;或者,
第二更新模块,用于当更新非对称密钥时,清除第一缓存中的数据以及第二缓存中数据。
具体地,该密钥管理***还包括去重检测模块和去重模块。
去重检测模块,用于对数据请求方更新后的非对称密钥进行去重检测。
去重模块,用于若数据请求方对应的非对称密钥与其他数据请求方对应的非对称密钥相同,则重复执行采用非对称加密算法生成数据请求方对应的非对称密钥的步骤。
关于密钥管理***的具体限定可以参见上文中对于数据通信方法的限定,在此不再赘述。上述密钥管理***中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括计算机存储介质、内存储器。该计算机存储介质存储有操作***、计算机程序和数据库。该内存储器为计算机存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行数据通信方法过程中生成或获取的数据,如专用密钥。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据通信方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的数据通信方法的步骤,例如图2所示的步骤S201-S205,或者图3至图8中所示的步骤。或者,处理器执行计算机程序时实现密钥管理***这一实施例中的各模块/单元的功能,例如图9所示的各模块/单元的功能,为避免重复,这里不再赘述。
在一实施例中,提供一计算机存储介质,该计算机存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中数据通信方法的步骤,例如图2所示的步骤S201-S205,或者图3至图8中所示的步骤,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述密钥管理***这一实施例中的各模块/单元的功能,例如图9所示的各模块/单元的功能,为避免重复,这里不再赘述。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将密钥管理***的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上实施例仅用以说明本发明的技术方案,而非对其限制,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据通信方法,应用于密钥管理***,其特征在于,所述密钥管理***包括代理客户端和代理服务端;所述代理客户端与数据请求方连接,所述代理服务端与服务响应方连接;所述数据通信方法包括:
获取数据请求方对应的专用密钥;
当所述数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述专用密钥对请求报文数据进行加密,得到密文请求数据,以使所述数据请求方基于所述密文请求数据向所述服务响应方发起数据请求;
当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述专用密钥对所述密文请求数据进行解密,得到明文请求数据,以使所述服务响应方基于所述明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;
当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述专用密钥对响应报文数据进行加密,得到密文响应数据,以将所述密文响应数据返回至所述数据请求方;
当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述专用密钥对所述密文响应数据进行解密,得到明文响应数据,以完成数据通信。
2.如权利要求1所述数据通信方法,其特征在于,在所述获取数据请求方对应的专用密钥之后,所述数据通信方法还包括:
采用非对称加密算法生成所述数据请求方对应的非对称密钥;其中,所述非对称密钥包括公钥和私钥;
所述当所述数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述专用密钥对请求报文数据进行加密,得到密文请求数据,包括:
当数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述公钥对所述专用密钥进行加密,得到第一密钥;以及,采用所述第一密钥对请求报文数据进行加密,得到密文请求数据;
所述当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述专用密钥对所述密文请求数据进行解密,得到明文请求数据,包括:
当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述私钥对所述第一密钥进行解密;以及,触发所述代理服务端采用所述解密后的专用密钥对所述密文请求数据进行解密,得到明文请求数据;
所述当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述专用密钥对响应报文数据进行加密,得到密文响应数据,包括:
当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述私钥对所述专用密钥进行加密,得到第二密钥;以及,采用所述第二密钥对所述响应报文数据进行加密,得到密文响应数据;
所述当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述专用密钥对所述密文响应数据进行解密,得到明文响应数据,包括:
当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述公钥对所述第二密钥进行解密;以及,采用所述解密后的专用密钥对所述密文响应数据进行解密,得到明文响应数据。
3.如权利要求1所述数据通信方法,其特征在于,所述获取数据请求方对应的专用密钥,包括;
获取所述专用密钥的密钥长度;
基于所述数据请求方对应的特定信息以及随机数,生成所述密钥长度的专用密钥。
4.如权利要求2所述数据通信方法,其特征在于,在所述当数据请求方向服务响应方发起数据请求时,触发所述代理客户端采用所述公钥对所述专用密钥进行加密,得到第一密钥之后,所述数据通信方法还包括:
将所述第一密钥存储至第一缓存中;
在所述当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述私钥对所述专用密钥进行加密,得到第二密钥之后,所述数据通信方法还包括:
将所述第二密钥存储至第二缓存中;
在完成所述数据通信之后,所述数据通信方法还包括:
当所述数据请求方再次向服务响应方发起数据请求时,触发所述代理客户端采用缓存的所述第一密钥对请求报文数据进行加密,得到密文请求数据,以基于所述密文请求数据向所述服务响应方发起数据请求;
当所述服务响应方接收到所述数据请求时,触发所述代理服务端采用所述私钥对所述第一密钥进行解密;以及,触发所述代理服务端采用所述解密后的专用密钥对所述密文请求数据进行解密,得到明文请求数据,以使所述服务器响应方基于所述明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;
当所述服务响应方响应所述数据请求时,触发所述代理服务端采用缓存的所述第二密钥对所述响应报文数据进行加密,得到密文响应数据,并将所述密文响应数据返回至所述数据请求方;
当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述公钥对所述第二密钥进行解密;以及,采用所述解密后的专用密钥对所述密文响应数据进行解密,得到明文响应数据,以完成数据通信。
5.如权利要求4所述数据通信方法,其特征在于,在所述采用非对称加密算法生成所述数据请求方对应的非对称密钥之后,所述数据通信方法还包括:
配置所述专用密钥对应的第一密钥有效期以及所述非对称密钥的第二密钥有效期;
在完成所述数据通信之后,所述数据通信方法还包括;
根据所述第一密钥有效期,更新所述专用密钥;以及,根据所述第二密钥有效期,更新所述非对称密钥。
6.如权利要求5所述数据通信方法,其特征在于,在所根据所述第一密钥有效期,更新所述专用密钥;以及,根据所述第二密钥有效期,更新所述非对称密钥之后,所述数据通信方法还包括:
当更新所述专用密钥时,清除所述第一缓存中的数据以及所述第二缓存中的数据;或者,
当更新所述非对称密钥时,清除所述第一缓存中的数据以及所述第二缓存中数据。
7.如权利要求4所述数据通信方法,其特征在于,在所述将所述第二密钥存储至第二缓存中之后,所述数据通信方法还包括:
对所述数据请求方更新后的非对称密钥进行去重检测;
若所述数据请求方对应的非对称密钥与其他数据请求方对应的非对称密钥相同,则重复执行所述采用非对称加密算法生成所述数据请求方对应的非对称密钥的步骤。
8.一种密钥管理***,其特征在于,包括:
专用密钥获取模块,用于获取数据请求方对应的专用密钥;
第一加密模块,用于当所述数据请求方向服务响应方发起数据请求时,触发代理客户端采用所述专用密钥对请求报文数据进行加密,得到密文请求数据,以使所述数据请求方基于所述密文请求数据向所述服务响应方发起数据请求;
第一解密模块,用于当所述服务响应方接收到所述数据请求时,触发代理服务端采用所述专用密钥对所述密文请求数据进行解密,得到明文请求数据,以使所述服务响应方基于所述明文请求数据按照预设业务逻辑进行处理,得到响应报文数据;
第二加密模块,用于当所述服务响应方响应所述数据请求时,触发所述代理服务端采用所述专用密钥对响应报文数据进行加密,得到密文响应数据,以将所述密文响应数据返回至所述数据请求方;
第二解密模块,用于当所述数据请求方接收到所述密文响应数据时,触发所述代理客户端采用所述专用密钥对所述密文响应数据进行解密,得到明文响应数据,以完成数据通信。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述数据通信方法的步骤。
10.一种计算机存储介质,所述计算机存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据通信方法的步骤。
CN202011486200.4A 2020-12-16 2020-12-16 数据通信方法、密钥管理***、设备及存储介质 Pending CN112671733A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011486200.4A CN112671733A (zh) 2020-12-16 2020-12-16 数据通信方法、密钥管理***、设备及存储介质
PCT/CN2021/090448 WO2022126972A1 (zh) 2020-12-16 2021-04-28 数据通信方法、密钥管理***、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011486200.4A CN112671733A (zh) 2020-12-16 2020-12-16 数据通信方法、密钥管理***、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112671733A true CN112671733A (zh) 2021-04-16

Family

ID=75405570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011486200.4A Pending CN112671733A (zh) 2020-12-16 2020-12-16 数据通信方法、密钥管理***、设备及存储介质

Country Status (2)

Country Link
CN (1) CN112671733A (zh)
WO (1) WO2022126972A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113127900A (zh) * 2021-04-19 2021-07-16 上海同态信息科技有限责任公司 一种基于同态构型加密的隐私计算软硬件服务模式
CN114095165A (zh) * 2021-11-22 2022-02-25 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
WO2022126972A1 (zh) * 2020-12-16 2022-06-23 平安科技(深圳)有限公司 数据通信方法、密钥管理***、设备及存储介质
CN115134152A (zh) * 2022-06-29 2022-09-30 北京天融信网络安全技术有限公司 数据传输方法、数据传输装置、存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141244A (zh) * 2006-09-08 2008-03-12 飞塔信息科技(北京)有限公司 网络加密数据病毒检测和消除***和代理服务器及方法
CN202679412U (zh) * 2012-07-12 2013-01-16 郑州信大信安科技有限公司 数据传输加解密***
CN110635912A (zh) * 2019-08-20 2019-12-31 北京思源理想控股集团有限公司 数据处理方法及装置
CN111447060A (zh) * 2020-04-01 2020-07-24 中电万维信息技术有限责任公司 一种基于代理重加密的电子文档分发方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8010670B2 (en) * 2003-12-23 2011-08-30 Slipstream Data Inc. Meta-data based method for local cache utilization
CN101299753B (zh) * 2008-06-17 2012-12-05 浙江大学 具有web服务安全控制机制的代理服务器
CN101388770B (zh) * 2008-10-20 2012-08-22 华为技术有限公司 获取动态主机配置协议密钥的方法、服务器及客户端装置
CN107222473B (zh) * 2017-05-26 2020-07-10 深圳易嘉恩科技有限公司 在传输层对api服务数据进行加解密的方法及***
CN112671733A (zh) * 2020-12-16 2021-04-16 平安科技(深圳)有限公司 数据通信方法、密钥管理***、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141244A (zh) * 2006-09-08 2008-03-12 飞塔信息科技(北京)有限公司 网络加密数据病毒检测和消除***和代理服务器及方法
CN202679412U (zh) * 2012-07-12 2013-01-16 郑州信大信安科技有限公司 数据传输加解密***
CN110635912A (zh) * 2019-08-20 2019-12-31 北京思源理想控股集团有限公司 数据处理方法及装置
CN111447060A (zh) * 2020-04-01 2020-07-24 中电万维信息技术有限责任公司 一种基于代理重加密的电子文档分发方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
喻小光等: "一种基于SOCKS5的Web安全代理技术", 《华侨大学学报(自然科学版)》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022126972A1 (zh) * 2020-12-16 2022-06-23 平安科技(深圳)有限公司 数据通信方法、密钥管理***、设备及存储介质
CN113127900A (zh) * 2021-04-19 2021-07-16 上海同态信息科技有限责任公司 一种基于同态构型加密的隐私计算软硬件服务模式
CN114095165A (zh) * 2021-11-22 2022-02-25 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
CN114095165B (zh) * 2021-11-22 2024-04-26 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
CN115134152A (zh) * 2022-06-29 2022-09-30 北京天融信网络安全技术有限公司 数据传输方法、数据传输装置、存储介质及电子设备

Also Published As

Publication number Publication date
WO2022126972A1 (zh) 2022-06-23

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
CN112671733A (zh) 数据通信方法、密钥管理***、设备及存储介质
WO2021120871A1 (zh) 认证密钥协商方法、装置、存储介质及设备
CN113691502B (zh) 通信方法、装置、网关服务器、客户端及存储介质
CN109034796B (zh) 基于联盟链的交易监管方法、电子装置及可读存储介质
EP3598714A1 (en) Method, device, and system for encrypting secret key
US11831753B2 (en) Secure distributed key management system
CN111245597A (zh) 密钥管理方法、***及设备
US10887085B2 (en) System and method for controlling usage of cryptographic keys
CN114024710A (zh) 一种数据传输方法、装置、***及设备
CN110690956B (zh) 双向认证方法及***、服务器和终端
CN111294203B (zh) 信息传输方法
CN108199847B (zh) 数字安全处理方法、计算机设备及存储介质
WO2020252611A1 (zh) 一种数据交互方法及相关设备
CN113239046A (zh) 数据查询方法、***、计算机设备及存储介质
US10063655B2 (en) Information processing method, trusted server, and cloud server
CN112953974B (zh) 数据碰撞方法、装置、设备及计算机可读存储介质
WO2023051337A1 (zh) 数据处理方法、装置、设备及存储介质
CN113438205A (zh) 区块链数据访问控制方法、节点以及***
CN112966287A (zh) 获取用户数据的方法、***、设备和计算机可读介质
CN113726772B (zh) 实现在线问诊会话的方法、装置、设备及存储介质
CN116155491B (zh) 安全芯片的对称密钥同步方法及安全芯片装置
CN112491933A (zh) 一种局域网加密通信方法和存储介质
CN112637233B (zh) 一种基于多用户数据的安全求均值方法
CN111064753B (zh) 一种基于One-Time Pad的密码管理器实现方法

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20210416