Data processing method of blockchain network, computer device and storage medium
By using business smart contracts and nested encryption technology in the blockchain network, the privacy and security issues of user receipt information in online shopping are solved, and the privacy and security of data are guaranteed.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-01
- Publication Date
- 2026-03-17
AI Technical Summary
During online shopping, the privacy and security of users' receiving information are difficult to guarantee effectively, especially during the transmission of logistics information at multiple stages.
By using business smart contracts in the blockchain network and employing nested encryption technology to process the original authorized data, encrypted authorized data is generated. The data is then used to authorize a second business client to use the target business data, without directly transmitting the original authorized data, thus ensuring data privacy and security.
It improves the privacy and security of users' package receipt information, prevents the leakage of sensitive information during the logistics process, and enhances the confidentiality and security of data.
Smart Images

Figure CN115563642B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of blockchain technology, and in particular to a data processing method, computer equipment, and storage medium for a blockchain network. Background Technology
[0002] With the continuous development of computer networks, online shopping is becoming increasingly common. However, since online shopping involves multiple stages, ensuring the information security of users at each stage has become a major concern.
[0003] In existing applications, after a buyer purchases a product from a seller on an e-commerce platform, the buyer can provide the seller with relevant shipping information (including address and phone number), and the seller will then provide the shipping information to the logistics company to place a shipping order. It is evident that the privacy and security of the user's shipping information cannot be guaranteed during the online shopping process. Summary of the Invention
[0004] This application provides a data processing method, computer equipment, and storage medium for a blockchain network, which ensures the data privacy and data security of the original authorized data while authorizing a second business client to use the target business data.
[0005] This application provides a data processing method for a blockchain network, which may include:
[0006] Receive a data authorization request from the first service client; the data authorization request contains the client public key of the second service client;
[0007] The business smart contract is invoked to obtain the original authorized data indicated by the data authorization request, and the original authorized data is nested and encrypted based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data.
[0008] Obtain data identification information associated with encrypted authorization data, and send the data identification information to the second business client to authorize the second business client to use target business data based on the data identification information. The target business data includes the original authorization data or business data generated based on the original authorization data.
[0009] This application provides a data processing device for a blockchain network, the device comprising:
[0010] The request receiving module is used to receive data authorization requests from the first business client; the data authorization request contains the client public key of the second business client;
[0011] The encryption module is used to call the business smart contract to obtain the original authorized data indicated by the data authorization request, and to perform nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data.
[0012] The identifier acquisition module is used to acquire data identifier information associated with encrypted authorization data and send the data identifier information to the second business client to authorize the second business client to use the target business data according to the data identifier information. The target business data includes the original authorization data or business data generated based on the original authorization data.
[0013] Optionally, the data authorization request may also include a private key signature of the first business client;
[0014] The methods by which the encryption module calls the business smart contract to obtain the original authorized data indicated in the data authorization request include:
[0015] The business smart contract is invoked to verify the private key signature based on the client's public key of the first business client;
[0016] If the private key signature verification passes, the business smart contract is invoked to obtain the original authorized data indicated in the data authorization request.
[0017] Optionally, the private key signature is obtained by calling the local smart contract in the first business client and signing the verification data based on the client private key of the first business client; the data authorization request also includes the verification data;
[0018] The encryption module calls the business smart contract to verify the signature of the private key based on the client's public key of the first business client, including:
[0019] The business smart contract is invoked to decrypt the private key signature based on the client public key of the first business client, thus obtaining the decrypted signature;
[0020] If the decrypted signature is the same as the verification data in the data authorization request, then the verification of the private key signature is confirmed to be successful.
[0021] If the decrypted signature is different from the verification data in the data authorization request, then the verification of the private key signature has failed.
[0022] Optionally, the encryption module performs nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data. The methods include:
[0023] The original authorized data is encrypted using the contract's public key to obtain encrypted contract data.
[0024] The contract encrypted data is encrypted using the public key of the second business client to obtain encrypted authorization data.
[0025] Optionally, the method by which the identifier acquisition module obtains the data identifier information associated with the encrypted authorization data includes:
[0026] Generate the authorized block to which the encrypted authorized data belongs in the blockchain network;
[0027] Obtain the block height of the authorized block and use the block height as data identification information.
[0028] Optionally, the above-mentioned device is also used for:
[0029] When a data acquisition request carrying data identification information is received from the second business client, encrypted authorized data is obtained from the authorized block according to the data identification information in the data acquisition request;
[0030] The business smart contract is invoked to obtain the target business data based on the encrypted authorization data, and the target business data is returned to the second business client.
[0031] Optionally, the above-mentioned device invokes a business smart contract to obtain target business data based on encrypted authorization data, including:
[0032] The business smart contract is invoked to send encrypted authorization data to the second business client, so that the second business client can decrypt the encrypted authorization data based on the corresponding client private key to obtain the contract encrypted data;
[0033] Obtain the decrypted contract encrypted data returned by the second business client, and decrypt the contract encrypted data returned by the second business client based on the contract private key of the business smart contract to obtain the original authorized data;
[0034] Obtain target business data based on the original authorized data obtained through decryption.
[0035] Optionally, the blockchain network supports data processing for e-commerce transactions; e-commerce transactions include the order placement stage for the target product, the logistics order placement stage, and the product transportation stage; the original authorized data refers to the delivery address for the target product; among which,
[0036] In the product ordering process, the first business client refers to the client of the consumer of the target product, and the second business client refers to the client of the merchant to which the target product belongs.
[0037] In the logistics order placement stage, the first business client refers to the merchant's client, and the second business client refers to the target logistics object's client where the merchant places a logistics order for the target product.
[0038] In the commodity transportation business stage, the first business client refers to the client of the first logistics object, and the second business client refers to the client of the second logistics object; the first logistics object refers to the logistics object at the previous transportation level in the commodity transportation route for the target commodity, and the second logistics object refers to the logistics object at the next transportation level in the commodity transportation route for the first logistics object.
[0039] Optionally, during the logistics order placement phase, the transportation route from the object address where the target logistics object is located to the delivery address contains L1 transit addresses in sequence, and the target business data is the first transit address among the L1 transit addresses.
[0040] Optionally, the commodity transportation route includes M logistics objects; according to the transportation direction in the commodity transportation route, each of the M logistics objects corresponds to a transportation level, and the target commodity is transported from the logistics object corresponding to any transportation level to the logistics object of the next transportation level; the commodity transportation route includes a target logistics object, which refers to the logistics object with the highest transportation level among the M logistics objects; M is a positive integer;
[0041] In the goods transportation business stage, the transportation route from the object address where the second logistics object is located to the receiving address contains L2 transit transportation addresses in sequence, and the target business data is the first transit transportation address among the L2 transit transportation addresses;
[0042] If the second logistics object is the last logistics object among M logistics objects, then L2 equals 1, and the target business data is the original authorized data.
[0043] Optionally, during the logistics order placement phase, the identification acquisition module may send data identification information to the second business client in the following ways:
[0044] The data identification information is sent to the first business client, so that the first business client can send the data identification information to the second business client to place a logistics order.
[0045] Optionally, in the order placement stage, logistics order placement stage, or goods transportation stage, the second business client is used to use the data identification information as the extension communication number, and to establish a communication connection with the communication device of the consumer based on the virtual switchboard number and the extension communication number;
[0046] There is a communication mapping relationship between the extension communication number and the actual communication number contained in the communication device.
[0047] Optionally, during the order placement phase, the blockchain network includes the blockchain account of the consumer. The blockchain network stores N pending delivery addresses associated with the blockchain account, where N is a positive integer. The N pending delivery addresses are encrypted based on the client public key and contract public key of the first business client. The data authorization request is generated based on the order placement operation for the target product in the first business client.
[0048] The methods by which the encryption module calls the business smart contract to obtain the original authorized data indicated in the data authorization request include:
[0049] The business smart contract is invoked to work with the first business client to decrypt the encrypted N mail receiving addresses, thus obtaining N mail receiving addresses;
[0050] Return an address selection page containing N receiving addresses to the terminal device where the first business client is located; the address selection page belongs to the blockchain network;
[0051] Use the recipient address selected by the consumer on the address selection page as the original authorization data.
[0052] This application provides a computer device, including a memory and a processor. The memory stores a computer program, and when the computer program is executed by the processor, the processor performs the method of this application.
[0053] This application provides a computer-readable storage medium storing a computer program, the computer program including program instructions that, when executed by a processor, cause the processor to perform the method described above.
[0054] According to one aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in the various alternative embodiments described above.
[0055] This application receives a data authorization request from a first business client; the data authorization request includes the client public key of a second business client; it calls a business smart contract to obtain the original authorized data indicated by the data authorization request, and performs nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data; it obtains data identification information associated with the encrypted authorized data, and sends the data identification information to the second business client to authorize the second business client to use target business data according to the data identification information, wherein the target business data includes the original authorized data, or includes business data generated based on the original authorized data. Therefore, the method proposed in this application can enable the second business client to use the target business data associated with the original authorized data through the data identification information by calling a business smart contract, without having to provide the original authorized data to the second business client. The business smart contract intelligently protects the confidentiality and privacy of the original authorized data for the second business client, improving the data security and data privacy of the original authorized data. Attached Figure Description
[0056] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0057] Figure 1 This is a schematic diagram of a network architecture provided in an embodiment of this application;
[0058] Figure 2 This is a flowchart illustrating a data processing method for a blockchain network provided in this application;
[0059] Figure 3 This is a schematic diagram illustrating a scenario for identifying a business client, as provided in this application.
[0060] Figure 4 This is a schematic diagram illustrating a product ordering scenario provided in this application;
[0061] Figure 5 This is a schematic diagram of a logistics order placement scenario provided in this application;
[0062] Figure 6 This is a schematic diagram illustrating a scenario of goods transportation provided in this application;
[0063] Figure 7 This is a schematic diagram illustrating a scenario for establishing a communication connection, as provided in this application.
[0064] Figure 8This is a schematic diagram of a block generation scenario provided in this application;
[0065] Figure 9 This is a schematic diagram illustrating a scenario of goods transportation provided in this application;
[0066] Figure 10 This is a schematic diagram of the structure of a data processing device for a blockchain network provided in this application;
[0067] Figure 11 This is a schematic diagram of the structure of a computer device provided in this application. Detailed Implementation
[0068] The technical solutions of this application will now be clearly and completely described with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0069] This application also relates to blockchain-related technologies. Blockchain is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and cryptographic algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked together using cryptographic methods. Each data block contains information about a batch of network transactions, used to verify the validity of the information (anti-counterfeiting) and generate the next block. A blockchain can include a blockchain underlying platform, a platform product service layer, and an application service layer. A blockchain consists of a series of blocks sequentially generated in chronological order. Once a new block is added to the blockchain, it cannot be removed. Each block records the data submitted by nodes in the blockchain system.
[0070] This application primarily relates to blockchain-based smart contract technologies. A smart contract is a computer protocol designed to disseminate, verify, or execute contracts in an informational manner. For example, developers use smart contracts to define a set of rules, which are then published online. Humans interact with the smart contract, and machines complete the business logic. This avoids potential cheating that could occur with human execution. Scenarios where machines can implement predetermined rules, improve efficiency, and prevent human cheating are essentially application scenarios for smart contracts. This application utilizes business smart contracts within a blockchain network to enable data authorization from a first business client to a second business client.
[0071] Please see Figure 1 , Figure 1This is a schematic diagram of a network architecture provided in an embodiment of this application. Figure 1 As shown, the buyer, seller, logistics company 1, logistics company 2, and logistics company 3 all have corresponding terminal devices. These can all be referred to as objects involved in the shopping process. The business processes performed by each object described below can be executed through their respective terminal devices. Therefore, this network architecture can include the terminal devices corresponding to each object and a blockchain network. This blockchain network can include multiple blockchain nodes, each of which can consist of one or more servers. Business smart contracts are built into the blockchain network, and the business processes executed by the blockchain network (i.e., the business processes executed by the blockchain nodes in the blockchain network) can be executed by calling these business smart contracts.
[0072] like Figure 1 As shown, a buyer can purchase a seller's target product. The following description directly illustrates how each object performs business processing. It is understood that the business processing performed by each object can be executed through its corresponding terminal device. Therefore, the process from a buyer placing an order for the target product to the delivery of the target product to the buyer's shipping address can be as follows:
[0073] The blockchain network can pre-store several buyer's pending delivery addresses. After the buyer places an order for the seller's target product on the merchant platform through a terminal device, the buyer can select the delivery address (i.e., the shipping address) for the target product from the several pending delivery addresses stored in the blockchain network. After selection, the blockchain network can return a data identifier to the buyer, which can be recorded as data identifier 1. This data identifier 1 can be used by the seller to place a logistics order for the target product.
[0074] Therefore, the buyer can provide data identifier information 1 to the seller, and the seller can use this data identifier information 1 to request authorization from the blockchain network to the logistics company, that is, to authorize the logistics company 1 to use information associated with the delivery address of the target goods (such as transit addresses during the transportation of the target goods to the delivery address (i.e., transit addresses)). Then, the blockchain network can use this data identifier information 1 to return a data identifier information to the seller, which can be recorded as data identifier information 2.
[0075] Then, the seller can provide this data identifier 2 to logistics company 1. Logistics company 1 can then use this data identifier 2 to query the blockchain network for the next destination address of its transported goods (which could be the address of logistics company 2). Furthermore, logistics company 1 can request authorization from the blockchain network for logistics company 2. The blockchain network can then return a data identifier to logistics company 1, which can be recorded as data identifier 3. Logistics company 1 can then provide this data identifier 3 to logistics company 2, allowing logistics company 2 to use it to query the blockchain network for the next destination address of its transported goods (which could be the address of logistics company 3).
[0076] Similarly, logistics company 2 can request authorization from the blockchain network for logistics company 3. The blockchain network can return a data identifier to logistics company 2, which can be recorded as data identifier 4. Logistics company 2 can then provide this data identifier 4 to logistics company 3, allowing logistics company 3 to query the blockchain network for the next destination address of its transported goods (which can be logistics company 3's address). If logistics company 3 is the last logistics company to transport the target goods, then the next destination address retrieved by logistics company 3 through data identifier 4 will be the delivery address of the target goods. Logistics company 4 can then assign a courier to deliver the target goods to this delivery address.
[0077] Through the above process, after the buyer purchases the target product, the buyer's delivery address is kept confidential from the seller, logistics company 1, and logistics company 2 during the process of transporting the target product to the buyer's delivery address. Only the final logistics company 3 can know the buyer's delivery address, which improves the privacy and security of the buyer's delivery address.
[0078] Among them, the comparison is as follows Figure 2 In the corresponding embodiment, the buyer can be a consumer, the seller can be a merchant, and logistics companies 1 to 3 can be M logistics objects, where M equals 3. Therefore, for details on how to transport the target goods to the buyer's delivery address while protecting the buyer's delivery address through data identification information at each stage, please refer to the following... Figure 2 Specific descriptions in the corresponding embodiments.
[0079] Please see Figure 2 , Figure 2 This is a flowchart illustrating a data processing method for a blockchain network provided in this application. Figure 2 As shown, the method may include:
[0080] Step S101: Receive a data authorization request from the first service client; the data authorization request contains the public key of the second service client;
[0081] Optionally, a blockchain network may include several blockchain nodes. The executing entity in this application can be any blockchain node in the blockchain network, where a business smart contract is deployed. It is understood that all business operations performed by the blockchain node can be implemented by calling this business smart contract. A blockchain node can consist of one or more computer devices. A computer device can be a server or a terminal device, depending on the actual application scenario, and there are no restrictions on this. The executing entity in the embodiments of this application will be uniformly referred to as a blockchain node in the following description. Please refer to the following description.
[0082] The first business client can be any client authorizing data, and the second business client can be any client being authorized to grant data access. In other words, the first business client is the data authorizer of the second business client, and the second business client is the data recipient of the first business client. Blockchain nodes can obtain the data authorization request from the first business client, which may contain the public key of the authorized party, i.e., the second business client.
[0083] The blockchain network described in this application can be used for data processing in e-commerce operations, which include the order placement stage for a target product, the logistics order placement stage, and the product transportation stage. For different business stages, the first and second business clients mentioned above are clients for different objects, as detailed below:
[0084] Optionally, e-commerce operations may involve multiple objects, including consumers, merchants, and logistics partners. Consumers are buyers, such as users purchasing goods. Merchants are sellers. Consumers may own several goods and can purchase goods from merchants. The goods purchased by consumers from merchants can be called target goods, and these target goods can be any item owned by the merchant. Logistics partners are the logistics companies that transport the target goods purchased by consumers from merchants to consumers.
[0085] As can be understood from the above, during the order placement phase, the first business client can be the client of the consumer, which can belong to the e-commerce platform and can be logged into with the consumer's account, which can be the consumer's shopping account on the e-commerce platform. The second business client can be the client of the merchant, which can also belong to the e-commerce platform and can be logged into with the merchant's account.
[0086] During the aforementioned logistics order placement phase, the first business client can be the business client of the merchant object, and the second business client can be the business client of the logistics object, where the object account of the logistics object can be logged in.
[0087] In the aforementioned goods transportation phase, there can be a goods transportation route. This route transports the target goods from the merchant to the consumer. This route can contain M logistics objects, which are the logistics objects that transport the target goods sequentially. M is a positive integer, and its specific value depends on the actual application scenario and is not restricted. Each of these M logistics objects can have a transportation level; one logistics object corresponds to one transportation level. The target goods are transported from the logistics object corresponding to any transportation level to the logistics object of the next transportation level. It can be understood that the logistics object that transports the target goods earlier corresponds to a higher transportation level, and the logistics object that transports the target goods later corresponds to a lower transportation level. In the logistics order placement phase, the logistics object belonging to the second business client can be referred to as the target logistics object. This target logistics object is the logistics object used by the merchant to place the logistics order; therefore, it can be understood that this target logistics object belongs to the logistics object with the highest transportation level among the aforementioned M logistics objects. Therefore, it can be understood that in the commodity transportation business stage, the first business client can be the business client of the first logistics object, the second business client can be the business client of the second logistics object, the first logistics object is the logistics object of the previous transportation level of the second logistics object, the second logistics object is the logistics object of the next transportation level of the first logistics object, and the first logistics object and the second logistics object can be any two logistics objects with adjacent transportation levels among the above M logistics objects.
[0088] For example, the M logistics objects in the above-mentioned commodity transportation route can include logistics object 1, logistics object 2, and logistics object 3. The target commodity is first ordered by the merchant from logistics object 1 to be transported to the consumer. Then, logistics object 1 transports the target commodity to logistics object 2, where it continues to transport the commodity. Next, logistics object 2 can transport the target commodity to logistics object 3, which can then directly deliver the target commodity to the consumer's location (i.e., the consumer's delivery address for the target commodity, also known as the receiving address). Therefore, the target logistics object can be logistics object 1, which is ordered by the merchant. Logistics object 1 is a logistics object at the next higher level than logistics object 2. Logistics object 2 is a logistics object at the next lower level than logistics object 1. Logistics object 2 is a logistics object at the next higher level than logistics object 3, and logistics object 3 is a logistics object at the next lower level than logistics object 2. If the first logistics object is logistics object 1, then the second logistics object can be logistics object 2; if the first logistics object is logistics object 2, then the second logistics object can be logistics object 3.
[0089] In this blockchain network, the public keys of various objects (such as the aforementioned consumer objects, merchant objects, and logistics objects) can be pre-registered and recorded. These public keys can be provided to the blockchain network by each object for recording, and the public and private key pairs (including public and private keys) of each object can be generated by each object itself.
[0090] Therefore, in the above-mentioned product ordering process, the second business client can be the business client of the merchant object, and the client public key of the second business client can be the public key of the merchant object, that is, the data authorization request can contain the public key of the merchant object.
[0091] In the aforementioned logistics order placement phase, the second business client can be the business client of the target logistics object, and the public key of the second business client can be the public key of the target logistics object, that is, the data authorization request can contain the public key of the target logistics object.
[0092] In the aforementioned goods transportation business stage, the second business client can be the business client of the second logistics object, and the client public key of the second business client can be the public key of the second logistics object, that is, the data authorization request can contain the public key of the second logistics object.
[0093] Please see Figure 3 , Figure 3 This is a schematic diagram illustrating a scenario for identifying a business client, as provided in this application. For example... Figure 3As shown, in the product order placement stage, the first business client can be the business client of the consumer object, and the second business client can be the business client of the merchant object. In the logistics order placement stage, the first business client can be the business client of the merchant object, and the second business client can be the business client of logistics object 1.
[0094] In the goods transportation phase, the M logistics objects can include four logistics objects: Logistics Object 1, Logistics Object 2, Logistics Object 3, and Logistics Object 4. First, in the phase where the target goods are transported from Logistics Object 1 (the initial logistics object, also the target logistics object) to Logistics Object 2, the first business client can be the business client of Logistics Object 1, and the second business client can be the business client of Logistics Object 2. In the phase where the target goods are transported from Logistics Object 2 to Logistics Object 3, the first business client can be the business client of Logistics Object 2, and the second business client can be the business client of Logistics Object 3. In the phase where the target goods are transported from Logistics Object 3 to Logistics Object 4, the first business client can be the business client of Logistics Object 3, and the second business client can be the business client of Logistics Object 4. Logistics Object 4 is the last logistics object, and it can directly transport the target goods to the consumer's delivery address.
[0095] Step S102: Call the business smart contract to obtain the original authorized data indicated by the data authorization request, and perform nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data;
[0096] Optionally, the aforementioned blockchain network can also correspond to a blockchain platform. This blockchain platform is independent of the e-commerce platform, but can be accessed by the consumer during the purchase of a target product. The consumer can register an account on the blockchain network through this platform; this account is called a blockchain account. The consumer can then enter their pending delivery address into the blockchain network using this account. This pending delivery address will be the delivery address the consumer can choose when purchasing goods later. For example, the consumer can enter N pending delivery addresses into the blockchain network using their blockchain account, where N is a positive integer, and the value of N is determined based on the actual application scenario. These N pending delivery addresses are the delivery addresses the consumer can choose when purchasing goods. These N pending delivery addresses can be encrypted using a nested encryption method using the client public key of the first business client and the contract public key of the business smart contract.
[0097] For example, the N addresses to be received can be encrypted first using the consumer's public key, and then encrypted again using the business smart contract's public key to obtain the encrypted N addresses to be received. A block can be generated from these encrypted N addresses to be received, and this block can be uploaded to the blockchain network. The generated block containing the encrypted N addresses to be received can be called an address block, and the blockchain network can return the address block's ID (i.e., the block identifier, which can be the block height) to the consumer's business client.
[0098] Optionally, during the product order placement phase, the process of obtaining the original authorization data can be as follows: The data authorization request can be generated based on the order placed by the consumer in the first business client for the target product. For example, the consumer can place an order for the target product in the first business client of the e-commerce platform. After placing the order, a data authorization request is generated in the first business client, which can then redirect to the blockchain platform. The data authorization request is then sent to the blockchain network through the blockchain platform. This data authorization request can include the merchant's public key and the block height of the aforementioned address block. It can be understood that sending data to the blockchain network is equivalent to sending it to the blockchain nodes within the blockchain network, and the operations performed by the blockchain network are the operations performed by the blockchain nodes within the blockchain network.
[0099] After receiving the data authorization request, the blockchain node can invoke the business smart contract to find the aforementioned address block using the block height in the data authorization request, and obtain the encrypted N mail receiving addresses from the found address block. Then, the blockchain node can first provide these encrypted N mail receiving addresses to the first business client. Since these encrypted N mail receiving addresses are encrypted using a nested encryption method (double encryption) using the consumer object's private key and the business smart contract's public key, the first business client can initially decrypt the obtained encrypted N mail receiving addresses using the consumer object's private key (i.e., the first business client's public key in this business phase), obtaining the N mail receiving addresses encrypted using the contract's public key.
[0100] Next, the first business client can send the N decrypted addresses encrypted with the contract public key to the blockchain node. The blockchain node can then call the business smart contract to decrypt the N addresses encrypted with the contract public key, thus obtaining the final decrypted N addresses. The blockchain node can then return an address selection page to the terminal device where the first business client is located. This address selection page can contain the final decrypted N addresses. This address selection page can be displayed as a webpage (h5) or as a page on the blockchain platform that the terminal device of the first business client is redirected to.
[0101] The terminal device of the first business client can display the address selection page. The consumer can then select from N possible delivery addresses on this page and pass the selected address to the blockchain node. The blockchain node then uses this selected address as the original authorization data, which is the delivery address for the purchased goods—the address chosen by the consumer on the address selection page. Each delivery address can include not only the consumer's final delivery address but also related information, depending on the specific application scenario. For example, each address can include the recipient's name and contact number. The blockchain node can then invoke a business smart contract to encrypt this original authorization data. This encryption is achieved by nesting the encryption of the original authorization data using the client's public key and the smart contract's public key. This encrypted original authorization data can be referred to as encrypted authorization data. Blockchain nodes can generate blocks containing the encrypted authorization data, which can be called product order blocks, and then these product order blocks can be uploaded to the blockchain network.
[0102] One method for nested encryption of the original authorization data is to first encrypt the original authorization data using the public key of the business smart contract. This encrypted data can be referred to as contract-encrypted data. Then, it can be further encrypted using the public key of a second business client to obtain the encrypted authorization data. In other words, this encrypted authorization data is the original authorization data that has been encrypted first using the contract public key and then further encrypted using the public key of the second business client. Therefore, in the product order placement stage, the original authorization data is first encrypted using the contract public key, and then further encrypted using the merchant object's public key to obtain the encrypted authorization data.
[0103] It is understandable that the original authorization data can be the same in all the above business stages (including the product ordering stage, the logistics ordering stage, and the product transportation stage), that is, the delivery address selected by the consumer for the target product. However, the way to obtain the original authorization data is different in different business stages. As mentioned above, in the product ordering stage, the original authorization data can be the delivery address selected for the target product from the N decrypted delivery addresses after the blockchain node and the consumer's business client decrypt the N delivery addresses.
[0104] Moving from the product ordering stage to the logistics ordering stage, in the logistics ordering stage, the first business client is the merchant's business client, and the second business client is the target logistics object's business client. The method for obtaining the original authorization data at this stage can be as follows: the blockchain node can provide the encrypted authorization data from the product ordering block to the merchant's business client (i.e., the first business client at this point). The merchant's business client can decrypt this encrypted authorization data using its private key to obtain the aforementioned encrypted contract data (i.e., the original authorization data encrypted using the contract public key). The merchant's business client can then send the decrypted encrypted contract data to the blockchain node. The blockchain node can then invoke the business smart contract and decrypt the encrypted contract data returned by the merchant's business client using the contract private key of the business smart contract to obtain the final decrypted original authorization data.
[0105] Similarly, during the logistics order placement phase, the decrypted original authorization data can be nested and encrypted using the client public key of the target logistics object's business client (the second business client at this time) and the contract public key of the business smart contract. This results in encrypted authorization data during the logistics order placement phase. This encrypted authorization data is obtained by first encrypting the original authorization data using the contract public key and then the target logistics object's public key. The blockchain node can then generate a block containing this encrypted authorization data, which can be called the logistics order block. The blockchain node can then upload this logistics order block to the blockchain network.
[0106] Next, transitioning from the order placement stage to the goods transportation stage, the first business client is the business client of the first logistics object, and the second business client is the business client of the second logistics object. The logistics object that initially transports the target goods for the first time is the target logistics object. At this point, the first logistics object can be the target logistics object, and the second logistics object can be the logistics object at the next transportation level of the target logistics object. Therefore, the method for obtaining the original authorization data in the goods transportation stage is as follows: the blockchain node can provide the encrypted authorization data from the aforementioned order placement block to the business client of the target logistics object (i.e., the first business client at this point). The business client of the target logistics object can then decrypt this encrypted authorization data using its private key to obtain the aforementioned encrypted contract data (i.e., the original authorization data encrypted using the contract public key). The business client of the target logistics object can then send the decrypted encrypted contract data to the blockchain node. The blockchain node can then invoke the business smart contract and decrypt the encrypted contract data returned by the business client of the target logistics object using the contract private key of the business smart contract to obtain the final decrypted original authorization data.
[0107] Similarly, in the current goods transportation phase, the decrypted original authorization data can be encrypted by nesting the client public key of the second logistics object's business client (i.e., the business client of the logistics object at the next transportation level of the target logistics object, the second business client at this time) and the contract public key of the business smart contract. This will yield the encrypted authorization data in the goods transportation phase. This encrypted authorization data is obtained by first encrypting the original authorization data using the contract public key and then the public key of the second logistics object. The blockchain node can then generate a block containing this encrypted authorization data, which can be called the logistics transportation block. The blockchain node can then upload the logistics transportation block to the blockchain network.
[0108] More specifically, in the goods transportation phase, there may be multiple logistics objects transporting the target goods (such as the M logistics objects mentioned above). When transporting the target goods between two logistics objects at each adjacent transportation level, the business client of the logistics object at the previous transportation level can act as the first business client, and the business client of the logistics object at the next transportation level can act as the second business client. At this time, the principle of obtaining the original authorization data is the same as in the above business stages. The blockchain node can first work with the first business client to decrypt the original authorization data that is nested and encrypted on the chain using the client public key of the first business client to obtain the original authorization data. Then, the decrypted original authorization data is re-nested and encrypted using the client public key of the second business client and the contract public key of the business smart contract to obtain the encrypted authorization data corresponding to the process (such as the process of transporting the target goods between any two adjacent logistics objects). This can be understood as follows: the goods transportation business stage can include multiple logistics objects. Therefore, the goods transportation business stage can be further subdivided into multiple business stages. The transportation of target goods between any two logistics objects can also be considered a more detailed business stage. Each detailed business stage can correspond to an encrypted authorization data and a logistics transportation block. The logistics transportation block contains the encrypted authorization data obtained in the corresponding business stage. This encrypted authorization data can be obtained by encrypting the original authorization data using the client public key and contract public key of the second business client in the corresponding business stage.
[0109] As described above, the product order block, logistics order block, and logistics transportation block can all be considered authorization blocks for different business stages. The original authorization data in each business stage can be the same (e.g., the recipient address of the target product). However, the original authorization data in each business stage can be obtained by the blockchain node collaborating with the first business client in the corresponding business stage to decrypt the nested encrypted original authorization data using the client's private key and the business smart contract's contract private key. Furthermore, the encrypted authorization data in each business node can be obtained by the blockchain node using the second business client's public key and the business smart contract's contract public key for nested encryption. Each business stage is independent and continuous in time; only one business stage can be executed at a time.
[0110] Furthermore, the aforementioned data authorization request may also include a private key signature of the first business client. This private key signature can be obtained by encrypting the verification data using the client's private key. The verification data can be any data, and the private key signature is used to verify the identity of the first business client. The aforementioned business smart contract can be called a cloud smart contract. The first business client may have a local blockchain component installed, which can be configured with a local smart contract. After installing the local blockchain component, the terminal device to which the first business client belongs can locally store the client's private key. This local smart contract can be used to generate the first business client's private key signature. Therefore, the aforementioned private key signature of the first business client can be obtained by calling the local smart contract in the first business client and signing the verification data using the first business client's private key. The aforementioned data authorization request may also include the original verification data.
[0111] Therefore, a blockchain node can invoke a business smart contract and verify the signature of the first business client's private key in the data authorization request using the client's public key. If the private key signature verification passes, it indicates that the first business client's identity has been successfully verified, and the business smart contract can be invoked to obtain the original authorized data indicated in the data authorization request. Conversely, if the private key signature verification fails, it indicates that the first business client's identity has failed, and in this case, it is not necessary to invoke the business smart contract to obtain the original authorized data indicated in the data authorization request.
[0112] The process by which the blockchain node verifies the private key signature of the first business client can be as follows:
[0113] A blockchain node can invoke a business smart contract to decrypt the private key signature using the public key of the first business client. The decrypted data is called the decrypted signature. The blockchain node can then compare this decrypted signature with the verification data in the data authorization request. If they match, the private key signature verification is successful, confirming the identity verification of the first business client. Conversely, if the decrypted signature and verification data do not match, the private key signature verification fails, confirming the identity verification of the first business client fails.
[0114] Step S103: Obtain data identification information associated with encrypted authorization data, and send the data identification information to the second business client to authorize the second business client to use target business data according to the data identification information. The target business data includes the original authorization data or business data generated based on the original authorization data.
[0115] Optionally, as described in step S102 above, an authorization block containing encrypted authorization data for the corresponding business stage can be generated at each business stage (such as the logistics order block, product order block, or logistics transportation block mentioned above). Therefore, the data identification information associated with the encrypted authorization data can be the block height of the authorization block, and one business stage can correspond to one data identification information.
[0116] A blockchain node can send the data identification information to the second business client at the corresponding business stage. The blockchain node can then return the data identification information to the first business client, and the first business client can then give the data identification information to the second business client, so that the second business client can use the target business data through the data identification information. The target business data can be the original authorized data itself, or the target business data can be business data generated from the original authorized data.
[0117] For example, in the order placement phase, the first business client is the consumer's business client, and the second business client is the merchant's business client. The consumer's business client (i.e., the first business client at this point) can obtain data identification information returned by the blockchain node. The consumer's business client can use this data identification information as the delivery address when placing an order for the target product on the merchant platform. In other words, the consumer can place an order for the target product without entering their actual delivery address on the merchant platform; instead, they can enter the data identification information they have obtained. Furthermore, the merchant's business client (i.e., the second business client at this point) can use the address of the target logistics object and the data identification information to obtain from the blockchain node the next address of the target logistics object in the transportation route from the target logistics object's address to the delivery address of the target product (i.e., the original authorization data). This next address can then be used as the target business data authorized for use by the merchant's business client. This next address belongs to the business data generated from the original authorization data. For example, business smart contracts can also be used to calculate routes. Blockchain nodes can call business smart contracts to calculate the transportation route from the location of the target logistics object to the delivery address of the target product. This transportation route can sequentially include L1 transit addresses. These L transit addresses represent the addresses the target logistics object needs to reach sequentially from its location before finally arriving at the delivery address of the target product. The first transit address among these L1 transit addresses can be used as the target business data that the merchant's business client can use. This target business data is the next address to which the target logistics object needs to transport the target product. L1 is a positive integer, and its specific value is determined based on the actual application scenario.
[0118] Alternatively, the next-stop address of the target logistics object can also be queried by the target logistics object itself from the blockchain node. That is, the target business data used by the merchant's business client in the order placement stage can be the same as the target business data used by the target logistics object in the logistics order placement stage, such as the next-stop address of the target goods being transported. Specifically, in the logistics order placement stage, the first business client is the merchant's business client, and the second business client is the target logistics object's business client. The merchant's business client (i.e., the first business client at this time) can obtain the data identification information returned by the blockchain node, and the merchant's business client can directly provide this data identification information to the target logistics object to place the logistics order.
[0119] In other words, during the order placement phase, the merchant's business client can place an order with the target logistics object without using the destination address (such as the delivery address of the target product). Instead, it can place the order using the data identification information returned by the blockchain node. Then, the target logistics object's business client (i.e., the second business client at this point) can use the data identification information returned by the merchant's business client to query the blockchain node (i.e., query the blockchain platform or blockchain network) for its next destination address. If the target logistics object can provide this data identification information to the blockchain node, the blockchain node can use this data identification information (block height) to find the corresponding authorized block that has been uploaded to the chain and retrieve the encrypted authorized data from that authorized block. This encrypted authorized data is obtained by nesting and encrypting the public key of the business smart contract and the public key of the target logistics object. Therefore, blockchain nodes can collaborate with the business client of the target logistics object to decrypt the encrypted authorization data to obtain the original authorization data (i.e., the delivery address of the target product). Then, using the object address of the target logistics object and the delivery address of the target product, the aforementioned L1 transit addresses are calculated. These L1 transit addresses are sequential and consecutive, with the original authorization data as the endpoint. For example, if the L1 transit addresses include transit address 1 → transit address 2 → the delivery address of the target product (i.e., the original authorization data), then target logistics object 1 first needs to transport the target product to transit address 1. Then, the logistics object at transit address 1 transports the target product to transit address 2, and finally, the logistics object at transit address 2 transports the target product to its delivery address. Therefore, the target business data at this point (i.e., the next stop address for the target logistics object's transported target product) is transit address 1 (i.e., the first transit address).
[0120] Similarly, in the goods transportation phase, the first business client is the business client of the first logistics object, and the second logistics object is the business client of the second logistics object. The business client of the first logistics object (the first business client at this time) can obtain the data identification information returned by the blockchain node. The first logistics object can use this data identification information to place a logistics order with the second logistics object, and then the second logistics object can use this data identification information to query the blockchain node for the next stop address of its transported target goods. The blockchain node can use the public key of the logistics object to find the location of the logistics object. Therefore, the blockchain node can use the public key of the second logistics object to find the location of the second logistics object, and then calculate the L2 transit addresses sequentially included in the transportation route from the location of the second logistics object to the delivery address of the target goods. L2 is a positive integer, and its specific value depends on the actual application scenario. Therefore, the target business data authorized to the business client of the second logistics object at this time can be the first transit address among these L2 transit addresses, which is the next stop address for the second logistics object to transport the target goods.
[0121] Therefore, it can be understood through the above process that if the second logistics object belongs to the last logistics object that transports the target goods, the target business data authorized to the second logistics object is the original authorization data. That is, the second logistics object can directly instruct the courier to deliver the target goods to the final delivery address of the target goods.
[0122] Furthermore, when a second business client needs to obtain target business data, it can send a data acquisition request to the blockchain node, carrying data identification information (this data identification information is used to authorize the second business client to use the target business data). Upon receiving the data acquisition request from the second business client, the blockchain node can use the data identification information carried in the request to query the authorized block at the corresponding block height, and obtain the encrypted authorized data within that block. The blockchain node can then invoke the business smart contract to obtain the target business data based on this encrypted authorized data and return the target business data to the second business client for its use. The process by which a blockchain node invokes a business smart contract to obtain target business data based on encrypted authorization data can be as follows: The encrypted authorization data is encrypted using a nested encryption method involving the client's public key and the contract's public key. Therefore, the blockchain node can send this encrypted authorization data to the second business client, allowing the second business client to decrypt it using its private key to obtain the encrypted contract data. The second business client can then return the decrypted encrypted contract data to the blockchain node. The blockchain node can then invoke the business smart contract to decrypt the encrypted contract data using its private key to obtain the final decrypted original authorization data. The blockchain node can then generate the corresponding target business data based on the object to which the second business client belongs (such as a merchant object or a logistics object). For example, in both the product ordering and logistics ordering stages, the target business data could be the next address of the target logistics object for transporting the target product. In the product transportation stage, the target business data could be the next address of the second logistics object for transporting the target product.
[0123] Please see Figure 4 , Figure 4This is a schematic diagram of a product ordering scenario provided in this application. During the product ordering process, the buyer (i.e., the consumer) can send their private key signature, block ID (which can be the block height of a block containing N pending delivery addresses associated with the buyer, stored through a blockchain account), and seller public key (i.e., the merchant's public key) to the business smart contract (i.e., the blockchain node on which the business smart contract is built). The business smart contract can then find the corresponding block using the block ID, obtain the buyer's delivery address for the target product from the found block, and then use the seller's public key and the contract's public key to perform nested encryption on the delivery address to generate the corresponding block. The block height is then returned to the buyer (e.g., to the consumer's business client) as the address information tracking number ID (i.e., data identification information in the product ordering process). The buyer can then inform the seller of this address information tracking number ID (e.g., send it to the merchant's business client), and the seller can then use this address information tracking number ID to place a logistics order with the target logistics company.
[0124] Please see again Figure 5 , Figure 5 This application provides a schematic diagram of a logistics order placement scenario. During the logistics order placement phase, the seller can send their private key signature, the buyer's address information tracking number ID, and the target logistics company's (i.e., the target logistics object's) public key to the business smart contract (i.e., the blockchain node on which the business smart contract is built). The business smart contract can then use the buyer's address information tracking number ID sent by the seller to find the corresponding block, and then obtain the delivery address for the target product through the found block. It then uses the target logistics object's public key and the contract's public key to perform nested encryption on the delivery address to generate the corresponding block. The block height of this block is used as a new address information tracking number ID (i.e., data identification information in the logistics order placement phase) and returned to the seller (e.g., returned to the seller's business client). The seller can then inform the target logistics company of this new address information tracking number ID (e.g., sent to the target logistics object's business client). The target logistics company can then use this new address information tracking number ID to query the business smart contract for the next station address for transporting the target product and transport the target product to that next station address.
[0125] Please see again Figure 6 , Figure 6This is a schematic diagram of a commodity transportation scenario provided in this application. During the goods transportation phase, the first logistics object can send its private key signature, the address information tracking number ID from the previous level (i.e., the logistics object at the previous transportation level of the first logistics object), and the public key of the second logistics object to the business smart contract (i.e., the blockchain node, where the business smart contract is built). The business smart contract can then use the address information tracking number ID from the previous level of the first logistics object to find the corresponding block. It can then obtain the delivery address for the target goods from the found block. Furthermore, it uses the public key of the second logistics object and the contract's public key to perform nested encryption on the delivery address to generate the corresponding block. The block height of this block is used as the new address information tracking number ID (i.e., the data identifier information in the goods transportation phase) and returned to the first logistics object (e.g., returned to the first logistics object's business client). The first logistics object can then inform the second logistics object of this new address information tracking number ID (e.g., sent to the second logistics object's business client). The second logistics object can then use this new address information tracking number ID to query the business smart contract for the next destination address of its target goods and transport the target goods to that next destination address.
[0126] In the aforementioned order placement, logistics order placement, and goods transportation stages, the second business client can establish a communication connection with the consumer's communication device using the data identification information provided by the first business client. The consumer's communication device can be a mobile terminal (such as a mobile phone, smartwatch, or tablet) containing the consumer's actual communication number (i.e., their real communication number). Specifically, in each stage, the second business client can display a virtual switchboard number. The second business client can dial this virtual switchboard number, and after connection, enter the data identification information it has obtained as an extension number (which can be called an extension communication number). This will then transfer the call to the consumer's communication device, establishing a communication connection between the merchant / logistics provider and the consumer. During this process, the consumer's actual communication number can be kept completely confidential from the merchant / logistics provider.
[0127] Please see Figure 7 , Figure 7 This is a schematic diagram illustrating a scenario for establishing a communication connection, as provided in this application. Figure 7As shown, the product details page can be a client page within the merchant's business client. This client page can include a virtual switchboard number for contacting the buyer (i.e., the consumer). The seller can dial the virtual switchboard number 12345678 on the details page. After connecting, the seller can use the data identification information provided by the buyer (i.e., the data identification information in the product order process) as the extension communication number (i.e., the extension number) and dial that extension communication number. Since this extension communication number has a mapping relationship with the buyer's actual communication number, the telecommunications operator can use this mapping relationship to forward the seller's call to the consumer's (i.e., the buyer's) communication device. This establishes a communication connection between the seller and the buyer while keeping the buyer's actual communication number confidential from the seller, allowing them to communicate.
[0128] Please see Figure 8 , Figure 8 This is a schematic diagram of a block generation scenario provided in this application. First, the consumer can authorize the merchant. Specifically, the blockchain node can work with the consumer to decrypt the nested encrypted N delivery addresses stored in Block 1 (which is associated with the blockchain account). After obtaining the N delivery addresses, the delivery address selected by the consumer from these N delivery addresses is used as the delivery address of the target product (i.e., the original authorization data). Then, using the public key of the merchant provided by the consumer and the contract public key, the delivery address can be nested and encrypted to obtain Block 2. The block height of Block 2 can be used as data identification information and given to the merchant, who can then use this data identification information to place a logistics order with Logistics Object 1.
[0129] Next, the merchant can authorize logistics object 1 (i.e., the target logistics object). Specifically, the blockchain node can work with the merchant to decrypt the nested encrypted recipient address stored in block 2. After obtaining the recipient address, the merchant can use the public key of logistics object 1 and the contract public key to perform nested encryption on the recipient address to obtain block 3. The block height of block 3 can be given to logistics object 1 as data identification information, which logistics object 1 can use to query the blockchain network for the next address of its transported target goods.
[0130] Next, Logistics Object 1 can authorize Logistics Object 2. Specifically, the blockchain node can work with Logistics Object 1 to decrypt the nested encrypted recipient address stored in Block 3. After obtaining the recipient address, the blockchain node can use the public key of Logistics Object 2 provided by Logistics Object 1 and the contract public key to perform nested encryption on the recipient address to obtain Block 4. The block height of Block 4 can be given to Logistics Object 2 as data identification information, which Logistics Object 2 can use to query the blockchain network for the next destination address of its transported goods.
[0131] Next, logistics object 2 can authorize logistics object 3. Specifically, the blockchain node can collaborate with logistics object 2 to decrypt the nested encrypted recipient address stored in block 4. After obtaining the recipient address, the blockchain node can use the public key provided by logistics object 2 to provide logistics object 3, along with the contract public key, to perform nested encryption on the recipient address, resulting in block 5. The block height of block 5 can then be provided to logistics object 3 as data identification information. Logistics object 3 can use this data identification information to query the blockchain network for the next destination address of its transported goods. Logistics object 3 is the final logistics object, and through logistics object 3, the target goods can be delivered to the consumer's recipient address.
[0132] Please see again Figure 9 , Figure 9 This is a schematic diagram illustrating a scenario of goods transportation provided in this application. For example... Figure 9 As shown, after a consumer places an order for a merchant's target product through the blockchain network, the merchant, logistics object 1 (i.e., logistics company 1), logistics object 2 (i.e., logistics company 2), logistics object 3 (i.e., logistics company 3), ... and logistics object M (i.e., logistics company M) can all query the target business data they need through the blockchain network, and then transport the target product to the buyer's delivery address layer by layer based on the target business data they need. The buyer's address is kept completely confidential before final delivery through the device (i.e. through the business smart contract).
[0133] By employing the method provided in this application, the consumer's delivery address for the target product remains confidential until it reaches the last logistics recipient (i.e., the last logistics recipient only knows the consumer's delivery address; before that, the merchant and other logistics recipients are unaware of the consumer's delivery address). The consumer's actual communication number is also kept confidential throughout the process. Furthermore, this application uses smart contracts to ensure the confidentiality of the consumer's delivery address and actual communication number. This confidentiality process does not rely on human intervention or the platform's (such as e-commerce platforms or logistics companies) self-discipline, avoiding the possibility of malicious actions by platform employees. It relies entirely on decentralized blockchain and business smart contracts, enhancing the privacy and security of the consumer's delivery address and actual phone number (as well as the consumer's name) during the shopping process.
[0134] Optionally, the node devices corresponding to each blockchain node in the blockchain network can be provided by multiple platforms, enabling these multiple platforms to jointly supervise and manage the business data processing process in the blockchain network, thereby improving the security and fairness of the blockchain network.
[0135] This application receives a data authorization request from a first business client; the data authorization request includes the client public key of a second business client; it calls a business smart contract to obtain the original authorized data indicated by the data authorization request, and performs nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data; it obtains data identification information associated with the encrypted authorized data, and sends the data identification information to the second business client to authorize the second business client to use target business data according to the data identification information, wherein the target business data includes the original authorized data, or includes business data generated based on the original authorized data. Therefore, the method proposed in this application can enable the second business client to use the target business data associated with the original authorized data through the data identification information by calling a business smart contract, without having to provide the original authorized data to the second business client. The business smart contract intelligently protects the confidentiality and privacy of the original authorized data for the second business client, improving the data security and data privacy of the original authorized data.
[0136] Please see Figure 10 , Figure 10This is a schematic diagram of the structure of a data processing device for a blockchain network provided in this application. The data processing device for the blockchain network can be a computer program (including program code) running on a computer device; for example, the data processing device for the blockchain network is an application software. This data processing device for the blockchain network can be used to execute the corresponding steps in the methods provided in the embodiments of this application. Figure 9 As shown, the data processing device 1 of the blockchain network may include: a request receiving module 11, an encryption module 12, and an identifier acquisition module 13;
[0137] The request receiving module 11 is used to receive a data authorization request from the first service client; the data authorization request contains the client public key of the second service client;
[0138] The encryption module 12 is used to call the business smart contract to obtain the original authorized data indicated by the data authorization request, and to perform nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data.
[0139] The identifier acquisition module 13 is used to acquire data identifier information associated with encrypted authorization data and send the data identifier information to the second business client to authorize the second business client to use target business data according to the data identifier information. The target business data includes the original authorization data or business data generated based on the original authorization data.
[0140] Optionally, the data authorization request may also include a private key signature of the first business client;
[0141] The encryption module 12 calls the business smart contract to obtain the original authorized data indicated in the data authorization request in the following ways:
[0142] The business smart contract is invoked to verify the private key signature based on the client's public key of the first business client;
[0143] If the private key signature verification passes, the business smart contract is invoked to obtain the original authorized data indicated in the data authorization request.
[0144] Optionally, the private key signature is obtained by calling the local smart contract in the first business client and signing the verification data based on the client private key of the first business client; the data authorization request also includes the verification data;
[0145] The encryption module 12 calls the business smart contract to verify the signature of the private key based on the client public key of the first business client, including:
[0146] The business smart contract is invoked to decrypt the private key signature based on the client public key of the first business client, thus obtaining the decrypted signature;
[0147] If the decrypted signature is the same as the verification data in the data authorization request, then the verification of the private key signature is confirmed to be successful.
[0148] If the decrypted signature is different from the verification data in the data authorization request, then the verification of the private key signature has failed.
[0149] Optionally, the encryption module 12 performs nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data, including:
[0150] The original authorized data is encrypted using the contract's public key to obtain encrypted contract data.
[0151] The contract encrypted data is encrypted using the public key of the second business client to obtain encrypted authorization data.
[0152] Optionally, the method by which the identifier acquisition module 13 acquires the data identifier information associated with the encrypted authorization data includes:
[0153] Generate the authorized block to which the encrypted authorized data belongs in the blockchain network;
[0154] Obtain the block height of the authorized block and use the block height as data identification information.
[0155] Optionally, the above-mentioned device 1 is also used for:
[0156] When a data acquisition request carrying data identification information is received from the second business client, encrypted authorized data is obtained from the authorized block according to the data identification information in the data acquisition request;
[0157] The business smart contract is invoked to obtain the target business data based on the encrypted authorization data, and the target business data is returned to the second business client.
[0158] Optionally, the aforementioned device 1 invokes a business smart contract to obtain target business data based on encrypted authorization data, including:
[0159] The business smart contract is invoked to send encrypted authorization data to the second business client, so that the second business client can decrypt the encrypted authorization data based on the corresponding client private key to obtain the contract encrypted data;
[0160] Obtain the decrypted contract encrypted data returned by the second business client, and decrypt the contract encrypted data returned by the second business client based on the contract private key of the business smart contract to obtain the original authorized data;
[0161] Obtain target business data based on the original authorized data obtained through decryption.
[0162] Optionally, the blockchain network supports data processing for e-commerce transactions; e-commerce transactions include the order placement stage for the target product, the logistics order placement stage, and the product transportation stage; the original authorized data refers to the delivery address for the target product; among which,
[0163] In the product ordering process, the first business client refers to the client of the consumer of the target product, and the second business client refers to the client of the merchant to which the target product belongs.
[0164] In the logistics order placement stage, the first business client refers to the merchant's client, and the second business client refers to the target logistics object's client where the merchant places a logistics order for the target product.
[0165] In the commodity transportation business stage, the first business client refers to the client of the first logistics object, and the second business client refers to the client of the second logistics object; the first logistics object refers to the logistics object at the previous transportation level in the commodity transportation route for the target commodity, and the second logistics object refers to the logistics object at the next transportation level in the commodity transportation route for the first logistics object.
[0166] Optionally, during the logistics order placement phase, the transportation route from the object address where the target logistics object is located to the delivery address contains L1 transit addresses in sequence, and the target business data is the first transit address among the L1 transit addresses.
[0167] Optionally, the commodity transportation route includes M logistics objects; according to the transportation direction in the commodity transportation route, each of the M logistics objects corresponds to a transportation level, and the target commodity is transported from the logistics object corresponding to any transportation level to the logistics object of the next transportation level; the commodity transportation route includes a target logistics object, which refers to the logistics object with the highest transportation level among the M logistics objects; M is a positive integer;
[0168] In the goods transportation business stage, the transportation route from the object address where the second logistics object is located to the receiving address contains L2 transit transportation addresses in sequence, and the target business data is the first transit transportation address among the L2 transit transportation addresses;
[0169] If the second logistics object is the last logistics object among M logistics objects, then L2 equals 1, and the target business data is the original authorized data.
[0170] Optionally, during the logistics order placement phase, the identification acquisition module 13 sends the data identification information to the second business client in the following ways:
[0171] The data identification information is sent to the first business client, so that the first business client can send the data identification information to the second business client to place a logistics order.
[0172] Optionally, in the order placement stage, logistics order placement stage, or goods transportation stage, the second business client is used to use the data identification information as the extension communication number, and to establish a communication connection with the communication device of the consumer based on the virtual switchboard number and the extension communication number;
[0173] There is a communication mapping relationship between the extension communication number and the actual communication number contained in the communication device.
[0174] Optionally, during the order placement phase, the blockchain network includes the blockchain account of the consumer. The blockchain network stores N pending delivery addresses associated with the blockchain account, where N is a positive integer. The N pending delivery addresses are encrypted based on the client public key and contract public key of the first business client. The data authorization request is generated based on the order placement operation for the target product in the first business client.
[0175] The encryption module 12 calls the business smart contract to obtain the original authorized data indicated in the data authorization request in the following ways:
[0176] The business smart contract is invoked to work with the first business client to decrypt the encrypted N mail receiving addresses, thus obtaining N mail receiving addresses;
[0177] Return an address selection page containing N receiving addresses to the terminal device where the first business client is located; the address selection page belongs to the blockchain network;
[0178] Use the recipient address selected by the consumer on the address selection page as the original authorization data.
[0179] According to one embodiment of this application, Figure 2 The steps involved in the data processing method of the blockchain network shown can be derived from... Figure 10 The data processing unit 1 of the blockchain network shown is used to execute this process. For example, Figure 2 Step S101 shown can be performed by Figure 10 The request receiving module 11 in the middle is used to execute, Figure 2 Step S102 shown can be performed by Figure 10 The encryption module 12 in the middle is used to execute; Figure 2 Step S103 shown can be performed by Figure 10 The identifier acquisition module 13 in the middle is used to execute.
[0180] This application receives a data authorization request from a first business client; the data authorization request includes the client public key of a second business client; it calls a business smart contract to obtain the original authorized data indicated by the data authorization request, and performs nested encryption on the original authorized data based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data; it obtains data identification information associated with the encrypted authorized data, and sends the data identification information to the second business client to authorize the second business client to use target business data according to the data identification information, wherein the target business data includes the original authorized data, or includes business data generated based on the original authorized data. Therefore, the device proposed in this application can enable the second business client to use target business data associated with the original authorized data through data identification information by calling a business smart contract, without having to provide the original authorized data to the second business client. The business smart contract intelligently ensures the confidentiality and privacy of the original authorized data for the second business client, improving the data security and data privacy of the original authorized data.
[0181] According to one embodiment of this application, Figure 10 The modules in the data processing device 1 of the blockchain network shown can be individually or entirely merged into one or more units, or some of these units can be further divided into multiple functionally smaller sub-units to achieve the same operation without affecting the technical effects of the embodiments of this application. The above modules are based on logical function division. In practical applications, the function of one module can be implemented by multiple units, or the function of multiple modules can be implemented by one unit. In other embodiments of this application, the data processing device 1 of the blockchain network may also include other units. In practical applications, these functions can also be implemented with the assistance of other units, and can be implemented collaboratively by multiple units.
[0182] According to one embodiment of this application, a general-purpose computer device, such as a computer, which includes processing elements and storage elements such as a central processing unit (CPU), random access memory (RAM), and read-only memory (ROM), can perform operations such as... Figure 2 The computer program (including program code) for each step involved in the corresponding method shown, to construct such... Figure 10 The data processing apparatus 1 of the blockchain network shown herein, and the data processing method for implementing the blockchain network according to the embodiments of this application. The computer program described above may be recorded on, for example, a computer-readable recording medium, loaded onto the computing device via the computer-readable recording medium, and run therein.
[0183] Please see Figure 11 , Figure 11This is a schematic diagram of the structure of a computer device provided in this application. Figure 11 As shown, the computer device 1000 may include a processor 1001, a network interface 1004, and a memory 1005. Furthermore, the computer device 1000 may also include a user interface 1003 and at least one communication bus 1002. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may include a display screen and a keyboard; optionally, the user interface 1003 may also include a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface). The memory 1005 may be high-speed RAM or non-volatile memory, such as at least one disk storage device. Optionally, the memory 1005 may also be at least one storage device located remotely from the aforementioned processor 1001. Figure 11 As shown, the memory 1005, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.
[0184] exist Figure 11 In the computer device 1000 shown, the network interface 1004 provides network communication functionality; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0185] Receive a data authorization request from the first service client; the data authorization request contains the client public key of the second service client;
[0186] The business smart contract is invoked to obtain the original authorized data indicated by the data authorization request, and the original authorized data is nested and encrypted based on the contract public key of the business smart contract and the client public key of the second business client to obtain encrypted authorized data.
[0187] Obtain data identification information associated with encrypted authorization data, and send the data identification information to the second business client to authorize the second business client to use target business data based on the data identification information. The target business data includes the original authorization data or business data generated based on the original authorization data.
[0188] It should be understood that the computer device 1000 described in the embodiments of this application can perform the foregoing... Figure 2 The description of the data processing method for the blockchain network in the corresponding embodiments can also be performed as described above. Figure 10The description of the data processing device 1 for the blockchain network in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated here.
[0189] Furthermore, it should be noted that this application also provides a computer-readable storage medium storing a computer program executed by the data processing device 1 of the aforementioned blockchain network. The computer program includes program instructions, which, when executed by the processor, enable the execution of the aforementioned... Figure 3 The description of the data processing method for the blockchain network in the corresponding embodiments is therefore not repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the computer storage medium embodiments related to this application, please refer to the description of the method embodiments of this application.
[0190] As an example, the above program instructions can be deployed and executed on a single computer device, or deployed and executed on multiple computer devices located in one location, or executed on multiple computer devices distributed across multiple locations and interconnected via a communication network. Multiple computer devices distributed across multiple locations and interconnected via a communication network can form a blockchain network.
[0191] The aforementioned computer-readable storage medium can be a data processing device of the blockchain network provided in any of the foregoing embodiments, or an internal storage unit of the aforementioned computer device, such as a hard drive or memory of the computer device. The computer-readable storage medium can also be an external storage device of the computer device, such as a plug-in hard drive, smart media card (SMC), secure digital (SD) card, flash card, etc., provided on the computer device. Furthermore, the computer-readable storage medium can include both internal storage units and external storage devices of the computer device. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0192] This application provides a computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the aforementioned... Figure 2The data processing method for the blockchain network described in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the computer-readable storage medium embodiments related to this application, please refer to the description of the method embodiments of this application.
[0193] The terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the term "comprising," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, apparatus, product, or device that includes a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules not listed, or may optionally include other step units inherent to these processes, methods, apparatuses, products, or devices.
[0194] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.
[0195] The methods and related apparatuses provided in this application are described with reference to the method flowcharts and / or structural diagrams provided in this application. Specifically, each block of the method flowchart and / or structural diagram, as well as combinations of blocks in the flowchart and / or block diagram, 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 device to create a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing device, generate instructions for implementing the process. Figure 1 A schematic diagram of one or more processes and / or structures. Figure 1 The 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 operate 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 A schematic diagram of one or more processes and / or structures. Figure 1The functions specified in one or more boxes. These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable apparatus for implementing the process. Figure 1 A process or multiple processes and / or structures illustrate the steps of the functions specified in one or more boxes.
[0196] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.
Claims
1. A data processing method of a blockchain network, characterized by, The method comprises: receiving a data authorization request of a first service client; the data authorization request comprises a client public key of a second service client; calling a service smart contract to obtain original authorization data indicated by the data authorization request, and performing nested encryption on the original authorization data based on a contract public key of the service smart contract and the client public key of the second service client to obtain encrypted authorization data; obtaining data identification information associated with the encrypted authorization data, and sending the data identification information to the second service client to authorize the second service client to use target service data according to the data identification information, wherein the target service data comprises the original authorization data or service data generated based on the original authorization data; The blockchain network supports data processing of an e-commerce service; the e-commerce service comprises a commodity ordering service stage, a logistics ordering service stage and a commodity transportation service stage for a target commodity; the original authorization data refers to a recipient address of the target commodity; wherein, in the commodity ordering service stage, the first service client refers to a client of a consumer object of the target commodity, and the second service client refers to a client of a merchant object to which the target commodity belongs; in the logistics ordering service stage, the first service client refers to a client of the merchant object, and the second service client refers to a client of a target logistics object for which the merchant object orders logistics for the target commodity; in the commodity transportation service stage, the first service client refers to a client of a first logistics object, and the second service client refers to a client of a second logistics object; the first logistics object refers to a logistics object at a previous transportation level in a commodity transportation route of the target commodity, and the second logistics object refers to a logistics object at a next transportation level of the first logistics object in the commodity transportation route.
2. The method of claim 1, wherein, The data authorization request further comprises a private key signature of the first service client; The calling of the service smart contract to obtain the original authorization data indicated by the data authorization request comprises: calling the service smart contract to verify the private key signature based on the client public key of the first service client; if the verification of the private key signature is passed, calling the service smart contract to obtain the original authorization data indicated by the data authorization request.
3. The method of claim 2, wherein, The private key signature is obtained by calling a local smart contract in the first service client and signing verification data based on a client private key of the first service client; and the data authorization request further comprises the verification data; The calling of the service smart contract to verify the private key signature based on the client public key of the first service client comprises: calling the service smart contract to decrypt the private key signature based on the client public key of the first service client to obtain a decrypted signature; if the decrypted signature is the same as the verification data in the data authorization request, it is confirmed that the verification of the private key signature is passed. If the decrypted signature is different from the verification data in the data authorization request, it is confirmed that the private key signature verification fails.
4. The method of claim 1, wherein, The original authorization data is nested encrypted based on a contract public key of the business smart contract and a client public key of the second business client, to obtain encrypted authorization data, including: The original authorization data is encrypted based on the contract public key, to obtain contract encrypted data; The contract encrypted data is encrypted based on the client public key of the second business client, to obtain the encrypted authorization data.
5. The method of claim 4, wherein, The data identification information associated with the encrypted authorization data is obtained, including: An authorization block to which the encrypted authorization data belongs is generated in the blockchain network; The block height of the authorization block is obtained and taken as the data identification information.
6. The method of claim 5, wherein, The method further includes: When the data acquisition request carrying the data identification information sent by the second business client is obtained, the encrypted authorization data is obtained from the authorization block according to the data identification information in the data acquisition request; The business smart contract is called to obtain the target business data according to the encrypted authorization data, and the target business data is returned to the second business client.
7. The method of claim 6, wherein, The calling of the business smart contract to obtain the target business data according to the encrypted authorization data includes: The business smart contract is called to send the encrypted authorization data to the second business client, so that the second business client decrypts the encrypted authorization data based on the corresponding client private key to obtain the contract encrypted data; The contract encrypted data returned by the second business client after decryption is obtained, and the contract encrypted data returned by the second business client is decrypted based on the contract private key of the business smart contract to obtain the original authorization data; The target business data is obtained based on the decrypted original authorization data.
8. The method of claim 1, wherein, In the logistics order business stage, the transportation route from the object address where the target logistics object is located to the recipient address contains L1 transit transportation addresses in sequence, and the target business data is the first transit transportation address in the L1 transit transportation addresses; L1 is a positive integer.
9. The method of claim 1, wherein, The commodity transportation route contains M logistics objects; according to the transportation direction in the commodity transportation route, each of the M logistics objects corresponds to a transportation level, and the target commodity is transported by any logistics object corresponding to a transportation level to a logistics object at a next transportation level; the commodity transportation route includes the target logistics object, and the target logistics object refers to the logistics object with the highest transportation level among the M logistics objects; M is a positive integer. In the commodity transportation business stage, the transportation route from the object address where the second logistics object is located to the recipient address contains L2 transit transportation addresses in sequence, and the target business data is the first transit transportation address in the L2 transit transportation addresses; L2 is a positive integer. If the second logistics object belongs to the last one of the M logistics objects, L2 is equal to 1, and the target business data is the original authorization data.
10. The method of claim 1, wherein, In the logistics order service stage, the sending of the data identification information to the second business client includes: The data identification information is sent to the first business client, so that the first business client sends the data identification information to the second business client for logistics order.
11. The method of claim 1, wherein, In the commodity order service stage, the logistics order service stage or the commodity transportation service stage, the second business client is configured to use the data identification information as an extension communication number, and establish a communication connection between the communication device of the consumer object and the communication device based on the extension communication number and a virtual main machine number; The extension communication number and the actual communication number contained in the communication device have a communication mapping relationship.
12. The method of claim 1, wherein, In the commodity order service stage, the blockchain network includes a blockchain account of the consumer object, and the blockchain network stores N to-be-received addresses associated with the blockchain account, N being a positive integer, the N to-be-received addresses being encrypted based on a client public key of the first business client and the contract public key, and the data authorization request being generated based on an order operation of the first business client for the target commodity; The calling of the business smart contract to obtain the original authorization data indicated by the data authorization request includes: The calling of the business smart contract to decrypt the encrypted N to-be-received addresses in cooperation with the first business client to obtain the N to-be-received addresses; An address selection page containing the N to-be-received addresses is returned to the terminal device where the first business client is located; the address selection page belongs to the blockchain network; The to-be-received address selected by the consumer object in the address selection page is used as the original authorization data.
13. A data processing apparatus of a blockchain network, characterized in that, The device includes: A request receiving module configured to receive a data authorization request of a first business client; the data authorization request contains a client public key of a second business client; An encryption module configured to call a business smart contract to obtain original authorization data indicated by the data authorization request, and to perform nested encryption on the original authorization data based on a contract public key of the business smart contract and a client public key of the second business client, to obtain encrypted authorization data; An identification obtaining module configured to obtain data identification information associated with the encrypted authorization data, and to send the data identification information to the second business client, so as to authorize the second business client to use target business data according to the data identification information, the target business data including the original authorization data or business data generated based on the original authorization data; The blockchain network supports data processing of an e-commerce business; the e-commerce business includes a commodity order service stage, a logistics order service stage and a commodity transportation service stage for a target commodity; the original authorization data refers to a to-be-received address for the target commodity; wherein, In the commodity ordering service stage, the first service client refers to a client of a consumption object of the target commodity, and the second service client refers to a client of a merchant object to which the target commodity belongs; In the logistics ordering service stage, the first service client refers to a client of the merchant object, and the second service client refers to a client of a target logistics object to which the target commodity is ordered by the merchant object; In the commodity transportation service stage, the first service client refers to a client of a first logistics object, and the second service client refers to a client of a second logistics object; the first logistics object refers to a logistics object of a previous transportation level in a commodity transportation route of the target commodity, and the second logistics object refers to a logistics object of a next transportation level of the first logistics object in the commodity transportation route.
14. A computer device, comprising: The computer readable storage medium stores a computer program, and the computer program is loaded and executed by the processor, so that the processor executes the steps of the method in any one of claims 1-12.
15. A computer readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is loaded and executed by the processor, so that the processor executes the steps of the method in any one of claims 1-12.
16. A computer program product, characterised in that, The computer program product includes computer instructions stored in a computer readable storage medium, and the processor of the computer device reads and executes the computer instructions from the computer readable storage medium, so that the computer device executes the method in any one of claims 1-12.
Citation Information
Patent Citations
Centralized oracle machine matched with intelligent contract application, information output method and system
CN110335151A
Data transfer method and device based on blockchain, medium, equipment and application
CN111683064A