A data transmission method, device, storage medium and electronic equipment

By using a key management system to encrypt users' blockchain private keys in the blockchain system and decrypt them when needed, the problem of private key leakage in the bridging system is solved, and the security of data transmission is improved.

CN115529158BActive Publication Date: 2026-05-12ADVANCED NOVA TECH (SINGAPORE) PTE LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ADVANCED NOVA TECH (SINGAPORE) PTE LTD
Filing Date
2022-08-12
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

In blockchain systems, users' blockchain private keys are at risk of being leaked when deployed in the bridging system, resulting in low security.

Method used

The key management system creates an encryption key to encrypt the user's blockchain private key, generates encrypted data, and saves it to the bridging system. The decryption key is only retrieved from the key management system when needed to decrypt the data, thus avoiding the storage of plaintext private keys.

Benefits of technology

It improves the security of users' blockchain private keys, prevents private key leakage, and enhances the security of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115529158B_ABST
    Figure CN115529158B_ABST
Patent Text Reader

Abstract

The specification discloses a data transmission method, device, storage medium and electronic equipment. First, an encryption key created by a key management system is received. Second, a user's blockchain private key is encrypted according to the encryption key to obtain encrypted data. Then, the encrypted data is saved to a bridge system to complete deployment of the bridge system. When a service request for the user is received, an indication message is sent to the bridge system to enable the bridge system to obtain a decryption key corresponding to the encryption key from the key management system based on the indication message, and decrypt the encrypted data by using the decryption key to obtain the user's blockchain private key. Finally, the bridge system executes a blockchain service corresponding to the service request according to the user's blockchain private key. The method can avoid storing the user's blockchain private key in plaintext in the bridge system, and can avoid the risk of leakage of the user's blockchain private key, thereby improving the security of the user's blockchain private key.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of blockchain technology, and in particular to a method, apparatus, storage medium and electronic device for data transmission. Background Technology

[0002] With the continuous development of computer technology, blockchain technology has emerged. Based on actual business needs, data that needs to be stored (such as user business data, privacy data, etc.) can be stored in the blockchain to prevent these stored data from being tampered with, thereby ensuring data security.

[0003] Currently, when different users access blockchain nodes, they typically send business requests to a bridging system to interact with the blockchain nodes. However, before using the bridging system, users' plaintext blockchain private keys are usually stored in the bridging system, and then deployed by technical personnel. This means that users' blockchain private keys may be known to technical personnel, i.e., there is a risk of users' blockchain private keys being leaked.

[0004] Therefore, how to ensure the security of users' blockchain private keys is an urgent problem to be solved. Summary of the Invention

[0005] This specification provides a method, apparatus, storage medium, and electronic device for data transmission to address the problem of low security during data transmission.

[0006] The following technical solution is adopted in this specification:

[0007] This specification provides a method for data transmission, including:

[0008] Receive the encryption key created by the key management system;

[0009] Based on the encryption key, the user's blockchain private key is encrypted to obtain encrypted data;

[0010] The encrypted data is saved to the bridging system to complete the deployment of the bridging system;

[0011] Upon receiving a business request for the user, an instruction message is sent to the bridging system, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key;

[0012] The bridging system executes the blockchain service corresponding to the service request based on the user's blockchain private key.

[0013] Optionally, the method further includes:

[0014] If it is determined that the user's blockchain private key was not successfully decrypted, the error type of the decryption failure is determined based on the task log generated during the decryption of the encrypted data.

[0015] Repair the bridging system according to the error type.

[0016] Optionally, the encryption key includes: the public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

[0017] This specification provides a method for data transmission, including:

[0018] The bridging system acquires and stores encrypted data, which is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system.

[0019] In response to an instruction message sent by the server, the system obtains the decryption key corresponding to the encryption key from the key management system, and decrypts the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user.

[0020] Based on the user's blockchain private key, execute the blockchain service corresponding to the service request.

[0021] Optionally, the method further includes:

