CN111461722A - Intelligent contract deployment method, device and equipment - Google Patents

Intelligent contract deployment method, device and equipment Download PDF

Info

Publication number
CN111461722A
CN111461722A CN202010302393.7A CN202010302393A CN111461722A CN 111461722 A CN111461722 A CN 111461722A CN 202010302393 A CN202010302393 A CN 202010302393A CN 111461722 A CN111461722 A CN 111461722A
Authority
CN
China
Prior art keywords
audit target
hash value
node
intelligent contract
equipment node
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.)
Pending
Application number
CN202010302393.7A
Other languages
Chinese (zh)
Inventor
吴莹强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010302393.7A priority Critical patent/CN111461722A/en
Publication of CN111461722A publication Critical patent/CN111461722A/en
Priority to PCT/CN2021/087204 priority patent/WO2021208956A1/en
Pending legal-status Critical Current

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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A method, a device and equipment for deploying an intelligent contract are disclosed. Based on the intelligent contract which is deployed in advance for verification, when the equipment node needs to be started, namely the audit target which needs to be executed during starting is generated into a hash value and digitally signed, the hash value and the digital signature are sent to the block chain to be verified through the intelligent contract which is commonly identified by multiple parties, the verification result is stored, and the starting of the audit target is executed after the verification is passed.

Description

