CN114499875B - 业务数据处理方法、装置、计算机设备和存储介质 - Google Patents

业务数据处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN114499875B
CN114499875B CN202111679040.XA CN202111679040A CN114499875B CN 114499875 B CN114499875 B CN 114499875B CN 202111679040 A CN202111679040 A CN 202111679040A CN 114499875 B CN114499875 B CN 114499875B
Authority
CN
China
Prior art keywords
data
random key
sender
key
abstract
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
CN202111679040.XA
Other languages
English (en)
Other versions
CN114499875A (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.)
Industrial Consumer Finance Co Ltd
Original Assignee
Industrial Consumer Finance 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 Industrial Consumer Finance Co Ltd filed Critical Industrial Consumer Finance Co Ltd
Priority to CN202111679040.XA priority Critical patent/CN114499875B/zh
Publication of CN114499875A publication Critical patent/CN114499875A/zh
Application granted granted Critical
Publication of CN114499875B publication Critical patent/CN114499875B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • 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/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp

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)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种业务数据处理方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取金融业务指令;基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封;基于本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要;基于随机密钥,对金融业务指令进行加密处理,获得加密数据;将数字信封、第一数据摘要与加密数据封装为报文数据,基于报文数据向数据接收方发起业务请求。采用本方法能够极大提升了金融业务指令在传输过程中的安全性。

Description