[0022] The decrypted blockchain private key of the user is cached in the bridging system.

[0023] Optionally, the encryption key includes: the public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

[0024] This specification provides a data transmission apparatus, comprising:

[0025] The receiving module is used to receive encryption keys created by the key management system;

[0026] The encryption module is used to encrypt the user's blockchain private key according to the encryption key to obtain encrypted data;

[0027] The deployment module is used to save the encrypted data to the bridging system in order to complete the deployment of the bridging system;

[0028] The decryption module is used to send an instruction message to the bridging system when it receives a business request for the user, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key;

[0029] The execution module is used to execute the blockchain business corresponding to the business request through the bridging system, based on the user's blockchain private key.

[0030] This specification provides a data transmission apparatus, comprising:

[0031] The acquisition module is used to bridge the system to acquire and store encrypted data, which is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system.

[0032] The decryption module is used to respond to an instruction message sent by the server, obtain the decryption key corresponding to the encryption key from the key management system, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user.

[0033] The execution module is used to execute the blockchain business corresponding to the business request based on the user's blockchain private key.

[0034] This specification provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method for data transmission.

[0035] This specification provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the aforementioned data transmission method.

[0036] The above-mentioned technical solutions adopted in this specification can achieve the following beneficial effects:

[0037] In the data transmission method provided in this specification, the server receives an encryption key created by the key management system. Next, it encrypts the user's blockchain private key using the encryption key to obtain encrypted data. Then, it saves the encrypted data to the bridging system to complete the deployment of the bridging system. Then, upon receiving a business request from the user, it sends an instruction message to the bridging system, enabling the bridging system to retrieve the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key. Finally, through the bridging system, it executes the blockchain business corresponding to the business request based on the user's blockchain private key.

[0038] As can be seen from the above method, this approach can encrypt the user's blockchain private key using an encryption key created by the key management system, obtaining encrypted data. This encrypted data is then saved to the bridging system to complete its deployment. This avoids the risk of plaintext storage of the user's blockchain private key in the bridging system, thus improving the security of the user's blockchain private key. Attached Figure Description

[0039] The accompanying drawings, which are included to provide a further understanding of this specification and form part of this specification, illustrate exemplary embodiments and are used to explain this specification, but do not constitute an undue limitation thereof. In the drawings:

[0040] Figure 1 A flowchart illustrating a data transmission method provided in an embodiment of this specification;

[0041] Figure 2 A flowchart illustrating a data transmission method provided in an embodiment of this specification;

[0042] Figure 3 This is a schematic flowchart of a data transmission system provided in an embodiment of this specification;

[0043] Figure 4 A schematic diagram of a data transmission device provided in an embodiment of this specification;

[0044] Figure 5 A schematic diagram of a data transmission device provided in an embodiment of this specification;

[0045] Figure 6 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this specification. Detailed Implementation

[0046] To make the objectives, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, and not all of them. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this specification.

[0047] The technical solutions provided in the various embodiments of this specification are described in detail below with reference to the accompanying drawings.

[0048] To make the objectives, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, and not all of them. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this specification.

[0049] Blockchain technology is an emerging technology in which multiple computing devices collaboratively participate in "ledger keeping" to maintain a complete distributed database. Blockchain technology can construct real-world data into a standard transaction format supported by the blockchain, and then publish it to the blockchain. The nodes in the blockchain then perform consensus processing on the received transactions. Through consensus, the transactions stored on each node in the blockchain can be synchronized to ensure that the transactions stored on each node are identical, thus achieving data consistency.

[0050] However, the consensus method described above can only achieve transaction synchronization between nodes within the same blockchain system. If multiple different blockchain systems want to achieve cross-system transaction synchronization, the consensus method described above cannot be used.

