CN113205424B - Method and apparatus for deploying and invoking contracts in blockchain - Google Patents
Method and apparatus for deploying and invoking contracts in blockchain Download PDFInfo
- Publication number
- CN113205424B CN113205424B CN202110691703.3A CN202110691703A CN113205424B CN 113205424 B CN113205424 B CN 113205424B CN 202110691703 A CN202110691703 A CN 202110691703A CN 113205424 B CN113205424 B CN 113205424B
- Authority
- CN
- China
- Prior art keywords
- contract
- blockchain
- blockchains
- transaction
- corresponds
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 9
- 238000013507 mapping Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Bioethics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- Technology Law (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Embodiments of the present disclosure provide a method and apparatus for deploying contracts in a blockchain system, where the blockchain system includes N blockchains independent of each other, the method is performed by a blockchain platform, and the blockchain platform is connected to the N blockchains respectively, and the method includes: receiving a first request to deploy a first contract; determining, based on a predetermined rule, that a first contract corresponds to a first blockchain of the N blockchains; a first transaction is sent to the first blockchain to deploy the first contract into the first blockchain.
Description
The application is a divisional application of an application patent application with application number 202011176391.4, named as a method and a device for deploying and invoking contracts in a blockchain, filed on 10/28 of 2020.
Technical Field
Embodiments of the present specification relate to the field of blockchain technology, and more particularly, to a method and apparatus for deploying contracts in a blockchain, and a method and apparatus for invoking contracts in a blockchain.
Background
Blockchain technology, also known as distributed ledger technology, is a decentralized distributed database technology that is characterized by decentralization, openness, transparency, non-tampering, and trustworthiness. Each transaction of the blockchain is broadcast to blockchain nodes of the whole network, and each whole node has a whole amount of consistent data. In the alliance chain, typically, a user terminal uses a blockchain to perform service processing, such as deposit, transfer, etc., through a blockchain platform. However, in a single-chain scenario, long runs accumulate large amounts of stored data, and account sizes are getting larger and larger, such that the processing power of the single chain is reduced. In addition, during periods of concurrent transactions more (e.g., twenty-one periods), the access pressure of the single chain increases such that the processing of the single chain fails to meet the business needs.
Disclosure of Invention
Embodiments of the present specification aim to provide a more efficient solution for deploying and invoking contracts in a blockchain to address deficiencies in the prior art.
To achieve the above object, one aspect of the present specification provides a method of deploying contracts in a blockchain system including N mutually independent blockchains therein, the method comprising:
receiving a first request to deploy a first contract;
determining, based on a predetermined rule, that a first contract corresponds to a first blockchain of the N blockchains;
a first transaction is sent to the first blockchain to deploy the first contract into the first blockchain.
In one embodiment, the method further includes, after determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, recording a correspondence of the first contract to the first blockchain.
In one embodiment, recording the correspondence of the first contract with the first blockchain includes recording the correspondence of the unique identification of the first contract with the first blockchain.
In one embodiment, the unique identification of the first contract is a combination of the account that sent the first request and the name of the first contract.
In one embodiment, the method is performed by a blockchain platform that is separately connected with the N blockchains, wherein receiving a first request to deploy a first contract includes receiving a first transaction to deploy the first contract.
In one embodiment, the method further comprises:
receiving a second request for deploying a second contract, wherein the second request comprises the association information of the second contract and the first contract;
determining that a second contract corresponds to the first blockchain based on a correspondence of the first contract to the first blockchain;
a second transaction is sent to the first blockchain to deploy the second contract into the first blockchain.
In one embodiment, the method further comprises, after determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, retrieving an address of the first contract, a pre-location of the address of the first contract being used to indicate the first blockchain.
In one embodiment, the first request is sent by a first account, the determining that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule includes determining that the first contract corresponds to M blockchains of the N blockchains based on a first predetermined rule, and determining that the first account corresponds to a first blockchain of the M blockchains based on a second predetermined rule.
In one embodiment, the method further includes, after determining that the first account corresponds to a first blockchain of the M blockchains based on a second predetermined rule, recording a first correspondence of the first contract to the M blockchains, and a second correspondence of the first account to the first blockchain, wherein the second correspondence is associated with the first correspondence.
Another aspect of the present specification provides a method of invoking contracts in a blockchain system including N independent blockchains therein, the method comprising:
receiving a third request for invoking the first contract;
determining that a first contract corresponds to a first blockchain of the N blockchains;
and sending a third transaction corresponding to the third request to the first blockchain, wherein the first contract is called in the third transaction.
In one embodiment, determining that the first contract corresponds to a first blockchain of the N blockchains includes determining that the first contract corresponds to a first blockchain of the N blockchains by reading a pre-recorded correspondence of the first contract to the first blockchain of the N blockchains.
In one embodiment, the third request includes an address of the first contract, wherein determining that the first contract corresponds to a first blockchain of the N blockchains includes determining that the first contract corresponds to the first blockchain of the N blockchains based on a predetermined bit in the address of the first contract.
In one embodiment, the first contract is for certification in the first blockchain, and the third transaction causes first data to be stored in the first blockchain after execution, the method further comprising: an identification of the first data is received from the first blockchain after sending a third transaction corresponding to the third request to the first blockchain.
In one embodiment, the identification of the first data is an identification of the third transaction.
In one embodiment, receiving a third request to invoke the first contract includes receiving a third transaction to invoke the first contract.
Another aspect of the present specification provides an apparatus for deploying contracts in a blockchain system including N mutually independent blockchains therein, the apparatus comprising:
A first receiving unit configured to receive a first request for deploying a first contract;
a first determining unit configured to determine that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule;
a first sending unit configured to send a first transaction to the first blockchain to deploy the first contract into the first blockchain.
In one embodiment, the apparatus further includes a recording unit configured to record a correspondence relationship of a first contract with a first blockchain among the N blockchains after determining that the first contract corresponds to the first blockchain based on a predetermined rule.
In one embodiment, the recording unit is further configured to record a correspondence of the unique identification of the first contract and the first blockchain.
In one embodiment, the unique identification of the first contract is a combination of the account that sent the first request and the name of the first contract.
In one embodiment, the apparatus is disposed on a blockchain platform that is respectively connected to the N blockchains, wherein the first receiving unit is further configured to receive a first transaction for deploying a first contract.
In one embodiment, the apparatus further comprises:
a second receiving unit configured to receive a second request for deploying a second contract, where the second request includes association information of the second contract and the first contract;
a second determination unit configured to determine that a second contract corresponds to the first blockchain based on a correspondence of the first contract to the first blockchain;
a second sending unit configured to send a second transaction to the first blockchain to deploy the second contract into the first blockchain.
In one embodiment, the apparatus further includes an obtaining unit configured to obtain an address of a first contract after determining that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, the predetermined bit of the address of the first contract being used to indicate the first blockchain.
Another aspect of the present specification provides an apparatus for invoking contracts in a blockchain system including N independent blockchains therein, the apparatus comprising:
a first receiving unit configured to receive a third request for invoking the first contract;
A determining unit configured to determine that a first contract corresponds to a first blockchain of the N blockchains;
and a sending unit configured to send a third transaction corresponding to the third request to the first blockchain, wherein the first contract is invoked in the third transaction.
In one embodiment, the determining unit is further configured to determine that the first contract corresponds to a first blockchain of the N blockchains by reading a pre-recorded correspondence of the first contract to the first blockchain of the N blockchains.
In one embodiment, the third request includes an address of the first contract, wherein the determining unit is further configured to determine that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined bit in the address of the first contract.
In one embodiment, the first contract is for certification in the first blockchain, and the third transaction causes first data to be stored in the first blockchain after execution, the apparatus further comprising: a second receiving unit configured to receive an identification of the first data from the first blockchain after sending a third transaction corresponding to the third request to the first blockchain.
In one embodiment, the identification of the first data is an identification of the third transaction.
In one embodiment, the first receiving unit is further configured to receive a third transaction for invoking the first contract.
Another aspect of the present description provides a computer-readable storage medium having stored thereon a computer program which, when executed in a computer, causes the computer to perform any of the methods described above.
Another aspect of the present description provides a computing device comprising a memory having executable code stored therein and a processor that, when executing the executable code, performs any of the methods described above.
By the arrangement and the scheme for calling the contracts according to the embodiment of the specification, the contracts are evenly arranged in a plurality of blockchains, so that parallel expansion capacity and processing capacity can be provided for the blockchain system through the blockchains, compared with a single blockchain, the read-write pressure is reduced, the processing efficiency of the blockchain system is improved, and particularly, the parallel expansion pressure can be rapidly expanded in a flow sudden increase period.
Drawings
The embodiments of the present specification may be further clarified by describing the embodiments of the present specification with reference to the accompanying drawings:
FIG. 1 illustrates a schematic diagram of a blockchain system in accordance with embodiments of the present description;
FIG. 2 illustrates a method flow diagram for deploying contracts in a blockchain system in accordance with embodiments of the present description;
FIG. 3 shows a content schematic of transaction 1 (Tx 1);
FIG. 4 illustrates a method flow diagram for invoking contracts in a blockchain in accordance with embodiments of the present description;
fig. 5 shows a content schematic of transaction 2 (Tx 2);
FIG. 6 illustrates an apparatus 600 for deploying contracts in a blockchain system in accordance with embodiments of the present description;
fig. 7 illustrates an apparatus 700 for invoking contracts in a blockchain system in accordance with embodiments of the present description.
Detailed Description
Embodiments of the present specification will be described below with reference to the accompanying drawings.
FIG. 1 shows a schematic diagram of a blockchain system in accordance with embodiments of the present description. As shown in fig. 1, the blockchain system includes a blockchain platform 11, and a plurality of user terminals (user terminals 12, 13, and 14 are schematically shown in the figure), that is, a blockchain platform server. The user terminal is connected to the blockchain platform 11 and operates the blockchain through the blockchain platform 11. The blockchain platform 11 is coupled to a plurality of independent blockchains, the blockchain 1, blockchain 2, and blockchain 3 being schematically illustrated in fig. 1. Blockchain 1, blockchain 2, and blockchain 3 may be referred to as parallel chains of a blockchain system that operate independently of each other to process user requests and store transaction data, respectively, thereby increasing the processing power and data storage capacity of the system.
The blockchain system including blockchains 1 through 3 is, for example, a system for certification (e.g., a copyright maintenance system), and user a may send a request to blockchain platform 11, for example, through user terminal 12, to send a transaction into the blockchain system. Upon receipt of the request, the blockchain platform 11 sends a corresponding transaction to one of blockchains 1-3 to store the transaction in the corresponding blockchain. And, the blockchain platform 11 may return the identity of the transaction to the user terminal 12, where the identity of the transaction may be a hash value of the transaction. Subsequently, when user A wishes to query the transaction, user A may provide the blockchain platform 11 with an identification of the transaction to make a query for the transaction.
In the case of the blockchain system being used only to handle a single business such as copyright maintenance, for example, the form of the transaction in the blockchain system is also relatively single, e.g., the transaction may include a transaction to deploy a contract, a transaction to invoke a contract, etc. In this case, the blockchain platform 11, after receiving a transaction from a user terminal, can perform processing by assigning transactions to the blockchain 1, the blockchain 2, and the blockchain 3, respectively, based on the identification of contracts included in the transactions, thereby having the effect of balancing loads.
It is to be understood that the blockchain system shown in fig. 1 is merely illustrative and that blockchain systems in accordance with embodiments of the present description are not limited thereto. For example, each user terminal may distribute transactions to and connect with a blockchain through a local client, thereby eliminating the need for distribution through the blockchain platform 11. The above-described processing will be described in detail below.
Fig. 2 shows a flow chart of a method of deploying contracts in a blockchain system in accordance with embodiments of the present description, the method including:
step S202, receiving a request for deploying the contract 1;
step S204, determining that the contract 1 corresponds to the blockchain 1 based on a predetermined rule;
step S206, send transaction 1 to blockchain 1 to deploy contract 1 into the blockchain 1.
In one embodiment, the method illustrated in FIG. 2 is performed by the blockchain platform 11 of FIG. 1.
First, in step S202, the blockchain platform 11 receives a request for deploying contract 1, for example, from the user terminal 12.
The data that each user wishes to authenticate may be different data and the processing that needs to be performed on the authenticated data may be different, for example, user a may wish to perform qualification processing on the authenticated data and user B may wish to perform encryption processing on the authenticated data. Thus, different users can deploy contracts for corresponding processing in the blockchain system, so that the contracts can be invoked to document their data.
For example, user A may send a request to deploy contract 1 to blockchain platform 11 through user terminal 12 using his account A. In one embodiment, the account a may be the only account that user a registers with the blockchain platform 11. That is, the account a is managed by the blockchain platform 11 and is not an account in a blockchain. In this embodiment, the request includes, for example, the names "contract 1" and the content of contract 1, wherein the content of contract 1 is a program for performing a specific process (e.g., qualification process).
In another embodiment, the account a may also be a blockchain account that user a applies for, so that the request to deploy contract 1 may be transaction 1. Fig. 3 shows a content schematic of transaction 1 (Tx 1). As shown in fig. 3, the sending account of the transaction 1 (see "From" field in fig. 3) is account a, where "0x507a …" is account address of account a, the receiving account field of the transaction 1 (i.e., the "To" field in fig. 3) is null, which indicates that the transaction 1 is a transaction for deploying a contract, and the Data field of the transaction 1 (i.e., the "Data" field in fig. 3) includes contents of the contract 1, i.e., a program for implementing a specific process. In addition, as shown in FIG. 3, the user terminal 12 also sends the digital signature of transaction 1 through account A to the blockchain platform 11. It will be appreciated that the form of transaction 1 shown in fig. 3 is merely illustrative, and that the present embodiments are not limited thereto, for example, in another form of transaction 1, the transaction may be indicated in transaction 1 as a transaction deploying contract 1 by a particular field, and the "To" field may be populated with the name of contract 1 (i.e., "contract 1") for deploying contract 1.
In one embodiment, where the account a is a blockchain account, the public key of the account a may be pre-obtained in each blockchain, such that each blockchain may receive the transaction sent by the account a, and each blockchain may record the state information of the account a locally after first receiving the transaction sent by the account a.
In step S204, the blockchain platform 11 determines that the contract 1 corresponds to blockchain 1 based on predetermined rules.
A variety of predetermined allocation rules may be set to allocate contract 1 to one of blockchains 1-3, so long as the predetermined allocation rules cause contracts to be substantially evenly allocated to blockchains 1-3, thereby causing blockchains 1-3 to be load balanced.
In one embodiment, blockchain platform 11 may number contracts that need to be deployed and assign them according to the remainder of the number divided by 3, e.g., when the remainder is 0, they are assigned to blockchain 1, when the remainder is 1 they are assigned to blockchain 2, and when the remainder is 2 they are assigned to blockchain 3.
In another embodiment, the blockchain platform 11 may hash the identity of the contract 1, for example, with a random operation, and with a result of any one of 1, 2, and 3, so that the contract 1 may be assigned to a blockchain based on the result of the hash operation. Here, the identification of the contract 1 may be the identification of the name of the contract 1, the account a+the contract 1, the contract address of the contract 1, or the like.
In step S206, the blockchain platform 11 sends transaction 1 to blockchain 1 to deploy the contract 1 into the blockchain 1.
In one embodiment, user A does not send the request to deploy contract 1 in the form of a transaction, and blockchain platform 11, upon receipt of the request, generates transaction 1, which transaction 1 has substantially the same form as transaction 1 shown in FIG. 3, except that the sending account (i.e., the "From" field) is not "Account A" but an account in blockchain 1 owned by blockchain platform 11, and further the digital signature of transaction 1 is a signature of an account through blockchain platform 11, rather than a signature made through Account A. The blockchain platform 11 then sends the generated transaction 1 to any node in the blockchain 1. The nodes in blockchain 1 broadcast transaction 1 into blockchain 1 after receiving transaction 1. The node in the blockchain 1 performs transaction 1 after consensus of transaction 1, generates a contract address of contract 1 according to a predetermined rule, stores contract content of contract 1 corresponding to the contract address of contract 1 in an account database, and thereby deploys contract 1 in blockchain 1.
In another embodiment, as described above, user A sends transaction 1 as shown in FIG. 3 to blockchain platform 11 through user terminal 12, so that blockchain platform 11 can send transaction 1 directly to any node in blockchain 1, causing nodes in blockchain 1 to deploy contract 1.
The nodes in blockchain 1 locally store transaction 1 after performing transaction 1 as described above, and the nodes in blockchain 1 may calculate a hash value for transaction 1 and store the hash value in association with the storage location of transaction 1 so that transaction 1 may be found based on the hash value for transaction 1. After deploying the contract 1 in the blockchain 1 through the above-described process, the blockchain platform 11 may acquire the hash value of the transaction 1 and the contract address of the contract 1 from any node in the blockchain 1 and return the hash value to the user terminal 12 as the identification of the transaction 1, or may also return the contract address of the contract 1 to the user terminal 12 as the identification of the contract 1.
In one embodiment, after determining that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, blockchain platform 11 records the correspondence of contract 1 to blockchain 1.
In order to record the correspondence of the contract 1 with the blockchain 1, the blockchain platform 11 needs to record the correspondence of the unique identification of the contract 1 with the unique identification of the blockchain 1, and the unique identification of the contract 1 is user-acquirable for subsequent allocation of all transactions related to the contract 1 sent by the user to the blockchain 1.
In one embodiment, user A includes only the name of contract 1, namely "contract 1", in the request to deploy contract 1, which may be the same as the names of other contracts deployed by other users, blockchain platform 11 may (Account A, contract 1) uniquely represent contract 1 in order to uniquely identify that contract 1, where "Account A" is the account used to request deployment of contract 1 and "contract 1" is the name of contract 1. The blockchain platform 11 may record a table of contracts versus blockchains as shown in table 1.
TABLE 1
Contract(s) | Block chain |
Account A, contract 1 | Blockchain 1 |
Account B, contract 2 | Blockchain 2 |
Account C, contract 3 | Blockchain 3 |
… | … |
As shown in Table 1, the blockchain platform 11 may record the correspondence between the contract 1 and blockchain 1 in the locally stored Table 1 for subsequent invocations of the contract 1, as well as queries for transactions including the contract 1, and the like.
In another embodiment, as described above, blockchain 1 may return the address of the contract 1 (e.g., 0x487b …) to blockchain platform 11 after deploying the contract 1, such that blockchain platform 11 may record a table of contracts versus blockchains as shown in table 2.
TABLE 2
As shown in Table 2, the blockchain platform 11 may record the correspondence between the contract address of contract 1 and blockchain 1 in locally stored Table 2 for subsequent invocations of contract 1, queries for transactions including contract 1, and the like.
In another manner, after determining that the first contract corresponds to a first blockchain of the N blockchains based on the predetermined rule, blockchain platform 11 may obtain the contract address of contract 1 from any node in blockchain 1. In this embodiment of the specification, after a string of character strings corresponding to the contract 1 is acquired according to the existing manner of acquiring the contract address, a node in the blockchain 1 may add a predetermined number of bits to a predetermined position (e.g., a first position or a last position, etc.) of the string of character strings to generate the contract address of the contract 1, the predetermined number of bits being used to indicate the blockchain 1, or may modify predetermined bits included in the string of character strings to generate the contract address of the contract 1. Thereafter, the blockchain platform 11 and/or the user terminal 12 may obtain the contract address of contract 1 from any node of blockchain 1 for making a call to contract 1. In this case, since the blockchain 1 deployed by the contract 1 is indicated in the address of the contract 1, there will be no need to record the table of mappings of contracts and blockchains as described above. Alternatively, the blockchain platform may itself generate the address of contract 1 based on predetermined calculation rules. For example, the blockchain platform first calculates a name hash value for contract 1 and modifies a predetermined bit of the name hash value to indicate the blockchain in which contract 1 is deployed (i.e., blockchain 1), thereby obtaining the address of contract 1. The blockchain platform 11, after obtaining the address of contract 1, may record the address of contract 1 for subsequent transactions that send calls to contract 1. Alternatively, blockchain platform 11 may send the address of contract 1 to the user terminal to send the transaction invoking contract 1 by the user terminal.
After deploying contract 1 in the blockchain system, user a may also wish to deploy other contracts, such as contract 2. In one embodiment, contract 2 has no relevance to contract 1, e.g., contract 2 is not invoked in association with invoking contract 1, user A may deploy contract 2 through the same process described above, in which case contract 2 may be deployed into blockchain 1 as in contract 1, or contract 2 may be deployed into other blockchains, e.g., blockchain 2.
In another embodiment, contract 2 has an association with contract 1, e.g., when contract 1 is called, contract 2 needs to be called in association, e.g., contract 2 is called in contract 1. In this case, the user a transmits a request for deploying the contract 2 to the blockchain platform 11 through the user terminal 12, and includes information of the contract 2 associated with the contract 1 in the request. Upon receiving the request for deployment of contract 2, blockchain platform 11 determines that contract 1 corresponds to blockchain 1 based on the locally recorded mapping table as shown in table 1 or table 2 as described above, so that it can determine that contract 2 also corresponds to blockchain 1, and sends a transaction for deployment of contract 2 to blockchain 1, and records the correspondence of contract 2 to blockchain 1 in the mapping table.
In one embodiment, the method shown in FIG. 2 may be performed by a user terminal. In this case, the user terminal 12 may be directly connected to the blockchains 1 to 3, respectively, without being connected to the respective blockchains through the blockchain platform 11. The client in the user terminal 12, upon receiving the instruction to deploy the contract 1 by the user a, determines that the contract 1 corresponds to the blockchain 1 based on a predetermined rule, thereby generating a transaction 1 to deploy the contract 1, and transmits the transaction 1 to the blockchain 1, and thereafter, locally records the correspondence of the contract 1 and the blockchain 1 at the user terminal 12. In the case where other users may call contract 1, the user terminals 12, 13 and 14 may communicate with each other so that the contracts stored by the respective user terminals are consistent with the blockchain mapping table. Wherein the user terminals 12, 13 and 14 may communicate directly through the bottom layer. Alternatively, the user terminals 12, 13 and 14 may communicate with each other via the blockchain platform, thereby serving the purpose of unifying the mapping table, in which case the blockchain platform will perform less processing and most of the processing is put on the user terminal.
FIG. 4 illustrates a method flow diagram for invoking contracts in a blockchain in accordance with embodiments of the present description, the method including:
Step S402, receiving a request for calling contract 1;
step S404, determining that contract 1 corresponds to blockchain 1;
in step S406, transaction 2 invoking contract 1 is sent to blockchain 1.
Similar to the above, the method may be performed by the blockchain platform 11 or may also be performed by a user terminal.
In one embodiment, the method of FIG. 4 is performed by the blockchain platform 11.
In step S402, the blockchain platform 11 receives a request for invoking contract 1 from the user terminal 12.
For example, after deploying contract 1, user A described above wishes to invoke contract 1 to perform a predetermined process on data 1 and store the processed data 1 in the blockchain system. Thus, user A sends a request to the blockchain platform 11 to invoke contract 1. The call to contract 1 is indicated in the request and includes parameters that will be entered when executing contract 1, namely data 1.
In one embodiment, the request includes a unique identification of contract 1. For example, as described above, the request includes (account a, contract 1) as the unique identification of contract 1. Alternatively, the contract address of contract 1 is included in the request as a unique identification of contract 1.
In another embodiment, user A's account A is an account in the blockchain system, and user terminal 12 may send transaction 2 invoking contract 1 to the blockchain platform through account A. Fig. 5 shows a content schematic of transaction 2 (Tx 2). As shown in fig. 5, the sending account of transaction 2 is account a and the receiving account is contract 1, where "0x487b …" represents the account address of contract 1, the data field of transaction 2 represents the call to the STORE function in contract 1, and the data field includes data 1 of the incoming STORE function. Wherein in this transaction 2, the receipt of the account indicates that transaction 2 is a transaction invoking contract 1. In addition, as shown in FIG. 5, the user terminal 12 also sends the digital signature of transaction 2 through account A to the blockchain platform 11.
In step S404, the blockchain platform 11 determines that the contract 1 corresponds to blockchain 1.
In one embodiment, as described above, the blockchain platform 11 has a table of mappings of contracts to blockchains recorded therein (as shown in table 1 or table 2 above). The blockchain platform 11 may determine that the contract 1 corresponds to blockchain 1 by reading the mapping table, that is, that the contract 1 is disposed in blockchain 1.
In another embodiment, the request for invoking contract 1 includes a contract address of contract 1, at least one predetermined number of bits in the contract address being preset as an identification for indicating a blockchain to which the contract is deployed. For example, the generation rule of the contract address is to set the first two bits thereof to indicate the blockchain, for example, if the first two bits of the contract address are 01, then the blockchain 1 is indicated, if the first two bits of the contract address are 10, then the blockchain 2 is indicated, and if the first two bits of the contract address are 11, then the blockchain 3 is indicated. It will be appreciated that although only the first two bits of the contract address are described herein as being used to indicate a blockchain, in practice the number of bits used to indicate a blockchain may be set based on the number of blockchains included in the blockchain system and the number of blockchains that are expected to extend. When generating the contract address of the contract 1, after generating the hash value of the contract according to a predetermined rule (for example, inputting the name of the contract into a predetermined hash function to generate the hash value of the contract), the node in the blockchain may add a multi-bit for indicating the blockchain at a predetermined position (for example, ha Xitou, or at the hash tail) of the hash value, or replace the multi-bit of the predetermined position of the hash value with the multi-bit for indicating the blockchain, thereby finally obtaining the contract address of the contract. In this case, blockchain platform 11 may determine that contract 1 corresponds to blockchain 1 based on a predetermined bit (e.g., the first two bits) of the contract address of contract 1 included in the request.
At step S406, blockchain platform 11 sends transaction 2 to blockchain 1 for invoking contract 1.
In one embodiment, the request to invoke contract 1 is not in the form of a transaction, so that blockchain platform 11 generates transaction 2, which transaction 2 has the same form as transaction 2 shown in FIG. 5, except that its sending account is the account owned by blockchain platform 11, rather than account A, and the digital signature is also the signature of the blockchain platform's account. The blockchain platform 11 then sends the generated transaction 2 to any node in blockchain 1 to cause contract 1 to be invoked in blockchain 1.
In another embodiment, the request to invoke contract 1 is in the form of transaction 2 shown in FIG. 5, whereby blockchain platform 11 sends the transaction 2 directly to any node in blockchain 1.
After receiving transaction 2, any node in blockchain 1, similarly to the processing of transaction 1 described above, will execute transaction 2 in each of the full nodes in blockchain 1 after consensus among the nodes in blockchain 1, thereby executing contract 1, updating the state data of contract 1, i.e., storing data 2 acquired by executing contract 1 to process data 1 into the account state of contract 1, and storing transaction 2 into the blockdatabase. Alternatively, the data 2 may be stored in a receipt of the transaction 2 for interrogation. After storing transaction 2 into blockchain 1, the node in blockchain 1, similarly to transaction 1, may calculate the hash value of transaction 2 as the identity of transaction 2 and record the association of the hash value of transaction 2 with the storage location of transaction 2, so that the transaction content of transaction 2 may be queried based on the hash value.
After each node in blockchain 1 accesses transaction 2, blockchain platform 11 may obtain the identity of transaction 2 (e.g., a hash value) and/or the identity of data 2 from any node in blockchain 1, or any node in blockchain 1 may actively push the identity of transaction 2 and/or the identity of data 2 to blockchain platform 11 after executing transaction 2 and logging transaction 2 in blockchain 1. The blockchain platform 11 may thus send the identity of the transaction 2 and/or the identity of the data 2 to the user terminal 12, whereby the user terminal 12 may subsequently perform a query for the data 2 based on the identity of the transaction 2 and/or the identity of the data 2.
In another embodiment, the method shown in fig. 4 may also be performed by the user terminal 12. In this case, the user terminal 12 is directly connected with each blockchain. After receiving the request for invoking the contract 1 issued by the user a through the client, the user terminal 12 determines that the contract 1 corresponds to the blockchain 1 based on the locally recorded contract-to-blockchain mapping table or based on the contract address of the contract 1, generates the transaction 2, and transmits the transaction 2 to any node of the blockchain 1, similarly as above, so that the transaction 2 is executed in the blockchain 1, thereby invoking the contract 1.
Embodiments of assigning transactions to a blockchain by means of contracts in transactions are described above with reference to fig. 2 and 4, to which the present description embodiments are not limited. In another embodiment of the present description, in addition to assigning transactions via contracts in the transactions, transactions may be assigned a second time based on accounts associated with the transactions. Referring to fig. 2, assuming that the request for deploying the contract 1 is transmitted by the account a, it may be determined that the contract 1 corresponds to M blockchains of the N blockchains based on a first predetermined rule at step S204, and then it may be determined that the account a corresponds to blockchain 1 of the M blockchains based on a second predetermined rule, so that the transaction 1 may be transmitted to the blockchain at step S206. The second predetermined rule is, for example, that account a is hashed to determine that account a corresponds to blockchain 1, or that account a corresponds to blockchain 1 based on the registries of account a. After this allocation is made, the correspondence between contracts, blockchains, and accounts can be recorded, for example, by table 3 below.
TABLE 3 Table 3
As shown in table 3, assuming 0x487B … is the account address of contract 1, table 3 shows that contract 1 corresponds to blockchain 1 and blockchain 2, and blockchain 1 corresponds to accounts a, B, etc. When blockchain platform 11 sends a transaction to a blockchain that invokes contract 1 to be sent by account a, it may be determined based on table 3 that the transaction corresponds to blockchain 1, so that the transaction may be sent to blockchain 1.
Fig. 6 illustrates an apparatus 600 for deploying contracts in a blockchain system including N independent blockchains therein, the apparatus 600 including:
a first receiving unit 61 configured to receive a first request for deploying a first contract;
a first determining unit 62 configured to determine that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule;
a first sending unit 63 configured to send a first transaction to the first blockchain to deploy the first contract into the first blockchain.
In one embodiment, the apparatus 600 further includes a recording unit 64 configured to record a correspondence relationship between a first contract and a first blockchain of the N blockchains after determining that the first contract corresponds to the first blockchain based on a predetermined rule.
In one embodiment, the recording unit 64 is further configured to record a correspondence of the unique identification of the first contract and the first blockchain.
In one embodiment, the apparatus 600 is disposed on a blockchain platform, the blockchain platform being respectively connected to the N blockchains, wherein the first receiving unit 61 is further configured to receive a first transaction for deploying a first contract.
In one embodiment, the apparatus 600 further comprises:
a second receiving unit 65 configured to receive a second request for deploying a second contract, the second request including association information of the second contract with the first contract;
a second determining unit 66 configured to determine that a second contract corresponds to the first blockchain based on a correspondence of the first contract to the first blockchain;
a second sending unit 67 configured to send a second transaction to the first blockchain to deploy the second contract into the first blockchain.
In one embodiment, the apparatus 600 further includes an obtaining unit 68 configured to obtain an address of a first contract after determining that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, wherein a predetermined bit of the address of the first contract is used to indicate the first blockchain.
Fig. 7 illustrates an apparatus 700 for invoking contracts in a blockchain system including N independent blockchains therein, the apparatus 700 including:
a first receiving unit 71 configured to receive a third request for invoking the first contract;
A determining unit 72 configured to determine that the first contract corresponds to a first blockchain of the N blockchains;
and a transmitting unit 73 configured to transmit, to the first blockchain, a third transaction corresponding to the third request, in which the first contract is invoked.
In one embodiment, the determining unit 72 is further configured to determine that the first contract corresponds to a first blockchain of the N blockchains by reading a pre-recorded correspondence of the first contract to the first blockchain of the N blockchains.
In an embodiment, the third request includes an address of the first contract, wherein the determining unit 72 is further configured to determine that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined bit in the address of the first contract.
In one embodiment, the first contract is for certification in the first blockchain, the third transaction causes first data to be stored in the first blockchain after execution, the apparatus 700 further includes: the second receiving unit 74 is configured to receive an identification of the first data from the first blockchain after sending a third transaction corresponding to the third request to the first blockchain.
In one embodiment, the identification of the first data is an identification of the third transaction.
In an embodiment, the first receiving unit 71 is further configured to receive a third transaction for invoking the first contract.
Another aspect of the present description provides a computer-readable storage medium having stored thereon a computer program which, when executed in a computer, causes the computer to perform any of the methods described above.
Another aspect of the present description provides a computing device comprising a memory having executable code stored therein and a processor that, when executing the executable code, performs any of the methods described above.
By the arrangement and the scheme for calling the contracts according to the embodiment of the specification, the contracts are evenly arranged in a plurality of blockchains, so that parallel expansion capacity and processing capacity can be provided for the blockchain system through the blockchains, compared with a single blockchain, the read-write pressure is reduced, the processing efficiency of the blockchain system is improved, and particularly, the parallel expansion pressure can be rapidly expanded in a flow sudden increase period.
It should be understood that the description of "first," "second," etc. herein is merely for simplicity of description and does not have other limiting effect on the similar concepts.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing describes specific embodiments of the present disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims can be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
Those of ordinary skill would further appreciate that the elements and algorithm steps of the examples described in connection with the embodiments disclosed herein may be embodied in electronic hardware, in computer software, or in a combination of the two, and that the elements and steps of the examples have been generally described in terms of function in the foregoing description to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Those of ordinary skill in the art may implement the described functionality using different approaches for each particular application, but such implementation is not considered to be beyond the scope of the present application. The software modules may be disposed in Random Access Memory (RAM), memory, read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The foregoing description of the embodiments has been provided for the purpose of illustrating the general principles of the invention, and is not meant to limit the scope of the invention, but to limit the invention to the particular embodiments, and any modifications, equivalents, improvements, etc. that fall within the spirit and principles of the invention are intended to be included within the scope of the invention.
Claims (16)
1. A method of deploying contracts in a blockchain system including N mutually independent blockchains therein, the method performed by a blockchain platform that is respectively connected with the N mutually independent blockchains, the method comprising:
receiving a first request to deploy a first contract;
determining that the first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule;
sending a first transaction to the first blockchain to deploy the first contract into the first blockchain; the method comprises the steps of,
receiving a second request for deploying a second contract, wherein the second request comprises the association information of the second contract and the first contract;
Determining that a second contract corresponds to the first blockchain based on a correspondence of the first contract to the first blockchain;
a second transaction is sent to the first blockchain to deploy the second contract into the first blockchain.
2. The method of claim 1, further comprising, after determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, recording a correspondence of the first contract to the first blockchain.
3. The method of claim 2, wherein recording the correspondence of the first contract with the first blockchain includes recording the correspondence of a unique identification of the first contract with the first blockchain.
4. A method according to claim 3, wherein the unique identification of the first contract is a combination of the account from which the first request was sent and the name of the first contract.
5. The method of claim 1, further comprising, after determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, retrieving an address of the first contract, a predetermined bit of the address of the first contract to indicate the first blockchain.
6. The method of claim 1, wherein the first request is sent by a first account, the determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule comprises determining that a first contract corresponds to M blockchains of the N blockchains based on a first predetermined rule, and determining that the first account corresponds to a first blockchain of the M blockchains based on a second predetermined rule.
7. The method of claim 6, further comprising, after determining that the first account corresponds to a first blockchain of the M blockchains based on a second predetermined rule, recording a first correspondence of the first contract to the M blockchains, and a second correspondence of the first account to the first blockchain, wherein the second correspondence is associated with the first correspondence.
8. An apparatus for deploying contracts in a blockchain system, the blockchain system including N mutually independent blockchains, the apparatus deployed on a blockchain platform, the blockchain platform being respectively connected with the N mutually independent blockchains, the apparatus comprising:
a first receiving unit configured to receive a first request for deploying a first contract;
A first determining unit configured to determine that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule;
a first sending unit configured to send a first transaction to the first blockchain to deploy the first contract into the first blockchain;
a second receiving unit configured to receive a second request for deploying a second contract, where the second request includes association information of the second contract and the first contract;
a second determination unit configured to determine that a second contract corresponds to the first blockchain based on a correspondence of the first contract to the first blockchain;
a second sending unit configured to send a second transaction to the first blockchain to deploy the second contract into the first blockchain.
9. The apparatus of claim 8, further comprising a first recording unit configured to record a correspondence of a first contract with a first blockchain of the N blockchains after determining that the first contract corresponds to the first blockchain based on a predetermined rule.
10. The apparatus of claim 9, wherein the first recording unit is further configured to record a correspondence of the unique identification of the first contract and the first blockchain.
11. The apparatus of claim 10, wherein the unique identification of the first contract is a combination of an account that sent the first request and a name of the first contract.
12. The apparatus of claim 8, further comprising, after determining that a first contract corresponds to a first blockchain of the N blockchains based on a predetermined rule, an obtaining unit configured to obtain an address of the first contract, a predetermined bit of the address of the first contract being used to indicate the first blockchain.
13. The apparatus of claim 8, wherein the first request is sent by a first account, the first determination unit further configured to determine that a first contract corresponds to M of the N blockchains based on a first predetermined rule, and determine that the first account corresponds to a first of the M blockchains based on a second predetermined rule.
14. The apparatus of claim 13, further comprising, a second recording unit configured to record a first correspondence of the first contract with the M blockchains and a second correspondence of the first account with the first blockchain after determining that the first account corresponds to a first blockchain of the M blockchains based on a second predetermined rule, wherein the second correspondence is associated with the first correspondence.
15. A computer readable storage medium having stored thereon a computer program which, when executed in a computer, causes the computer to perform the method of any of claims 1-7.
16. A computing device comprising a memory having executable code stored therein and a processor, which when executing the executable code, implements the method of any of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110691703.3A CN113205424B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011176391.4A CN112017052B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
CN202110691703.3A CN113205424B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011176391.4A Division CN112017052B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113205424A CN113205424A (en) | 2021-08-03 |
CN113205424B true CN113205424B (en) | 2023-08-25 |
Family
ID=73527767
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110691703.3A Active CN113205424B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
CN202011176391.4A Active CN112017052B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011176391.4A Active CN112017052B (en) | 2020-10-28 | 2020-10-28 | Method and apparatus for deploying and invoking contracts in blockchain |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN113205424B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230334470A1 (en) * | 2022-04-13 | 2023-10-19 | Spanning Labs Inc. | Blockchain interoperability system for native asset creation |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108596613A (en) * | 2018-03-22 | 2018-09-28 | 深圳市网心科技有限公司 | block chain transaction processing method, device and storage medium |
CN108805707A (en) * | 2018-05-21 | 2018-11-13 | 阿里巴巴集团控股有限公司 | Works copyright revenue distribution method and device based on block chain |
WO2019042433A1 (en) * | 2017-09-01 | 2019-03-07 | 立旃(上海)科技有限公司 | Method and device for blockchain-based multi-level transactions |
CN109472572A (en) * | 2018-11-21 | 2019-03-15 | 北京蓝石环球区块链科技有限公司 | Contract deployment and transaction based on the more subchains of block chain main chain adduction row |
EP3477569A1 (en) * | 2017-10-30 | 2019-05-01 | NEC Laboratories Europe GmbH | Method and system for securing smart contracts in blockchains |
CN109726251A (en) * | 2018-12-28 | 2019-05-07 | 苏州鸿链信息科技有限公司 | A kind of across chain distributed business system and method based on the development of block chain |
CN109840429A (en) * | 2019-01-08 | 2019-06-04 | 北京众享比特科技有限公司 | Intelligent contract deployment, call method and device |
CN110083629A (en) * | 2019-04-22 | 2019-08-02 | 深圳前海微众银行股份有限公司 | A kind of method and device of the event subscription based on block chain |
CN111679902A (en) * | 2020-08-14 | 2020-09-18 | 支付宝(杭州)信息技术有限公司 | Intelligent contract calling method and device based on block chain and electronic equipment |
CN111815330A (en) * | 2020-08-31 | 2020-10-23 | 支付宝(杭州)信息技术有限公司 | Method for deploying intelligent contract, block chain node and storage medium |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10255342B2 (en) * | 2017-04-12 | 2019-04-09 | Vijay K. Madisetti | Method and system for tuning blockchain scalability, decentralization, and security for fast and low-cost payment and transaction processing |
US20190132130A1 (en) * | 2017-10-27 | 2019-05-02 | Sap Se | Authoring and Embedding Blockchain Based Smart Contracts in B2B Contract Managements Systems |
CN108335206B (en) * | 2018-02-14 | 2020-12-22 | 创新先进技术有限公司 | Asset management method and device and electronic equipment |
CN110213304B (en) * | 2018-02-28 | 2021-11-30 | 成都高新信息技术研究院 | Block chain network interconnection method and system |
CN108681963B (en) * | 2018-03-29 | 2020-07-31 | 深圳市网心科技有限公司 | Multi-block chain integration control method, system, electronic device and storage medium |
CN108876618A (en) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | A kind of exchange block catenary system and corresponding universal block chain mutual operation method and network |
CN109150607A (en) * | 2018-08-22 | 2019-01-04 | 中链科技有限公司 | Classification management-control method and device for block chain network |
EP3566391B1 (en) * | 2018-12-28 | 2021-04-21 | Advanced New Technologies Co., Ltd. | Parallel execution of transactions in a blockchain network based on smart contract whitelists |
CN110046891A (en) * | 2019-04-02 | 2019-07-23 | 安徽省沃昇机电科技有限公司 | A kind of intelligence block chain interacted system |
US20200175622A1 (en) * | 2019-04-23 | 2020-06-04 | Alibaba Group Holding Limited | Processing ledger transactions in a blockchain |
US10839107B2 (en) * | 2019-05-30 | 2020-11-17 | Advanced New Technologies Co., Ltd. | Managing a smart contract on a blockchain |
US11108545B2 (en) * | 2019-05-31 | 2021-08-31 | Advanced New Technologies Co., Ltd. | Creating a blockchain account and verifying blockchain transactions |
CN110210845B (en) * | 2019-06-11 | 2021-06-18 | 网易(杭州)网络有限公司 | Method, apparatus, medium, and computing device for blockchain data migration |
CN110392052B (en) * | 2019-07-22 | 2021-05-25 | 中国工商银行股份有限公司 | Intelligent contract processing system and method for block chain |
SG11202003794UA (en) * | 2019-09-11 | 2020-05-28 | Advanced New Technologies Co Ltd | System and method for digital asset transfer |
CN111046437A (en) * | 2019-10-31 | 2020-04-21 | 中国科学院计算技术研究所 | Block chain parallel transaction processing method and system based on isomorphic multi-chain and terminal |
CN110855701A (en) * | 2019-11-21 | 2020-02-28 | 清华大学 | Block chain-based infrastructure service method and device |
CN111143371B (en) * | 2019-12-27 | 2023-09-19 | 中国银联股份有限公司 | Data query method, device, equipment, system and medium |
CN111245910B (en) * | 2019-12-31 | 2022-04-19 | 杭州趣链科技有限公司 | Block chain light node multi-copy deployment method |
CN111245624B (en) * | 2020-01-14 | 2023-02-28 | 杭州趣链科技有限公司 | Multi-type block chain deployment management system and method |
CN111510333B (en) * | 2020-04-15 | 2023-04-18 | 中国工商银行股份有限公司 | Alliance block chain system based on K3S platform, realization method and device |
CN111736963B (en) * | 2020-06-08 | 2022-10-11 | 中国科学院计算技术研究所 | Transaction processing system and method for backbone-free multi-partition block chain |
CN111741000B (en) * | 2020-06-22 | 2021-06-22 | 北京邮电大学 | Data access system and method based on block chain and intelligent contract |
-
2020
- 2020-10-28 CN CN202110691703.3A patent/CN113205424B/en active Active
- 2020-10-28 CN CN202011176391.4A patent/CN112017052B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019042433A1 (en) * | 2017-09-01 | 2019-03-07 | 立旃(上海)科技有限公司 | Method and device for blockchain-based multi-level transactions |
EP3477569A1 (en) * | 2017-10-30 | 2019-05-01 | NEC Laboratories Europe GmbH | Method and system for securing smart contracts in blockchains |
CN108596613A (en) * | 2018-03-22 | 2018-09-28 | 深圳市网心科技有限公司 | block chain transaction processing method, device and storage medium |
CN108805707A (en) * | 2018-05-21 | 2018-11-13 | 阿里巴巴集团控股有限公司 | Works copyright revenue distribution method and device based on block chain |
CN109472572A (en) * | 2018-11-21 | 2019-03-15 | 北京蓝石环球区块链科技有限公司 | Contract deployment and transaction based on the more subchains of block chain main chain adduction row |
CN109726251A (en) * | 2018-12-28 | 2019-05-07 | 苏州鸿链信息科技有限公司 | A kind of across chain distributed business system and method based on the development of block chain |
CN109840429A (en) * | 2019-01-08 | 2019-06-04 | 北京众享比特科技有限公司 | Intelligent contract deployment, call method and device |
CN110083629A (en) * | 2019-04-22 | 2019-08-02 | 深圳前海微众银行股份有限公司 | A kind of method and device of the event subscription based on block chain |
CN111679902A (en) * | 2020-08-14 | 2020-09-18 | 支付宝(杭州)信息技术有限公司 | Intelligent contract calling method and device based on block chain and electronic equipment |
CN111815330A (en) * | 2020-08-31 | 2020-10-23 | 支付宝(杭州)信息技术有限公司 | Method for deploying intelligent contract, block chain node and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN113205424A (en) | 2021-08-03 |
CN112017052B (en) | 2021-05-18 |
CN112017052A (en) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI737165B (en) | Method and device for sending resources across chains | |
US11336465B2 (en) | Sending cross-chain authenticatable messages | |
US7480658B2 (en) | Distributed database system and method having nodes co-ordinated in a decentralized manner | |
CN113094396B (en) | Data processing method, device, equipment and medium based on node memory | |
WO2020258847A1 (en) | Method and apparatus for cross-chain transmission of authenticable message based on processing module | |
CN110008665B (en) | Authority control method and device for blockchain | |
CN110321225B (en) | Load balancing method, metadata server and computer readable storage medium | |
WO2023040502A1 (en) | User service registration | |
CN112579319B (en) | Service calling method and device based on LRU Cache optimization | |
CN111966731A (en) | Method and device for querying data in block chain system | |
CN113077259A (en) | Block chain-based evidence storing method and device and electronic equipment | |
WO2023040498A1 (en) | User service utilization | |
CN115002228B (en) | Service cascade calling method and device, electronic equipment and storage medium | |
CN113205424B (en) | Method and apparatus for deploying and invoking contracts in blockchain | |
CN112866421A (en) | Intelligent contract operation method and device based on distributed cache and NSQ | |
CN113469815A (en) | Data management method and device | |
CN112001796A (en) | Method and device for processing service in block chain system | |
CN112001800B (en) | Method and device for processing business in block chain system | |
WO2023040450A1 (en) | Blockchain service network establishment | |
CN112988852B (en) | Block chain-based data management method, device and medium | |
CN109327520B (en) | Method and device for establishing connection between terminal and server node | |
JP2014524210A (en) | Generate variable length nonce | |
CN111831678A (en) | Privacy protection method and device based on block chain and electronic equipment | |
CN112001801A (en) | Method and apparatus for resource transfer in a blockchain system | |
CN116975158B (en) | Request processing method, apparatus, computer device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240929 Address after: Room 803, floor 8, No. 618 Wai Road, Huangpu District, Shanghai 200010 Patentee after: Ant blockchain Technology (Shanghai) Co.,Ltd. Country or region after: China Address before: 310000 801-11 section B, 8th floor, 556 Xixi Road, Xihu District, Hangzhou City, Zhejiang Province Patentee before: Alipay (Hangzhou) Information Technology Co.,Ltd. Country or region before: China |