CN111327617B - 数据传输方法、装置、服务器及存储介质 - Google Patents

数据传输方法、装置、服务器及存储介质 Download PDF

Info

Publication number
CN111327617B
CN111327617B CN202010117001.XA CN202010117001A CN111327617B CN 111327617 B CN111327617 B CN 111327617B CN 202010117001 A CN202010117001 A CN 202010117001A CN 111327617 B CN111327617 B CN 111327617B
Authority
CN
China
Prior art keywords
data
data processing
processing tool
key
symmetric 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.)
Active
Application number
CN202010117001.XA
Other languages
English (en)
Other versions
CN111327617A (zh
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.)
Beijing Tongbang Zhuoyi Technology Co ltd
Original Assignee
Beijing Tongbang Zhuoyi Technology 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 Beijing Tongbang Zhuoyi Technology Co ltd filed Critical Beijing Tongbang Zhuoyi Technology Co ltd
Priority to CN202010117001.XA priority Critical patent/CN111327617B/zh
Publication of CN111327617A publication Critical patent/CN111327617A/zh
Application granted granted Critical
Publication of CN111327617B publication Critical patent/CN111327617B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供了一种数据传输方法、装置、服务器及存储介质,所述方法包括:接收客户端发送的第二数据以及第三数据,其中,第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于第一数据处理工具中的公钥对所述对称密钥进行加密得到;调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。如此无需请求服务端生成的公钥,避免数据解密失败,提高数据解密的成功率。

Description