[0051] Based on this, this specification employs a bridging system to achieve transaction synchronization between different blockchain systems. The bridging system can generate corresponding transactions based on the transaction types currently being executed by the first and second blockchain systems that conform to the regulations of the exchange to be synchronized. These transactions then propel the execution of corresponding processes in the first and second blockchain systems. The entire process achieves data synchronization on the blockchain, preventing the problem of transaction information being tampered with. Furthermore, the first and second blockchain systems only proceed to the next step after confirming the other's successful execution, avoiding the problem of missing transaction information or unsuccessful synchronization due to the failure of one party, thus improving the security and reliability of transaction synchronization.

[0052] The following is a brief explanation of the transaction synchronization method using a bridging system applied in this manual.

[0053] Since user accounts in the first and second blockchain systems are independent, public accounts are established on both systems to facilitate transactions between them. These public accounts are linked. Specifically, a user account on the first blockchain first transfers funds to its corresponding public account on the first blockchain. Then, a bridging system transmits the transaction information, enabling the public account on the second blockchain to transfer funds back to the user account on the second blockchain, thus completing the transaction between the two systems.

[0054] Take, for example, a transaction where user account A on the first blockchain system transfers X yuan to user account B on the second blockchain system.

[0055] First, upon receiving the transaction information to be synchronized, any blockchain node in the first blockchain system, if confirming the transaction information is correct, freezes the corresponding user account A on the first blockchain system as the first freeze result. The bridging system, upon receiving the first freeze result, sends it along with the transaction information to any blockchain node in the second blockchain system. Then, upon receiving the first freeze result and transaction information from the bridging system, any blockchain node in the second blockchain system, if confirming the transaction information is correct, freezes the corresponding user account B on the second blockchain system as the second freeze result. The bridging system, upon receiving the second freeze result, sends it to any blockchain node in the first blockchain system.

[0056] Secondly, after receiving the second freeze result sent by the bridging system, any blockchain node on the first blockchain system, based on the transaction information, performs an unfreezing operation on the corresponding user account A on the first blockchain system, and transfers X yuan from user account A to the corresponding public account on the first blockchain system, as the first transaction result. The bridging system can, after listening to the first transaction result, send it to any blockchain node on the second blockchain system. After receiving the first transaction result sent by the bridging system, any blockchain node on the second blockchain system, based on the transaction information, performs an unfreezing operation on the corresponding user account on the second blockchain system, and transfers X yuan from the corresponding public account on the second blockchain system to the corresponding user account B on the second blockchain system, as the second transaction result. The bridging system can, after listening to the second transaction result, send it to any blockchain node on the first blockchain system.

[0057] Finally, after receiving the second transaction result sent by the bridging system, any blockchain node on the first blockchain system determines that the transaction information to be synchronized has been synchronized.

[0058] The technical solutions provided in the various embodiments of this specification are described in detail below with reference to the accompanying drawings.

[0059] Figure 1 This is a flowchart illustrating a data transmission method described in this specification, which specifically includes the following steps:

[0060] S100: Receives the encryption key created by the key management system.

[0061] In the embodiments of this specification, the execution subject of the data transmission method can be a server or an electronic device such as a desktop computer. For ease of description, the data transmission method provided in this specification will be described below using only the server as the execution subject.

[0062] In the embodiments described in this specification, the server may receive encryption keys created by the key management system.

[0063] Keys are categorized into symmetric keys and asymmetric keys. A symmetric key means that the sender and receiver use the same key to encrypt and decrypt data. In other words, the encryption and decryption keys are the same. An asymmetric key means that different keys are used to encrypt and decrypt data. For example, if the sender uses a public key to encrypt, the receiver uses a private key to decrypt. Similarly, if the receiver uses a private key to encrypt, the sender uses a public key to decrypt.

[0064] In practical applications, if the bridging system stores the key, it will cause the encrypted data encrypted with the key to lose its confidentiality. Therefore, the server needs to prevent the bridging system from obtaining the key used for encryption.