Intelligent contract deployment method, device and equipment
Technical Field
The embodiment of the specification relates to the technical field of information, in particular to a method, a device and equipment for deploying an intelligent contract.
Background
With the wide application of the internet of things, a large amount of equipment also needs to be acquired through terminal equipment of the internet of things. Videos collected by the lieu camera, environment information collected by the temperature and humidity sensor, radar data of the automobile ADAS system and the like. If these end devices are loaded with illegal firmware and illegal kernel systems at startup or at remote update, the collected data often becomes unreliable or harmful.
Based on this, there is a need for a solution that can implement a trusted boot of an internet of things device.
Disclosure of Invention
The embodiment of the application aims to provide a scheme capable of realizing credible starting of an internet of things device.
In order to solve the above technical problem, the embodiment of the present application is implemented as follows:
in a first aspect, an embodiment of the present specification provides a method for deploying an intelligent contract, where the method is applied to a node of a blockchain system, and the method includes:
obtaining an audit target, equipment node identification and a public key in an equipment node;
determining a hash value of the audit target;
establishing a corresponding relation among a public key of the equipment node, equipment node identification and a hash value of the audit target;
constructing an intelligent contract containing the corresponding relation, and deploying the intelligent contract into nodes of a block chain system;
the intelligent contract is used for verifying the consistency of the hash values of the audit target contained in the transaction and the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
In a second aspect, an embodiment of the present specification provides a verification method based on the foregoing intelligent contract, which is applied in a blockchain system in which the intelligent contract has been deployed in advance, and the method includes:
the method comprises the steps that an equipment node determines an audit target, and the hash value of the audit target of the equipment node is determined;
the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier;
the device node broadcasting a transaction containing the digital signature and the device node identification into the blockchain system;
receiving any node containing the transaction in the block chain system, acquiring a hash value of an audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result;
performing consensus in the nodes in the blockchain system based on respective verification results, generating consensus results, storing the consensus results into the blockchain system, and sending the consensus results to the equipment nodes;
and the equipment node receives a consensus result, and executes the audit target when the consensus result represents that the verification passes.
In a third aspect, an embodiment of the present specification provides a device node starting method based on the foregoing intelligent contract, which is applied to a device node of a blockchain system in which the intelligent contract has been deployed in advance, and includes:
determining an audit target, and determining a hash value of the audit target of the equipment node;
encrypting the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generating a transaction containing the digital signature and the equipment node identifier;
broadcasting the transaction containing the digital signature and the equipment node identifier into the blockchain system so that the blockchain system can carry out consistency verification and consensus according to the hash value of the audit target contained in the intelligent contract and the hash value of the target transaction contained in the transaction so as to return a consensus result;
and receiving a consensus result, and executing the audit target when the consensus result represents that the consistency verification passes.
Corresponding to the first aspect, an embodiment of the present specification provides an apparatus for deploying an intelligent contract, which is applied to a node of a blockchain system, and the apparatus includes:
the acquisition module acquires an audit target, equipment node identification and a public key in the equipment node;
the determining module is used for determining the hash value of the audit target;
the establishing module is used for establishing a corresponding relation among a public key of the equipment node, equipment node identification and a hash value of the audit target;
the deployment module is used for constructing an intelligent contract containing the corresponding relation and deploying the intelligent contract into the nodes of the block chain system;
the intelligent contract is used for verifying the consistency of the hash values of the audit target contained in the transaction and the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
In accordance with the second aspect, the present specification further provides a verification system based on the foregoing intelligent contract, in which,
the method comprises the steps that an equipment node determines an audit target, and the hash value of the audit target of the equipment node is determined;
the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier;
the device node broadcasting a transaction containing the digital signature and the device node identification into the blockchain system;
receiving any node containing the transaction in the block chain system, acquiring a hash value of an audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result;
performing consensus in the nodes in the blockchain system based on respective verification results, generating consensus results, storing the consensus results into the blockchain system, and sending the consensus results to the equipment nodes;
and the equipment node receives a consensus result, and executes the audit target when the consensus result represents that the verification passes.
Corresponding to the third aspect, an embodiment of the present specification further provides an apparatus node activation device based on the foregoing intelligent contract, which is applied to an apparatus node of a blockchain system in which the intelligent contract has been deployed in advance, and includes:
the determining module is used for determining an audit target and determining the hash value of the audit target of the equipment node;
the signature module is used for encrypting the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature and generating a transaction containing the digital signature and the equipment node identifier;
the broadcast module broadcasts the transaction containing the digital signature and the equipment node identifier to the blockchain system so that the blockchain system can carry out consistency verification and consensus according to the hash value of the audit target contained in the intelligent contract and the hash value of the target transaction contained in the transaction to return a consensus result;
and the execution module receives a consensus result, and executes the audit target when the consensus result represents that the consistency is verified.
According to the scheme provided by the embodiment of the specification, based on the intelligent contract which is deployed in advance and used for verification, when the equipment node needs to be started, namely the audit target which needs to be executed during starting is generated into a hash value and digitally signed, the hash value and the digital signature are sent to the block chain to be verified through the intelligent contract which is commonly identified by multiple parties, the verification result is stored, the starting of the audit target is executed after the verification is passed, and information in the starting process of the equipment node is audited through a distributed intelligent contract mode of the block chain, so that the trusted starting of the equipment node is realized.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of embodiments of the invention.
In addition, any one of the embodiments in the present specification is not required to achieve all of the effects described above.
Drawings
In order to more clearly illustrate the embodiments of the present specification or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments described in the embodiments of the present specification, and other drawings can be obtained by those skilled in the art according to the drawings.
Fig. 1 is a schematic flowchart of a method for deploying an intelligent contract according to an embodiment of the present disclosure;
fig. 2 is a schematic flowchart of a verification method provided in an embodiment of the present disclosure;
fig. 3 is a schematic flowchart of a method for starting a device node according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a device for deploying an intelligent contract according to an embodiment of the present specification;
fig. 5 is a schematic structural diagram of an apparatus node activation apparatus provided in an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of an apparatus for configuring a method according to an embodiment of the present disclosure.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the embodiments of the present specification, the technical solutions in the embodiments of the present specification will be described in detail below with reference to the drawings in the embodiments of the present specification, and it is obvious that the described embodiments are only a part of the embodiments of the present specification, and not all the embodiments. All other embodiments that can be derived by one of ordinary skill in the art from the embodiments given herein are intended to be within the scope of protection.
The devices of the internet of things are different from a central server, and are often embedded systems in scattered and marginal environments. Before the system kernel of the operating system runs, the device usually needs to run and execute a system boot loader (usually, built in the device) for loading the initialization of a CPU and related hardware, then loads an operating system image or a solidified embedded application into a memory, and then jumps to a space where the operating system is located to start the operating system to run.
In other words, the system boot loader is the first section of code executed by the device after power-up, and the system boot loader is often different because the hardware conditions of various devices are different. In the process, if the data is illegally modified or malicious code is injected, the running mode of a system kernel or firmware relying on Bootloader in the device after starting is different from the conventional running mode, and the collected data can be maliciously modified or partially lost.
Based on this, the embodiments of the present specification provide a solution that can implement a trusted boot of an internet of things device. The method specifically comprises the following three aspects: deployment of the intelligent contract, auditing based on the intelligent contract and trusted starting of the equipment.
For the first aspect, as shown in fig. 1, fig. 1 is a schematic flowchart of a method for deploying an intelligent contract provided by an embodiment of the present specification, and is applied to a node of a blockchain system, where the method includes:
s101, obtaining an audit target, equipment node identification and a public key in the equipment node.
In the embodiment of the present specification, based on different application scenarios, the nodes of the blockchain system may include the following: a manufacturer of the device node, an owner of the device node, a user of the device node, and a potential user of data collected by the device node, among others.
For example, for a camera deployed in an unmanned supermarket, in order to ensure that data of the camera after startup is authentic, the nodes of the blockchain system may include: camera equipment itself, the manufacturer of the camera, the seller of the camera, the supermarket party, the regulatory authorities, and the like.
In other words, in embodiments of the present specification, the node deploying the smart contract may be any party with respect to when the device collects data and uses the data.
The audit target at this time includes at least one of boot code, a system boot loader and a loading object, and the loading object includes a system kernel of the device node and related firmware applied to the device node. In practical applications, the auditing target may be multiple. The audit target may be considered a piece of code.
In the embodiment of the present specification, any node in the blockchain system has obtained the relevant content of the audit target in advance, including the initial content of the code or the hash value of the audit target, and so on. So that the intelligent contracts containing the related information of the equipment nodes can be identified.
S103, determining the hash value of the audit target. If a plurality of audit targets exist, the hash value of each audit target needs to be determined respectively.
And S105, establishing a corresponding relation among the public key of the equipment node, the equipment node identification and the hash value of the audit target.
If a plurality of audit targets exist, the corresponding relation of the hash value of each audit target needs to be established. For example, if the audit target includes boot code and system boot loader, and the hash value of the boot code is hash1, the hash value of the system boot loader is hash2, the device node is ID1, and the public key of the device node is key1, the following correspondence may be established (ID 1, key1, hash1, hash 2).
In practical applications, each device may be given a device node identifier and a public key, and of course, in practical applications, each type of device node may be given a device node identifier and a public key for cost saving. For example, based on a factory model or a product unique serial number of the device, a device node identifier and a public key are given, and the factory model/the unique serial number corresponds to the device node identifier and the public key one to one.
And S107, constructing an intelligent contract containing the corresponding relation, and deploying the intelligent contract into the nodes of the block chain system.
For one/one type of device node, an intelligent contract corresponding to the/one type of device node can be generated, the intelligent contract includes the corresponding relation, and audit logic is also included. If there are multiple device nodes/classes, then multiple of the aforementioned correspondences may be included in the smart contract.
The deployment mode is that the intelligent contract is issued to the blockchain for multi-party consensus, and the intelligent contract is deployed in each node of the blockchain after the consensus passes.
The intelligent contract is used for verifying the consistency of the audit target contained in the transaction and the hash value of the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
Specifically, when a deployment node of the intelligent contract receives a transaction, the deployment node can find out the corresponding public key and the hash value of the audit target according to the device node identifier included in the transaction, and decrypt the digital signature in the transaction by using the public key to obtain a hash value (the digital signature is obtained by encrypting the hash value of the device node on the audit target by using the private key corresponding to the public key), and perform consistency verification by using the hash value and the hash value in the intelligent contract.
In practical applications, the audit target may be updated, for example, firmware in the audit target may be updated remotely, and at this time, an intelligent contract needs to be redeployed. Namely when the audit target is updated, the hash value of the updated audit target needs to be determined; establishing a corresponding relation among a public key of the equipment node, equipment node identification and the hash value of the new audit target; and constructing another intelligent contract containing the corresponding relation, and deploying the other intelligent contract into the nodes of the blockchain system.
After another smart contract is deployed, the previous smart contract may be invalidated. In practical application, each intelligent contract can also carry a version number, and the version number of the intelligent contract deployed later is newer, so that each node device can be verified based on the intelligent contract with the latest version when being verified.
After the intelligent contract has been deployed, namely, the verification of the device start-up information may be performed based on the deployed intelligent contract, that is, the second aspect provided in this specification, as shown in fig. 2, fig. 2 is a verification method based on the start-up information of the foregoing intelligent contract provided in this specification, and is applied to a blockchain system in which the intelligent contract has been previously deployed, where the method includes:
s201, the equipment node determines an audit target and determines a hash value of the audit target of the equipment node.
In embodiments of the present description, a device node may initialize a read-only boot code within a device processor. BootROM is a small mask ROM or write-protected flash memory embedded in the processor chip that contains the first code that the processor executes upon power-up or reset.
In other words, since the boot code is always executed first (also prior to the system boot loader), the system boot loader or the remote firmware update on the external memory can be loaded controllably by the boot code, and the subsequent device behavior, i.e., the audit target is determined and the hash value of the audit target of the device node is determined.
The determined auditing target can be one or more. For example, when the auditing target only has boot code, the hash value of the boot code is calculated, and subsequent auditing is performed.
When a plurality of audit targets are available, the code is started according to the following sequence, namely the system starts a bootstrap program, the objects are loaded, the audit is carried out in sequence, namely, the hash value of only one audit target is calculated and the audit is carried out each time, and when the previous audit target passes the verification, the hash value of the next audit target is calculated and the audit is continued.
S203, the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier. The private key of the device node is the private key corresponding to the public key of the device node in the intelligent contract.
S205, the device node broadcasts a transaction including the digital signature and the device node identifier to the blockchain system.
And S207, receiving any node containing the transaction in the block chain system, acquiring the hash value of the audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result.
The nodes in the blockchain that can receive the transaction can be based on the form of the blockchain. For example, each node device may be used as an active node to receive transactions and perform broadcasting and consensus after trusted boot; for another example, when the block chain is a federation chain, there may be several predefined nodes that can receive the transaction and make a consensus, and a common device node cannot participate in the consensus.
As described above, an intelligent contract including a correspondence relationship and verification logic has been deployed in each node in the blockchain system, and therefore, any node that receives a transaction can find a corresponding public key and a hash value of an audit target according to an equipment node identifier included in the transaction, and decrypt a digital signature in the transaction using the public key to obtain a hash value (the digital signature is obtained by encrypting the hash value of the audit target by using a private key corresponding to the public key by the equipment node), and perform consistency verification using the hash value and the hash value in the intelligent contract.
For example, if a received transaction includes the device node ID1, a node may find the corresponding hash values hash1 and hash2 and the public key1 from the smart contract based on ID1, and if the digital signature in the received transaction is decrypted by key1, the obtained hash value is hash1, so that it may be determined that the verification is successful.
In an embodiment, a plurality of intelligent contracts with different version numbers may be deployed in each node, so that in practical application, when verification is performed based on an intelligent contract, any node in the blockchain system that contains the transaction is received, and the hash value of the audit target corresponding to the device node identifier is obtained from the intelligent contract with the latest version for verification, so as to ensure reliable verification after the audit target is updated (typically, firmware is updated).
S209, performing consensus based on the respective verification results in the nodes in the blockchain system, generating and storing a consensus result in the blockchain system, and sending the consensus result to the device node.
After each device node performs verification, consensus may be initiated for the verification result in the blockchain, or a consensus mechanism for the verification result may be predefined in the intelligent contract (for example, if the verification result of any node is inconsistent, the verification result is not passed), so as to obtain a final verification result, and the blockchain system sends the verification result to the device node after determining the verification result. The information such as the verification result and the verification time can be stored in the block chain for being inquired by a related authorizer.
S211, the equipment node receives a consensus result, and executes the audit target when the consensus result represents and verifies.
Executing the audit target comprises the following aspects that when the audit target is boot code, the boot code is executed, and a system boot program is loaded through the boot code; and when the auditing target is the system boot bootstrap program, executing the system boot bootstrap program to load the firmware or the system kernel, and transferring the control right to the firmware or the system kernel. And when the auditing target is the firmware or the system kernel, executing the firmware or the system kernel and starting the corresponding hardware function in the equipment node.
Correspondingly, in a third aspect of the embodiment of the present specification, as shown in fig. 3, fig. 3 is a flowchart of a device node starting method based on the foregoing intelligent contract, which is applied to a device node of a blockchain system where the intelligent contract has been deployed in advance, and includes:
s301, determining an audit target, and determining a hash value of the audit target of the equipment node; the auditing objective has been explained above and will not be described in detail here.
S303, encrypting the hash value of the audit target by adopting the private key of the equipment node to obtain a digital signature, and generating the transaction containing the digital signature and the equipment node identifier.
S305, broadcasting the transaction containing the digital signature and the equipment node identifier to the blockchain system, so that the blockchain system performs consistency verification and consensus according to the hash value of the audit target contained in the intelligent contract and the hash value of the target transaction contained in the transaction, and returns a consensus result.
Since the intelligent contract including the correspondence between the public key of the device node, the device node identifier, and the hash value of the new audit target has already been deployed into the blockchain system in the manner described in the first aspect, the blockchain system can perform validation and consensus of the verification result based on the manner described in the second aspect.
S307, receiving a consensus result, and executing the audit target when the consensus result represents that the consistency is verified.
In one embodiment, the audit target may include both boot code, a system boot, and a load object. In such an embodiment, each audit target would need to be audited in sequence at startup. And when the audit result of the previous audit target does not pass (the audit result fails or the audit result is not received), the next audit target is not audited, and the next audit target is not executed. The auditing sequence is carried out according to the sequence of the boot code, the system boot bootstrap program and the loading object.
In this manner, when the consensus result for the boot code characterizes a consistency verification, the boot code is executed to boot the system boot bootstrap program and determine the system boot bootstrap program as a next audit target; and when the consistency verification is passed for the consensus result characterization of the system boot-up bootstrap program, executing the system boot-up bootstrap program to start the loading object, and determining the loading object as a next auditing target.
In this process, if the boot code is not audited, although the subsequent boot can be guaranteed, the boot code may be modified by a person (for example, the hash value of the subsequent system boot loader is written dead in the boot code, and the written hash value is submitted for auditing), so that the subsequent auditing is meaningless; if the system boot or load object is not audited, it is possible that the system boot or load object may be distorted or otherwise compromised by a person, such as malicious code, causing data distortion. In other words, based on the one-line verification from the boot code and the system boot bootstrap program to the loading object, it can be guaranteed that any one process in the boot process cannot be tampered by people, and complete trusted boot is realized.
According to the scheme provided by the embodiment of the specification, based on the intelligent contract which is deployed in advance and used for verification, when the equipment node needs to be started, namely the audit target which needs to be executed during starting is generated into a hash value and digitally signed, the hash value and the digital signature are sent to the block chain to be verified through the intelligent contract which is commonly identified by multiple parties, the verification result is stored, the starting of the audit target is executed after the verification is passed, and information in the starting process of the equipment node is audited through a distributed intelligent contract mode of the block chain, so that the trusted starting of the equipment node is realized.
Corresponding to the first aspect, an embodiment of the present specification further provides a deployment apparatus of an intelligent contract, which is applied to a node of a blockchain system, as shown in fig. 4, where fig. 4 is a schematic structural diagram of the deployment apparatus of an intelligent contract provided by the embodiment of the present specification, and includes:
the obtaining module 401 obtains an audit target, an equipment node identifier and a public key in an equipment node;
a determining module 403, configured to determine a hash value of the audit target;
an establishing module 405, configured to establish a correspondence between a public key of the device node, a device node identifier, and a hash value of the audit target;
the deployment module 407 is configured to construct an intelligent contract containing the corresponding relationship, and deploy the intelligent contract to a node of the blockchain system;
the intelligent contract is used for verifying the consistency of the hash values of the audit target contained in the transaction and the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
Further, in the apparatus, when the audit target is updated, the determining module 403 is further configured to determine a hash value of the updated audit target; the establishing module 405 is further configured to establish a correspondence between the public key of the device node, the device node identifier, and the hash value of the new audit target; the deployment module 407 is further configured to construct another intelligent contract including the corresponding relationship, and deploy the another intelligent contract into a node of the blockchain system.
In accordance with the second aspect, the present specification further provides a verification system based on the foregoing intelligent contract, the verification system including a device node and other nodes, in the system,
the method comprises the steps that an equipment node determines an audit target, and the hash value of the audit target of the equipment node is determined;
the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier;
the device node broadcasting a transaction containing the digital signature and the device node identification into the blockchain system;
receiving any node containing the transaction in the block chain system, acquiring a hash value of an audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result;
performing consensus in the nodes in the blockchain system based on respective verification results, generating consensus results, storing the consensus results into the blockchain system, and sending the consensus results to the equipment nodes;
and the equipment node receives a consensus result, and executes the audit target when the consensus result represents that the verification passes.
Further, any node containing the transaction is received in the system, and the hash value of the auditing target corresponding to the equipment node identification is obtained from the intelligent contract of the latest version.
Corresponding to the third aspect, an embodiment of the present specification further provides an apparatus node startup device based on the foregoing intelligent contract, as shown in fig. 5, fig. 5 is a schematic structural diagram of an apparatus node startup device provided in the embodiment of the present specification, and is applied to an apparatus node of a blockchain system in which the intelligent contract has been previously deployed, where the apparatus node startup device includes:
a determining module 501, configured to determine an audit target, and determine a hash value of the audit target of the device node;
the signature module 503 is configured to encrypt the hash value of the audit target by using a private key of the device node to obtain a digital signature, and generate a transaction including the digital signature and the device node identifier;
a broadcasting module 505, configured to broadcast the transaction including the digital signature and the device node identifier to the blockchain system, so that the blockchain system performs consistency verification and consensus according to the hash value of the audit target included in the intelligent contract and the hash value of the target transaction included in the transaction, so as to return a consensus result;
and the execution module 507 receives the consensus result, and executes the audit target when the consensus result represents that the consistency verification passes.
Further, when the audit target includes a boot code, a system boot program, and a load object, the determining module 501 is further configured to sequentially determine the audit target according to the sequence of the boot code, the system boot program, and the load object;
correspondingly, the executing module 507, when the consistency verification is passed for the consensus result characterization of the boot code, executes the boot code to start the system boot guide program, and determines the system boot guide program as a next auditing target; and when the consistency verification is passed for the consensus result characterization of the system boot-up bootstrap program, executing the system boot-up bootstrap program to start the loading object, and determining the loading object as a next auditing target.
Embodiments of the present specification also provide a computer device, which at least includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the deployment method of the intelligent contract shown in fig. 1 when executing the program.
Embodiments of the present specification further provide a computer device, which at least includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the device node booting method shown in fig. 3.
Fig. 6 is a schematic diagram illustrating a more specific hardware structure of a computing device according to an embodiment of the present disclosure, where the computing device may include: a processor 1010, a memory 1020, an input/output interface 1030, a communication interface 1040, and a bus 1050. Wherein the processor 1010, memory 1020, input/output interface 1030, and communication interface 1040 are communicatively coupled to each other within the device via bus 1050.
The processor 1010 may be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an Application Specific Integrated Circuit (ASIC), or one or more Integrated circuits, and is configured to execute related programs to implement the technical solutions provided in the embodiments of the present disclosure.
The Memory 1020 may be implemented in the form of a ROM (Read Only Memory), a RAM (Random access Memory), a static storage device, a dynamic storage device, or the like. The memory 1020 may store an operating system and other application programs, and when the technical solution provided by the embodiments of the present specification is implemented by software or firmware, the relevant program codes are stored in the memory 1020 and called to be executed by the processor 1010.
The input/output interface 1030 is used for connecting an input/output module to input and output information. The i/o module may be configured as a component in a device (not shown) or may be external to the device to provide a corresponding function. The input devices may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output devices may include a display, a speaker, a vibrator, an indicator light, etc.
The communication interface 1040 is used for connecting a communication module (not shown in the drawings) to implement communication interaction between the present apparatus and other apparatuses. The communication module can realize communication in a wired mode (such as USB, network cable and the like) and also can realize communication in a wireless mode (such as mobile network, WIFI, Bluetooth and the like).
Bus 1050 includes a path that transfers information between various components of the device, such as processor 1010, memory 1020, input/output interface 1030, and communication interface 1040.
It should be noted that although the above-mentioned device only shows the processor 1010, the memory 1020, the input/output interface 1030, the communication interface 1040 and the bus 1050, in a specific implementation, the device may also include other components necessary for normal operation. In addition, those skilled in the art will appreciate that the above-described apparatus may also include only those components necessary to implement the embodiments of the present description, and not necessarily all of the components shown in the figures.
Embodiments of the present specification also provide a computer-readable storage medium on which a computer program is stored, where the computer program, when executed by a processor, implements the method for deploying an intelligent contract shown in fig. 1.
Embodiments of the present specification further provide a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the device node startup method shown in fig. 3.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, 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, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
From the above description of the embodiments, it is clear to those skilled in the art that the embodiments of the present disclosure can be implemented by software plus necessary general hardware platform. Based on such understanding, the technical solutions of the embodiments of the present specification may be essentially or partially implemented in the form of a software product, which may be stored in a storage medium, such as a ROM/RAM, a magnetic disk, an optical disk, etc., and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments of the present specification.
The systems, methods, modules or units described in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. A typical implementation device is a computer, which may take the form of a personal computer, laptop computer, cellular telephone, camera phone, smart phone, personal digital assistant, media player, navigation device, email messaging device, game console, tablet computer, wearable device, or a combination of any of these devices.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, as for the method embodiment, since it is substantially similar to the method embodiment, it is relatively simple to describe, and reference may be made to the partial description of the method embodiment for relevant points. The above-described method embodiments are merely illustrative, wherein the modules described as separate components may or may not be physically separate, and the functions of the modules may be implemented in one or more software and/or hardware when implementing the embodiments of the present specification. And part or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of the embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
The foregoing is only a specific embodiment of the embodiments of the present disclosure, and it should be noted that, for those skilled in the art, a plurality of modifications and decorations can be made without departing from the principle of the embodiments of the present disclosure, and these modifications and decorations should also be regarded as the protection scope of the embodiments of the present disclosure.