数据传输方法、装置、服务器及存储介质
技术领域
本发明涉及通信技术领域,尤其涉及一种数据传输方法、装置、服务器及存储介质。
背景技术
随着通讯技术的不断发展,客户端与服务端之间的数据传输越来越频繁,为了提高数据传输的安全性,通常需要对待传输的数据进行加密。例如,在支付交易场景中,客户端与服务端之间传输用户敏感数据(比如银行卡账号、额度、借还请求记录、个人身份信息等数据),需要对用户敏感信息进行加密。
相关技术中,由服务端生成一对公钥和私钥,客户端请求服务端生成的公钥。在数据上行传输过程中,客户端基于服务端产生的公钥对待传输的数据进行加密生成密文数据,并通过https协议传输至服务端,服务端基于自身生成的私钥对密文数据进行解密得到待传输的数据。由于客户端需要请求服务端生成的公钥,有可能服务端生成的公钥被攻击者拦截进行篡改,导致数据解密失败,降低数据解密的成功率。
发明内容
本发明实施例的目的在于提供一种数据传输方法、装置、服务器及存储介质,以实现避免数据解密失败以及提高数据解密的成功率的有益效果。
具体技术方案如下:
在本发明实施例的第一方面,首先提供了一种数据传输方法,所述方法包括:
接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
在一个可选的实施方式中,所述方法还包括:
接收服务端返回的第四数据,其中,所述第四数据为服务端针对所述第一数据进行处理得到的响应数据;调用第二数据处理工具,基于所述对称密钥对所述第四数据进行加密得到第五数据;将所述第五数据发送至客户端,以使客户端调用第一数据处理工具,基于所述对称密钥对所述第五数据进行解密得到所述第四数据。
在一个可选的实施方式中,所述调用第一数据处理工具生成对称密钥,包括:
调用第一数据处理工具随机生成对称密钥;
或者,
调用第一数据处理工具随机生成字符串,与预设字符串进行拼接生成对称密钥。
在一个可选的实施方式中,所述基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,包括:
基于内置于所述第一数据处理工具程序逻辑代码中的公钥对所述对称密钥进行加密得到;
或者,
基于内置于所述第一数据处理工具配置文件中的公钥对所述对称密钥进行加密得到。
在一个可选的实施方式中,所述基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥,包括:
基于内置于所述第二数据处理工具程序逻辑代码中的私钥对所述第三数据进行解密得到所述对称密钥;
或者,
基于内置于所述第二数据处理工具配置文件中的私钥对所述第三数据进行解密得到所述对称密钥。
在一个可选的实施方式中,所述第一数据处理工具具体通过以下方式得到:
获取预设数据处理工程,并接收与所述预设数据处理工程对应的版本标识;调用密钥生成工具生成目标公钥与目标私钥;将所述目标公钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第一工具标识,根据所述第一工具标识对经过版本以及公钥更新的所述预设数据处理工程进行处理,生成第一数据处理工具。
在一个可选的实施方式中,所述第二数据处理工具具体通过以下方式得到:
将所述目标私钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第二工具标识,根据所述第二工具标识将经过版本以及私钥更新的所述预设数据处理工程进行处理,生成第二数据处理工具。
在本发明实施例的第二方面,还提供了一种数据传输装置,所述装置包括:
数据接收模块,用于接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;
数据解密模块,用于调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
数据发送模块,用于调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
在本发明实施例的第三方面,还提供了一种服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一所述的数据传输方法。
在本发明实施例的四方面,还提供了一种存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面中任一所述的数据传输方法。
在本发明实施例的第五方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面中任一所述的数据传输方法。
本发明实施例提供的技术方案,通过接收客户端发送的第二数据以及第三数据,其中第二数据由客户端调用第一数据处理工具生成对称密钥,基于对称密钥针对第一数据进行加密得到,第三数据由客户端调用第一数据处理工具,基于第一数据处理工具中的公钥对对称密钥进行加密得到,调用第二数据处理工具,基于第二数据处理工具中的私钥对第三数据进行解密得到对称密钥,调用第二数据处理工具,基于对称密钥对第二数据进行解密得到第一数据,并发送至服务端。如此基于第一数据处理工具中的公钥对对称密钥进行加密处理,无需请求服务端生成的公钥,避免数据解密失败,提高数据解密的成功率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中示出的一种数据传输方法的实施流程示意图;
图2为本发明实施例中示出的另一种数据传输方法的实施流程示意图;
图3为本发明实施例中示出的一种crypto工程目录结构的示意图;
图4为本发明实施例中示出的一种得到第一数据处理工具以及第二数据处理工具的实施流程示意图;
图5为本发明实施例中示出的一种数据传输装置的结构示意图;
图6为本发明实施例中示出的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,为了无需请求服务端生成的公钥,避免数据解密失败,提高数据解密的成功率,通过接收客户端发送的第二数据以及第三数据,其中第二数据由客户端调用第一数据处理工具生成对称密钥,基于对称密钥针对第一数据进行加密得到,第三数据由客户端调用第一数据处理工具,基于第一数据处理工具中的公钥对对称密钥进行加密得到,调用第二数据处理工具,基于第二数据处理工具中的私钥对第三数据进行解密得到对称密钥,调用第二数据处理工具,基于对称密钥对第二数据进行解密得到第一数据,并发送至服务端。
如图1所示,为本发明实施例提供的一种数据传输方法的实施流程示意图,该方法具体可以包括以下步骤:
S101,客户端获取第一数据;
在本发明实施例中,客户端可以是APP(Application、应用程序)客户端,可以是浏览器客户端,本发明实施例对此不作限定,客户端可以获取第一数据。
其中,对于第一数据,可以为用户输入的明文数据,例如银行卡账号、额度、借还请求记录、个人身份信息等用户敏感数据,对于第一数据的数据类型,本发明实施例对此不作限定,可以是当前任意类型的明文数据。
S102,客户端调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到第二数据;
在本发明实施例中,对于第一数据处理工具以及第二数据处理工具,例如可以是crypto-client和crypto-server两个相同版本号的NPM包;其中,对于crypto-client,用于保存公钥以及与客户端相关的加解密接口,而crypto-server用于保存与crypto-client中公钥相匹配的私钥以及代理服务端(例如node服务端)相关的加解密接口。
可以预先利用NPM指令将crypto-client安装于客户端代码(例如web静态工程、小程序等)根目录下,利用利用NPM指令将crypto-server安装于node服务端代码根目录下,便于后续使用。
本发明实施例客户端可以调用上述第一数据处理工具生成对称密钥,具体地,可以是调用上述第一数据处理工具随机生成对称密钥。例如,客户端调用上述第一数据处理工具随机生成对称密钥Key。
另外,本发明实施例客户端可以调用上述第一数据处理工具随机生成字符串,与预设字符串进行拼接生成对称密钥,如此对于对称密钥可以完全随机生成或者部分随机生成,本发明实施例对此不作限定。
上述第一数据处理工具基于上述生成的对称密钥,针对上述第一数据进行加密得到第二数据。其中,在对上述第一数据进行加密的过程中,可以采用AES(AdvancedEncryption Standard,高级加密标准)等对称加密算法,本发明实施例对此不作限定。
例如,对于第一数据dataReq,上述第一数据处理工具使用对称密钥Key,基于AES对称加密算法进行加密得到第二数据dataReqCipher,第二数据为密文形式。
S103,客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到第三数据;
在对上述第一数据进行加密得到第二数据之后,客户端可以调用上述第一数据处理工具,基于上述第一数据处理工具中的公钥对对称密钥进行加密得到第三数据,第三数据为密文形式。
具体地,客户端可以调用上述第一数据处理工具,基于内置于上述第一数据处理工具程序逻辑代码中的公钥对对称密钥进行加密得到第三数据。其中,在基于内置于上述第一数据处理工具程序逻辑代码中的公钥对对称密钥进行加密的过程中,可以采用RSA等非对称加密算法,本发明实施例对此不作限定。
如此直接使用内置在程序逻辑代码中的公钥来加密随机生成的对称密钥,可以达到如下有益效果:
1、公钥代码级内置,避免向服务端请求并存储公钥的流程,不仅降低了数据传输的耗时,而且还从源头避免了服务端生成的公钥被攻击者拦截进行篡改的风险;
2、线上的代码(例如JavaScript代码)都会经过编译压缩等处理,即便截获了代码,也必须依靠专业的反编译密码,才可能定位到哪一段代码定义了公钥,提高了攻击者的成本;
3、即便攻击者获知了公钥,但非对称解密需要的私钥保存在node服务端,因此攻击者无法通过非对称解密随机生成的对称密钥,进而无法解密第一数据。
另外,客户端可以调用上述第一数据处理工具,基于内置于所述第一数据处理工具配置文件中的公钥对所述对称密钥进行加密得到第三数据。例如,以第一数据处理工具配置文件中的某段字符串为公钥,对对称密钥进行加密得到第三数据。
如此客户端通过调用上述第一数据处理工具,进行混合加密可以得到密文形式的第二数据以及第三数据。
S104,客户端将所述第二数据以及所述第三数据发送至代理服务端;
S105,代理服务端接收客户端发送的第二数据以及第三数据;
经过上述步骤,在客户端这一侧,通过调用上述第一数据处理工具,进行混合加密可以得到密文形式的第二数据以及第三数据,将第二数据以及第三数据发送至代理服务端(例如node服务端);在代理服务端(例如node服务端)这一侧,可以接收客户端发送的第二数据以及第三数据。
例如,对于第二数据dataReqCipher,第三数据keySym,客户端将其发送至node服务端,node服务端可以接收第二数据dataReqCipher,以及第三数据keySym。
S106,代理服务端调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
对于代理服务端,可以获取到第二数据以及第三数据,可以调用第二数据处理工具,基于第二数据处理工具中的私钥对第三数据进行解密得到对称密钥。
具体地,本发明实施例代理服务端可以调用第二数据处理工具,基于内置于第二数据处理工具程序逻辑代码中的私钥对第三数据进行解密得到对称密钥。其中,在基于内置于第二数据处理工具代码中的私钥对第三数据进行解密的过程中,可以采用RSA等非对称加密算法,本发明实施例对此不作限定。
例如,node服务端可以调用上述crypto-server,基于内置于crypto-server代码中的私钥keyPri对第三数据进行解密得到对称密钥Key,其中在基于内置于crypto-server代码中的私钥keyPri对第三数据进行解密的过程中,采用RSA等非对称加密算法。
另外,本发明实施例代理服务端可以调用第二数据处理工具,基于内置于第二数据处理工具配置文件中的私钥对所述第三数据进行解密得到所述对称密钥。例如,以第一数据处理工具配置文件中的某段字符串为私钥,对第三数据进行解密得到所述对称密钥。
S107,代理服务端调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
经过上述步骤,代理服务端可以获取对称密钥,可以调用上述第二数据处理工具,基于上述对称密钥对第二数据进行解密得到第一数据。其中,在基于上述对称密钥对第二数据进行解密的过程中,可以采用AES等对称加密算法,本发明实施例对此不作限定。
经过上述步骤,代理服务端可以获取第一数据,可以将该第一数据发送至服务端,如此服务端可以得到明文形式的第一数据。
通过上述对本发明实施例提供的技术方案的描述,通过接收客户端发送的第二数据以及第三数据,其中第二数据由客户端调用第一数据处理工具生成对称密钥,基于对称密钥针对第一数据进行加密得到,第三数据由客户端调用第一数据处理工具,基于第一数据处理工具中的公钥对对称密钥进行加密得到,调用第二数据处理工具,基于第二数据处理工具中的私钥对第三数据进行解密得到对称密钥,调用第二数据处理工具,基于对称密钥对第二数据进行解密得到第一数据,并发送至服务端。如此无需请求服务端生成的公钥,避免数据解密失败,提高数据解密的成功率。
如图2所示,为本发明实施例提供的另一种数据传输方法的实施流程示意图,该方法具体可以包括以下步骤:
S201,客户端获取第一数据;
在本发明实施例中,本步骤与上述步骤S101类似,本发明实施例在此不再一一赘述。
S202,客户端调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到第二数据;
在本发明实施例中,本步骤与上述步骤S102类似,本发明实施例在此不再一一赘述。
S203,客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到第三数据;
在本发明实施例中,本步骤与上述步骤S103类似,本发明实施例在此不再一一赘述。
S204,客户端将所述第二数据以及所述第三数据发送至代理服务端;
在本发明实施例中,本步骤与上述步骤S104类似,本发明实施例在此不再一一赘述。
S205,代理服务端接收客户端发送的第二数据以及第三数据;
在本发明实施例中,本步骤与上述步骤S105类似,本发明实施例在此不再一一赘述。
S206,代理服务端调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
在本发明实施例中,本步骤与上述步骤S106类似,本发明实施例在此不再一一赘述。
S207,代理服务端调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端;
在本发明实施例中,本步骤与上述步骤S107类似,本发明实施例在此不再一一赘述。
S208,代理服务端接收服务端返回的第四数据,其中,所述第四数据为服务端针对所述第一数据进行处理得到的响应数据;
在本发明实施例中,代理服务端将第一数据发送至服务端,服务端对该第一数据进行处理,并生成响应数据,即第四数据,代理服务端可以接收服务端根据第一数据返回的第四数据。
例如,node服务端将第一数据发送至java服务端,java服务端对第一数据进行存储,返回存储成功的响应数据,即第四数据,node服务端可以接收该第四数据。
S209,代理服务端调用第二数据处理工具,基于所述对称密钥对所述第四数据进行加密得到第五数据,将所述第五数据发送至客户端;
对于第四数据,代理服务端可以调用第二数据处理工具,基于上述对称密钥对第四数据进行加密得到第五数据,并将第五数据发送至客户端。
对于第四数据,在下行传输过程中,考虑到非对称加密算法相对于对称加密算法而言,需要消耗较多的时间和资源,因此基于上述对称密钥对第四数据进行加密即可。
S210客户端调用第一数据处理工具,基于所述对称密钥对所述第五数据进行解密得到所述第四数据。
客户端接收代理服务端返回的密文形式的第五数据,基于上述对称密钥对第五数据进行解密得到第四数据,如此客户端可以获取服务端针对第一数据进行处理返回的第四数据。
在本发明实施例中,对于第一数据处理工具以及第二数据处理工具,以crypto-client和crypto-server两个相同版本号的NPM包为例,可以基于如图3所示的crypto工程目录结构实现。
基于如图3所示的crypto工程目录结构,如图4所示,为本发明实施例提供的一种得到第一数据处理工具以及第二数据处理工具的实施流程示意图,可以包括以下步骤:
S401,获取预设数据处理工程,并接收与所述预设数据处理工程对应的版本标识;
在本发明实施例中,可以获取预设数据处理工程,该预设数据处理工程可以是crypto工程,该crypto工程目录结构如图3所示,本发明实施例对此不作限定。
针对该预设数据处理工程,可以由用户指定版本,即进行版本的迭代,因此本发明实施例可以接收与预设数据处理工程对应的版本标识。
S402,调用密钥生成工具生成目标公钥与目标私钥;
当需要对公钥以及私钥进行更新时,本发明实施例可以调用密钥生成工具生成目标公钥与目标私钥,例如可以使用openssl等开源工具生成一对string类型的目标公钥与目标私钥。
S403,将所述目标公钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;
将上述目标公钥更新至上述预设数据处理工程中,例如将上述生成的目标公钥替换如图3所示的crypto工程目录结构rsa-key.js中原来对应的公钥变量。
另外,根据上述版本标识更新上述预设数据处理工程的版本,如此进行版本的迭代。
S404,获取第一工具标识,根据所述第一工具标识对经过版本以及公钥更新的所述预设数据处理工程进行处理,生成第一数据处理工具;
获取第一工具标识,例如第一工具标识可以是client,即设置环境变量NODE_PACK=client;
根据第一工具标识对经过版本以及公钥更新的预设数据处理工程进行处理,生成第一数据处理工具,例如根据环境变量NODE_PACK=client加载client.js中的加解密接口,并利用webpack所提供的tree shaking技术来实现最小化集打包,生成crypto-client。
S405,将所述目标私钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;
在生成第一数据处理工具之后,可以将上述目标私钥更新至上述预设数据处理工程中,例如将上述生成的目标私钥替换如图3所示的crypto工程目录结构rsa-key.js中原来对应的私钥变量。
另外,根据上述版本标识更新上述预设数据处理工程的版本,如此进行版本的迭代。
S406,获取第二工具标识,根据所述第二工具标识将经过版本以及私钥更新的所述预设数据处理工程进行处理,生成第二数据处理工具。
获取第二工具标识,例如第二工具标识可以是server,即设置环境变量NODE_PACK=server;
根据第二工具标识对经过版本以及私钥更新的预设数据处理工程进行处理,生成第二数据处理工具,例如根据环境变量NODE_PACK=server加载server.js中的加解密接口,并利用webpack所提供的tree shaking技术来实现最小化集打包,生成crypto-server。
如此通过上述步骤可以生成(或者更新)两个版本号相同的第一数据处理工具以及第二数据处理工具。
与上述方法实施例相对应,本发明实施例还提供了一种数据传输装置,如图5所示,该装置可以包括:数据接收模块510、数据解密模块520、数据发送模块530。
数据接收模块510,用于接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;
数据解密模块520,用于调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
数据发送模块530,用于调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
在本发明实施例的具体实施方式中,所述装置还包括:
数据加密模块540,用于接收服务端返回的第四数据,其中,所述第四数据为服务端针对所述第一数据进行处理得到的响应数据;调用第二数据处理工具,基于所述对称密钥对所述第四数据进行加密得到第五数据;将所述第五数据发送至客户端,以使客户端调用第一数据处理工具,基于所述对称密钥对所述第五数据进行解密得到所述第四数据。
在本发明实施例的具体实施方式中,所述调用第一数据处理工具生成对称密钥,包括:
调用第一数据处理工具随机生成对称密钥;
或者,
调用第一数据处理工具随机生成字符串,与预设字符串进行拼接生成对称密钥。
在本发明实施例的具体实施方式中,所述基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,包括:
基于内置于所述第一数据处理工具程序逻辑代码中的公钥对所述对称密钥进行加密得到;
或者,
基于内置于所述第一数据处理工具配置文件中的公钥对所述对称密钥进行加密得到。
在本发明实施例的具体实施方式中,所述基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥,包括:
基于内置于所述第二数据处理工具程序逻辑代码中的私钥对所述第三数据进行解密得到所述对称密钥;
或者,
基于内置于所述第二数据处理工具配置文件中的私钥对所述第三数据进行解密得到所述对称密钥。
在本发明实施例的具体实施方式中,所述装置还包括:
第一工具生成模块550,用于获取预设数据处理工程,并接收与所述预设数据处理工程对应的版本标识;调用密钥生成工具生成目标公钥与目标私钥;将所述目标公钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第一工具标识,根据所述第一工具标识对经过版本以及公钥更新的所述预设数据处理工程进行处理,生成第一数据处理工具。
在本发明实施例的具体实施方式中,所述装置还包括:
第二工具生成模块560,用于将所述目标私钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第二工具标识,根据所述第二工具标识将经过版本以及私钥更新的所述预设数据处理工程进行处理,生成第二数据处理工具。
本发明实施例还提供了一种服务器,如图6所示,包括处理器61、通信接口62、存储器63和通信总线64,其中,处理器61,通信接口62,存储器63通过通信总线64完成相互间的通信,
存储器63,用于存放计算机程序;
处理器61,用于执行存储器63上所存放的程序时,实现如下步骤:
接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
上述服务器提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述服务器与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种存储介质,该存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的数据传输方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的数据传输方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在存储介质中,或者从一个存储介质向另一个存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (9)