[0065] In the embodiments described in this specification, if the key is a symmetric key, after the key management system creates the symmetric key, it sends the symmetric key to the server via email upon receiving the user's email address and saves the symmetric key. The server can receive the symmetric key created by the key management system via email. If the key is an asymmetric key, after the key management system creates the asymmetric key, it sends the public key of the asymmetric key to the server via email and saves the private key of the asymmetric key. The server can receive the public key of the asymmetric key created by the key management system via email.

[0066] Of course, the server can also obtain the user's symmetric key or the public key from the asymmetric key through offline transmission. Offline transmission methods mentioned here can refer to storing the user's symmetric key or the public key from the asymmetric key on a USB flash drive, or transmitting paper documents, etc.

[0067] As can be seen from the above, the server needs to transmit the key through a method other than a bridging system to avoid the risk of key leakage.

[0068] It should be noted that a key management system refers to a unified and centralized key management mechanism, in which a KMC (Key Management Center) provides unified key management services. It consists of key generation servers, key database servers, and key service managers, and is suitable for various private networks.

[0069] S102: Based on the encryption key, encrypt the user's blockchain private key to obtain encrypted data.

[0070] In the embodiments described in this specification, the server can encrypt the user's blockchain private key using an encryption key to obtain encrypted data. Of course, in addition to encrypting the user's blockchain private key, the server can also encrypt data such as the user's blockchain access address and the status codes of the user's interaction with the blockchain to obtain encrypted data.

[0071] If the encryption key is a symmetric key, the server can encrypt the user's blockchain private key using the symmetric key to obtain encrypted data. If the key is an asymmetric key, the server can encrypt the user's blockchain private key using the public key within the asymmetric key to obtain encrypted data.

[0072] S104: Save the encrypted data to the bridging system to complete the deployment of the bridging system.

[0073] In practical applications, different users typically interact with blockchain nodes through a bridging system. However, this method requires storing the user's blockchain private key in plaintext within the bridging system before deployment by technicians. This poses a risk that the user's private key might be known to technicians, leading to its leakage. Therefore, the server can encrypt the user's blockchain private key before storing it in the bridging system, thus avoiding the risk of technicians accessing the user's private key during deployment.

[0074] In the embodiments described in this specification, the server can save encrypted data to the bridging system to complete the deployment of the bridging system.

[0075] Specifically, the server can store encrypted data in a specified file location within the installation package corresponding to the bridging system, and then install the package to complete the deployment.

[0076] S106: Upon receiving a service request for the user, an instruction message is sent to the bridging system, so that the bridging system obtains the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypts the encrypted data using the decryption key to obtain the user's blockchain private key.

[0077] In the embodiments described in this specification, when the server receives a business request for a user, it can send an instruction message to the bridging system, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key.

[0078] If the key is a symmetric key, the server can send an instruction message to the bridging system upon receiving a business request from a user. This instruction message allows the bridging system to retrieve the symmetric key from the key management system and decrypt the encrypted data using the symmetric key to obtain the user's blockchain private key. If the key is an asymmetric key, the server can also send an instruction message to the bridging system upon receiving a business request from a user. This instruction allows the bridging system to retrieve the private key from the asymmetric key management system and decrypt the encrypted data using the private key to obtain the user's blockchain private key.

[0079] In practical applications, decryption failures may occur during the decryption process using a bridging system. Therefore, the server needs to determine the type of error causing the decryption failure in order to repair the bridging system.

[0080] In the embodiments described in the specification, if it is determined that the user's blockchain private key has not been successfully decrypted, the server can determine the error type of the decryption failure based on the task log generated by the decryption of the encrypted data.

[0081] Secondly, the server can repair the bridging system based on the type of error.

[0082] Specifically, if it is determined that the user's blockchain private key has not been successfully decrypted, the server can display the task logs generated during the decryption process to the user. For example, if the network connection fails, the server will display the task logs corresponding to the network connection error. As another example, if decryption of encrypted data fails, the server will display the task logs corresponding to an incorrect decryption key. Furthermore, if the decrypted user's blockchain private key is incorrect, the server will display the task logs corresponding to this error.