业务数据处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及金融安全技术领域,特别是涉及一种业务数据处理方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机网络技术的不断发展,近几年,各种未知的网络安全威胁层出不穷、网络安全事件发频发。其中,信息系统接口是网络传输过程中一个至关重要的环节,接口通信的报文数据很容易被攻击者非法监听、拦截并篡改或者伪造。金融领域信息系统对于传输的数据信息的保密性要求非常高,若传输的数据信息被泄露,会对整个金融领域信息系统的安全造成严重威胁。
而目前信息系统接口处的通信主要以明文传输为主,少数的加密传输其所使用的加密方式也非常单一,容易破解,导致数据传输安全性差。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升数据在传输过程中的安全性的业务数据处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种业务数据处理方法,应用于数据发送方,所述方法包括:
获取金融业务指令;
基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封;
基于本机生成的第二系统私钥,对所述金融业务指令、随机密钥与所述第一当前时间戳进行数字签名处理,获得第一数据摘要;
基于所述随机密钥,对所述金融业务指令进行加密处理,获得加密数据;
将所述数字信封、第一数据摘要与所述加密数据封装为报文数据,基于所述报文数据向所述数据接收方发起业务请求,所述数据接收方接收到所述业务请求后,基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令,基于所述数据发送方的第二系统公钥,对所述金融信息指令、随机密钥和所述第一当前时间戳进行数字签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
在其中一个实施例中,所述基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封,包括:
根据第一约定规则将随机密钥与第一当前时间戳组合成为第一字符串;
基于数据接收方生成的第一系统公钥,对所述第一字符串进行加密处理,获得数字信封。
在其中一个实施例中,所述基于本机生成的第二系统私钥,对所述金融业务指令、随机密钥与所述第一当前时间戳进行数字签名处理,获得第一数据摘要,包括:
根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第二字符串;
基于本机生成的第二系统私钥,对所述第二字符串进行数字签名处理,获得第一数据摘要。
第二方面,本申请提供了一种业务数据处理方法,应用于数据接收方,所述方法包括:
接收数据发送方的业务请求,其中,所述业务请求是所述数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于所述报文数据生成的;所述数字信封基于所述数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;所述第一数据摘要基于所述数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;所述加密数据基于所述随机密钥,对所述金融业务指令进行加密处理所获得;
基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令;
基于所述数据发送方的第二系统公钥,对所述金融信息指令、随机密钥和所述第一当前时间戳进行数据签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
在其中一个实施例中,所述方法还包括:对所述随机密钥进行验证,若所述随机密钥与系统本地缓存的失效随机密钥不一致,则确定所述随机密钥验证成功,将所述随机密钥缓存在本地随机密钥库中。
在其中一个实施例中,若解密得到的所述第一当前时间戳与系统本地时间的差值大于预设阈值,则向所述数据发送方报错。
在其中一个实施例中,若所述第二数据摘要和所述第一数据摘要不相同,则向所述数据发送方报错。
在其中一个实施例中,若所述随机密钥与系统本地缓存的失效随机密钥一致,则向所述数据发送方报错。
在其中一个实施例中,所述基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,包括:
基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到第一字符串,根据第一约定规则对所述第一字符串进行拆分,得到所述第一当前时间戳和随机密钥;其中,所述第一约定规则与所述数据发送方获得所述数字信封所采用的规则相同。
在其中一个实施例中,所述基于所述数据发送方的第二系统公钥,对所述金融信息指令、随机密钥和所述第一当前时间戳进行数据签名处理,获得第二数据摘要,包括:
根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第三字符串;
基于所述数据发送方的第二系统公钥,对所述第三字符串进行数字签名处理,获得第二数据摘要。
第三方面,本申请提供了一种数据处理装置,设置于数据发送方,所述装置包括:
金融业务指令获取模块,用于获取金融业务指令;
数字信封生成模块,用于基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封;
第一数据摘要生成模块,用于基于本机生成的第二系统私钥,对所述金融业务指令、随机密钥与所述第一当前时间戳进行数字签名处理,获得第一数据摘要;
加密数据生成模块,用于基于所述随机密钥,对所述金融业务指令进行加密处理,获得加密数据;
报文数据传输模块,用于将所述数字信封、第一数据摘要与所述加密数据封装为报文数据,基于所述报文数据向所述数据接收方发起业务请求,所述数据接收方接收到所述业务请求后,基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令,基于所述数据发送方的第二系统公钥,对所述金融信息指令信息、随机密钥和所述第一当前时间戳进行数据签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
第四方面,本申请提供了一种数据处理装置,设置于数据接收方,所述装置包括:
业务请求接收模块,用于接收数据发送方的业务请求,其中,所述业务请求是所述数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于所述报文数据生成的;所述数字信封基于所述数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;所述第一数据摘要基于所述数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;所述加密数据基于所述随机密钥,对所述金融业务指令进行加密处理所获得;
数字信封解密模块,用于基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令;
数据摘要验证模块,用于基于所述数据发送方的第二系统公钥,对所述金融信息指令、随机密钥和所述第一当前时间戳进行数据签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
第五方面,本申请提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
第六方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第七方面,本申请提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
上述业务数据处理方法、装置、计算机设备、存储介质和计算机程序产品,在需要传输金融业务指令到数据接收方时,会基于数据发送方与数据接收方各自协商生成的两对公私钥以及数据发送方随机生成的随机密钥,使用对称加密与非对称加密算法协同作用,对需要发送的金融业务指令、随机密钥、以及数据发送方的第一当前时间戳依次生成数字信封、第一数据摘要以及加密数据。其中,数据接收方可以根据数字信封中的第一当前时间戳对接收到的数据进行时效性验证,达到防重放攻击效果,而利用非对称加密构建的第一数据摘要,可以辅助数据接收方对传输数据的完整信息进行验证,达到防篡改的效果。从而极大提升了金融业务指令在传输过程中的安全性。
附图说明
图1为一个实施例中业务数据处理方法的应用环境图;
图2为一个实施例中业务数据处理方法的流程示意图;
图3为另一个实施例中业务数据处理方法的流程示意图;
图4为另一个实施例中业务数据处理方法的流程示意图;
图5为一个实施例中业务数据处理装置的结构框图;
图6为另一个实施例中业务数据处理装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的业务数据处理方法,可以应用于如图1所示的应用环境中。其中,数据发送方102通过网络与数据接收方104进行通信。数据存储系统可以存储数据发送方102与数据接收方104需要处理的数据。数据存储系统可以集成在数据发送方102与数据接收方104上,也可以放在云上或其他网络服务器上。数据发送方102获取需要传输的金融业务指令,基于数据接收方104生成的第一系统公钥,对本机生成的随机密钥与第一当前时间戳进行加密处理,获得数字信封;基于本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要;基于随机密钥,对金融业务指令进行加密处理,获得加密数据;将数字信封、第一数据摘要与加密数据封装成报文数据,基于报文数据向数据接收方104发起业务请求,数据接收方104接收到业务请求后,基于数据接收方104的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,若解密得到的第一当前时间戳与数据接收方104的系统本地时间的差值小于或等于预设阈值,则基于随机密钥对加密数据进行解密,得到金融业务指令,基于数据发送方102的第二系统公钥,对金融指令、随机密钥和第一当前时间戳进行数字签名处理,获得第二数据摘要,若第二数据摘要和第一数据摘要相同,则验证成功,数据接收方104响应金融业务指令。其中,数据发送方与数据接收方可以一个是客户端、一个是服务器,也可以二者均是客户端,或,二者均为服务器,具体根据实际情况而定,本申请的方案是数据发送方与数据接收方之间的数据传输响应的过程,对于数据发送方与数据接收方的具体形式,本申请不作限定。可以理解的,本实施例中,以数据发送方为客户端、数据接收方为服务器为例,其中,客户端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、智能手环等。服务器可以通过独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种业务数据处理方法,以该方法应用于图1中的数据发送方102为例进行说明,包括以下步骤:
步骤202,获取金融业务指令。
其中,金融业务指令是指用户根据金融业务办理需求所生成的指令。具体地,用户在通过电子设备在网络上办理金融业务时,会生成对应的金融业务指令。例如,当用户在银行金融APP上进行货款还款金融业务办理时,其发送的金融业务指令可以为客户的还款账号、还款业务的申请编号等。
具体地,数据发送方获取客户在金融业务办理平台生成的金融业务指令。
步骤204,基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封。
其中,第一系统公钥为是由数据接收方生成的。在有数据传输任务需要执行时,数据发送方与数据接收方会各自基于非对称加密算法生成一对公私密钥。其中,非对称加密算法是一种密钥的保密方法。具体地,非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
其中,数据接收方生成的是第一系统公私密钥,数据发送方生成的是第二系统公私密钥。数据接收方与数据发送方是生成对应的公私密钥后,会将公钥发送给对方,私钥由自己保存。
其中,随机密钥是数据接收方基于对称加密算法随机生成的。对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。具体地,数据发送方对不定数量的数字与字母进行随机排列,生成随机密钥。
其中,时间戳是字符或编码信息的序列,用于标识何时发生特定事件,通常给出日期和时间,有时精确到几分之一秒。时间戳的主要目的在于通过一定的技术手段,对数据产生的时间进行认证,从而验证这段数据在产生后是否经过篡改。具体地,第一当前时间戳是基于数据发送方获取到金融业务指令的时间生成的时间戳。
具体地,数据发送方使用数据接收方生成的第一系统公钥,对自身随机生成的随机密钥以及第一当前时间戳进行加密处理,获得数字信封。
步骤206,基于本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要。
其中,数字签名是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。它是一种类似写在纸上的普通的物理签名,但是使用了加密领域的技术来实现的,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名是非对称密钥加密技术与数字摘要技术的应用。简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人伪造。
具体地,数据发送方使用本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要。
步骤208,基于随机密钥,对金融业务指令进行加密处理,获得加密数据。
具体地,数据发送方使用自身随机生成的随机密钥,对金融业务指令进行对称加密处理,获得加密数据。
步骤210,将数字信封、第一数据摘要与加密数据封装为报文数据,基于报文数据向数据接收方发起业务请求,数据接收方接收到业务请求后,基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,若解密得到的第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于随机密钥对加密数据进行解密,得到金融业务指令,基于数据发送方的第二系统公钥,对金融信息指令、随机密钥和第一当前时间戳进行数字签名处理,获得第二数据摘要,若第二数据摘要和第一数据摘要相同,则验证成功,响应金融业务指令。
具体地,将步骤204至步骤208获得的数字信封、第一数据摘要以及加密数据打包成为数据包后,根据传输报文的标准格式将数据包进行封装,得到报文数据。基于报文数据向数据接收方发起业务请求,将报文数据传输至数据接收方。
数据接收方接收到业务请求后,使用数据接收方自身生成的第一系统私钥,对数字信封进行解密,得到数字信封中的第一当前时间戳以及随机密钥。可以理解的,将第一当前时间戳与数据接收方接收到业务请求的系统本地时间进行比较,若第一当前时间戳与系统本地时间的时间差值小于或等于预设阈值,则认为当前数据接收方接收到的业务请求是在有效时间段内发送的,并不是在有效时间段外发送的业务请求,此时可以确定当前接收的业务请求时效性验证成功。通过对第一当前时间戳进行验证,可以防止重放攻击等基于发送时间进行的恶意攻击行为。其中,时间差的预设阈值是数据发送方与数据接收方根据生成传输报文到接收报文之间所需要的时间进行预先设置的,可以理解的,预设阈值的具体数值根据数据接收方与数据发送方的实际情况而定,本申请对此不做限定。
当确定业务请求的时效性验证成功后,数据接收方使用数字信封中的随机密钥,对业务请求中的加密数据进行解密操作,得到金融业务指令。数据接收方使用数据发送方生成的第二系统公钥,对解密获得的金融业务指令、随机密钥以及第一当前时间戳进行数字签名处理,获得第二数据摘要。可以理解的,数据接收方进行数字签名处理的具体处理方式与数据发送方生成第一数据摘要的具体方式是一样的,由于数据发送方生成第一数据摘要时,使用的是自身系统生成的第二系统私钥与数据接收方生成第二数据摘要时使用的第二系统公钥是由数据发送方同时生成的一对公私钥,因此,若报文在传输过程中未被人篡改,数据发送方生成的第一数据摘要与数据接收方生成的第二数据摘要应该是相同的。
具体地,将第二数据摘要与第一数据摘要进行比对,若第二数据摘要与第一数据摘要相同,则认为报文在传输过程中未被他人篡改,确认业务请求验证成功,数据接收方响应金融业务指令,返回客户办理对应的金融业务所需要的信息。
在其中一个实施例中,生成数字信封与进行数字签名处理时使用的加密算法为国密体系非对称加密算法SM2。
在其中一个实施例中,使用随机密钥对金融业务指令进行加密处理时使用的加密算法为国密体系对称加密算法SM4。
上述业务数据处理方法中,在需要传输金融业务指令到数据接收方时,会基于数据发送方与数据接收方各自协商生成的两对公私钥以及数据发送方随机生成的随机密钥,使用对称加密与非对称加密算法协同作用,对需要发送的金融业务指令、随机密钥、以及数据发送方的第一当前时间戳依次生成数字信封、第一数据摘要以及加密数据。其中,数据接收方可以根据数字信封中的第一当前时间戳对接收到的数据进行时效性验证,达到防重放攻击效果,而利用非对称加密构建的第一数据摘要,可以辅助数据接收方对传输数据的完整信息进行验证,达到防篡改的效果。从而极大提升了金融业务指令在传输过程中的安全性。
在一个实施例中,基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封,包括:
根据第一约定规则将随机密钥与第一当前时间戳组合成为第一字符串;基于数据接收方生成的第一系统公钥,对第一字符串进行加密处理,获得数字信封。
其中,第一约定规则为生成数字信封时,随机密钥与第一当前时间戳的字符串的拼接规则。可以理解的,第一约定规则是由数据接收方与数据发送方提前约定得到的。具体地,根据数据接收方与数据发送方提前约定的第一约定规则,将随机密钥与第一当前时间戳组合成为第一字符串,使用数据接收方生成的第一系统公钥,对第一字符串进行加密处理,获得数字信封。
例如,数据接收方与数据发送方可以约定,在将随机密钥与第一当前时间戳组成第一字符串时,在第一字符串开始处拼接一串固定位数的随机字符占位,随后按照当前系统时间戳和随机密钥的顺序并以竖线进行分割。得到第一字符串。使用第一系统公钥对第一字符串进行加密处理,获得数字信封。可以理解的,随机字符可以需要,也可以舍去,以实际约定规则为准。
使用本实施例中的方法,攻击者即使获得了数字信封,并对其进行了解密,得到的也只是一串字符串,在不知道第一约定规则的情况下,攻击者无法直接获取随机密钥与第一当前时间戳信息。可以进一步提升数据在传输过程中的安全性。
在其中一个实施例中,基于本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要,包括:
根据第二约定规则将金融业务指令、随机密钥与第一当前时间戳组合成为第二字符串;基于本机生成的第二系统私钥,对第二字符串进行数字签名处理,获得第一数据摘要。
其中,第二约定规则为进行数字签名处理前,金融业务指令、随机密钥与第一当前时间戳的字符串拼接规则。可以理解的,第二约定规则是由数据接收方与数据发送方提前约定得到的。
具体地,根据数据接收方与数据发送方提前约定的第二约定规则,将金融业务指令、随机密钥与第一当前时间戳组合成为第二字符串,使用本机生成的第二系统私钥,对第二字符串进行数字签名处理,获得第二数据摘要。使用本实施例中的方法,攻击者即使获得了第二数据摘要,并对其进行了解密,得到的也只是一串字符串,在不知道第二约定规则的情况下,攻击者无法直接获取金融业务指令、随机密钥与第一当前时间戳。这样可以进一步提升数据在传输过程中的安全性。
在其中一个实施例中,如图3所示,提供一种业务数据处理方法,以该方法应用于图1中的数据接收方104为例进行说明,包括以下步骤:
步骤302,接收数据发送方的业务请求,其中,业务请求是数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于报文数据生成的;数字信封基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;第一数据摘要基于数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;加密数据基于随机密钥,对金融业务指令进行加密处理所获得。
具体地,数据接收方接收数据发送方的业务请求,其中业务请求中包含有数字信封、第一数据摘要以及加密数据。可以理解的,数字信封、第一数据摘要、加密数据的生成方法,以及将数字信封、第一数据摘要、加密数据封装为报文数据的方法都记载在前文步骤202至步骤210的具体内容中,在此不再赘述。
步骤304,基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,若解密得到的第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于随机密钥对加密数据进行解密,得到金融业务指令。
具体地,数据接收方接收到业务请求后,使用数据接收方自身生成的第一系统私钥,对数字信封进行解密,得到数字信封中的第一当前时间戳以及随机密钥。可以理解的,将第一当前时间戳与数据接收方接收到业务请求的系统本地时间进行比较,若第一当前时间戳与系统本地时间的时间差值小于或等于预设阈值,则认为当前数据接收方接收到的业务请求是在有效时间段内发送的,并不是在有效时间段外发送的业务请求,此时可以确定当前接收的业务请求时效性验证成功。通过对第一当前时间戳进行验证,可以防止重放攻击等基于发送时间进行的恶意攻击行为。其中,时间差的预设阈值是数据发送方与数据接收方根据生成传输报文到接收报文之间所需要的时间进行预先设置的,可以理解的,预设阈值的具体数值根据数据接收方与数据发送方的实际情况而定,本申请对此不做限定。当确定业务请求的时效性验证成功后,数据接收方使用数字信封中的随机密钥,对业务请求中的加密数据进行解密操作,得到金融业务指令。
步骤306,基于数据发送方的第二系统公钥,对金融信息指令、随机密钥和第一当前时间戳进行数据签名处理,获得第二数据摘要,若第二数据摘要和第一数据摘要相同,则验证成功,响应金融业务指令。
具体地,数据接收方使用数据发送方生成的第二系统公钥,对解密获得的金融业务指令、随机密钥以及第一当前时间戳进行数字签名处理,获得第二数据摘要。可以理解的,数据接收方进行数字签名处理的具体处理方式与数据发送方生成第一数据摘要的具体方式是一样的,由于数据发送方生成第一数据摘要时,使用的是自身系统生成的第二系统私钥与数据接收方生成第二数据摘要时使用的第二系统公钥是由数据发送方同时生成的一对公私钥,因此,若报文在传输过程中未被人篡改,数据发送方生成的第一数据摘要与数据接收方生成的第二数据摘要应该是相同的。
具体地,将第二数据摘要与第一数据摘要进行比对,若第二数据摘要与第一数据摘要相同,则认为报文在传输过程中未被他人篡改,确认业务请求验证成功,数据接收方响应金融业务指令,返回客户办理对应的金融业务所需要的信息。
本实施例中,数据接收方首先根据数字信封中的第一当前时间戳对接收到的数据进行时效性验证,可以防止攻击者数据接收方使用重放攻击,扰乱系统秩序。而利用非对称加密构建的第一数据摘要,可以辅助数据接收方对传输数据的完整信息进行验证,达到防篡改的效果。从而极大提升了金融业务指令在传输过程中的安全性。
在其中一个实施例中,业务数据处理方法还包括:对随机密钥进行验证,若随机密钥与系统本地缓存的失效随机密钥不一致,则确定随机密钥验证成功,将随机密钥缓存在本地随机密钥库中。
其中,随机密钥是数据接收方基于对称加密算法随机生成的,在预设数量内具备唯一性的对称加密密钥。例如,在数据发送方生成的随机密钥的预设数量为1000个时,在此预设数量内生成的随机密钥都是唯一的、不重复的随机密钥。
其中,失效随机密钥为数据接收方之前接收并验证成功后,保存在本地随机密钥库中的随机密钥,其作用是在每次数据接收方接收到报文数据时,验证其携带的随机密钥的唯一性。
具体地,数据接收方对解密数字信封得到的随机密钥进行验证,将随机密钥与缓存在系统本地随机密钥库中的失效随机密钥进行比对,若系统本地随机密钥库中不存在与随机密钥一致的失效随机密钥,说明此随机密钥并未被数据接收方接收过,对应的报文数据并不是攻击者进行的重放攻击。确定随机密钥验证成功,将随机密钥缓存到本地随机密钥库中,作为失效随机密钥进行保存,为下一次随机密钥验证做准备。
在本实施例中,数据接收方通过对接收到的随机密钥进行唯一性验证,在攻击者发送的重放攻击报文数据所携带的时间戳与系统当前时间的时间差值小于或等于预设阈值时,还可以通过验证接收到的随机密钥的唯一性对接收到的报文数据进行验证,进一步达到防重放攻击的效果。
在其中一个实施例中,若数据发送方发送的随机密钥个数达到了预设值,数据接收方会清除本地随机密钥库中所缓存的失效随机密钥,重新开始新一轮缓存。
在其中一个实施例中,业务数据处理方法还包括:若随机密钥与系统本地缓存的失效随机密钥一致,则向数据发送方报错。
具体地,数据接收方将随机密钥与缓存在系统本地随机密钥库中的失效随机密钥进行比对,若系统本地随机密钥库中存在与随机密钥一致的失效随机密钥,则说明此随机密钥之前已经被数据接收系统接收且验证成功过,可以判断此时的报文数据为攻击者根据拦截到的报文数据进行的重放攻击。确定随机密钥验证失败,停止处理流程,并向数据方报错。
在其中一个实施例中,数据接收方通过生成提示信息,向数据方报错;其中,提示信息为:随机密钥验证不成功,业务请求失败。
上述实施例中方法,在由于随机密钥验证不成功而导致业务请求失败后,数据接收方通过向数据发送方报错,可以让数据发送方知晓业务请求失败的原因,使数据发送方在下次传输报文数据时,加强保密措施,避免数据传输系统遭受重放攻击。
在其中一个实施例中,业务数据处理方法还包括:解密得到的第一当前时间戳与系统本地时间的差值大于预设阈值,则向数据发送方报错。
具体地,若解密得到的第一当前时间戳与数据接收方系统本地时间的差值大于预设阈值,即认为此时数据接收方接收到的业务请求并不是在有效时间段发送的,极有可能是由攻击者发送的重复请求数据,用来扰乱系统的处理秩序,破坏系统的稳定性。确定该业务请求的时间戳验证不成功,停止处理流程,并向数据方报错。
在其中一个实施例中,数据接收方通过生成提示信息,向数据方报错;其中,提示信息为:时间戳验证不成功,业务请求失败。
上述实施例中的方法,在由于时间戳验证不成功而导致业务请求失败后,数据接收方通过向数据发送方报错,可以让数据发送方知晓业务请求失败的原因,若该业务请求是由数据发送方发出,但由于传输的原因导致时间戳验证失败,数据发送方可以根据报错,确定是否需要重新发送,上述实施例中的方法可以有效避免出现信息交互不及时而降低客户使用体验的效果的情况发生。
在其中一个实施例中,业务数据处理方法还包括:若第二数据摘要和第一数据摘要不相同,则向数据发送方报错。
具体地,由于数据接收方进行数字签名处理的具体处理方式与数据发送方生成第一数据摘要的具体方式是一样的,且数据发送方生成第一数据摘要时,使用的是自身系统生成的第二系统私钥与数据接收方生成第二数据摘要时使用的第二系统公钥是由数据发送方同时生成的一对公私钥,因此,若报文在传输过程中未被人篡改,数据发送方生成的第一数据摘要与数据接收方生成的第二数据摘要应该是相同的。若第二数据摘要与第一数据摘要不相同,则认为报文在传输过程中已经被他人篡改,确认该业务请求的数据摘要验证不成功,停止处理流程,并向数据方报错。
在其中一个实施例中,数据接收方通过生成提示信息,向数据方报错;其中,提示信息为:数据摘要验证不成功,业务请求失败。
上述实施例中,在由于数据摘要验证不成功而导致业务请求失败后,数据接收方通过向数据发送方报错,可以让数据发送方知晓业务请求失败的原因,数据发送方可以根据客户实际需求确定是否需要生成新的业务请求,重新发送至数据接收方。上述实施例中的方法在保证了业务请求传输过程中的安全性外,同时还可以避免由于信息交互不及时而导致的客户使用体验降低的情况发生。
在其中一个实施例中,基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,包括:
基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一字符串,根据第一约定规则对第一字符串进行拆分,得到第一当前时间戳和随机密钥;其中,第一约定规则与数据发送方获得数字信封所采用的规则相同。
其中,第一字符串为数据发送方基于与数据接收方提前约定的第一约定规则,对随机密钥与第一当前时间戳进行处理获得的,具体地处理方法记载在前文数据发送方基于第一约定规则生成第一字符串的内容中,在此不再赘述。因此若想根据第一字符串获得对应的随机密钥与第一当前时间戳信息,就必须使用与数据发送方使用的同样的第一约定规则对其进行拆分。
具体地,数据接收方基于自身生成的第一系统私钥,对数字信封进行解密,得到第一字符串,根据与数据发送方提前约定好的第一约定规则,对第一字符串进行拆分,获得第一当前时间戳和随机密钥。在本实施例中,数据发送方与数据接收方都基于提前约定好的第一约定规则对数字信封进行加密与解密处理,可以进一步的提升数字信封在传输过程中的安全性,从而提升整个业务请求在传输过程中的安全性。
在其中一个实施例中,基于数据发送方的第二系统公钥,对金融信息指令、随机密钥和第一当前时间戳进行数据签名处理,获得第二数据摘要,包括:
根据第二约定规则将金融业务指令、随机密钥与第一当前时间戳组合成为第三字符串;基于数据发送方的第二系统公钥,对第三字符串进行数字签名处理,获得第二数据摘要。
其中,第二约定规则为进行数字签名处理前,金融业务指令、随机密钥与第一当前时间戳的字符串拼接规则。可以理解的,数据接收方使用的第二约定规则与数据发送方进行数字签名处理生成第一数据摘要时使用的第二约定规则是相同的,是由数据接收方与数据发送方提前约定得到的。
具体地,数据接收方基于与数据发送方提前约定好的第二约定规则,将金融业务指令、随机密钥与第一当前时间戳组合成为第三字符串。使用数据发送方的第二系统公钥,对第三字符串进行数字签名处理,获得第二数据摘要。可以理解的,数据接收方进行数字签名处理的具体处理方式、使用的第二约定规则与数据发送方的都是一样的,而进行数字处理使用的第二系统公钥与数据发送方使用的第二系统私钥是同时基于同种非对称加密算法获得的公私钥对,因此,若报文在传输过程中未被人篡改,数据发送方生成的第一数据摘要与数据接收方生成的第二数据摘要应该是相同的。
在本实施例中,数据接收方在生成与第一数据摘要进行比对的第二数据摘要时,首先通过提取与数据发送方约定的第二约定规则对金融业务指令、随机密钥以及第一当前时间戳进行处理得到第三字符串,通过使用数据发送方生成的第二系统公钥对第三字符串进行签名处理,得到第二摘要数据。使用本实施例中的方法,防止当数据发送方发送的是经过第二约定规则处理后生成的第一摘要数据时,数据接收方无法生成与第一摘要数据相同的第二摘要数据的情况产生,提高数据摘要验证的准确性。
在其中一个实施例中,如图4所示,提供了一种业务数据处理方法,方法涉及数据发送方与数据接收方。其中,数据发送方为用户使用的安装有银行业务应用软件的终端设备,数据接收方为银行的业务系统。可以理解的,数据发送方与数据接收方通过网络进行通信连接。
首先,数据发送方执行加密流程,具体地,数据发送方获取客户在金融业务办理平台生成的金融业务指令,根据数据接收方与数据发送方提前约定的第一约定规则,将随机密钥与第一当前时间戳组合成为第一字符串,使用数据接收方生成的第一系统公钥,对第一字符串进行加密处理,获得数字信封。使用本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要。使用自身随机生成的随机密钥,对金融业务指令进行对称加密处理,获得加密数据。将获得的数字信封、第一数据摘要以及加密数据打包成为数据包后,根据传输报文的标准格式将数据包进行封装,得到报文数据。其中,生成数字信封以及数据摘要时使用的均为SM2国密算法,生成加密数据时使用的为SM4国密算法。
随后,数据发送方执行发送请求流程。具体地,基于报文数据向数据接收方发起业务请求,将报文数据传输至数据接收方。
数据接收方接收到业务请求后,执行解密流程。具体地,数据接收方基于自身生成的第一系统私钥,对数字信封进行解密,得到第一字符串,根据与数据发送方提前约定好的第一约定规则,对第一字符串进行拆分,获得第一当前时间戳和随机密钥,将第一当前时间戳与数据接收方接收到业务请求的系统本地时间进行比较,若第一当前时间戳与系统本地时间的时间差值小于或等于预设阈值,则认为当前数据接收方接收到的业务请求是在有效时间段内发送的,并不是在有效时间段外发送的业务请求,此时可以确定当前接收的业务请求时效性验证成功。当确定业务请求的时效性验证成功后,数据接收方使用数字信封中的随机密钥,对业务请求中的加密数据进行解密操作,得到金融业务指令。若验证不成功,则结束整个处理流程,并向数据发送方报错。
基于与数据发送方提前约定好的第二约定规则,将金融业务指令、随机密钥与第一当前时间戳组合成为第三字符串。使用数据发送方的第二系统公钥,对第三字符串进行数字签名处理,获得第二数据摘要,将第二数据摘要与第一数据摘要进行比对,若第二数据摘要与第一数据摘要相同,则认为报文在传输过程中未被他人篡改,确认业务请求验证成功。若验证不成功,则结束整个流程,并向数据发送方报错。
数据接收方响应业务请求中的金融业务指令,生成返回数据,在需要将返回数据传输至数据发送方时,数据接收方执行与数据发送方一样的加密流程,即,在进行返回数据操作时,可以将数据接收方看出数据发送方,数据发送方看成数据接收方,完成返回数据加密操作。
数据发送方接收数据接收方响应金融业务指令后返回的数据,并对数据进行解密操作,其解密流程与数据接收方的解密流程一致。
可以理解的,在本实施例中,基于SM2-SM4国密算法实现了整个加密和解密流程中,总计用到了2个对称加密算法SM2随机秘钥,2套非对称加密算法SM4公私钥对。其中,对称加密算法SM2所用秘钥并不固定,由每次加密时随机生成。在每一次完整的系统间通讯行为中都会有两个随机秘钥生成,一个是数据发送方请求加密时,一个是数据接收方返回加密时。非对称加密算法SM4所用公私钥对有两套,一套由数据发送方提前生成,并将其中公钥给到数据接收方,这套公私钥主要是用于对随机秘钥加密和解密。另一套由数据接收方生成,并将其中公钥给到数据发送方,这套公私钥主要是用于对业务指令信息进行加签和验签。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的业务数据处理方法的业务数据处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个业务数据处理装置实施例中的具体限定可以参见上文中对于业务数据处理方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种业务数据处理装置500,设置于数据发送方,包括:金融业务指令获取模块501、数字信封生成模块502、第一数据摘要生成模块503、加密数据生成模块504和报文数据传输模块505,其中:
金融业务指令获取模块501,用于获取金融业务指令。
数字信封生成模块502,用于基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理,获得数字信封。
第一数据摘要生成模块503,用于基于本机生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理,获得第一数据摘要。
加密数据生成模块504,用于基于随机密钥,对金融业务指令进行加密处理,获得加密数据。
报文数据传输模块505,用于将数字信封、第一数据摘要与加密数据封装为报文数据,基于报文数据向数据接收方发起业务请求,数据接收方接收到业务请求后,基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,若解密得到的第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于随机密钥对加密数据进行解密,得到金融业务指令,基于数据发送方的第二系统公钥,对金融信息指令信息、随机密钥和第一当前时间戳进行数据签名处理,获得第二数据摘要,若第二数据摘要和第一数据摘要相同,则验证成功,响应金融业务指令。
上述业务数据处理装置,在需要传输金融业务指令到数据接收方时,会基于数据发送方与数据接收方各自协商生成的两对公私钥以及数据发送方随机生成的随机密钥,使用对称加密与非对称加密算法协同作用,对需要发送的金融业务指令、随机密钥、以及数据发送方的第一当前时间戳依次生成数字信封、第一数据摘要以及加密数据。其中,数据接收方可以根据数字信封中的第一当前时间戳对接收到的数据进行时效性验证,达到防重放攻击效果,而利用非对称加密构建的第一数据摘要,可以辅助数据接收方对传输数据的完整信息进行验证,达到防篡改的效果。从而极大提升了金融业务指令在传输过程中的安全性。
在其中一个实施例中,数字信封生成模块502还包括:根据第一约定规则将随机密钥与第一当前时间戳组合成为第一字符串;基于数据接收方生成的第一系统公钥,对第一字符串进行加密处理,获得数字信封。
在其中一个实施例中,第一数据摘要生成模块503还包括:根据第二约定规则将金融业务指令、随机密钥与第一当前时间戳组合成为第二字符串;基于本机生成的第二系统私钥,对第二字符串进行数字签名处理,获得第一数据摘要。
在其中一个实施例中,如图6所示,提供了一种业务数据处理装置600,设置于数据接收方,包括:业务请求接收模块601、数字信封解密模块602和数据摘要验证模块603,其中:
业务请求接收模块601,用于接收数据发送方的业务请求,其中,业务请求是数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于报文数据生成的;数字信封基于数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;第一数据摘要基于数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;加密数据基于随机密钥,对金融业务指令进行加密处理所获得。
数字信封解密模块602,用于基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一当前时间戳和随机密钥,若解密得到的第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于随机密钥对加密数据进行解密,得到金融业务指令。
数据摘要验证模块603,用于基于数据发送方的第二系统公钥,对金融信息指令、随机密钥和第一当前时间戳进行数据签名处理,获得第二数据摘要,若第二数据摘要和第一数据摘要相同,则验证成功,响应金融业务指令。
上述业务数据处理装置,数据接收方首先根据数字信封中的第一当前时间戳对接收到的数据进行时效性验证,可以防止攻击者数据接收方使用重放攻击,扰乱系统秩序。而利用非对称加密构建的第一数据摘要,可以辅助数据接收方对传输数据的完整信息进行验证,达到防篡改的效果。从而极大提升了金融业务指令在传输过程中的安全性。
在其中一个实施例中,业务数据处理装置还包括:随机密钥验证模块,用于对随机密钥进行验证,若随机密钥与系统本地缓存的失效随机密钥不一致,则确定随机密钥验证成功,将随机密钥缓存在本地随机密钥库中。
在其中一个实施例中,业务数据处理装置还包括:报错装置,用于若解密得到的第一当前时间戳与系统本地时间的差值大于预设阈值,则向数据发送方报错。
在其中一个实施例中,报错装置还包括:若第二数据摘要和第一数据摘要不相同,则向数据发送方报错。
在其中一个实施例中,报错装置还包括:若随机密钥与系统本地缓存的失效随机密钥一致,则向数据发送方报错。
在其中一个实施例中,数字信封解密模块602还包括:基于数据接收方的第一系统私钥,对数字信封进行解密,得到第一字符串,根据第一约定规则对第一字符串进行拆分,得到第一当前时间戳和随机密钥;其中,第一约定规则与数据发送方获得数字信封所采用的规则相同。
在其中一个实施例中,数据摘要验证模块603还包括:根据第二约定规则将金融业务指令、随机密钥与第一当前时间戳组合成为第三字符串;基于数据发送方的第二系统公钥,对第三字符串进行数字签名处理,获得第二数据摘要。
上述业务数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储金融业务指令、随机密钥、时间戳等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种业务数据处理方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各实施例的业务数据处理方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例的业务数据处理方法的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各实施例的业务数据处理方法的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (11)