1.一种数据传输方法,其特征在于,所述方法包括:
接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;所述第一数据处理工具具体通过以下方式得到:获取预设数据处理工程,并接收与所述预设数据处理工程对应的版本标识;调用密钥生成工具生成目标公钥与目标私钥;将所述目标公钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第一工具标识,根据所述第一工具标识对经过版本以及公钥更新的所述预设数据处理工程进行处理,生成第一数据处理工具;
调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收服务端返回的第四数据,其中,所述第四数据为服务端针对所述第一数据进行处理得到的响应数据;
调用第二数据处理工具,基于所述对称密钥对所述第四数据进行加密得到第五数据;
将所述第五数据发送至客户端,以使客户端调用第一数据处理工具,基于所述对称密钥对所述第五数据进行解密得到所述第四数据。
3.根据权利要求1所述的方法,其特征在于,所述调用第一数据处理工具生成对称密钥,包括:
调用第一数据处理工具随机生成对称密钥;
或者,
调用第一数据处理工具随机生成字符串,与预设字符串进行拼接生成对称密钥。
4.根据权利要求1所述的方法,其特征在于,所述基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,包括:
基于内置于所述第一数据处理工具程序逻辑代码中的公钥对所述对称密钥进行加密得到;
或者,
基于内置于所述第一数据处理工具配置文件中的公钥对所述对称密钥进行加密得到。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥,包括:
基于内置于所述第二数据处理工具程序逻辑代码中的私钥对所述第三数据进行解密得到所述对称密钥;
或者,
基于内置于所述第二数据处理工具配置文件中的私钥对所述第三数据进行解密得到所述对称密钥。
6.根据权利要求1所述的方法,其特征在于,所述第二数据处理工具具体通过以下方式得到:
将所述目标私钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;
获取第二工具标识,根据所述第二工具标识将经过版本以及私钥更新的所述预设数据处理工程进行处理,生成第二数据处理工具。
7.一种数据传输装置,其特征在于,所述装置包括:
数据接收模块,用于接收客户端发送的第二数据以及第三数据,其中,所述第二数据是由客户端获取第一数据,调用第一数据处理工具生成对称密钥,基于所述对称密钥针对所述第一数据进行加密得到,所述第三数据是由客户端调用所述第一数据处理工具,基于所述第一数据处理工具中的公钥对所述对称密钥进行加密得到,所述第一数据为用户敏感数据;所述第一数据处理工具具体通过以下方式得到:获取预设数据处理工程,并接收与所述预设数据处理工程对应的版本标识;调用密钥生成工具生成目标公钥与目标私钥;将所述目标公钥更新至所述预设数据处理工程中,根据所述版本标识更新所述预设数据处理工程的版本;获取第一工具标识,根据所述第一工具标识对经过版本以及公钥更新的所述预设数据处理工程进行处理,生成第一数据处理工具;
数据解密模块,用于调用第二数据处理工具,基于所述第二数据处理工具中的私钥对所述第三数据进行解密得到所述对称密钥;
数据发送模块,用于调用所述第二数据处理工具,基于所述对称密钥对所述第二数据进行解密得到所述第一数据,并发送至服务端。
8.一种服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6中任一所述的方法步骤。
9.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN202010117001.XA 2020-02-25 2020-02-25 数据传输方法、装置、服务器及存储介质 Active CN111327617B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010117001.XA CN111327617B (zh) 2020-02-25 2020-02-25 数据传输方法、装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010117001.XA CN111327617B (zh) 2020-02-25 2020-02-25 数据传输方法、装置、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN111327617A CN111327617A (zh) 2020-06-23
CN111327617B true CN111327617B (zh) 2022-08-12