[0083] After repairing the bridging system, the server can re-decrypt the encrypted data. During the decryption process, multiple decryption failures may occur. The server can repair the bridging system sequentially based on the error type of the decryption failure and re-decrypt the encrypted data until the user's blockchain private key is obtained.

[0084] S108: Through the bridging system, the blockchain service corresponding to the service request is executed based on the user's blockchain private key.

[0085] In the embodiments described in this specification, the server needs to interact with the blockchain nodes through a bridging system. The server can use the bridging system to execute the blockchain service corresponding to the business request based on the user's blockchain private key.

[0086] Specifically, when a user needs to perform business processing, they first register or log in through the business system (client or application, APP) installed on the server (such as a mobile phone, tablet, or desktop computer). Then, when the server receives a business request from the user, it sends an instruction message to the bridging system. Based on the instruction message, the bridging system obtains the decryption key corresponding to the encryption key from the key management system, decrypts the encrypted data using the decryption key to obtain the user's blockchain private key, verifies the user's blockchain private key, and determines whether the business request meets the preset message format. If the verification is successful and the business request meets the preset message format, the blockchain business corresponding to the business request is executed.

[0087] Subsequently, the bridging system can parse the block data corresponding to the business requests returned by the blockchain nodes and return the parsed block data to the business system installed on the server.

[0088] In practical applications, a blockchain contains several blockchain nodes, each of which can store a complete copy of the blockchain. However, individual blockchain nodes may malfunction. Therefore, the server can randomly select one blockchain node from among the blockchain nodes to interact with, in order to avoid errors in the interacting blockchain node.

[0089] In the embodiments described in this specification, the server can randomly select a blockchain node from all blockchain nodes in the blockchain for each data transmission and execute the blockchain business corresponding to the business request.

[0090] In the embodiments described in this specification, the blockchain involved in this specification is a technology developed based on cryptography. From the submission of a transaction until the block containing the transaction is uploaded to the chain, various blockchain nodes need to frequently perform operations such as encryption, decryption, signing, signature verification, and hash calculation.

[0091] exist Figure 2 In this system, for each business unit, its corresponding servers are deployed in its designated data center, and all servers use the same business system. The bridging system for that business unit can retrieve and store encrypted data. Users log into the business system using their account and password. When the business system receives a business request from a user, it sends an instruction message to the bridging system corresponding to that business unit. Based on this instruction message, the bridging system retrieves the decryption key corresponding to the encryption key from the key management system. Using this decryption key, it decrypts the encrypted data to obtain the user's blockchain private key. The bridging system then executes the blockchain-based business logic corresponding to the requested transaction based on the user's blockchain private key.

[0092] As can be seen from the above process, this method can encrypt the user's blockchain private key using an encryption key created by the key management system, obtaining encrypted data. This encrypted data is then saved to the bridging system to complete its deployment. This avoids the risk of storing the user's blockchain private key in plaintext on the bridging system, thus improving the security of the user's blockchain private key.

[0093] Figure 3 This is a flowchart illustrating a data transmission method described in this specification, which specifically includes the following steps:

[0094] S300: The bridging system acquires and stores encrypted data, which is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system.

[0095] S302: In response to the instruction message sent by the server, the decryption key corresponding to the encryption key is obtained from the key management system, and the encrypted data is decrypted using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user.

[0096] S304: Execute the blockchain service corresponding to the service request based on the user's blockchain private key.

[0097] In the embodiments of this specification, the execution subject of the data transmission method can be a bridging system. For ease of description, the data transmission method provided in this specification will be described below using only the server as the execution subject.

[0098] In the embodiments described in this specification, the bridging system can acquire and store encrypted data. The encrypted data mentioned here is obtained by encrypting the user's blockchain private key using an encryption key created by the key management system.