1.一种业务数据处理方法,其特征在于,应用于数据发送方,所述方法包括:
获取金融业务指令;
根据第一约定规则将随机密钥与第一当前时间戳组合成为第一字符串;
基于数据接收方生成的第一系统公钥,对所述第一字符串进行加密处理,获得数字信封;
根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第二字符串;
基于本机生成的第二系统私钥,对所述第二字符串进行数字签名处理,获得第一数据摘要;
基于所述随机密钥,对所述金融业务指令进行加密处理,获得加密数据;
将所述数字信封、第一数据摘要与所述加密数据封装为报文数据,基于所述报文数据向所述数据接收方发起业务请求,所述数据接收方接收到所述业务请求后,基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令,基于所述数据发送方的第二系统公钥,对所述金融业务指令、随机密钥和所述第一当前时间戳进行数字签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
2.一种业务数据处理方法,其特征在于,应用于数据接收方,所述方法包括:
接收数据发送方的业务请求,其中,所述业务请求是所述数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于所述报文数据生成的;所述数字信封基于所述数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;所述第一数据摘要基于所述数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;所述加密数据基于所述随机密钥,对所述金融业务指令进行加密处理所获得;
基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到第一字符串,根据第一约定规则对所述第一字符串进行拆分,得到所述第一当前时间戳和随机密钥;其中,所述第一约定规则与所述数据发送方获得所述数字信封所采用的规则相同,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令;
根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第三字符串;
基于所述数据发送方的第二系统公钥,对所述第三字符串进行数字签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对所述随机密钥进行验证,若所述随机密钥与系统本地缓存的失效随机密钥不一致,则确定所述随机密钥验证成功,将所述随机密钥缓存在本地随机密钥库中。
4.根据权利要求2所述的方法,其特征在于,若解密得到的所述第一当前时间戳与系统本地时间的差值大于预设阈值,则向所述数据发送方报错。
5.根据权利要求2所述的方法,其特征在于,若所述第二数据摘要和所述第一数据摘要不相同,则向所述数据发送方报错。
6.根据权利要求3所述的方法,其特征在于,若所述随机密钥与系统本地缓存的失效随机密钥一致,则向所述数据发送方报错。
7.一种数据处理装置,其特征在于,设置于数据发送方,所述装置包括:
金融业务指令获取模块,用于获取金融业务指令;
数字信封生成模块,用于根据第一约定规则将随机密钥与第一当前时间戳组合成为第一字符串;基于数据接收方生成的第一系统公钥,对所述第一字符串进行加密处理,获得数字信封;
第一数据摘要生成模块,用于根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第二字符串;基于本机生成的第二系统私钥,对所述第二字符串进行数字签名处理,获得第一数据摘要;
加密数据生成模块,用于基于所述随机密钥,对所述金融业务指令进行加密处理,获得加密数据;
报文数据传输模块,用于将所述数字信封、第一数据摘要与所述加密数据封装为报文数据,基于所述报文数据向所述数据接收方发起业务请求,所述数据接收方接收到所述业务请求后,基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到所述第一当前时间戳和随机密钥,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令,基于所述数据发送方的第二系统公钥,对所述金融业务指令、随机密钥和所述第一当前时间戳进行数据签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
8.一种数据处理装置,其特征在于,设置于数据接收方,所述装置包括:
业务请求接收模块,用于接收数据发送方的业务请求,其中,所述业务请求是所述数据发送方将数字信封、第一数据摘要与加密数据封装为报文数据后,基于所述报文数据生成的;所述数字信封基于所述数据接收方生成的第一系统公钥,对随机密钥与第一当前时间戳进行加密处理所获得;所述第一数据摘要基于所述数字发送方生成的第二系统私钥,对金融业务指令、随机密钥与第一当前时间戳进行数字签名处理所获得;所述加密数据基于所述随机密钥,对所述金融业务指令进行加密处理所获得;
数字信封解密模块,基于所述数据接收方的第一系统私钥,对所述数字信封进行解密,得到第一字符串,根据第一约定规则对所述第一字符串进行拆分,得到所述第一当前时间戳和随机密钥;其中,所述第一约定规则与所述数据发送方获得所述数字信封所采用的规则相同,若解密得到的所述第一当前时间戳与系统本地时间的差值小于或等于预设阈值,则基于所述随机密钥对所述加密数据进行解密,得到金融业务指令;
数据摘要验证模块,用于根据第二约定规则将所述金融业务指令、随机密钥与所述第一当前时间戳组合成为第三字符串;基于所述数据发送方的第二系统公钥,对所述第三字符串进行数字签名处理,获得第二数据摘要,若所述第二数据摘要和所述第一数据摘要相同,则验证成功,响应所述金融业务指令。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202111679040.XA 2021-12-31 2021-12-31 业务数据处理方法、装置、计算机设备和存储介质 Active CN114499875B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111679040.XA CN114499875B (zh) 2021-12-31 2021-12-31 业务数据处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111679040.XA CN114499875B (zh) 2021-12-31 2021-12-31 业务数据处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN114499875A CN114499875A (zh) 2022-05-13
CN114499875B true CN114499875B (zh) 2024-05-10