Family

ID=71171222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010117001.XA Active CN111327617B (zh) 2020-02-25 2020-02-25 数据传输方法、装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN111327617B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112738079A (zh) * 2020-12-28 2021-04-30 厦门市美亚柏科信息股份有限公司 一种跨平台app数据解密方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001976A (zh) * 2012-12-28 2013-03-27 中国科学院计算机网络信息中心 一种安全的网络信息传输方法
CN104580086A (zh) * 2013-10-17 2015-04-29 腾讯科技(深圳)有限公司 信息传输方法、客户端、服务器及系统
CN106878016A (zh) * 2017-04-27 2017-06-20 上海木爷机器人技术有限公司 数据发送、接收方法及装置
CN107231368A (zh) * 2017-06-22 2017-10-03 四川长虹电器股份有限公司 提升面向互联网开放的软件接口安全性的方法
CN110635912A (zh) * 2019-08-20 2019-12-31 北京思源理想控股集团有限公司 数据处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8583915B1 (en) * 2007-05-31 2013-11-12 Bby Solutions, Inc. Security and authentication systems and methods for personalized portable devices and associated systems
US9887998B2 (en) * 2015-12-18 2018-02-06 Amazon Technologies, Inc. Security model for data transfer using a shippable storage device
US10860724B2 (en) * 2017-06-13 2020-12-08 Microsoft Technology Licensing, Llc Active key rolling for sensitive data protection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001976A (zh) * 2012-12-28 2013-03-27 中国科学院计算机网络信息中心 一种安全的网络信息传输方法
CN104580086A (zh) * 2013-10-17 2015-04-29 腾讯科技(深圳)有限公司 信息传输方法、客户端、服务器及系统
CN106878016A (zh) * 2017-04-27 2017-06-20 上海木爷机器人技术有限公司 数据发送、接收方法及装置
CN107231368A (zh) * 2017-06-22 2017-10-03 四川长虹电器股份有限公司 提升面向互联网开放的软件接口安全性的方法
CN110635912A (zh) * 2019-08-20 2019-12-31 北京思源理想控股集团有限公司 数据处理方法及装置