[0099] If the key is a symmetric key, the encrypted data is obtained by encrypting the user's blockchain private key using the symmetric key. If the encryption key is the public key of an asymmetric key, the encrypted data is obtained by encrypting the user's blockchain private key using the public key of the asymmetric key.

[0100] It should be noted that the bridging system mentioned here can refer to a bridging system that has already been deployed. The bridging system can store the acquired encrypted data in a specified file address within the bridging system for subsequent decryption.

[0101] Secondly, the bridging system can respond to the instruction message sent by the server, obtain the decryption key corresponding to the encryption key from the key management system, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user.

[0102] If the key is a symmetric key, the bridging system can respond to the instruction message sent by the server, obtain the symmetric key from the key management system, and decrypt the encrypted data using the symmetric key to obtain the user's blockchain private key. If the key is an asymmetric key, the bridging system can respond to the instruction message sent by the server, obtain the public key from the asymmetric key from the key management system, and decrypt the encrypted data using the public key from the asymmetric key to obtain the user's blockchain private key.

[0103] Finally, the bridging system can execute the blockchain business corresponding to the business request based on the user's blockchain private key.

[0104] In practical applications, every time the server interacts with a blockchain node through the bridging system, the bridging system needs to obtain the decryption key corresponding to the encryption key from the key management system to decrypt the encrypted data. This leads to a decrease in the efficiency of the interaction. Based on this, the server can cache the decrypted user data in the bridging system and directly call the user's blockchain private key during the interaction with the blockchain node to improve the efficiency of executing the blockchain business corresponding to the business request.

[0105] In the embodiments described in this specification, the bridging system can cache the decrypted user's blockchain private key in the bridging system so that it can be invoked later in the process of executing the blockchain business corresponding to the same user's business request.

[0106] It should be noted that if technicians need to view or repair the bridging system, they should delete the cached data in the bridging system.

[0107] The above is a data transmission method provided by the embodiments of this specification. Based on the same idea, this specification also provides corresponding devices, storage media and electronic devices.

[0108] Figure 4 This is a schematic diagram of a data transmission apparatus provided in an embodiment of this specification. The apparatus includes:

[0109] Receiver module 400 is used to receive encryption keys created by the key management system;

[0110] The encryption module 402 is used to encrypt the user's blockchain private key according to the encryption key to obtain encrypted data;

[0111] Deployment module 404 is used to save the encrypted data to the bridging system in order to complete the deployment of the bridging system;

[0112] The decryption module 406 is used to send an instruction message to the bridging system when it receives a business request for the user, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key;

[0113] The execution module 408 is used to execute the blockchain business corresponding to the business request through the bridging system, based on the user's blockchain private key.

[0114] Optionally, the execution module 408 is further configured to, if it is determined that the user's blockchain private key has not been successfully decrypted, determine the error type of the decryption failure based on the task log generated during the decryption of the encrypted data. Based on the error type, repair the bridging system.

[0115] Optionally, the encryption key includes: the public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

[0116] Figure 5 This is a schematic diagram of a data transmission apparatus provided in an embodiment of this specification. The apparatus includes:

[0117] The acquisition module 500 is used to acquire and store encrypted data through the bridging system. The encrypted data is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system.

[0118] The decryption module 502 is used to respond to an instruction message sent by the server, obtain the decryption key corresponding to the encryption key from the key management system, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user.

[0119] The execution module 504 is used to execute the blockchain business corresponding to the business request based on the user's blockchain private key.

[0120] Optionally, the execution module 504 is further configured to cache the decrypted user's blockchain private key in the bridging system.

[0121] Optionally, the encryption key includes: the public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

[0122] This specification also provides a computer-readable storage medium storing a computer program that, when executed by a processor, can be used to perform the above-described actions. Figure 1 as well as Figure 3 The provided data transmission method.