Claims (14)

1. A deployment method of intelligent contracts is applied to nodes of a blockchain system, and comprises the following steps:
obtaining an audit target, equipment node identification and a public key in an equipment node;
determining a hash value of the audit target;
establishing a corresponding relation among a public key of the equipment node, equipment node identification and a hash value of the audit target;
constructing an intelligent contract containing the corresponding relation, and deploying the intelligent contract into nodes of a block chain system;
the intelligent contract is used for verifying the consistency of the hash values of the audit target contained in the transaction and the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
2. The method of claim 1, when the audit target is updated, the method further comprising:
determining the hash value of the updated audit target;
establishing a corresponding relation among a public key of the equipment node, equipment node identification and the hash value of the new audit target;
and constructing another intelligent contract containing the corresponding relation, and deploying the other intelligent contract into the nodes of the blockchain system.
3. A verification method based on the intelligent contract of claim 1, applied to a blockchain system in which the intelligent contract has been previously deployed, the method comprising:
the method comprises the steps that an equipment node determines an audit target, and the hash value of the audit target of the equipment node is determined;
the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier;
the device node broadcasting a transaction containing the digital signature and the device node identification into the blockchain system;
receiving any node containing the transaction in the block chain system, acquiring a hash value of an audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result;
performing consensus in the nodes in the blockchain system based on respective verification results, generating consensus results, storing the consensus results into the blockchain system, and sending the consensus results to the equipment nodes;
and the equipment node receives a consensus result, and executes the audit target when the consensus result represents that the verification passes.
4. The method of claim 3, wherein any node in the blockchain system that receives the transaction that contains the transaction obtains the hash value of the audit target corresponding to the device node identification from the smart contract, comprising:
and any node containing the transaction is received in the blockchain system, and the hash value of the auditing target corresponding to the equipment node identification is obtained from the intelligent contract of the latest version.
5. A device node startup method based on the intelligent contract of claim 1, applied to a device node of a blockchain system where the intelligent contract has been previously deployed, comprising:
determining an audit target, and determining a hash value of the audit target of the equipment node;
encrypting the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generating a transaction containing the digital signature and the equipment node identifier;
broadcasting the transaction containing the digital signature and the equipment node identifier into the blockchain system so that the blockchain system can carry out consistency verification and consensus according to the hash value of the audit target contained in the intelligent contract and the hash value of the target transaction contained in the transaction so as to return a consensus result;
and receiving a consensus result, and executing the audit target when the consensus result represents that the consistency verification passes.
6. The method of claim 5, wherein when the audit target includes boot code, a system boot loader, and a load object,
accordingly, determining an audit target includes: according to the sequence of starting codes, starting a bootstrap program and loading objects, sequentially determining an audit target;
correspondingly, when the consensus result represents that the consistency verification passes, the audit target is executed, and the method comprises the following steps:
when the consensus result characterization consistency verification of the starting code passes, executing the starting code to start the system starting bootstrap program, and determining the system starting bootstrap program as a next auditing target; and the combination of (a) and (b),
when the consistency verification is passed for the consensus result characterization of the system boot-up bootstrap program, executing the system boot-up bootstrap program to start the loading object, and determining the loading object as a next auditing target.
7. An intelligent contract deployment device applied to a node of a blockchain system, the device comprising:
the acquisition module acquires an audit target, equipment node identification and a public key in the equipment node;
the determining module is used for determining the hash value of the audit target;
the establishing module is used for establishing a corresponding relation among a public key of the equipment node, equipment node identification and a hash value of the audit target;
the deployment module is used for constructing an intelligent contract containing the corresponding relation and deploying the intelligent contract into the nodes of the block chain system;
the intelligent contract is used for verifying the consistency of the hash values of the audit target contained in the transaction and the audit target of the equipment node in the intelligent contract when the node of the blockchain system receives the transaction containing the hash value of the audit target sent by the equipment node.
8. The apparatus of claim 7, when the audit target is updated, the apparatus further comprising:
the determining module is further used for determining the hash value of the updated audit target;
the establishing module is further used for establishing a corresponding relation between a public key of the equipment node, equipment node identification and the hash value of the new audit target;
the deployment module is further used for constructing another intelligent contract containing the corresponding relation and deploying the other intelligent contract into the nodes of the blockchain system.
9. A verification system based on the intelligent contract of claim 1, in which system,
the method comprises the steps that an equipment node determines an audit target, and the hash value of the audit target of the equipment node is determined;
the equipment node encrypts the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature, and generates a transaction containing the digital signature and the equipment node identifier;
the device node broadcasting a transaction containing the digital signature and the device node identification into the blockchain system;
receiving any node containing the transaction in the block chain system, acquiring a hash value of an audit target corresponding to the equipment node identifier from the intelligent contract, and performing consistency verification on the hash value of the audit target contained in the transaction to obtain a verification result;
performing consensus in the nodes in the blockchain system based on respective verification results, generating consensus results, storing the consensus results into the blockchain system, and sending the consensus results to the equipment nodes;
and the equipment node receives a consensus result, and executes the audit target when the consensus result represents that the verification passes.
10. The system of claim 9, wherein any node in the blockchain system that receives the transaction obtains the hash value of the audit target corresponding to the device node identification from the latest version of the smart contract.
11. A device node starting apparatus based on the intelligent contract of claim 1, applied to a device node of a blockchain system where the intelligent contract has been previously deployed, comprising:
the determining module is used for determining an audit target and determining the hash value of the audit target of the equipment node;
the signature module is used for encrypting the hash value of the audit target by adopting a private key of the equipment node to obtain a digital signature and generating a transaction containing the digital signature and the equipment node identifier;
the broadcast module broadcasts the transaction containing the digital signature and the equipment node identifier to the blockchain system so that the blockchain system can carry out consistency verification and consensus according to the hash value of the audit target contained in the intelligent contract and the hash value of the target transaction contained in the transaction to return a consensus result;
and the execution module receives a consensus result, and executes the audit target when the consensus result represents that the consistency is verified.
12. The apparatus of claim 11, wherein when the audit target includes boot code, a system boot loader, and a load object,
correspondingly, the determining module is further configured to determine an audit target in sequence according to the sequence of the boot code, the system boot bootstrap program and the loaded object;
correspondingly, when the consistency verification of the consensus result characterization of the boot code passes, the execution module executes the boot code to start the system boot guide program and determines the system boot guide program as a next auditing target; and when the consistency verification is passed for the consensus result characterization of the system boot-up bootstrap program, executing the system boot-up bootstrap program to start the loading object, and determining the loading object as a next auditing target.
13. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the method of any of claims 1 to 2 when executing the program.
14. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the method of any of claims 5 to 6 when executing the program.
CN202010302393.7A 2020-04-17 2020-04-17 Intelligent contract deployment method, device and equipment Pending CN111461722A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010302393.7A CN111461722A (en) 2020-04-17 2020-04-17 Intelligent contract deployment method, device and equipment
PCT/CN2021/087204 WO2021208956A1 (en) 2020-04-17 2021-04-14 Deployment of smart contract

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010302393.7A CN111461722A (en) 2020-04-17 2020-04-17 Intelligent contract deployment method, device and equipment