Also Published As

Publication number Publication date
CN111327617A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
EP3387813B1 (en) Mobile device having trusted execution environment
KR102221541B1 (ko) 그래픽 코드 정보를 제공 및 획득하기 위한 방법 및 디바이스, 그리고 단말
US11968206B2 (en) Non-custodial tool for building decentralized computer applications
US9525548B2 (en) Provisioning techniques
CN102271124A (zh) 数据处理设备和数据处理方法
US10887085B2 (en) System and method for controlling usage of cryptographic keys
CN107918731A (zh) 用于控制对开放接口进行访问的权限的方法和装置
CN109450620B (zh) 一种移动终端中共享安全应用的方法及移动终端
CN111274611A (zh) 数据脱敏方法、装置及计算机可读存储介质
TW201926943A (zh) 資料傳輸方法及系統
CN111970109B (zh) 一种数据传输方法及系统
CN109379345B (zh) 敏感信息传输方法及系统
US20140059341A1 (en) Creating and accessing encrypted web based content in hybrid applications
CN113553572A (zh) 资源信息获取方法、装置、计算机设备和存储介质
US20200342121A1 (en) Encrypted storage of data
Ahmad et al. Enhancing the security of mobile applications by using TEE and (U) SIM
CN111327617B (zh) 数据传输方法、装置、服务器及存储介质
CN111901287B (zh) 一种为轻应用提供加密信息的方法、装置和智能设备
JP2022545809A (ja) 暗号鍵生成のためのセキュアな環境
US20230179404A1 (en) Hybrid cloud-based security service method and apparatus for security of confidential data
CN115459929B (zh) 安全验证方法、装置、电子设备、系统、介质和产品
CN111831978A (zh) 一种对配置文件进行保护的方法及装置
CN110457959B (zh) 一种基于Trust应用的信息传输方法及装置
KR100357859B1 (ko) 인터넷 환경 하에서 데이터 통신을 수행하는 이동통신시스템의 사용자 정보 보안 방법
CN114124440A (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