Method, system, electronic device and medium for secure access to transaction data
By generating a one-time dynamic key between the terminal device and the secure access service layer and using asymmetric encryption algorithms and integrity algorithms to encrypt and verify the integrity of user transaction data, it solves the problem of data eavesdropping and The problem of tampering and replay attacks is eliminated, and efficient secure access to transaction data is achieved.
Patent Information
- Application Number
- CN202210627466.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-02
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2042-06-02
AI Technical Summary
When the prior art faces massive user access transaction requests, it is difficult to effectively prevent data eavesdropping, tampering and replay attacks, resulting in the difficulty of ensuring the security and integrity of user transaction data.
Through the collaboration between terminal equipment and security access to the service layer, a disposable dynamic key is generated, using asymmetric and compass algorithms and complete algorithms to encrypted and complete the transaction data Sexuality and integrity.
It achieves effective anti-eavesdropping, anti-tampering and anti-replay of user transaction data, improves the level of secure access to transaction data, reduces the investment in duplicating security functions for each application, and unifies secure access services.
Smart Images

Figure CN115001828B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the fields of network security and financial technology, and in particular to a method, system, electronic device, storage medium and program product for securely accessing transaction data. Background Art
[0002] With the development of mobile Internet, the security requirements for user transaction access process are getting higher and higher. In order to ensure the security of user transaction access data, the user access process is generally encrypted and transmitted to prevent the user access process from being eavesdropped and causing key data leakage. However, attackers will still tamper with the encrypted data, making it impossible for the application to parse the access request after decryption and unable to conduct normal transactions. At the same time, there have been cases where attackers eavesdrop on user requests and do not make any changes, but keep resending them. If the application does not perform uniqueness verification, it will cause user transaction data abnormalities; or attackers send fragmented transaction requests to achieve the purpose of confusing the data processing of application services.
[0003] At present, the security challenges faced by applications are becoming increasingly greater, and the processing modes are becoming more and more complex. Different applications repeatedly establish their own security access capabilities, which also results in a large amount of investment waste. At the same time, the security capabilities of each application are different. Most application security functions only focus on one or part of confidentiality, integrity, uniqueness, tamper-proofing and non-repudiation, resulting in uneven security access services. The current situation of only encrypting the transmission of application access transaction processes, or performing security processing on different application ends, can no longer cope with the security challenges brought by the mobile Internet and the challenges of large concurrent data access. Summary of the invention
[0004] In view of the above problems, the present disclosure provides a method, system, electronic device, storage medium and program product for secure access to transaction data, in order to at least partially solve the current application end's demand for secure data access in the process of facing massive user access transaction requests.
[0005] According to a first aspect of the present disclosure, a method for secure access to transaction data executed by a terminal device is provided, comprising: generating a one-time dynamic key in response to an access request to user transaction data initiated by an application within the terminal device; loading a public key issued by a secure access service layer, encrypting the one-time dynamic key using the public key, generating an encryption key, and sending the encryption key to the secure access service layer; and receiving a transaction number fed back by the secure access service layer.
[0006] According to an embodiment of the present disclosure, generating a one-time dynamic key includes: using a random number algorithm to generate a one-time dynamic key corresponding to an access request.
[0007] According to an embodiment of the present disclosure, after receiving the transaction number fed back by the secure access service layer, it also includes: obtaining relevant data of the access request and encapsulating the relevant data; signing the encapsulated relevant data to generate a request data packet; using an integrity algorithm to calculate the integrity additional value of the request data packet, adding the integrity additional value to the end of the request data packet to obtain an updated request data packet; and using a one-time dynamic key to encrypt the updated request data packet to generate an encrypted data packet, and sending the encrypted data packet to the secure access service layer.
[0008] According to an embodiment of the present disclosure, the relevant data of the access request includes: access request content, transaction number, timestamp and unique feature code of the terminal device.
[0009] According to an embodiment of the present disclosure, before responding to an access request for user transaction data initiated by an application within the terminal device, it also includes: obtaining the user's authorization for his or her user transaction data; after obtaining authorization, the application initiates an access request for the user transaction data.
[0010] The second aspect of the present disclosure provides a method for secure access to transaction data performed by a secure access service layer, including: using an asymmetric encryption algorithm to generate a pair of public and private keys, storing the private key, and sending the public key to a terminal device; receiving an encryption key from the terminal device, decrypting the encryption key using the private key to obtain a one-time dynamic key, generating a transaction number and feeding it back to the terminal device; receiving an encrypted data packet from the terminal device, decrypting the encrypted data packet using the one-time dynamic key to obtain plaintext request data and an original integrity added value; and calculating the integrity added value of the plaintext request data using an integrity algorithm, determining whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value, and if so, determining that the plaintext request data has not been tampered with.
[0011] According to an embodiment of the present disclosure, the plaintext request data includes the original signature information. After determining that the plaintext request data has not been tampered with, it also includes: performing signature verification on the original signature information. If the verification passes, adding the signature information of the security access service layer to the original signature information to obtain updated signature information; extracting relevant data of the access request in the plaintext request data, performing uniqueness verification on the relevant data. If the verification passes, it is determined that the plaintext request data has transaction uniqueness; and sending the plaintext request data to the application server.
[0012] According to an embodiment of the present disclosure, the relevant data of the access request includes: access request content, transaction number, timestamp and unique feature code of the terminal device.
[0013] A third aspect of the present disclosure provides a method for securely accessing transaction data executed by an application server, comprising: receiving plaintext request data from a secure access service layer, processing the plaintext request data, and obtaining an access request result.
[0014] According to an embodiment of the present disclosure, the method further includes: transmitting the access request result in reverse direction to the security access service layer.
[0015] A fourth aspect of the present disclosure provides a secure access system for transaction data, comprising: a terminal device, for generating a one-time dynamic key in response to an access request to user transaction data initiated by an application program inside the terminal device; loading a public key issued by a secure access service layer, encrypting the one-time dynamic key with the public key, generating an encryption key, and sending the encryption key to the secure access service layer; and receiving a transaction number fed back by the secure access service layer; the secure access service layer is used to generate a pair of public and private keys using an asymmetric encryption algorithm, store the private key, and send the public key to the terminal device; receiving the encryption key from the terminal device , use the private key to decrypt the encryption key, obtain a one-time dynamic key, generate a transaction number and feed it back to the terminal device; receive the encrypted data packet from the terminal device, use the one-time dynamic key to decrypt the encrypted data packet, obtain the plaintext request data and the original integrity additional value; and use the integrity algorithm to calculate the integrity additional value of the plaintext request data, and determine whether the integrity additional value of the plaintext request data is completely consistent with the original integrity additional value. If so, it is determined that the plaintext request data has not been tampered with; the application server is used to receive the plaintext request data from the security access service layer, process the plaintext request data, and obtain the access request result.
[0016] The fifth aspect of the present disclosure provides an electronic device, comprising: one or more processors; a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned method for securely accessing transaction data.
[0017] The sixth aspect of the present disclosure further provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the above-mentioned method for securely accessing transaction data.
[0018] The seventh aspect of the present disclosure also provides a computer program product, including a computer program, which implements the above-mentioned method for securely accessing transaction data when executed by a processor.
[0019] Compared with the prior art, the transaction data security access method, system, electronic device, storage medium and program product provided by the present disclosure have at least the following beneficial effects:
[0020] (1) Propose a secure data access network that effectively prevents eavesdropping, replay, tampering, and repudiation during user transaction access;
[0021] (2) Establish a unified security access service layer to reduce the duplication of resources invested in establishing security access systems for each application and reduce the difficulty of launching applications;
[0022] (3) Establish a unified security access service layer to solve the problem that most application security functions only focus on one or part of confidentiality, integrity, uniqueness, tamper-proofing and non-repudiation, resulting in uneven security access services, and greatly improve the security access level of applications. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:
[0024] Figure 1 The application scenario of the method and system for implementing secure access to transaction data according to the embodiment of the present disclosure is schematically shown;
[0025] Figure 2 A flowchart schematically shows a method for securely accessing transaction data executed by a terminal device according to a first embodiment of the present disclosure;
[0026] Figure 3 A flowchart schematically shows a process executed by a terminal device after receiving a transaction number according to the first embodiment of the present disclosure;
[0027] Figure 4 Schematically shows a flow chart of a method for securely accessing transaction data executed by a secure access service layer according to a second embodiment of the present disclosure;
[0028] Figure 5 Schematically shows a flowchart of a secure access service layer execution process after data has not been tampered with according to a second embodiment of the present disclosure;
[0029] Figure 6 The operation flow chart schematically shows the data flow process between the terminal device and the security access service layer according to the embodiment of the present disclosure;
[0030] Figure 7 A flowchart schematically shows a method for securely accessing transaction data executed by an application server according to a third embodiment of the present disclosure;
[0031] Figure 8 A flowchart schematically shows a process executed by an application server after processing plaintext request data according to a third embodiment of the present disclosure;
[0032] Fig. 9 The overall operation flow chart of the method for securely accessing transaction data according to an embodiment of the present disclosure is schematically shown;
[0033] Fig.10 The following is a schematic diagram showing an operation flow chart of performing full-link service capability detection on an application service according to a method of an embodiment of the present disclosure;
[0034] Fig.11 Schematically shows a block diagram of a system for secure access to transaction data according to a fourth embodiment of the present disclosure;
[0035] Fig.12 A block diagram of an electronic device suitable for implementing a method for securely accessing transaction data according to a fifth embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0036] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.
[0037] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.
[0038] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification, and should not be interpreted in an idealized or overly rigid manner.
[0039] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).
[0040] Some block diagrams and / or flow charts are shown in the accompanying drawings. It should be understood that some boxes or combinations thereof in the block diagrams and / or flow charts can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that these instructions can create a device for implementing the functions / operations described in these block diagrams and / or flow charts when executed by the processor. The technology of the present disclosure can be implemented in the form of hardware and / or software (including firmware, microcode, etc.). In addition, the technology of the present disclosure can take the form of a computer program product on a computer-readable storage medium storing instructions, which can be used by an instruction execution system or used in conjunction with an instruction execution system.
[0041] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision, disclosure and application of user personal information involved comply with the provisions of relevant laws and regulations, take necessary confidentiality measures, and do not violate public order and good morals.
[0042] In the technical solution of the present disclosure, the user's authorization or consent is obtained before obtaining or collecting the user's personal information.
[0043] The embodiments of the present disclosure provide a method for secure access to transaction data and a system for secure access to transaction data to which the method can be applied, and relate to the fields of network security and financial technology. The method is executed by a terminal device, a secure access service layer, and an application server, respectively. First, the terminal device generates a one-time dynamic key in response to an access request to user transaction data initiated by an internal application; loads a public key issued by the secure access service layer, uses the public key to encrypt the one-time dynamic key, generates an encryption key, and sends the encryption key to the secure access service layer; and receives a transaction number fed back by the secure access service layer. Then, the security access service layer uses an asymmetric encryption algorithm to generate a pair of public and private keys, stores the private key, and sends the public key to the terminal device; receives the encryption key from the terminal device, uses the private key to decrypt the encryption key, obtains a one-time dynamic key, generates a transaction number and feeds it back to the terminal device; receives the encrypted data packet from the terminal device, uses the one-time dynamic key to decrypt the encrypted data packet, obtains the plaintext request data and the original integrity added value; and uses the integrity algorithm to calculate the integrity added value of the plaintext request data, and determines whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value. If so, it is determined that the plaintext request data has not been tampered with. Finally, the application server receives the plaintext request data from the security access service layer, processes the plaintext request data, and obtains the access request result.
[0044] Figure 1The schematic diagram shows an application scenario of a method and system suitable for implementing secure access to transaction data according to an embodiment of the present disclosure. It should be noted that: Figure 1 What is shown are merely examples of application scenarios to which the embodiments of the present disclosure can be applied, in order to help those skilled in the art understand the technical content of the present disclosure, but it does not mean that the embodiments of the present disclosure cannot be used in other devices, systems, environments or scenarios.
[0045] like Figure 1 As shown, the application scenario 100 according to the embodiment of the present disclosure includes terminal devices 101, 102, a secure access service layer 103 and an application server 104. The network is used to provide a medium for a communication link between the terminal devices 101, 102 and the secure access service layer 103, and also to provide a medium for a communication link between the secure access service layer 103 and the application server 104. The network may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.
[0046] Users can use terminal devices 101 and 102 to interact with the secure access service layer 103 through the network to receive or send messages, etc. Internet users can use terminal devices 101 and 102 to access the network where the application server 104 is located through the secure access service layer 103 to interact with the application server 104.
[0047] Various communication client applications may be installed on the terminal devices 101 and 102, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples). The terminal devices 101 and 102 may be various electronic devices with display screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, and desktop computers.
[0048] The application server 104 is used to process application access requests, and may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the terminal devices 101 and 102. The background management server may analyze and process the received user request and other data, and feed back the processing results (such as web pages, information, or data obtained or generated according to the user request) to the terminal device.
[0049] Terminal devices 101 and 102 can be used to generate a one-time dynamic key in response to an access request to user transaction data initiated by an internal application; load a public key issued by the secure access service layer 103, use the public key to encrypt the one-time dynamic key, generate an encryption key, and send the encryption key to the secure access service layer 103; and receive a transaction number fed back by the secure access service layer.
[0050] The security access service layer 103 can be used to generate pairs of public keys and private keys using an asymmetric encryption algorithm, store the private key, and send the public key to the terminal device; receive the encryption key from the terminal device, use the private key to decrypt the encryption key, obtain a one-time dynamic key, generate a transaction number and feed it back to the terminal device; receive the encrypted data packet from the terminal device, use the one-time dynamic key to decrypt the encrypted data packet to obtain the plaintext request data and the original integrity added value; and use the integrity algorithm to calculate the integrity added value of the plaintext request data, determine whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value, and if so, determine that the plaintext request data has not been tampered with.
[0051] The application server 104 may be configured to receive plaintext request data from the security access service layer, process the plaintext request data, and obtain an access request result.
[0052] It should be understood that Figure 1 The number of terminal devices, security access service layers and application servers in the embodiment is only for illustration. Any number of terminal devices, security access service layers and application servers may be provided according to implementation requirements.
[0053] The following will be based on Figure 1 The application scenario described by Figure 2 to Figure 10 A method for securely accessing transaction data of a disclosed embodiment is described in detail.
[0054] Figure 2 The flowchart schematically shows a method for securely accessing transaction data executed by a terminal device according to the first embodiment of the present disclosure.
[0055] like Figure 2 As shown, the method for securely accessing transaction data executed by the terminal device in this embodiment may include operations S210 to S230.
[0056] In operation S210, in response to a request for access to user transaction data initiated by an application program within a terminal device, a one-time dynamic key is generated.
[0057] When a user operates an application on a terminal device to initiate an access request to the user's transaction data, a one-time dynamic key is generated. Exemplarily, a random number algorithm is used to generate a one-time dynamic key corresponding to the access request.
[0058] In operation S220, a public key issued by the secure access service layer is loaded, the one-time dynamic key is encrypted using the public key to generate an encryption key, and the encryption key is sent to the secure access service layer.
[0059] The public key is issued by the secure access service layer and has been loaded in advance. The public key is used to encrypt the one-time dynamic key generated above and then sent to the secure access service layer.
[0060] In operation S230, a transaction number fed back by the secure access service layer is received.
[0061] When the secure access service layer receives the encryption key, the terminal device receives a transaction number returned by the secure access service layer, where the transaction number corresponds to the aforementioned access request.
[0062] Through the embodiments of the present disclosure, the negotiation of the one-time dynamic key for this transaction access is completed.
[0063] In the first embodiment of the present disclosure, before responding to the operation of the access request for the user transaction data initiated by the application program inside the terminal device, the user's consent or authorization may be obtained. For example, before operation S210, the following may be included: obtaining the user's authorization for his / her user transaction data; after obtaining the authorization, the application program may initiate the access request for the user transaction data.
[0064] Thus, a request for access to the user's transaction data may be issued to the user, and when the user agrees or authorizes that the user's transaction data may be obtained, the operation S210 is performed.
[0065] Figure 3 The flowchart schematically shows the process executed by the terminal device after receiving the transaction number according to the first embodiment of the present disclosure.
[0066] like Figure 3 As shown, in the first embodiment of the present disclosure, after the above operation S230, operations S240 to S270 may be further included.
[0067] In operation S240, relevant data of the access request is obtained and the relevant data is encapsulated.
[0068] Specifically, the access request data may include, for example, access request content, transaction number, timestamp and unique feature code of the terminal device. Thus, the terminal device encapsulates the access request content, transaction number, timestamp and unique feature code of the terminal device generated by the access request.
[0069] In operation S250, the encapsulated related data is signed to generate a request data packet.
[0070] The terminal device's internal application is pre-installed with a built-in signature algorithm, which is used to perform signature verification on the overall data to form a complete request data packet.
[0071] In operation S260, an integrity additional value of the request data packet is calculated using an integrity algorithm, and the integrity additional value is added to the end of the request data packet to obtain an updated request data packet.
[0072] The terminal device's internal application program is pre-installed with an integrity algorithm built in. The integrity algorithm is used to perform integrity check on the request data packet, and the corresponding integrity additional value is calculated, and the integrity additional value is loaded at the end of the request data packet. The updated request data packet includes the original request data packet and the integrity additional value.
[0073] In operation S270, the updated request data packet is encrypted using the one-time dynamic key to generate an encrypted data packet, and the encrypted data packet is sent to the secure access service layer.
[0074] After the one-time dynamic key is pre-negotiated, the updated request data packet is encrypted using the one-time dynamic key. After the encryption is completed, the terminal device sends the encrypted data packet to the secure access service layer.
[0075] In the first embodiment of the present disclosure, the security access service layer adopts a distributed deployment to meet the needs of high-concurrency access requests.
[0076] Figure 4 The flowchart schematically shows a method for securely accessing transaction data executed by a secure access service layer according to the second embodiment of the present disclosure.
[0077] like Figure 4 As shown, the secure access method for transaction data executed by the secure access service layer of this embodiment may include operations S410 to S440.
[0078] In operation S410, a pair of public and private keys is generated using an asymmetric encryption algorithm, the private key is stored, and the public key is sent to the terminal device.
[0079] The secure access service layer uses an asymmetric encryption algorithm to generate public and private keys, which are paired, that is, data encrypted with a public key can only be decrypted with a private key, and vice versa. The public key can be published publicly, for example, it can be sent to a terminal device, and the private key is encrypted and stored in the full access service layer.
[0080] In operation S420, an encryption key is received from the terminal device, the encryption key is decrypted using the private key to obtain a one-time dynamic key, and a transaction number is generated and fed back to the terminal device.
[0081] After receiving the encryption key encrypted by the terminal device using the public key, the secure access service layer can restore the original one-time dynamic key by decrypting it with its own stored private key, and establish the transaction number of this transaction. The transaction number is fed back to the terminal device, and the one-time dynamic key is stored.
[0082] In operation S430, an encrypted data packet is received from the terminal device, and the encrypted data packet is decrypted using a one-time dynamic key to obtain plaintext request data and an original integrity additional value.
[0083] After receiving the real user access request, the encrypted data packet is decrypted using the stored one-time dynamic key to obtain the decrypted plaintext request data and disassemble the original integrity added value.
[0084] In operation S440, the integrity algorithm is used to calculate the integrity added value of the plaintext request data, and it is determined whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value. If so, it is determined that the plaintext request data has not been tampered with.
[0085] The plaintext request data is calculated through the integrity algorithm built into the security access service layer. After the integrity added value is obtained, it is compared with the original integrity added value disassembled above to confirm whether the entire plaintext request data has been tampered with, so as to ensure the integrity of the plaintext request data.
[0086] Figure 5 The flowchart schematically shows the execution process of the security access service layer after the data has not been tampered with according to the second embodiment of the present disclosure.
[0087] like Figure 5 As shown, in the second embodiment of the present disclosure, the plaintext request data includes original signature information. After determining in the above operation S440 that the plaintext request data has not been tampered with, operations S450 to S470 may be further included.
[0088] In operation S450, the original signature information is signature-verified, and if the verification passes, the signature information of the security access service layer is added to the original signature information to obtain updated signature information.
[0089] The original signature information is verified by the signature algorithm built into the secure access service layer, and the signature information of the secure access service layer is added to obtain the updated signature information. Thus, the round-trip signature information is encrypted and stored to ensure the non-repudiation of the request data.
[0090] In operation S460, relevant data of the access request in the plaintext request data is extracted, and a uniqueness check is performed on the relevant data. If the check passes, it is determined that the plaintext request data has transaction uniqueness.
[0091] The access request related data includes: access request content, transaction number, timestamp and unique feature code of the terminal device.
[0092] After the signature is verified, the access request content, transaction number, timestamp and unique feature code of the terminal device are checked for uniqueness to ensure transaction uniqueness and prevent replay attacks.
[0093] In operation S470, the plaintext request data is sent to the application server.
[0094] After the above signature verification and uniqueness verification are passed, the real plaintext request data is forwarded to the application server for processing.
[0095] Reference below Figure 6 , combined with specific embodiments Figures 2 to 5 The methods respectively executed by the terminal device and the security access service layer are further described. It can be understood by those skilled in the art that the following exemplary embodiments are only used to understand the present disclosure, and the present disclosure is not limited thereto.
[0096] Figure 6 The operational flow chart schematically shows the data flow process between the terminal device and the security access service layer according to an embodiment of the present disclosure.
[0097] like Figure 6 As shown, in the embodiment of the present disclosure, the data flow between the terminal device and the security access service layer includes the following steps in sequence:
[0098] (1) The application inside the terminal device initiates an access request to the security access service layer for the user's transaction data, and the security access service layer sends its own public key to the application inside the terminal device. That is, the public key is transmitted in plain text throughout the system;
[0099] (2) The terminal device uses a random number algorithm to generate a one-time dynamic key S corresponding to the access request, encrypts it using the received public key to generate an encryption key C, and sends the encryption key C to the secure access service layer;
[0100] (3) The secure access service layer receives the encryption key C, decrypts it using the private key corresponding to the public key, and restores the one-time dynamic key S.
[0101] After the above exchange steps, both the terminal device and the security access service layer obtain the one-time dynamic key S. Therefore, the terminal device can use the one-time dynamic key S to encrypt the request data packet, and the security access service layer can promptly feedback the encrypted response, that is, the transaction number, to the terminal device.
[0102] Through the embodiments of the present disclosure, a security access service layer is established between the application program and the application server inside the terminal device. Through the security access service layer proxy mode, all security services are implemented in this layer, and the real application business needs (such as query, transfer, purchase and other different businesses or different applications) are placed behind the security access service layer to provide unified and comprehensive security access services. Thus, a unified security access service layer is established to solve the problem that most application security functions only focus on one or part of confidentiality, integrity, uniqueness, tamper resistance and non-repudiation, resulting in uneven security access services, and greatly improve the security access level of applications.
[0103] Figure 7 The flowchart schematically shows a method for securely accessing transaction data executed by an application server according to the third embodiment of the present disclosure.
[0104] like Figure 7 As shown, the method for securely accessing transaction data executed by the application server of this embodiment may include operation S710.
[0105] In operation S710, plaintext request data is received from the security access service layer, and the plaintext request data is processed to obtain an access request result.
[0106] Through the embodiments of the present disclosure, the application server can provide actual access request processing services.
[0107] Figure 8 The flowchart schematically shows the process executed by the application server after processing plain text request data according to the third embodiment of the present disclosure.
[0108] like Figure 8 As shown, in the third embodiment of the present disclosure, after the above operation S710, operation S720 may be further included.
[0109] In operation S720, the access request result is transmitted back to the secure access service layer.
[0110] Specifically, when the application server returns the packet, refer to the above Figures 2 to 5 The method shown is executed by the terminal device and the security access service layer respectively, and the transaction request, transaction number, timestamp and terminal device are encapsulated, integrity calculated, and signed in the reverse direction through the security access service layer, and then encrypted with a one-time dynamic key and returned to the user program. After the user program decrypts and confirms the integrity, signature, and transaction uniqueness, the secure user transaction data access is completed. If there are other operations, a new round of secure user access process begins.
[0111] Reference below Fig. 9 and Fig.10, combined with specific embodiments Figures 2 to 8 The secure access method for transaction data shown is further described. Those skilled in the art can understand that the following exemplary embodiments are only used to understand the present disclosure, and the present disclosure is not limited thereto.
[0112] Fig. 9 The overall operation flow chart of the method for securely accessing transaction data according to an embodiment of the present disclosure is schematically shown.
[0113] like Fig. 9 As shown, in the disclosed embodiment, the terminal device encrypts the request data packet after data encapsulation, signature verification and integrity verification, and forwards the encrypted data packet to the secure access service layer. The secure access service layer decrypts the encrypted data packet using the stored private key, and then passes integrity verification, signature verification and uniqueness verification in sequence, and then forwards the real plaintext request data to the application server, which processes the access request data and obtains the real access request result.
[0114] Fig.10 The following schematically shows an operational flow chart of performing full-link service capability detection on an application service according to the method of an embodiment of the present disclosure.
[0115] like Fig.10 As shown, in the embodiment of the present disclosure, first, the security access service layer uses an asymmetric encryption algorithm to generate a pair of public and private keys, the public key is sent to the terminal device, and the private key is encrypted and stored. On the terminal device, the user operates the user-side program to initiate an access request to the transaction data. The user-side program generates a one-time dynamic key, encrypts it with the public key, and sends it to the security access service layer. Next, the security access service layer establishes a transaction number for this transaction and decrypts it with the private key to obtain a one-time dynamic key, and feeds the transaction number back to the terminal device. Then, on the terminal device, the user-side program encapsulates, signs, and calculates the integrity added value of the transaction request, transaction number, timestamp, and unique feature code of the user end, and finally encrypts it with a one-time dynamic key and transmits it to the security access service layer.
[0116] Next, the security access service layer decrypts the data, verifies the integrity, signature, transaction number, and verifies whether confidentiality, integrity, uniqueness, and non-repudiation have all passed the verification. If so, the request data is forwarded to the application server for processing. Otherwise, the access request is terminated.
[0117] Finally, after the application server obtains the access request result of the requested data, the security access service layer encapsulates, signs, and calculates the integrity added value of the transaction request result, transaction number, and timestamp, and finally encrypts it with a one-time dynamic key and returns it to the application on the terminal device.
[0118] Through the embodiments of the present disclosure, a security access service layer is established between the application program and the application server inside the terminal device. Through the security access service layer proxy mode, all security services are implemented in this layer, and the real application business needs (such as query, transfer, purchase and other different businesses or different applications) are placed behind the security access service layer to provide a unified and comprehensive security access service. In the unified security access service layer, confidentiality, integrity, uniqueness, tamper resistance and non-repudiation are achieved, reducing the additional investment in the repeated construction of security functions of each application, and avoiding the problem of repeated investment in application construction and uneven security capabilities.
[0119] Based on the above transaction data security access method, the present disclosure also provides a transaction data security access system. Fig.11 The system is described in detail.
[0120] Fig.11 A block diagram of a system for securely accessing transaction data according to a fourth embodiment of the present disclosure is schematically shown.
[0121] like Fig.11 As shown, the transaction data security access system 1100 of this embodiment includes a terminal device 1110 , a security access service layer 1120 and an application server 1130 .
[0122] The terminal device 1110 is used to generate a one-time dynamic key in response to an access request to user transaction data initiated by an application program inside the terminal device; load a public key issued by the secure access service layer, encrypt the one-time dynamic key using the public key, generate an encryption key, and send the encryption key to the secure access service layer; and receive a transaction number fed back by the secure access service layer. In one embodiment, the terminal device 1110 can be used to perform operations S210 to S230 described above, which will not be described in detail here.
[0123] The security access service layer 1120 is used to generate a pair of public and private keys using an asymmetric encryption algorithm, store the private key, and send the public key to the terminal device; receive the encryption key from the terminal device, use the private key to decrypt the encryption key, obtain a one-time dynamic key, generate a transaction number and feed it back to the terminal device; receive the encrypted data packet from the terminal device, use the one-time dynamic key to decrypt the encrypted data packet, obtain the plaintext request data and the original integrity added value; and use the integrity algorithm to calculate the integrity added value of the plaintext request data, determine whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value, and if so, determine that the plaintext request data has not been tampered with. In one embodiment, the security access service layer 1120 can be used to perform the operations S410 to S440 described above, which will not be repeated here.
[0124] The application server 1130 is used to receive the plaintext request data from the security access service layer, process the plaintext request data, and obtain the access request result. In one embodiment, the application server 1130 can be used to perform the operation S710 described above, which will not be described in detail here.
[0125] Through the embodiments of the present disclosure, a security access service layer is established between the application program and the application server inside the terminal device. Through the security access service layer proxy mode, all security services are implemented in this layer, and the real application business needs (such as query, transfer, purchase and other different businesses or different applications) are placed behind the security access service layer to provide a unified and comprehensive security access service. In the unified security access service layer, confidentiality, integrity, uniqueness, tamper resistance and non-repudiation are achieved, reducing the additional investment in the repeated construction of security functions of each application, and avoiding the problem of repeated investment in application construction and uneven security capabilities.
[0126] According to an embodiment of the present disclosure, any multiple modules in the terminal device 1110, the secure access service layer 1120 and the application server 1130 can be combined into one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the terminal device 1110, the secure access service layer 1120 and the application server 1130 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware and firmware or in any appropriate combination of any of them. Alternatively, at least one of the terminal device 1110, the secure access service layer 1120 and the application server 1130 can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding function can be performed.
[0127] Fig.12 A block diagram of an electronic device suitable for implementing a method for securely accessing transaction data according to a fifth embodiment of the present disclosure is schematically shown.
[0128] like Fig.12As shown, the electronic device 1200 according to an embodiment of the present disclosure includes a processor 1201, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1202 or a program loaded from a storage part 1208 into a random access memory (RAM) 1203. The processor 1201 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 1201 may also include an onboard memory for caching purposes. The processor 1201 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0129] In RAM 1203, various programs and data required for the operation of electronic device 1200 are stored. Processor 1201, ROM 1202 and RAM 1203 are connected to each other through bus 1204. Processor 1201 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 1202 and / or RAM 1203. It should be noted that the program can also be stored in one or more memories other than ROM 1202 and RAM 1203. Processor 1201 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.
[0130] According to an embodiment of the present disclosure, the electronic device 1200 may further include an input / output (I / O) interface 1205, which is also connected to the bus 1204. The electronic device 1200 may further include one or more of the following components connected to the I / O interface 1205: an input portion 1206 including a keyboard, a mouse, etc.; an output portion 1207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 1208 including a hard disk, etc.; and a communication portion 1209 including a network interface card such as a LAN card, a modem, etc. The communication portion 1209 performs communication processing via a network such as the Internet. A drive 1210 is also connected to the I / O interface 1205 as needed. A removable medium 1211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1210 as needed, so that a computer program read therefrom is installed into the storage portion 1208 as needed.
[0131] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method for securely accessing transaction data according to the embodiments of the present disclosure is implemented.
[0132] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus, or a device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 1202 and / or RAM 1203 described above and / or one or more memories other than ROM 1202 and RAM 1203.
[0133] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program contains program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the secure access method for transaction data provided by the embodiment of the present disclosure.
[0134] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 1201. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.
[0135] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 1209, and / or installed from the removable medium 1211. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0136] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1209, and / or installed from the removable medium 1211. When the computer program is executed by the processor 1201, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.
[0137] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).
[0138] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0139] It will be appreciated by those skilled in the art that the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations and / or combinations are not explicitly described in the present disclosure. In particular, the features described in the various embodiments and / or claims of the present disclosure may be combined and / or combined in a variety of ways without departing from the spirit and teachings of the present disclosure. All of these combinations and / or combinations fall within the scope of the present disclosure.
[0140] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. The scope of the present disclosure is defined by the attached claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.
Claims
1. A method for securely accessing transaction data executed by a terminal device, comprising: In response to a request for access to user transaction data initiated by an application within the terminal device, a one-time dynamic key is generated; Loading a public key issued by the secure access service layer, using the public key to encrypt the one-time dynamic key, generating an encryption key, and sending the encryption key to the secure access service layer; The secure access service layer is established between the internal application of the terminal device and the application server; as well as Receiving a transaction number fed back by the security access service layer; After receiving the transaction number fed back by the security access service layer, the method further includes: Obtaining relevant data of the access request and encapsulating the relevant data; the relevant data of the access request includes: access request content, transaction number, timestamp and unique feature code of the terminal device; Sign the encapsulated related data and generate a request data packet; Calculating the integrity additional value of the request data packet using an integrity algorithm, and adding the integrity additional value to the end of the request data packet to obtain an updated request data packet; and The updated request data packet is encrypted using the one-time dynamic key to generate an encrypted data packet, and the encrypted data packet is sent to the secure access service layer.
2. The method according to claim 1, wherein: The generating of a one-time dynamic key comprises: A one-time dynamic key corresponding to the access request is generated using a random number algorithm.
3. The method according to claim 1, wherein: Before responding to the access request to the user transaction data initiated by the internal application of the terminal device, the method further includes: Obtain user authorization for their user transaction data; After obtaining the authorization, the application initiates an access request to the user transaction data.
4. A method for secure access to transaction data performed by a secure access service layer, comprising: Generate a pair of public and private keys using an asymmetric encryption algorithm, store the private key, and send the public key to the terminal device; Receive the encryption key from the terminal device, decrypt the encryption key using the private key to obtain a one-time dynamic key, generate a transaction number and feed it back to the terminal device; Receiving an encrypted data packet from a terminal device, and decrypting the encrypted data packet using the one-time dynamic key to obtain plaintext request data and an original integrity additional value; as well as Calculate the integrity added value of the plaintext request data using an integrity algorithm, and determine whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value, and if so, determine that the plaintext request data has not been tampered with; The plaintext request data includes original signature information, and after determining that the plaintext request data has not been tampered with, the method further includes: Performing signature verification on the original signature information, and if the verification passes, adding the signature information of the security access service layer to the original signature information to obtain updated signature information; Extracting relevant data of the access request from the plaintext request data, and performing a uniqueness check on the relevant data; if the check passes, determining that the plaintext request data has transaction uniqueness; and The plaintext request data is sent to the application server.
5. The method according to claim 4, wherein: The access request related data includes: access request content, transaction number, timestamp and unique feature code of the terminal device.
6. A secure access system for transaction data, comprising: The terminal device is used to generate a one-time dynamic key in response to a request for access to user transaction data initiated by an application program within the terminal device; Loading a public key issued by the secure access service layer, using the public key to encrypt the one-time dynamic key, generating an encryption key, and sending the encryption key to the secure access service layer; The secure access service layer is established between the internal application of the terminal device and the application server; and receiving a transaction number fed back by the secure access service layer, wherein the terminal device is further configured to obtain relevant data of the access request and encapsulate the relevant data after receiving the transaction number fed back by the secure access service layer; The relevant data of the access request includes: access request content, transaction number, timestamp and unique feature code of the terminal device; signing the encapsulated relevant data to generate a request data packet; calculating the integrity additional value of the request data packet using an integrity algorithm, adding the integrity additional value to the end of the request data packet to obtain an updated request data packet; and encrypting the updated request data packet using the one-time dynamic key to generate an encrypted data packet, and sending the encrypted data packet to the secure access service layer; The security access service layer is used to generate a pair of public and private keys using an asymmetric encryption algorithm, store the private key, and send the public key to the terminal device; receive the encryption key from the terminal device, use the private key to decrypt the encryption key to obtain a one-time dynamic key, generate a transaction number and feed it back to the terminal device; receive the encrypted data packet from the terminal device, use the one-time dynamic key to decrypt the encrypted data packet to obtain plaintext request data and the original integrity added value; and use the integrity algorithm to calculate the integrity added value of the plaintext request data, determine whether the integrity added value of the plaintext request data is completely consistent with the original integrity added value, and if so, determine that the plaintext request data has not been tampered with; The application server is used to receive the plaintext request data from the security access service layer, process the plaintext request data, and obtain the access request result.
7. An electronic device comprising: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors execute the method according to any one of claims 1 to 5.
8. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Power big data transmission method and system based on rapid matching and integrity detection
CN106506453A
Message processing method and device, server, computer equipment and storage medium
CN113067828A
Data safety protection method and system
CN113438086A