Family

ID=81509299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111679040.XA Active CN114499875B (zh) 2021-12-31 2021-12-31 业务数据处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN114499875B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225365B (zh) * 2022-07-14 2024-05-14 北京智芯微电子科技有限公司 基于国密算法的数据安全传输方法、平台、及系统
CN115766229A (zh) * 2022-11-16 2023-03-07 珠海格力电器股份有限公司 异常的检测方法、装置及系统、服务器、存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098225A (zh) * 2006-06-29 2008-01-02 中国银联股份有限公司 安全数据传输方法及支付方法、支付终端和支付服务器
CN109802825A (zh) * 2017-11-17 2019-05-24 深圳市金证科技股份有限公司 一种数据加密、解密的方法、系统及终端设备
CN110149209A (zh) * 2019-04-15 2019-08-20 深圳奇迹智慧网络有限公司 物联网设备及其提高数据传输安全性的方法和装置
CN110198295A (zh) * 2018-04-18 2019-09-03 腾讯科技(深圳)有限公司 安全认证方法和装置及存储介质
CN111698093A (zh) * 2020-06-11 2020-09-22 江苏海洋大学 一种基于pki体系的数字时间戳签发和查证方法
CN113259133A (zh) * 2021-07-02 2021-08-13 深圳市深圳通有限公司 基于http协议的加密通讯方法、设备及存储介质
CN113691502A (zh) * 2021-08-02 2021-11-23 上海浦东发展银行股份有限公司 通信方法、装置、网关服务器、客户端及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105553951B (zh) * 2015-12-08 2019-11-08 腾讯科技(深圳)有限公司 数据传输方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098225A (zh) * 2006-06-29 2008-01-02 中国银联股份有限公司 安全数据传输方法及支付方法、支付终端和支付服务器
CN109802825A (zh) * 2017-11-17 2019-05-24 深圳市金证科技股份有限公司 一种数据加密、解密的方法、系统及终端设备
CN110198295A (zh) * 2018-04-18 2019-09-03 腾讯科技(深圳)有限公司 安全认证方法和装置及存储介质
CN110149209A (zh) * 2019-04-15 2019-08-20 深圳奇迹智慧网络有限公司 物联网设备及其提高数据传输安全性的方法和装置
CN111698093A (zh) * 2020-06-11 2020-09-22 江苏海洋大学 一种基于pki体系的数字时间戳签发和查证方法
CN113259133A (zh) * 2021-07-02 2021-08-13 深圳市深圳通有限公司 基于http协议的加密通讯方法、设备及存储介质
CN113691502A (zh) * 2021-08-02 2021-11-23 上海浦东发展银行股份有限公司 通信方法、装置、网关服务器、客户端及存储介质