[0123] The embodiments in this specification also provide Figure 6 The diagram shows the structure of the electronic device. Figure 6 At the hardware level, this electronic device includes a processor, internal bus, network interface, memory, and non-volatile memory, and may also include other hardware required for business operations. The processor reads the corresponding computer program from the non-volatile memory into memory and then executes it to achieve the above. Figure 1 as well as Figure 3 The provided data transmission method.

[0124] Of course, in addition to software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of hardware and software. In other words, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0125] It should be noted that all actions involving the acquisition of signals, information, or data in this application are carried out in compliance with the relevant data protection laws and policies of the country where the application is located, and with the authorization granted by the owner of the relevant device.

[0126] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0127] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0128] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0129] For ease of description, the above devices are described in terms of function, divided into various units. Of course, in implementing this specification, the functions of each unit can be implemented in one or more software and / or hardware components.

[0130] Those skilled in the art will understand that embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this specification may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0131] This specification is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this specification. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create a machine for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0132] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0133] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0134] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0135] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0136] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0137] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0138] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this specification may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0139] This specification can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This specification can also be practiced in distributed computing environments, where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0140] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0141] The above description is merely an embodiment of this specification and is not intended to limit this specification. Various modifications and variations can be made to this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims of this specification.

Claims

1. A method for data transmission, comprising: Receive the encryption key created by the key management system; Based on the encryption key, the user's blockchain private key is encrypted to obtain encrypted data; The encrypted data is saved to the bridging system to complete the deployment of the bridging system and avoid the user's blockchain private key from being exposed during the deployment of the bridging system. Upon receiving a business request for the user, an instruction message is sent to the bridging system, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key; The bridging system executes the blockchain service corresponding to the service request based on the user's blockchain private key.

2. The method of claim 1, further comprising: If it is determined that the user's blockchain private key was not successfully decrypted, the error type of the decryption failure is determined based on the task log generated during the decryption of the encrypted data. Repair the bridging system according to the error type.

3. The method as described in claim 1, wherein the encryption key comprises: The public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

4. A method for data transmission, comprising: The bridging system acquires and stores encrypted data. The encrypted data is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system, thereby preventing the user's blockchain private key from being exposed during the deployment of the bridging system. In response to an instruction message sent by the server, the system obtains the decryption key corresponding to the encryption key from the key management system, and decrypts the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user. Based on the user's blockchain private key, execute the blockchain service corresponding to the service request.

5. The method of claim 4, further comprising: The decrypted blockchain private key of the user is cached in the bridging system.

6. The method of claim 4, wherein the encryption key comprises: The public key in the asymmetric key, and the decryption key corresponding to the encryption key includes: the private key corresponding to the public key in the asymmetric key.

7. A data transmission apparatus, comprising: The receiving module is used to receive encryption keys created by the key management system; The encryption module is used to encrypt the user's blockchain private key according to the encryption key to obtain encrypted data; The deployment module is used to save the encrypted data to the bridging system to complete the deployment of the bridging system and avoid the user's blockchain private key from being exposed during the deployment of the bridging system. The decryption module is used to send an instruction message to the bridging system when it receives a business request for the user, so that the bridging system can obtain the decryption key corresponding to the encryption key from the key management system based on the instruction message, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key; The execution module is used to execute the blockchain business corresponding to the business request through the bridging system, based on the user's blockchain private key.

8. A data transmission apparatus, comprising: The acquisition module is used to acquire and store encrypted data through the bridging system. The encrypted data is obtained by encrypting the user's blockchain private key with an encryption key created by the key management system, so as to avoid the user's blockchain private key from being exposed during the deployment of the bridging system. The decryption module is used to respond to an instruction message sent by the server, obtain the decryption key corresponding to the encryption key from the key management system, and decrypt the encrypted data using the decryption key to obtain the user's blockchain private key. The instruction message is sent by the server to the bridging system when it receives a business request for the user. The execution module is used to execute the blockchain business corresponding to the business request based on the user's blockchain private key.

9. A computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in any one of claims 1-6.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the method according to any one of claims 1-6.