WO2021042818A1 - Procédé et appareil de d'interrogation d'actif à base de chaîne de blocs et dispositif électronique - Google Patents

Procédé et appareil de d'interrogation d'actif à base de chaîne de blocs et dispositif électronique Download PDF

Info

Publication number
WO2021042818A1
WO2021042818A1 PCT/CN2020/097352 CN2020097352W WO2021042818A1 WO 2021042818 A1 WO2021042818 A1 WO 2021042818A1 CN 2020097352 W CN2020097352 W CN 2020097352W WO 2021042818 A1 WO2021042818 A1 WO 2021042818A1
Authority
WO
WIPO (PCT)
Prior art keywords
asset
transaction
blockchain
target
execution environment
Prior art date
Application number
PCT/CN2020/097352
Other languages
English (en)
Chinese (zh)
Inventor
祁鹏涛
周徽
陆旭明
陈锐发
Original Assignee
创新先进技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 创新先进技术有限公司 filed Critical 创新先进技术有限公司
Publication of WO2021042818A1 publication Critical patent/WO2021042818A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Definitions

  • One or more embodiments of this specification relate to the field of blockchain technology, and in particular, to a blockchain-based asset query method and device, and electronic equipment.
  • Blockchain technology also known as distributed ledger technology, is an emerging technology in which several computing devices participate in "bookkeeping" and jointly maintain a complete distributed database. Because the blockchain technology has the characteristics of decentralization, openness and transparency, each computing device can participate in database records, and the rapid data synchronization between computing devices, the blockchain technology has been widely used in many fields. To apply.
  • This specification proposes a blockchain-based asset query method, which is applied to the node device in the blockchain, the node device is equipped with a trusted execution environment; the blockchain stores the investment The asset release transaction issued by the management party to the blockchain; wherein the asset release transaction includes the asset information released by the investment management party in the blockchain; the asset release transaction has been encrypted in advance;
  • the method includes:
  • the target asset issuance transaction decrypted in the trusted execution environment is returned to the client.
  • the blockchain stores asset release transactions issued to the blockchain by multiple investment management parties; wherein, transactions of asset release transactions issued to the blockchain by different investment managers The format is different.
  • the assets released by the investment manager in the blockchain include:
  • Basic assets and, using the basic asset pool created based on the basic assets published in the blockchain as the value support, and the issued securitized assets.
  • the securitized asset is a bond or a fund
  • the basic asset is a basic debt asset.
  • the asset issuance transaction further includes a participant user related to the asset released by the investment manager in the blockchain;
  • the determining whether the asset query user has the viewing authority of the target asset release transaction includes:
  • the viewing authority of the target asset release transaction is described.
  • the returning the target asset release transaction decrypted in the trusted execution environment to the client includes:
  • the trusted execution environment stores the contract code of the target smart contract and the decryption key for decrypting the asset issuance transaction; wherein the decryption key stored in the trusted execution environment is It is forbidden to export the trusted execution environment.
  • the encryption method adopted for the contract code of the target smart contract includes any one of the following encryption methods: symmetric encryption, asymmetric encryption, and symmetric encryption combined with asymmetric encryption.
  • the combination of symmetric encryption and asymmetric encryption includes a digital envelope encryption method.
  • the trusted execution environment includes Intel SGX.
  • This specification also proposes a blockchain-based asset query method, which is applied to a node device in the blockchain, the node device is equipped with a trusted execution environment; the blockchain stores the The asset release transaction issued by the investment management party to the blockchain; wherein the asset release transaction includes the asset information released by the investment management party in the blockchain; the asset release transaction has been encrypted in advance ;
  • the method includes:
  • the asset query user has the viewing authority of the target asset issuance transaction, encrypt the decryption key of the target asset issuance transaction stored in the trusted execution environment based on the public key of the asset query user , And return the encrypted decryption key to the client, so that the client decrypts the encrypted decryption key based on the private key of the asset query user, and based on the decrypted decryption key
  • the decryption key decrypts the target asset issuance transaction to obtain the original content of the target asset issuance transaction.
  • This specification also proposes a blockchain-based asset query device, which is applied to a node device in the blockchain, the node device is equipped with a trusted execution environment; the blockchain stores the The asset release transaction issued by the investment management party to the blockchain; wherein the asset release transaction includes the asset information released by the investment management party in the blockchain; the asset release transaction has been encrypted in advance ;
  • the device includes:
  • the receiving module receives the call transaction for the target smart contract deployed on the block chain from the client; wherein, the call transaction includes the transaction identifier of the target asset release transaction that the asset query user inquires; the block chain The contract code of the target smart contract stored in is encrypted in advance;
  • the determination module in response to the call transaction, decrypts the contract code of the target smart contract in the trusted execution environment, and executes the decrypted contract code in the trusted execution environment to determine the asset Query whether the user has the permission to view the target asset release transaction;
  • the return module if it is determined that the asset query user has the viewing authority of the target asset issuance transaction, the target asset issuance transaction decrypted in the trusted execution environment is returned to the client.
  • the blockchain stores asset release transactions issued to the blockchain by multiple investment management parties; wherein, transactions of asset release transactions issued to the blockchain by different investment managers The format is different.
  • the assets released by the investment manager in the blockchain include:
  • Basic assets and, using the basic asset pool created based on the basic assets published in the blockchain as value support, and the issued securitized assets.
  • the securitized asset is a bond or a fund
  • the basic asset is a basic debt asset.
  • the asset issuance transaction also includes a participant user related to the asset released by the investment manager in the blockchain;
  • the determining module :
  • the viewing authority of the target asset release transaction is described.
  • the return module :
  • the trusted execution environment stores the contract code of the target smart contract and the decryption key for decrypting the asset issuance transaction; wherein the decryption key stored in the trusted execution environment is It is forbidden to export the trusted execution environment.
  • the encryption method adopted for the contract code of the target smart contract includes any one of the following encryption methods: symmetric encryption, asymmetric encryption, and symmetric encryption combined with asymmetric encryption.
  • the combination of symmetric encryption and asymmetric encryption includes a digital envelope encryption method.
  • the trusted execution environment includes Intel SGX.
  • This specification also proposes a blockchain-based asset query device, which is applied to a node device in the blockchain, the node device is equipped with a trusted execution environment; the blockchain stores the The asset release transaction issued by the investment management party to the blockchain; wherein the asset release transaction includes the asset information released by the investment management party in the blockchain; the asset release transaction has been encrypted in advance ;
  • the device includes:
  • the receiving module receives the call transaction for the target smart contract deployed on the block chain from the client; wherein, the call transaction includes the transaction identifier of the target asset release transaction that the asset query user inquires; the block chain The contract code of the target smart contract stored in is encrypted in advance;
  • the determination module in response to the call transaction, decrypts the contract code of the target smart contract in the trusted execution environment, and executes the decrypted contract code in the trusted execution environment to determine the asset Query whether the user has the permission to view the target asset release transaction;
  • the module if it is determined that the asset query user has the permission to view the target asset issuance transaction, then based on the asset query user’s public key to decrypt the target asset issuance transaction stored in the trusted execution environment Key is encrypted, and the encrypted decryption key is returned to the client, so that the client decrypts the encrypted decryption key based on the private key of the asset query user, and based on The decrypted decryption key decrypts the target asset issuance transaction to obtain the original content of the target asset issuance transaction.
  • This specification also proposes an electronic device, including:
  • a memory for storing processor executable instructions
  • the processor implements the steps of the foregoing method by running the executable instruction.
  • This specification also proposes a computer-readable storage medium on which computer instructions are stored, characterized in that, when the instructions are executed by a processor, the steps of the above-mentioned method are implemented.
  • the client can send the call transaction for the pre-encrypted target smart contract deployed on the block chain, so that the node device in the block chain responds to the call transaction on the device.
  • the contract code of the target smart contract is decrypted in the trusted execution environment, and the decrypted contract code is executed in the trusted execution environment to determine whether the asset query user has the target asset corresponding to the transaction identifier in the call transaction.
  • the viewing authority of the release transaction if it is, the target asset release transaction decrypted in the trusted execution environment is returned to the client.
  • Figure 1 is a schematic diagram of a smart contract creation process shown in this specification
  • Figure 2 is a schematic diagram of a call flow of a smart contract shown in this specification
  • Figure 3 is a schematic diagram of the creation and invocation process of a smart contract shown in this specification
  • Fig. 4 is a schematic diagram of a blockchain-based asset securitization system shown in an exemplary embodiment of this specification
  • Fig. 5 is a flowchart of an asset query method based on blockchain according to an exemplary embodiment of this specification
  • Fig. 6 is a flowchart of another blockchain-based asset query method shown in an exemplary embodiment of this specification.
  • FIG. 7 is a schematic structural diagram of an electronic device shown in an exemplary embodiment of this specification.
  • Fig. 8 is a block diagram of an asset query device based on blockchain according to an exemplary embodiment of the present specification
  • Fig. 9 is a block diagram of another device for querying assets based on blockchain according to an exemplary embodiment of the present specification.
  • the steps of the corresponding method are not necessarily executed in the order shown and described in this specification.
  • the method may include more or fewer steps than described in this specification.
  • a single step described in this specification may be decomposed into multiple steps for description in other embodiments; and multiple steps described in this specification may also be combined into a single step in other embodiments. description.
  • Block chains are generally divided into three types: Public Blockchain, Private Blockchain and Consortium Blockchain.
  • Public Blockchain Private Blockchain
  • Consortium Blockchain there can also be a combination of the above types, such as private chain + consortium chain, consortium chain + public chain, and so on.
  • the public chain is represented by Bitcoin and Ethereum. Participants who join the public chain (also called nodes in the blockchain) can read the data records on the chain, participate in transactions, and compete for the accounting rights of new blocks, etc. . Moreover, each node can freely join or exit the network, and perform related operations.
  • the private chain is the opposite.
  • the write permission of the network is controlled by an organization or institution, and the data read permission is regulated by the organization.
  • a private chain can be a weakly centralized system with strict restrictions on nodes and a small number of nodes. This type of blockchain is more suitable for internal use by specific institutions.
  • Each node in the alliance chain usually has a corresponding entity or organization; nodes are authorized to join the network and form a stakeholder alliance to jointly maintain the operation of the blockchain.
  • the blockchain is usually composed of several blocks.
  • a time stamp corresponding to the creation time of the block is recorded in these blocks, and all the blocks strictly follow the time stamp recorded in the block to form a time-ordered data chain.
  • the real data generated in the physical world it can be constructed into a standard transaction format supported by the blockchain, and then published to the blockchain, and the node devices in the blockchain will perform consensus processing on the received transactions , And after reaching a consensus, the node device as the bookkeeping node in the block chain will package the transaction into the block and carry out persistent storage in the block chain.
  • the consensus algorithms supported in the blockchain can include:
  • the first type of consensus algorithm that is, the consensus algorithm that node devices need to compete for the accounting right of each round of accounting cycle; for example, Proof of Work (POW), Proof of Stake (POS), appointment Consensus algorithms such as Delegated Proof of Stake (DPOS);
  • POW Proof of Work
  • POS Proof of Stake
  • DPOS Delegated Proof of Stake
  • the second type of consensus algorithm is a consensus algorithm that pre-selects accounting nodes for each round of accounting cycles (without competing for accounting rights); for example, practical Byzantine Fault Tolerance (PBFT) and other consensus algorithms.
  • PBFT Byzantine Fault Tolerance
  • all node devices that compete for the right to bookkeeping can execute the transaction after receiving the transaction.
  • one node device may win this round of contention for the right to bookkeeping and become the bookkeeping node.
  • the accounting node can package the received transaction with other transactions to generate the latest block, and send the generated latest block or the block header of the latest block to other node devices for consensus.
  • the node device with the right to book accounts has been agreed before this round of bookkeeping. Therefore, after the node device receives the transaction, if it is not the accounting node of this round, it can send the transaction to the accounting node.
  • the transaction can be executed during or before the process of packaging the transaction with other transactions to generate the latest block.
  • the accounting node After the accounting node generates the latest block, it can send the latest block or the block header of the latest block to other node devices for consensus.
  • the accounting node of this round can package the received transaction to generate the latest block, and the generated latest block or the latest block
  • the header of the block is sent to other node devices for consensus verification. If other node devices receive the latest block or the block header of the latest block, and there is no problem after verification, the latest block can be appended to the end of the original blockchain to complete the accounting process of the blockchain. In the process of other nodes verifying the new block or block header sent by the accounting node, the transactions contained in the block can also be executed.
  • an important concept is Account; taking Ethereum as an example, Ethereum usually divides accounts into external accounts and contract accounts; external accounts are accounts directly controlled by users, also called It is a user account; while a contract account is an account created by a user through an external account and contains the contract code (ie smart contract).
  • the account types supported by the blockchain can also be further extended, which is not particularly limited in this specification.
  • a structure is usually used to maintain the account status of the account.
  • the state of the account related to the transaction in the blockchain usually changes.
  • the structure of an account usually includes fields such as Balance, Nonce, Code, and Storage. among them:
  • the Balance field is used to maintain the current account balance of the account
  • the Nonce field is used to maintain the number of transactions in the account; it is a counter used to ensure that each transaction can be processed and can only be processed once, effectively avoiding replay attacks;
  • the Code field is used to maintain the contract code of the account; in actual applications, the Code field usually only maintains the hash value of the contract code; therefore, the Code field is usually also called the Codehash field.
  • the Storage field is used to maintain the storage content of the account (the default field value is empty); for contract accounts, an independent storage space is usually allocated to store the storage content of the contract account; the independent storage space is usually Call it the account storage of the contract account.
  • the storage content of the contract account is usually constructed as an MPT (Merkle Patricia Trie) tree and the data structure is stored in the above independent storage space; among them, the MPT tree constructed based on the storage content of the contract account is usually also called the Storage tree .
  • the Storage field usually only maintains the root node of the Storage tree; therefore, the Storage field is usually also called the StorageRoot field.
  • the field values of the Code field and the Storage field shown above are all null values.
  • Merkle trees are usually used; or, based on the data structure of Merkle trees, to store and maintain data.
  • Ethereum uses the MPT tree (a variant of Merkle tree) as a form of data organization to organize and manage important data such as account status and transaction information.
  • Ethereum has designed three MPT trees for the data that needs to be stored and maintained in the blockchain, namely the MPT state tree, the MPT transaction tree and the MPT receipt tree. Among them, in addition to the above three MPT trees, there is actually a Storage tree based on the storage content of the contract account.
  • MPT state tree is an MPT tree organized by the account state data of all accounts in the blockchain
  • MPT transaction tree is an MPT tree organized by transaction data in the blockchain
  • MPT receipt tree Is the MPT tree organized by the receipt of each transaction generated after the transactions in the block are executed.
  • the hash values of the root nodes of the MPT state tree, MPT transaction tree, and MPT receipt tree shown above will all be added to the block header of the corresponding block eventually.
  • the MPT transaction tree and the MPT receipt tree correspond to the blocks, that is, each block has its own MPT transaction tree and MPT receipt tree.
  • the MPT state tree is a global MPT tree, which does not correspond to a specific block, but covers the account state data of all accounts in the blockchain.
  • the balances of the transferor account and transferee account related to the "transfer transaction” (that is, the field value of the Balance field of these accounts) are usually also Will change accordingly.
  • the node device After the transaction of the node device in the latest block generated by the blockchain is completed, because the account status in the current blockchain has changed, the node device needs to use the current account status data of all accounts in the blockchain to Construct the MPT state tree to maintain the latest state of all accounts in the blockchain.
  • Smart contracts on the blockchain are contracts that can be triggered and executed by transactions on the blockchain. Smart contracts can be defined in the form of codes.
  • Ethereum Taking Ethereum as an example, it supports users to create and call some complex logic in the Ethereum network.
  • Ethereum is a programmable blockchain, and its core is the Ethereum Virtual Machine (EVM), and each Ethereum node can run the EVM.
  • EVM is a Turing complete virtual machine, through which various complex logic can be realized. Users who publish and call smart contracts in Ethereum run on the EVM.
  • the EVM directly runs virtual machine code (virtual machine bytecode, hereinafter referred to as "bytecode”), so the smart contract deployed on the blockchain can be bytecode.
  • bytecode virtual machine code
  • each node can execute the transaction in the EVM.
  • the From field of the transaction in Figure 1 is used to record the address of the account that initiated the creation of the smart contract
  • the field value of the Data field of the transaction can be stored as a bytecode
  • the field value of the To field of the transaction is a null (empty )’S account.
  • a contract account corresponding to the smart contract appears on the blockchain and has a specific address; for example, "0x68e12cf284" in each node in Figure 1 represents the address of the created contract account ; Contract code (Code) and account storage (Storage) will be stored in the account storage of the contract account.
  • the behavior of the smart contract is controlled by the contract code, and the account storage of the smart contract saves the state of the contract.
  • smart contracts enable virtual accounts containing contract codes and account storage to be generated on the blockchain.
  • the Data field containing the transaction that creates the smart contract can store the bytecode of the smart contract.
  • the bytecode consists of a series of bytes, and each byte can identify an operation.
  • developers can choose a high-level language to write smart contract code instead of directly writing bytecode.
  • high-level languages such as Solidity, Serpent, and LLL languages can be used.
  • smart contract code written in a high-level language it can be compiled by a compiler to generate bytecode that can be deployed on the blockchain.
  • the contract code written with it is very similar to the class in the object-oriented programming language.
  • a variety of members can be declared in a contract, including state variables, functions, function modifiers, and events.
  • the state variable is a value permanently stored in the account storage (Storage) field of the smart contract, and is used to save the state of the contract.
  • each node can execute the transaction in the EVM.
  • the From field of the transaction in Figure 4 is used to record the address of the account that initiated the call of the smart contract
  • the To field is used to record the address of the smart contract being called
  • the Data field of the transaction is used to record the method and parameters of calling the smart contract.
  • the account status of the contract account may change. Later, a certain client can view the account status of the contract account through the connected blockchain node (for example, node 1 in Figure 2).
  • Smart contracts can be executed independently on each node in the blockchain network in a prescribed manner. All execution records and data are stored on the blockchain, so when such transactions are executed, the blockchain cannot be saved. Falsified, non-lost transaction certificate.
  • FIG. 3 The schematic diagram of creating a smart contract and invoking a smart contract is shown in Figure 3.
  • Invoking a smart contract in Ethereum is to initiate a transaction that points to a smart contract address.
  • the EVM of each node can execute the transaction separately, and the smart contract code can be distributed and run in the virtual machine of each node in the Ethereum network.
  • the conversion of physical assets with non-monetary attributes in the real world into virtual assets on the blockchain usually refers to "anchoring" the physical assets with virtual assets on the blockchain, as The value support of these virtual assets, in turn, produces a process of virtual assets that match the value of physical assets on the blockchain and can circulate between blockchain accounts on the blockchain.
  • the account types supported by the blockchain can be expanded.
  • an asset account also called an asset object
  • an asset account is expanded; the expanded asset account means that non-monetary physical assets in the real world can be used as value support, and can be used in the blockchain Virtual assets circulating between accounts.
  • a value matching the real-world non-monetary physical assets can be created on the blockchain.
  • virtual assets circulate on the blockchain;
  • users can convert non-monetary physical assets such as real estate, stocks, loan contracts, bills, accounts receivable, etc., into virtual assets with matching value to circulate on the blockchain.
  • non-monetary physical assets such as real estate, stocks, loan contracts, bills, accounts receivable, etc.
  • a structure can also be used to maintain the account status of the account.
  • the content contained in the structure of the above asset account can be the same as that of Ethereum, of course, it can also be designed based on actual needs;
  • the structure of the asset account may also include the fields of Balance, Nonce, Code, and Storage described above.
  • the Balance field is usually used to maintain the current account balance of the account; and for blockchain projects derived from the Ethereum architecture, it may not support real-world Currency is converted into virtual tokens that can be circulated on the chain. Therefore, in this type of blockchain, the meaning of the Balance field can be expanded. It no longer represents the "balance" of the account, but is used to maintain the "balance” of the account.
  • the external accounts, contract accounts and asset accounts shown above can all be held by adding the address information of the asset account corresponding to the "virtual asset" that needs to be held in the Balance field to hold this virtual asset . That is, in addition to external accounts and contract accounts, the asset account itself can also hold virtual assets.
  • the field value of the Nonce and Code fields can be empty (or not empty); the field value of the Storage field can no longer be empty; the Storage field can be used to maintain the corresponding asset account
  • the specific method of maintaining the asset status of the "virtual asset” corresponding to the asset account in the Storage field can be flexibly designed based on requirements, and will not be repeated.
  • users can create a virtual asset on the blockchain that matches the value of the real-world non-monetary physical asset through the implementation shown below:
  • the transaction types supported by the blockchain can be extended to expand a transaction for creating virtual assets; for example, the transaction types supported by Ethereum usually include ordinary transfer transactions and smart contract creation. For transactions and transactions that call smart contracts, on the basis of the above three types of transactions, a transaction for creating virtual assets can be expanded.
  • the user can publish a transaction for creating virtual assets to the blockchain network through the client, and the node device in the blockchain executes the transaction in the local EVM to provide the user with Create virtual assets. After each node device reaches an agreement through the consensus mechanism, the virtual asset is successfully created, and an asset account corresponding to the virtual asset appears on the blockchain and has a specific address.
  • a smart contract for creating virtual assets can also be deployed on the blockchain; wherein, the process of deploying a smart contract for creating virtual assets will not be repeated.
  • the user can publish a transaction for invoking the smart contract to the blockchain network through the client, and the node device in the blockchain will execute the transaction in the local EVM, and the transaction will be executed in the EVM.
  • multiple blockchains can achieve cross-chain docking through cross-chain relays.
  • the cross-chain relay can be connected to multiple blockchains through the bridge interface, and based on the implemented data handling logic, the cross-chain data synchronization between the multiple blockchains can be completed.
  • cross-chain technology used in the implementation of the above-mentioned cross-chain relay is not particularly limited in this specification; for example, in practical applications, multiple blocks can be combined through cross-chain mechanisms such as side-chain technology and notary technology.
  • the chains are connected.
  • the blockchains can read and authenticate data on other blockchains, and they can also call deployments on other blockchains through cross-chain relays. Smart contract.
  • the smart contract deployed on the blockchain can not only use the data stored on the blockchain, but also use the Oracle oracle to refer to the data on the data entity outside the chain to realize the smart contract and the real-world data entity Data exchange between.
  • Data entities outside the chain may include centralized servers or data centers deployed outside the chain, and so on.
  • Oracle Oracle unlike cross-chain relay, the function of Oracle Oracle is not to synchronize data on one blockchain to another blockchain, but to synchronize data on data entities outside the chain to blocks.
  • the function of Oracle Oracle is not to synchronize data on one blockchain to another blockchain, but to synchronize data on data entities outside the chain to blocks.
  • the cross-chain relay is used to connect two blockchains
  • the Oracle oracle is used to connect the blockchain with data entities outside the chain to realize the data interaction between the blockchain and the real world.
  • FIG. 4 is a schematic diagram of a blockchain-based asset securitization system according to an exemplary embodiment of this specification.
  • Asset securitization refers to the process of using the cash flow generated by the underlying assets as the repayment support, through the structured design for credit enhancement, and on this basis the issuance of asset-backed securities (Asset-Backed Securities, ABS); it is based on a specific Asset portfolio or specific cash flow is a form of financing to support the issuance of tradable securities.
  • the basic process of a complete securitization financing usually includes: the initiator (that is, the original equity holder) can sell the securitable basic assets to the investment manager, or the investment manager can actively purchase the securitable Fundamental assets; then the investment management party can combine these fundamental assets into the Assets Pool, and then use the cash flow generated by the underlying asset pool as the reimbursement support to issue securities in the financial market for financing; finally, they can use The cash flow generated by the underlying asset pool is used to pay off the securities issued.
  • the investment management party may be a Special Purpose Vehicle (SPV).
  • SPV Special Purpose Vehicle
  • the original equity holder can publish the basic assets held by it to the blockchain for certification, and the investment manager can purchase from the original equity holder
  • These basic assets and the basic assets deposited in the blockchain are integrated into a basic asset pool, that is, a basic asset pool is created based on these basic assets.
  • the investment management party can publish the basic assets purchased from the original equity holders to the blockchain for certification, and collect these basic assets certified in the blockchain into the basic asset pool. That is, a basic asset pool is created based on these basic assets.
  • the investment manager can construct the basic asset into an asset release transaction in accordance with the standard transaction format, and publish the asset release transaction to the blockchain for deposit certification .
  • the investment manager can create a basic asset pool based on these basic assets by calling smart contracts deployed on the blockchain.
  • the basic asset pool may be a collection of selected basic asset identifiers generated by the smart contract.
  • the set can be stored in the account storage space (for example: Storage field) of the contract account corresponding to the smart contract, or in the account storage space of the blockchain account of the investment manager.
  • the investment manager can use the basic asset pool as value support and issue securitized assets on the blockchain, that is, the future cash flow generated by the basic asset pool will be used as payment support to issue securitized assets.
  • the basic asset can be a basic debt asset (for example: accounts receivable);
  • the securitized asset can be ABS (for example: bonds or funds);
  • the investment manager uses the basic asset pool as value support on the blockchain
  • the investment manager can construct the securitized asset into an asset release transaction in accordance with the standard transaction format, and publish the asset release transaction to the block
  • the chain carries out deposit certificates to realize the issuance of securitized assets on the blockchain.
  • the transaction format can include the original equity holders, investment managers, asset service agencies, custodian banks, regulatory banks, rating agencies, law firms, audits and other asset participants information, that is, based on the above-mentioned basic assets or the above-mentioned securitized assets.
  • the asset release transaction can also include the corresponding asset participant information released by the investment manager in the blockchain, for example:
  • the data in an asset issuance transaction constructed based on the basic asset can include the original equity holders of the basic asset, investment management parties and other asset participants; for a certain securitized asset, based on the securitized asset
  • the data in the constructed asset release transaction may include the asset participants such as the investment manager, custodian bank, and regulatory bank of the securitized asset.
  • the blockchain can store asset release transactions issued by multiple investment managers to the blockchain.
  • the transaction format of asset release transactions issued by different investment managers to the blockchain may be different according to actual conditions.
  • TEE Trusted Execution Environment
  • TEE can play the role of a black box in the hardware. Neither the code executed in the TEE nor the data operating system layer can be peeped, and only the pre-defined interface in the code can operate on it.
  • TEE plaintext data is calculated in TEE instead of complex cryptographic operations in homomorphic encryption. There is no loss of efficiency in the calculation process. Therefore, the combination with TEE can achieve less performance loss. Under the premise, the security and privacy of the blockchain are greatly improved.
  • TPM Trust Platform Module
  • Intel SGX Software Guard Extensions
  • ARM Trustzone trust zone
  • AMD PSP Plate Security Processor, platform security processor
  • the smart contract as a whole is used as data that needs privacy protection to be called and executed in the TEE, and all contract states are encrypted and stored on the blockchain. .
  • FIG. 5 is a flowchart of a blockchain-based asset query method shown in an exemplary embodiment of this specification.
  • the blockchain-based asset query method can be applied to electronic equipment added to the blockchain as a node device in the blockchain-based asset securitization system shown in FIG. 4; wherein, the electronic equipment can be a server, a computer , Mobile phones, tablet devices, notebook computers, PDAs (Personal Digital Assistants), etc. This manual does not limit this.
  • the blockchain-based asset query method may include the following steps:
  • Step 502 Receive a call transaction for the target smart contract deployed on the blockchain from the client; where the call transaction includes the transaction identifier of the target asset release transaction that the asset query user queried; the blockchain
  • the contract code of the target smart contract stored in is encrypted in advance;
  • Step 504 in response to the call transaction, decrypt the contract code of the target smart contract in the trusted execution environment, and execute the decrypted contract code in the trusted execution environment to determine the asset Query whether the user has the permission to view the target asset release transaction;
  • Step 506 If it is determined that the asset query user has the permission to view the target asset issuance transaction, return the target asset issuance transaction decrypted in the trusted execution environment to the client.
  • the node device in the blockchain may be equipped with a trusted execution environment, and the trusted execution environment may specifically be a trusted execution environment based on a secure extension of CPU hardware and completely isolated from the outside.
  • the trusted execution environment was first proposed by Global Platform to solve the security isolation of resources on mobile devices, and parallel to the operating system to provide a trusted and secure execution environment for applications.
  • ARM's Trust Zone technology is the first to realize the real commercial TEE technology.
  • TEE TEE
  • server chip manufacturers Intel and AMD have successively introduced hardware-assisted TEE and enriched the concepts and features of TEE, which has been widely recognized in the industry.
  • the TEE mentioned now usually refers more to this kind of hardware-assisted TEE technology.
  • cloud access requires remote access, and the end user is invisible to the hardware platform. Therefore, the first step in using TEE is to confirm the authenticity of TEE.
  • TEE technology has introduced a remote certification mechanism, which is endorsed by hardware manufacturers (mainly CPU manufacturers) and through digital signature technology to ensure that users can verify the state of the TEE.
  • further data privacy protection has also been proposed for security requirements that cannot be met by only secure resource isolation.
  • Commercial TEEs including Intel SGX and AMD SEV also provide memory encryption technology to limit the trusted hardware to the CPU, and the data on the bus and memory are ciphertexts to prevent malicious users from snooping.
  • TEE technologies such as Intel’s Software Protection Extensions (SGX) isolate code execution, remote attestation, secure configuration, secure storage of data, and trusted paths for code execution.
  • the applications running in TEE are protected by security and are almost impossible to be accessed by third parties.
  • SGX provides an enclave (also called an enclave), that is, an encrypted trusted execution area in the memory, which is controlled by the CPU Protect data from being stolen.
  • enclave also called an enclave
  • the CPU can use the newly added processor instructions to allocate a part of the area EPC (Enclave Page Cache, enclave page cache or enclave page cache) in the memory, through the CPU
  • EPC Enclave Page Cache, enclave page cache or enclave page cache
  • the encryption engine MEE Memory Encryption Engine
  • the encrypted content in EPC will be decrypted into plain text only after entering the CPU. Therefore, in SGX, users can distrust the operating system, VMM (Virtual Machine Monitor), and even BIOS (Basic Input Output System). They only need to trust the CPU to ensure that private data will not leakage.
  • the private data can be encrypted and transmitted to the circle in ciphertext form, and the corresponding secret key can also be transmitted to the circle through remote certification. Then, use the data to perform operations under the encryption protection of the CPU, and the result will be returned in cipher text. In this mode, powerful computing power can be used without worrying about data leakage.
  • the node device can load the deployed virtual machine into the enclosure provided by the SGX technology.
  • the contract code of the target smart contract is decrypted based on the extracted decryption key, and the plain text contract code of the target smart contract is obtained
  • the node device can use the newly added processor instructions in the CPU, which can be distributed in the memory
  • a part of the area EPC is encrypted and stored in the EPC through the encryption engine MEE in the CPU to encrypt the plaintext contract code obtained by the above decryption.
  • the encrypted content in the EPC is decrypted into plain text after entering the CPU. In the CPU, operations are performed on the plaintext code to complete the code execution process.
  • the user after the user has written the contract code of the smart contract, he can construct a creation transaction for creating the smart contract on the client based on the contract code of the smart contract, and send the transaction to the client The connected blockchain node equipment.
  • the client can further compile the contract code through the compiler to generate bytecode that can be deployed on the blockchain, and then based on the compiled code.
  • the bytecode of the smart contract is used to "package" to generate a creation transaction for creating the smart contract, and send the transaction to the blockchain node device that interfaces with the client.
  • the client can use a key to encrypt the written contract code.
  • the client can directly encrypt the whole construction of the aforementioned creation transaction; or, it can only encrypt the bytecode of the smart contract carried in the aforementioned creation transaction; the specific encryption method Those skilled in the art can choose flexibly when implementing the technical solutions disclosed in this specification.
  • the encryption method used when encrypting the contract code can be either symmetric encryption or asymmetric encryption.
  • the encryption algorithm used in symmetric encryption can be DES algorithm (Data Encryption Standard), 3DES algorithm (Triple DES), TDEA algorithm (Triple Data Encryption Algorithm, triple data encryption algorithm), Blowfish algorithm, RC5 algorithm, IDEA algorithm (International Data Encryption Algorithm, International Data Encryption Algorithm), etc.
  • the algorithm used for asymmetric encryption can be RSA algorithm, Elgamal algorithm, knapsack algorithm, Rabin algorithm, D-H algorithm (Diffie-Hellman algorithm), ECC algorithm (Elliptic Curve Cryptography, elliptic curve encryption algorithm), etc.
  • the encryption method used when encrypting the contract code can also be a combination of symmetric encryption and asymmetric encryption.
  • This encryption method is generally referred to as the Digital Envelope (Digital Envelope) encryption method.
  • the client uses a symmetric encryption algorithm to encrypt the contract code, that is, uses the private key of the symmetric encryption algorithm to encrypt the contract code, and then uses the public key of the asymmetric encryption algorithm to encrypt the private key used in the above symmetric encryption algorithm. That is, first use the key of the symmetric encryption algorithm to encrypt the contract code; then use the key of the asymmetric encryption algorithm to further encrypt the key used when encrypting the contract code.
  • the decryption key corresponding to the encrypted smart contract contract code stored in the distributed ledger of the blockchain can be stored and maintained.
  • the above-mentioned trusted execution environment can be equipped with a key generation algorithm.
  • the node device can be in the trusted execution environment, Call the carried key generation algorithm to create a root key for the contract account.
  • the root key includes a public-private key pair; the public key is used to encrypt the contract code and is held by the user; the private key is stored in a trusted execution environment and is used to encrypt the contract code Decryption; if symmetric encryption is used, the root key only includes one key for encrypting and decrypting the contract code.
  • asset release transactions issued by the investment manager to the blockchain can also be encrypted in advance.
  • the user if a user needs to query an asset release transaction stored on the blockchain, the user (called an asset query user) can build a smart contract that has been encrypted in advance through the client (Referred to as the target smart contract) call transaction, and the client publishes the call transaction to the blockchain for storage.
  • the call transaction may include the transaction identifier (for example: transaction storage address) of the asset release transaction (referred to as the target asset release transaction) queried by the asset query user, so that the node device in the blockchain can receive the call During the transaction, the asset issuance transaction that the asset query user needs to query is determined based on the transaction identifier therein, and the asset issuance transaction can be inquired subsequently by calling the target smart contract.
  • the transaction identifier for example: transaction storage address
  • the target asset release transaction queried by the asset query user
  • the node device in the blockchain can receive the call transaction and perform consensus processing on the call transaction. After reaching a consensus, the node device in the blockchain can package the call transaction into a block, and perform persistent storage in the blockchain.
  • the node device in the blockchain can execute the call transaction, that is, in response to the call transaction, in the trusted execution environment on board, the contract code of the target smart contract Perform decryption and execute the decrypted contract code in the trusted execution environment.
  • the process of executing the above-mentioned call transaction in the above-mentioned trusted execution environment can be specifically completed by a virtual machine deployed in the trusted execution environment; that is, the virtual machine deployed in the trusted execution environment It is the execution subject of the call transaction; for example, taking Ethereum as an example, the node device usually executes the transaction through the equipped Ethereum Virtual Machine (EVM).
  • EVM Ethereum Virtual Machine
  • the node device in the blockchain can still check whether the transaction is valid, the format is correct, whether the signature of the transaction is legal, etc., and in all checks and After the verification is passed, the call transaction is executed in the above-mentioned trusted execution environment.
  • the function type of the transaction Before executing the call transaction in the trusted execution environment, the function type of the transaction can also be confirmed first; when it is confirmed that the transaction is a call transaction for invoking smart contracts, the distributed ledger of the blockchain can be further obtained The encrypted contract code of the target smart contract is stored, and the obtained encrypted contract code of the target smart contract is sent to the trusted execution environment for execution in the trusted execution environment.
  • the above-mentioned trusted execution environment may determine whether the above-mentioned asset query user has the permission to view the above-mentioned target asset issuance transaction based on the execution result of the decrypted contract code.
  • the target asset issuance transaction may include corresponding asset participant information (that is, the participant user related to the asset)
  • the transaction may be issued to the target asset in the trusted execution environment.
  • the node device in the blockchain can return the target asset issuance transaction decrypted in the trusted execution environment to the client, thereby The asset query user can view the target asset release transaction through the client terminal.
  • the node device in the blockchain can query the user's public key based on the asset, encrypt the target asset release transaction after decryption in the trusted execution environment, and encrypt it After the target asset release transaction is returned to the client.
  • the client receives the encrypted target asset issuance transaction, it can decrypt the encrypted target asset issuance transaction based on the private key of the asset query user to obtain the original content of the target asset issuance transaction.
  • the above-mentioned trusted execution environment can store the decryption key for decrypting the contract code of the above-mentioned target smart contract and the above-mentioned asset issuance transaction; wherein, the decryption key stored in the trusted execution environment is forbidden to export the Trusted execution environment.
  • the client can send the call transaction for the pre-encrypted target smart contract deployed on the block chain, so that the node device in the block chain responds to the call transaction on the device.
  • the contract code of the target smart contract is decrypted in the trusted execution environment, and the decrypted contract code is executed in the trusted execution environment to determine whether the asset query user has the target asset corresponding to the transaction identifier in the call transaction.
  • the viewing authority of the release transaction if it is, the target asset release transaction decrypted in the trusted execution environment is returned to the client.
  • FIG. 6 is a flowchart of another blockchain-based asset query method shown in an exemplary embodiment of this specification.
  • the blockchain-based asset query method can be applied to electronic equipment added to the blockchain as a node device in the blockchain-based asset securitization system shown in FIG. 4; wherein, the electronic equipment can be a server, a computer , Mobile phones, tablet devices, notebook computers, handheld computers (PDAs, Personal Digital Assistants), etc., this manual does not limit this.
  • the blockchain-based asset query method may include the following steps:
  • Step 602 Receive a call transaction for the target smart contract deployed on the blockchain from the client; where the call transaction includes the transaction identifier of the target asset release transaction that the asset query user queried; the blockchain
  • the contract code of the target smart contract stored in is encrypted in advance;
  • Step 604 In response to the call transaction, decrypt the contract code of the target smart contract in the trusted execution environment, and execute the decrypted contract code in the trusted execution environment to determine the asset Query whether the user has the permission to view the target asset release transaction;
  • Step 606 If it is determined that the asset query user has the viewing authority of the target asset issuance transaction, then based on the public key of the asset query user, decrypt the decryption secret of the target asset issuance transaction stored in the trusted execution environment. Key is encrypted, and the encrypted decryption key is returned to the client, so that the client decrypts the encrypted decryption key based on the private key of the asset query user, and based on the decryption The latter decryption key decrypts the target asset issuance transaction to obtain the original content of the target asset issuance transaction.
  • the node device in the blockchain can store information in the trusted execution environment based on the asset query user’s public key.
  • the decryption key of the target asset release transaction is encrypted, and the encrypted decryption key is returned to the client.
  • the client receives the encrypted decryption key, it can decrypt the encrypted decryption key based on the private key of the asset query user, and further publish the target asset based on the decrypted decryption key
  • the transaction is decrypted to obtain the original content of the target asset release transaction.
  • the client can send the call transaction for the pre-encrypted target smart contract deployed on the block chain, so that the node device in the block chain responds to the call transaction on the device.
  • the contract code of the target smart contract is decrypted in the trusted execution environment, and the decrypted contract code is executed in the trusted execution environment to determine whether the asset query user has the target asset corresponding to the transaction identifier in the call transaction.
  • the viewing authority of the release transaction if it is, the decryption key encrypted in the trusted execution environment is returned to the client, so that the client can decrypt the original content of the target asset release transaction based on the decryption key.
  • this specification also provides an embodiment of the blockchain-based asset query device.
  • the embodiment of the asset query device based on the blockchain in this specification can be applied to electronic equipment.
  • the device embodiments can be implemented by software, or can be implemented by hardware or a combination of software and hardware. Taking software implementation as an example, as a logical device, it is formed by reading the corresponding computer program instructions in the non-volatile memory into the memory through the processor of the electronic device where it is located. From a hardware perspective, as shown in Figure 7, it is a hardware structure diagram of the electronic equipment where the blockchain-based asset query device is located in this specification, except for the processor, memory, network interface, and non-transitory components shown in Figure 7. In addition to the lossy memory, the electronic equipment in which the device is located in the embodiment usually depends on the actual function of the blockchain-based asset query, and may also include other hardware, which will not be repeated here.
  • FIG. 8 is a block diagram of an asset query device based on blockchain according to an exemplary embodiment of this specification.
  • the block chain-based asset query device 80 can be applied to the electronic device shown in FIG. 7, and the electronic device can be added to the block chain as a node device.
  • the node equipment in the blockchain is equipped with a trusted execution environment; the blockchain stores asset release transactions issued by the investment manager to the blockchain; where the asset release transaction includes the The asset information released by the investment manager in the blockchain; the asset release transaction has been encrypted in advance.
  • the block chain-based asset query device 80 may include:
  • the receiving module 801 receives a call transaction for the target smart contract deployed on the block chain sent by the client; wherein the call transaction includes the transaction identifier of the target asset release transaction that the asset query user queries; the block The contract code of the target smart contract stored in the chain is encrypted in advance;
  • the determination module 802 in response to the call transaction, decrypts the contract code of the target smart contract in the trusted execution environment, and executes the decrypted contract code in the trusted execution environment to determine the Whether the asset query user has the permission to view the target asset release transaction;
  • the return module 803 if it is determined that the asset query user has the viewing authority of the target asset issuance transaction, the target asset issuance transaction decrypted in the trusted execution environment is returned to the client.
  • asset release transactions issued to the blockchain by multiple investment management parties are stored on the blockchain; wherein, asset release transactions issued to the blockchain by different investment managers
  • the transaction format is different.
  • the assets released by the investment manager in the blockchain include:
  • Basic assets and, using the basic asset pool created based on the basic assets published in the blockchain as value support, and the issued securitized assets.
  • the securitized assets are bonds or funds; the basic assets are basic debt assets.
  • the asset release transaction also includes the participant users related to the asset released by the investment manager in the blockchain;
  • the determining module 802 is a determining module 802 :
  • the viewing authority of the target asset release transaction is described.
  • the return module 803 the return module 803:
  • the trusted execution environment stores the contract code of the target smart contract and the decryption key for decrypting the asset issuance transaction; wherein, the decryption key stored in the trusted execution environment The key is prohibited from exporting the trusted execution environment.
  • the encryption method used for the contract code of the target smart contract includes any one of the following encryption methods: symmetric encryption, asymmetric encryption, symmetric encryption combined with asymmetric encryption .
  • the combination of symmetric encryption and asymmetric encryption includes a digital envelope encryption method.
  • the trusted execution environment includes Intel SGX.
  • FIG. 9 is a block diagram of another device for querying assets based on blockchain according to an exemplary embodiment of this specification.
  • the block chain-based asset query device 90 can be applied to the electronic device shown in FIG. 7, and the electronic device can be added to the block chain as a node device.
  • the node equipment in the blockchain is equipped with a trusted execution environment; the blockchain stores asset release transactions issued by the investment manager to the blockchain; where the asset release transaction includes the The asset information released by the investment manager in the blockchain; the asset release transaction has been encrypted in advance.
  • the block chain-based asset query device 90 may include:
  • the receiving module 901 receives a call transaction for the target smart contract deployed on the blockchain from the client; wherein the call transaction includes the transaction identifier of the target asset release transaction queried by the asset query user; the block The contract code of the target smart contract stored in the chain is encrypted in advance;
  • the determination module 902 in response to the call transaction, decrypts the contract code of the target smart contract in the trusted execution environment, and executes the decrypted contract code in the trusted execution environment to determine the Whether the asset query user has the permission to view the target asset release transaction;
  • module 903 if it is determined that the asset query user has the permission to view the target asset issuance transaction, decrypt the target asset issuance transaction stored in the trusted execution environment based on the public key of the asset query user The key is encrypted, and the encrypted decryption key is returned to the client, so that the client decrypts the encrypted decryption key based on the private key of the asset query user, and Decrypt the target asset issuance transaction based on the decrypted decryption key to obtain the original content of the target asset issuance transaction.
  • the relevant part can refer to the part of the description of the method embodiment.
  • the device embodiments described above are merely illustrative, and the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in One place, or it can be distributed to multiple network modules. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution in this specification. Those of ordinary skill in the art can understand and implement it without creative work.
  • a typical implementation device is a computer.
  • the specific form of the computer can be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email receiving and sending device, and a game control A console, a tablet computer, a wearable device, or a combination of any of these devices.
  • the computer includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
  • processors CPU
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-permanent memory in a computer readable medium, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer readable media.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media includes permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology.
  • the information can be computer-readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, disk storage, quantum memory, graphene-based storage media or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices. According to the definition in this article, computer-readable media does not include transitory media, such as modulated data signals and carrier waves.
  • first, second, third, etc. may be used to describe various information in one or more embodiments of this specification, the information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other.
  • first information may also be referred to as second information, and similarly, the second information may also be referred to as first information.
  • word “if” as used herein can be interpreted as "when” or “when” or "in response to determination”.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

L'invention concerne un procédé et un appareil d'interrogation d'actif à base de chaîne de blocs, ainsi qu'un dispositif électronique. Le procédé et l'appareil sont appliqués à un dispositif de nœud dans une chaîne de blocs qui transporte un environnement d'exécution de confiance ; la chaîne de blocs stocke des transactions d'émission d'actif qui sont émises à la chaîne de blocs par un gestionnaire d'investissement et comprennent des informations d'actif ; et les transactions d'émission d'actif sont pré-cryptées. Le procédé comprend les étapes consistant à : recevoir une transaction d'appel, qui est envoyée par un client, pour un contrat intelligent cible déployé sur une chaîne de blocs et qui comprend un identificateur de transaction d'une transaction d'émission d'actif cible interrogée par un utilisateur interrogateur d'actif, un code de contrat du contrat intelligent cible étant pré-crypté (502) ; en réponse à la transaction d'appel, décrypter le code de contrat du contrat intelligent cible dans un environnement d'exécution de confiance, exécuter le code de contrat décrypté dans l'environnement d'exécution de confiance, et déterminer si l'utilisateur interrogateur d'actif a la permission de visualiser la transaction d'émission d'actif cible (504) ; et si tel est le cas, renvoyer la transaction d'émission d'actif cible décryptée dans l'environnement d'exécution de confiance au client (506).
PCT/CN2020/097352 2019-09-05 2020-06-22 Procédé et appareil de d'interrogation d'actif à base de chaîne de blocs et dispositif électronique WO2021042818A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910838763.6A CN110766550B (zh) 2019-09-05 2019-09-05 基于区块链的资产查询方法及装置、电子设备
CN201910838763.6 2019-09-05

Publications (1)

Publication Number Publication Date
WO2021042818A1 true WO2021042818A1 (fr) 2021-03-11

Family

ID=69330509

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/097352 WO2021042818A1 (fr) 2019-09-05 2020-06-22 Procédé et appareil de d'interrogation d'actif à base de chaîne de blocs et dispositif électronique

Country Status (2)

Country Link
CN (1) CN110766550B (fr)
WO (1) WO2021042818A1 (fr)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110766550B (zh) * 2019-09-05 2021-06-22 创新先进技术有限公司 基于区块链的资产查询方法及装置、电子设备
CN111383114A (zh) * 2020-03-13 2020-07-07 普洛斯科技(重庆)有限公司 基于区块链的资产信息管理方法和装置
CN111090874B (zh) * 2020-03-18 2020-09-01 支付宝(杭州)信息技术有限公司 调用合约的方法及装置
CN111460474B (zh) * 2020-03-27 2023-12-29 北京瑞卓喜投科技发展有限公司 去中心化的预言机实现方法、装置、存储器和计算机
CN112487100A (zh) * 2020-04-02 2021-03-12 支付宝(杭州)信息技术有限公司 一种基于区块链的信息发布方法、装置及计算机设备
CN111507696A (zh) * 2020-04-10 2020-08-07 杭州能链科技有限公司 基于区块链的电力交易方法、装置及存储介质
CN111680031B (zh) * 2020-04-21 2021-10-15 华东师范大学 一种针对区块链轻客户端的基于sgx的可验证范围查询方法
CN111383120A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 基于区块链的资产管理方法、装置及电子设备
CN111798224A (zh) * 2020-06-03 2020-10-20 杭州云象网络技术有限公司 一种基于sgx的数字货币支付方法
CN111756743B (zh) * 2020-06-24 2021-12-14 腾讯科技(深圳)有限公司 基于区块链的资源转移方法、装置、计算机设备和存储介质
CN112308721A (zh) * 2020-11-25 2021-02-02 杭州云链趣链数字科技有限公司 资产证券化的管理方法、装置、系统和电子装置
CN113612741B (zh) * 2020-12-01 2023-08-08 支付宝(杭州)信息技术有限公司 一种物品流通记录的存证方法、装置、设备和存储介质
CN112527460A (zh) * 2020-12-17 2021-03-19 山大地纬软件股份有限公司 一种控制区块链底层资产数据状态一致性的方法及系统
CN114679470B (zh) * 2020-12-25 2024-04-19 京东科技控股股份有限公司 Abs业务系统的业务处理方法、设备、系统及存储介质
CN112767163B (zh) * 2021-01-22 2022-11-22 支付宝(杭州)信息技术有限公司 基于区块链的数字商品交易方法和装置
CN112785202A (zh) * 2021-02-20 2021-05-11 支付宝(杭州)信息技术有限公司 资产管理方法、装置及系统
CN113034136A (zh) * 2021-03-10 2021-06-25 全球能源互联网研究院有限公司 一种基于区块链的数据管理方法、装置及电子设备
CN113095824B (zh) * 2021-03-30 2022-05-31 支付宝(杭州)信息技术有限公司 基于区块链的资产管理方法、装置及电子设备
CN113221191B (zh) * 2021-05-10 2022-05-31 支付宝(杭州)信息技术有限公司 基于区块链的数据存证方法、装置、设备和存储介质
CN113114476B (zh) * 2021-06-15 2021-11-16 支付宝(杭州)信息技术有限公司 基于合约的隐私存证方法及装置
CN114363013B (zh) * 2021-12-15 2024-04-26 武汉大学 监管友好的区块链内容隐私保护系统、消息发送以及查询方法
CN114666064B (zh) * 2022-03-25 2024-08-06 广东启链科技有限公司 基于区块链的数字资产管理方法、装置、存储介质及设备
CN115115367B (zh) * 2022-08-30 2023-03-31 平安银行股份有限公司 一种基于区块链的交易信息查询方法、装置及电子设备
CN116010998B (zh) * 2023-03-20 2023-08-29 中国信息通信研究院 基于区块链的数据格式校验及托管方法、装置和电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180309567A1 (en) * 2017-04-25 2018-10-25 Microsoft Technology Licensing, Llc Confidentiality in a consortium blockchain network
CN109766722A (zh) * 2019-01-22 2019-05-17 苏州同济区块链研究院有限公司 一种区块链中构建智能合约的方法及其系统
CN109792386A (zh) * 2016-09-29 2019-05-21 诺基亚技术有限公司 用于可信计算的方法和装置
CN109936626A (zh) * 2019-02-19 2019-06-25 阿里巴巴集团控股有限公司 区块链中实现隐私保护的方法、节点和存储介质
CN110008735A (zh) * 2019-01-31 2019-07-12 阿里巴巴集团控股有限公司 区块链中实现合约调用的方法及节点、存储介质
CN110086804A (zh) * 2019-04-25 2019-08-02 广州大学 一种基于区块链及可信硬件的物联网数据隐私保护方法
CN110766550A (zh) * 2019-09-05 2020-02-07 阿里巴巴集团控股有限公司 基于区块链的资产查询方法及装置、电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107342858B (zh) * 2017-07-05 2019-09-10 武汉凤链科技有限公司 一种基于可信环境的智能合约保护方法和系统
US11606190B2 (en) * 2017-12-26 2023-03-14 Akamai Technologies, Inc. High performance distributed system of record with cryptographic service support
CN113554417B (zh) * 2018-11-29 2024-09-06 创新先进技术有限公司 资源处理系统、资源项目申报的审批方法、装置及设备
CN111899102A (zh) * 2018-11-30 2020-11-06 创新先进技术有限公司 区块链中实现隐私保护的方法
CN110032883B (zh) * 2019-01-31 2020-05-29 阿里巴巴集团控股有限公司 区块链中实现隐私保护的方法、系统和节点
WO2019120328A2 (fr) * 2019-04-03 2019-06-27 Alibaba Group Holding Limited Traitement et stockage de données de chaîne de blocs dans un environnement d'exécution sécurisé

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109792386A (zh) * 2016-09-29 2019-05-21 诺基亚技术有限公司 用于可信计算的方法和装置
US20180309567A1 (en) * 2017-04-25 2018-10-25 Microsoft Technology Licensing, Llc Confidentiality in a consortium blockchain network
CN109766722A (zh) * 2019-01-22 2019-05-17 苏州同济区块链研究院有限公司 一种区块链中构建智能合约的方法及其系统
CN110008735A (zh) * 2019-01-31 2019-07-12 阿里巴巴集团控股有限公司 区块链中实现合约调用的方法及节点、存储介质
CN109936626A (zh) * 2019-02-19 2019-06-25 阿里巴巴集团控股有限公司 区块链中实现隐私保护的方法、节点和存储介质
CN110086804A (zh) * 2019-04-25 2019-08-02 广州大学 一种基于区块链及可信硬件的物联网数据隐私保护方法
CN110766550A (zh) * 2019-09-05 2020-02-07 阿里巴巴集团控股有限公司 基于区块链的资产查询方法及装置、电子设备

Also Published As

Publication number Publication date
CN110766550A (zh) 2020-02-07
CN110766550B (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
WO2021042818A1 (fr) Procédé et appareil de d'interrogation d'actif à base de chaîne de blocs et dispositif électronique
CN109313685B (zh) 区块链系统的加密应用
TWI733057B (zh) 資源轉移和資金轉移的方法和裝置
US11048825B2 (en) Managing a smart contract on a blockchain
WO2021103794A1 (fr) Procédé permettant de réaliser une transaction de préservation de la vie privée hautement efficace dans une chaîne de blocs, et dispositif
US11233655B2 (en) Data verification methods, apparatuses, and devices
EP3962020B1 (fr) Procédés et systèmes de partage d'informations
TW202107315A (zh) 基於區塊鏈的資料授權方法及裝置
TW202113645A (zh) 基於區塊鏈的智能合約管理方法及裝置、電子設備
WO2021088549A1 (fr) Procédé et appareil de configuration de requête d'autorisation basés sur un code de chaîne
WO2020233631A1 (fr) Procédé et nœud de stockage de reçu basés sur le type de transaction
WO2020233626A1 (fr) Procédé et nœud de stockage de reçu combinés à une limitation conditionnelle de types de transactions et d'utilisateurs
WO2020233625A1 (fr) Procédé de stockage de reçus combinant un type d'utilisateur, des conditions de détermination et un nœud
EP3962135A1 (fr) Méthodes, appareils et dispositifs de partage d'informations
WO2021088535A1 (fr) Procédé et dispositif d'interrogation de données privées basés sur un contrat intelligent
WO2020233635A1 (fr) Procédé de stockage de reçu combinant des restrictions conditionnelles de multiples types de dimensions et nœud
WO2020233619A1 (fr) Procédé et nœud de stockage de reçu en combinaison avec un type d'utilisateur et un type de transaction
WO2020233624A1 (fr) Procédé de mémorisation de reçus et nœud utilisant un type de transaction en combinaison avec un type de fonction d'événement
Biryukov et al. Privacy-preserving KYC on Ethereum
TW202016819A (zh) 區塊鏈交易方法及裝置、電子設備
WO2020233627A1 (fr) Procédé et nœud de stockage de reçu basés sur de multiples types de dimensions
US11954686B2 (en) Information sharing methods and systems
EP3961546A1 (fr) Procédés, appareils et dispositifs de partage d'informations
TWI724813B (zh) 交易調度方法及裝置
Kalbantner et al. A DLT-based Smart Contract Architecture for Atomic and Scalable Trading

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20860306

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20860306

Country of ref document: EP

Kind code of ref document: A1