Also Published As

Publication number Publication date
CN114499875A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
US10839070B1 (en) Securely executing smart contract operations in a trusted execution environment
US11088850B2 (en) Retrieving public data for blockchain networks using highly available trusted execution environments
EP3673435B1 (en) Improving integrity of communications between blockchain networks and external data sources
WO2020253469A1 (zh) 脚本文件包的热更新方法及装置
CN114499875B (zh) 业务数据处理方法、装置、计算机设备和存储介质
CN114024710A (zh) 一种数据传输方法、装置、系统及设备
CN109509099B (zh) 数据交易方法及装置、计算设备、存储介质
CN108323230B (zh) 一种传输密钥的方法、接收终端和分发终端
CN111971929A (zh) 安全分布式密钥管理系统
CN112685786A (zh) 一种金融数据加密、解密方法、系统、设备及存储介质
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN115276978A (zh) 一种数据处理方法以及相关装置
US20240106633A1 (en) Account opening methods, systems, and apparatuses
CN111490874B (zh) 一种配网安全防护方法、系统、装置及存储介质
CN116049802B (zh) 应用单点登陆方法、系统、计算机设备和存储介质
CN116684102A (zh) 报文传输方法、报文校验方法、装置、设备、介质和产品
CN114679299B (zh) 通信协议加密方法、装置、计算机设备和存储介质
CN117155549A (zh) 密钥分发方法、装置、计算机设备和存储介质
CN114978769B (zh) 单向导入装置、方法、介质、设备
CN114553557B (zh) 密钥调用方法、装置、计算机设备和存储介质
CN116366289A (zh) 无人机遥感数据的安全监管方法及装置
CN116015846A (zh) 身份认证方法、装置、计算机设备和存储介质
CN113285934A (zh) 基于数字签名的服务器密码机客户端ip检测方法及装置
WO2019153118A1 (zh) 一种传输密钥的方法、接收终端和分发终端
CN112307493B (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