Publications (1)

Publication Number Publication Date
CN111461722A true CN111461722A (en) 2020-07-28

Family

ID=71679699

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010302393.7A Pending CN111461722A (en) 2020-04-17 2020-04-17 Intelligent contract deployment method, device and equipment

Country Status (2)

Country Link
CN (1) CN111461722A (en)
WO (1) WO2021208956A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112162770A (en) * 2020-10-20 2021-01-01 深圳技术大学 Firmware version upgrading method and device for realizing integrity verification based on block chain
CN112436940A (en) * 2021-01-27 2021-03-02 电子科技大学 Internet of things equipment trusted boot management method based on zero-knowledge proof
CN112634040A (en) * 2020-12-25 2021-04-09 中国农业银行股份有限公司 Data processing method and device
CN113239635A (en) * 2021-06-16 2021-08-10 中国银行股份有限公司 Model evaluation method and device
WO2021208956A1 (en) * 2020-04-17 2021-10-21 支付宝(杭州)信息技术有限公司 Deployment of smart contract

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114091061B (en) * 2021-11-12 2024-05-03 天津理工大学 Multi-cloud collaborative data security storage and audit method based on VRF and blockchain
CN114363336B (en) * 2021-12-31 2024-06-14 支付宝(杭州)信息技术有限公司 Method and device for starting/closing blockchain node service
CN117668924B (en) * 2024-01-31 2024-05-03 广东通莞科技股份有限公司 Pos machine business audit system based on-chain settlement data

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325349A (en) * 2018-08-15 2019-02-12 深圳市元征科技股份有限公司 A kind of method for managing security, terminal device and computer readable storage medium
CN109858914A (en) * 2019-01-18 2019-06-07 深圳壹账通智能科技有限公司 Block chain data verification method, device, computer equipment and readable storage medium storing program for executing
CN109889477A (en) * 2018-12-20 2019-06-14 北京华胜天成信息技术发展有限公司 Server based on trusted cryptography's engine starts method and device
CN110138733A (en) * 2019-04-03 2019-08-16 华南理工大学 Object storage system based on block chain is credible to deposit card and access right control method
CN110233823A (en) * 2019-05-06 2019-09-13 深圳壹账通智能科技有限公司 Block chain implementation method, system and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9992028B2 (en) * 2015-11-26 2018-06-05 International Business Machines Corporation System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger
CN108985936A (en) * 2018-07-09 2018-12-11 北京中电普华信息技术有限公司 A kind of auditing method and system based on intelligent contract
CN109166040B (en) * 2018-08-23 2020-07-31 京东数字科技控股有限公司 Transaction auditing method, device, equipment and storage medium based on block chain
CN111461722A (en) * 2020-04-17 2020-07-28 支付宝(杭州)信息技术有限公司 Intelligent contract deployment method, device and equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325349A (en) * 2018-08-15 2019-02-12 深圳市元征科技股份有限公司 A kind of method for managing security, terminal device and computer readable storage medium
CN109889477A (en) * 2018-12-20 2019-06-14 北京华胜天成信息技术发展有限公司 Server based on trusted cryptography's engine starts method and device
CN109858914A (en) * 2019-01-18 2019-06-07 深圳壹账通智能科技有限公司 Block chain data verification method, device, computer equipment and readable storage medium storing program for executing
CN110138733A (en) * 2019-04-03 2019-08-16 华南理工大学 Object storage system based on block chain is credible to deposit card and access right control method
CN110233823A (en) * 2019-05-06 2019-09-13 深圳壹账通智能科技有限公司 Block chain implementation method, system and storage medium

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021208956A1 (en) * 2020-04-17 2021-10-21 支付宝(杭州)信息技术有限公司 Deployment of smart contract
CN112162770A (en) * 2020-10-20 2021-01-01 深圳技术大学 Firmware version upgrading method and device for realizing integrity verification based on block chain
CN112162770B (en) * 2020-10-20 2023-11-10 深圳技术大学 Firmware version upgrading method and device for realizing integrity verification based on block chain
CN112634040A (en) * 2020-12-25 2021-04-09 中国农业银行股份有限公司 Data processing method and device
CN112634040B (en) * 2020-12-25 2023-08-18 中国农业银行股份有限公司 Data processing method and device
CN112436940A (en) * 2021-01-27 2021-03-02 电子科技大学 Internet of things equipment trusted boot management method based on zero-knowledge proof
CN113239635A (en) * 2021-06-16 2021-08-10 中国银行股份有限公司 Model evaluation method and device

Also Published As

Publication number Publication date
WO2021208956A1 (en) 2021-10-21

Similar Documents

Publication Publication Date Title
CN111461722A (en) Intelligent contract deployment method, device and equipment
US10735427B2 (en) Method and apparatus for managing program of electronic device
US11256496B2 (en) Apparatus and method for managing application
US10614212B1 (en) Secure software containers
US9507604B2 (en) Boot method and boot system
US9389878B1 (en) Pre-boot management of drivers and programs
US10826904B2 (en) Local verification of code authentication
JP5576983B2 (en) Secure boot and configuration of subsystems from non-local storage
JP2021509189A (en) Blockchain-based transaction processing methods and equipment
US20160087801A1 (en) Cryptographically enforcing strict separation of environments
KR20110075050A (en) Secure booting a computing device
US20200366471A1 (en) Electronic device and method for receiving push message stored in blockchain
US11157264B2 (en) Electronic device and method for controlling update of electronic device
US11347897B2 (en) Electronic device and method for transmitting and receiving data on the basis of security operating system in electronic device
CN112507291A (en) Method and device for generating unique identifier of Android device
US20170300692A1 (en) Hardware Hardened Advanced Threat Protection
CN112650521B (en) Software development kit SDK thermal restoration method and device and electronic equipment
US20210011736A1 (en) Method and apparatus for managing application
KR20140082542A (en) Method and apparatus for supporting dynamic change of authentication means for secure booting
CN113868691B (en) Authorized operation method and device of block chain based on cloud-native technology
US11947709B2 (en) Electronic device for controlling access to device resource and operation method thereof
CN116194939A (en) Electronic device for generating transactions including internal data and method of operating the same
EP3926992A1 (en) Electronic device, and authentication method in electronic device
CN110333914B (en) Method and device for executing target operation
KR102538096B1 (en) Device and method of verify application

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40034523

Country of ref document: HK