![]() computer-implemented method for validating blockchain transactions based on account templates, compu
专利摘要:
The present invention relates to implementations including receiving, by a consensus node of a blockchain, transaction data and a digital signature of transaction data. Transaction data includes a commitment amount, a random number, and a transaction amount to be transferred between a public account or a private account from the first user node to a public account or a private account from a second user node. the consensus node verifies the digital signature of transaction data using a public key from the user's first node. then determines that the transaction amount is valid if the commitment amount is correct based on the random number and commitment scheme, and the transaction amount is less than or equal to a balance between the public account or the private account. the user's first node before the transaction amount is transferred. 公开号:BR112019008171A2 申请号:R112019008171 申请日:2018-11-07 公开日:2019-09-10 发明作者:Ma Baoli;Zhang Wenbin 申请人:Alibaba Group Holding Ltd; IPC主号:
专利说明:
“METHOD IMPLEMENTED BY COMPUTER TO VALIDATE BLOCKCHAIN TRANSACTIONS BASED ON ACCOUNT MODELS, MEDIA READABLE BY COMPUTER AND SYSTEM” Field of the Invention [001] The achievements of the present invention include methods implemented by computer to protect the privacy of data from public and private transactions under the account balance model of a blockchain network. Background of the Invention [002] Blockchain networks, which can also be referred to as blockchain systems, consensus networks, distributed accounting system networks (DLS) or blockchain, enable participating entities to store data in a secure and immutable manner. A blockchain can be described as transaction accounting, and several copies of blockchain are stored on the blockchain network. Examples of types of blockchains can include public blockchains and private blockchains. A public blockchain is open for all entities to use the blockchain and participate in the consensus process. A private blockchain is provided to a specific entity, which centrally controls read and write permissions. [003] Blockchains are used in cryptocurrency networks, which enable participants to carry out transactions to buy / sell goods and / or services using a cryptocurrency. A common cryptocurrency includes Bitcoin. In cryptocurrency networks, record-keeping models are used to record transactions between users. Examples of record-keeping models include the unused transaction exit model (UTXO) and the account balance model. In the UTXO model, each transaction spends the output from previous transactions and generates Petition 870190058526, dated 06/25/2019, p. 9/40 2/22 new outlets that can be spent on subsequent transactions. A user's unspent transactions are tracked and a balance the user must spend is calculated as the sum of the unspent transactions. In the account balance model, each user's account balance is tracked as a global state. For each transaction, an expense account balance is checked to ensure that it is greater than or equal to the transaction amount. This is comparable to the traditional bank. [004] A blockchain includes a series of blocks, each of which contains one or more transactions executed on the network. Each block can be converted into an accounting page, while the blockchain itself is a complete copy of the accounting. Individual transactions are confirmed and added to a block, which is added to the blockchain. Blockchain copies are replicated on the network nodes. In this way, there is a global consensus on the state of the blockchain. In addition, the blockchain is open for all nodes to observe, at least, in the case of public networks. To protect the privacy of blockchain users, cryptocurrency technologies are implemented. Description of the Invention [005] The achievements of the present invention include methods implemented by computer to protect the privacy of data from public and private transactions under the account balance model of a blockchain network. More particularly, the achievements of the present invention are intended to enable private transactions and public transactions under the account balance model within a blockchain network. In this way, and as described in more detail at present, users can freely select whether each transaction is a public transaction or a private transaction within the blockchain network. [006] In some embodiments, the actions include receiving, through a consensus node of a blockchain network, transaction data and a Petition 870190058526, dated 06/25/2019, p. 10/40 3/22 digital signature of the transaction data, where the transaction data includes a commitment amount, a random number and a transaction amount to be transferred between a public account or a private account from the first user node to a public account or a private account of a second user node and where the digital signature is generated by digitally signing the transaction data using a private key from the first user node and the commitment amount is generated based on the random number and the transaction amount using a commitment scheme; verifying the digital signature of the transaction data using a public key from the user's first node; and - determining that the transaction amount is valid, if the commitment amount is correct based on the random number and the commitment scheme, and the transaction amount is less than or equal to a balance between the public account or the private account of the first user node before transferring the transaction amount. Other achievements include the corresponding computer systems, devices and programs, configured to carry out the actions of the methods, encoded in computer storage devices. [007] These and other achievements may optionally include one or more of the following characteristics. [008] A first feature, combinable with any of the following features, in which the public account has a public balance visible by the consensus node and the special account has a private balance visible using a private key of the respective user node. [009] A second feature, combinable with any of the previous or following features, in which the transaction amount is from a public account associated with the first user node to a private account associated with the second user node. Petition 870190058526, dated 06/25/2019, p. 11/40 4/22 [010] A third feature, combinable with any of the previous or following features, in which the transaction amount is from the private account of the first user node to the public account of the second user node, and the method further comprises: receiving, from the user's first node, a proof of reach to prove that the transaction amount is less than or equal to a balance in the private account of the user's first node; and where the transfer is determined to be valid, if the transaction amount is less than or equal to the private account balance of the user's first node based on proof of reach. [011] A fourth feature, which can be combined with any of the previous or following features, further comprises updating the balance of the public account or the private account of the first user node, and the balance of a public account or the private account of the second node based on the transaction amount, if the transfer is valid. [012] A fifth feature, combinable with any of the previous or following features, in which the private account balance is updated based on the commitment amount of the transaction amount and a commitment from the private account balance generated using the commitment scheme . [013] A sixth characteristic, combinable with any of the previous or following characteristics, in which the commitment scheme is homomorphic. [014] The present invention further provides a system for carrying out the methods provided herein. The system includes one or more processors, and a computer-readable storage medium coupled to one or more processors that have the instructions stored in it, which, when executed by one or more processors, cause one or more processors to perform the operations, according with realizations of the methods Petition 870190058526, dated 06/25/2019, p. 12/40 5/22 provided at present. [015] It is considered that the methods according to the present invention can include any combination of the embodiments and characteristics described herein. That is, the methods according to the present invention are not limited to the combinations of embodiments and characteristics specifically described herein, but also include any combination of the embodiments and characteristics provided. [016] Details of one or more embodiments of the present invention are presented in the attached Figures and in the description below. Other features and advantages of the present invention will be apparent from the Description and Figures, and from the Claims. Brief Description of the Drawings [017] Figure 1 illustrates an example of an environment that can be used to carry out the embodiments of the present invention. [018] Figure 2 illustrates an example of conceptual architecture, in accordance with embodiments of the present invention. [019] Figure 3 illustrates an example of a blockchain transaction validation process, in accordance with realizations of the present invention. [020] Figure 4 illustrates an example of a blockchain transaction from a public account to a private account, in accordance with the achievements of the present invention. [021] Figure 5 illustrates an example of a blockchain transaction from a private account to a public account, in accordance with the achievements of the present invention. [022] Figure 6 illustrates an example of a method that can be performed according to embodiments of the present invention. [023] Similar symbols of reference in the various drawings indicate similar elements. Petition 870190058526, dated 06/25/2019, p. 13/40 6/22 Description of Realizations of the Invention [024] The realizations of the present invention include the methods implemented by computer to protect the privacy of public and private transaction data under the account balance model (also referred to herein as the account model) of an blockchain network. More especially, the achievements of the present invention are intended to enable private transactions and public transactions under the account balance model within a blockchain network. In this way, and as described in more detail at present, users can freely select whether each transaction is a public transaction or a private transaction within the blockchain network. In some embodiments, the actions include receiving, via a consensus node from a blockchain network, the transaction data and a digital signature of the transaction data, where the transaction data includes a commitment amount, a random number and an amount transaction to be transferred between a public account or a private account of the first user node to a public account or a private account of a second user node and where the digital signature is generated by digitally signing the transaction data using a key private of the user's first node and the commitment amount are generated based on the random number and the transaction amount using a commitment scheme; verifying the digital signature of the transaction data using a public key from the user's first node; and determining that the transaction amount is valid, if the commitment amount is correct based on the random number and the commitment scheme, and the transaction amount is less than or equal to a balance between the public account or the private account of the first user node before transferring the transaction amount. [025] To provide additional context for the achievements of the present invention, and as introduced above, blockchain networks, which Petition 870190058526, dated 06/25/2019, p. 14/40 7/22 can also be referred to as consensus networks (for example, made up of peer-to-peer nodes), distributed accounting systems, or simply blockchain, allowing participating entities to execute transactions securely and immutably and store the Dice. A blockchain can be provided as a public blockchain, a private blockchain or a consortium blockchain. The achievements of the present invention are described in this document in greater detail with reference to a public blockchain, which is public among the participating entities. It is contemplated, however, that the achievements of the present invention can be carried out on any suitable type of blockchain. [026] On a public blockchain, the consensus process is controlled by nodes of the consensus network. For example, hundreds, thousands and even millions of entities can participate in a public blockchain, each operating at least one node in the public blockchain. Therefore, the public blockchain can be considered a public network in relation to the participating entities. In some examples, most entities (nodes) must sign all blocks for the block to be valid and added to the blockchain. An example of a public blockchain includes the blockchain used in the Bitcoin network, which is a peer-to-peer payment network (cryptocurrency network). Although the term blockchain is usually referenced by hand with the Bitcoin network, as used at present, blockchain in general refers to accounts distributed without special reference to the Bitcoin network. [027] In general, a public blockchain supports public transactions. A public transaction is shared with all nodes within the blockchain, since the blockchain is replicated across all nodes. That is, all nodes are in a perfect state of consensus regarding blockchain. To reach consensus (for example, agreeing to add a block to a blockchain), a consensus protocol is implemented within the network Petition 870190058526, dated 06/25/2019, p. 15/40 8/22 blockchain. An example of a consensus protocol includes, without limitation, proof of work (POW) implemented on the Bitcoin network. [028] The embodiments of the present invention are described in greater detail in the present in view of the above context. More especially, and as introduced above, the achievements of the present invention are intended to enable private transactions and public transactions under the account balance model within a blockchain network. In this way, and as described in more detail at present, users can freely select whether each transaction is a public transaction or a private transaction within the blockchain network. [029] In accordance with the achievements of the present invention, account structures based on account models enable transactions between public accounts, transactions between private accounts and transactions between public and private accounts. An appropriate privacy protection scheme can be implemented for different types of accounts. In this way, a user (for example, the node on the network) can select whether to carry out transactions using the public account or the private account based on privacy preferences. [030] A public account may have an account balance visible by consensus nodes. A special account can have a visible account balance using a private key of an account owner (user). The balance of the private account can be encrypted using homomorphic cryptocurrency or compromised by a compromise scheme with homomorphism. As such, the balance of the private account cannot be determined by other nodes in the blockchain network. The amount of the transaction carried out to or from a special account can also be hidden based on the commitment scheme to update the balance of the private account based on the homomorphic cryptocurrency. Petition 870190058526, dated 06/25/2019, p. 16/40 9/22 [031] Figure 1 illustrates an example of an environment (100) that can be used to carry out the embodiments of the present invention. In some examples, the sample environment (100) allows entities to participate in a public blockchain (102). The example environment (100) includes computing systems (106), (108) and a network (110). In some instances, the network (110) includes a local area network (LAN), wide area network (WAN), the Internet, or one of its combinations, and connects websites, user devices (for example, computing devices) and backend systems. In some examples, the network (110) can be accessed via a wired and / or wireless communication link. [032] In the example described, the computing systems (106), (108) can include each suitable computing system that enables participation as a node in the public blockchain (102). Examples of computing devices include, without limitation, a server, a desktop computer, a laptop computer, a tablet computing device (120) and a smartphone. In some examples, computer systems (106), (108) host one or more services implemented by computer to interact with the public blockchain (102). For example, the computing system (106) can host the services implemented by a first entity's computer (for example, user A), as a transaction management system that the first entity uses to manage its transactions with one or more entities (for example, other users). The computing system (108) can host the computer-implemented services of a second entity (for example, user B), as a transaction management system that the second entity uses to manage its transactions with one or more other entities (for example, other users). In the example in Figure 1, the public blockchain (102) is represented as a network of peer-to-peer nodes, and the computing systems (106), (108) Petition 870190058526, dated 06/25/2019, p. 17/40 10/22 provide the nodes of the first entity, and second entity respectively, that participate in the public blockchain (102). [033] Figure 2 illustrates an example of conceptual architecture (200) according to embodiments of the present invention. The example conceptual architecture (200) includes an entity layer (202), a hosted services layer (204) and a public blockchain layer (206). In the example described, the entity layer (202) includes three entities, Entity_1 (E1), Entity_2 (E2) and Entity_3 (E3), each entity has a respective transaction management system (208). [034] In the example described, the hosted services layer (204) includes the blockchain or DLS interfaces (210) for each transaction management system (208). In some examples, a transaction management system (208) communicates with a respective DLS interface (210) on a network (for example, the network (110) in Figure 1) using a communication protocol (for example, the protocol secure hypertext transfer (HTTPS)). In some examples, each DLS interface (210) provides a communication connection between a transaction management system (208) and the blockchain layer (206). More particularly, each DLS interface (210) allows the respective entity to conduct transactions registered on a blockchain network (212) of the blockchain layer (206). In some examples, communication between a DLS interface (210) and the blockchain layer (206) is conducted using remote procedure calls (RPCs). In some examples, the DLS interfaces (210) “host” the blockchain nodes for the respective transaction management systems. For example, DLS interfaces (210) provide the application programming interface (API) for accessing the blockchain network (212). [035] As described herein, the blockchain network (212) is provided as a peer-to-peer network including a plurality of nodes (214) Petition 870190058526, dated 06/25/2019, p. 18/40 11/22 that record the information, immutably, in a blockchain (216). Although a single blockchain (216) is schematically represented, several copies of the blockchain (216) are provided, and are maintained through the blockchain (212). For example, each node (214) stores a copy of the blockchain (216). In some embodiments, blockchain (216) stores information associated with transactions that are carried out between two or more entities participating in the public blockchain. [036] The present invention describes methods that can enable private transactions and public transactions to be carried out under the account balance model within a blockchain network based on commitment schemes. In this way, users can freely select whether each transaction or account used for the transaction is public or private. [037] Figure 3 illustrates a (functional) lane diagram that illustrates an example of a blockchain transaction validation process (300), in accordance with the achievements of the present invention. For the purpose that illustrates the example validation process (300), it is assumed that a funds transfer transaction is performed by a user node A (302) to a user node B (not shown in Figure 3) and a transaction is submitted by user node A (302) to a blockchain node (304) for validation. Each user node A (302) and user node B can include a public account and a private account. A public account balance can be viewed by all nodes on the blockchain network. A special account balance can only be viewed by the account owner (user) using a private key. According to embodiments of the present invention, user nodes can select whether to carry out transactions in a public or private manner using a public account or a private account. [038] In (306), user node A (302) generates a value of Petition 870190058526, dated 06/25/2019, p. 19/40 12/22 commitment based on a transaction amount t and a random number r. The commitment amount can be generated by a homomorphic commitment scheme. An example engagement scheme includes, without limitation, the Pedersen Commitment (PC). Although the embodiments of the present invention are described in more detail herein with reference to the PC, it is contemplated that the embodiments of the present invention can be realized using any suitable compromise scheme. [039] Using the PC, for example, the compromise value is a cipher text that can be termed as PC (t) = rG + íH, where G and H can generate an elliptic curve, PC (t) is a scalar multiplication of curve points, t is the value that is committed. The PC commitment scheme has a homomorphism, that is, PC (t1) + PC (t2) = PC (t1 + t2). Holders of the ciphertext PC (t) can check the transaction amount t using the random number r. In (308), user node A (302) uses a private key to digitally sign the commitment amount PC (t), the transaction amount t and the random number r. User node A (302) submits commitment value PC (í), transaction amount t, random number r and digital signature to blockchain node (304) at (310). [040] In some embodiments, the transaction amount t can be sent from a private account of user A's node (302). For a private account, if the account has enough balance to transfer the transaction amount t cannot be verified directly by other blockchain nodes. In such cases, user node A (302) can generate one or more reach proofs to show that transaction amount t is greater than or equal to zero and less than or equal to a balance of user A's special account (302 ). [041] At (312), the blockchain node (304) verifies the digital signature of the PC commitment value (r, t), the transaction amount t and the random number r using a public key from user A (302) . If the digital signature Petition 870190058526, dated 06/25/2019, p. 20/40 13/22 is correct, the example validation process (300) proceeds to (314). [042] At 314, the blockchain node (304) verifies that the PC (t) commitment amount is correct and that the transaction amount t is valid. To verify that the PC (t) is correct, the random number received r and the transaction amount t can be used to generate the PC denoted as PC ’(r, t). If PC ’(r, t) is equal to the received commitment PC (r, t), the commitment PC (r, t) is verified as the correct commitment for the transaction amount t. In some embodiments, the blockchain node (304) can verify that the transaction amount is valid if it is greater than or equal to 0 and less than or equal to the account balance (302) of user A's node, for which the amount of transaction is transferred based on one or more proofs of reach. [043] At 316, the blockchain node (304) updates the balances of user node A (302), and user node B on the blockchain, and transmits the blockchain to the rest of the nodes on the blockchain network. For public account transactions, the transaction amount can be directly subtracted or added to the public account balance based on the type of transaction. For private account transactions, the transaction amount t may be committed to the use of PC as PC (t) and subtracted from, or added to a private account balance also committed to the use of PC as PC (s). Since PC is homomorphic, PC (s) ± PC (t) = PC (s ± t). The details of updating the balances of public and private accounts are described in greater detail in the present with references to Figures 4 and 5. [044] Figure 4 illustrates a block diagram illustrating an example of a transaction (400) from a public account to a private account, in accordance with the embodiments of the present invention. As shown in the example transaction (400), before the transaction, a user node A (402) has a public account balance u and a private account balance v Petition 870190058526, dated 06/25/2019, p. 21/40 14/22 confirmed to use the PC and expressed as PC (v). A user node B (406) has a public account balance x and a private account balance y committed to using the PC and expressed as PC (y). User node A (402) can submit a transaction from its public account to the private account of user node B (406) by sending a digitally signed copy of a PC (t) commitment amount, the transaction amount t and a number random α corresponding to the commitment value for a blockchain network (408). After the PC (t) commitment amount of the transaction amount has been verified using a validation process, such as the example process (300) in Figure 3, the accounts for user node A (402) and user node B (406) can be updated. After the transaction is validated by the blockchain network (408), a transaction amount is subtracted from the public account of user A's node (402) and added to the private account of user B's node (406). After the transaction, user node A (400) has a public account balance u - t, and a private account balance PC (v). User node B (406) has a public account balance x and a personal account balance PC (y + t). [045] Figure 5 illustrates a block diagram illustrating an example of a transaction (500) from a private account to a public account, in accordance with the embodiments of the present invention. As shown in the example transaction (500), before the transaction, a user node A (502) has a public account balance u and a private account balance v confirmed to use the PC and expressed as a PC (v). A user node B (506) has a public account balance x and a private account balance y committed to using the PC and expressed as PC (y). User node A (502) can submit a transaction from its special account to a public account of the public account of user node B (506), by sending a digitally signed copy of a PC (t) commitment amount, the amount of transaction t, a random number α corresponding to the commitment value and one or more proofs of reach. Evidence from one or more intervals can be used to prove that 0 <t <v Petition 870190058526, dated 06/25/2019, p. 22/40 15/22 for a blockchain network (508). After the commitment amount PC (t) of the transaction amount t is verified using a validation process, such as the example process (300) in Figure 3, the accounts for user node A (502) and user node B (506) can be updated. After the transaction is validated by the blockchain network (508), a transaction amount is subtracted from the private account of user node A and is added to the public account of the public account of user node B (506). After the transaction, user A's node (502) has a public account balance and a private account balance PC (v-t). User node B (504) has a public account balance x + t and a personal PC account balance (y). [046] Figure 6 illustrates an example of method (600) that can be performed, according to embodiments of the present invention. For clarity of presentation, the description that follows generally describes the example method (600) in the context of other Figures in this description. However, it will be understood that the example method (600) can be carried out, for example, through any system, environment, software and hardware, or a combination of systems, environments, software and hardware, as appropriate. In some embodiments, several steps of the example method (600) can be performed in parallel, in combination, in links or in any order. [047] At (602), a blockchain network consensus node receives the transaction data and a digital signature of the transaction data. In some embodiments, the transaction data includes a commitment amount, a random number and a transaction amount to be transferred between a public account or a private account of the first user node to a public account or private account of a second node of the user. The digital signature is generated by digitally signing the transaction data using a private key from the user's first node. The commitment amount is generated based on the random number and the transaction amount using a commitment scheme. In some embodiments, the commitment scheme is Petition 870190058526, dated 06/25/2019, p. 23/40 Homomorphic 16/22. In some embodiments, the transaction amount is from a public account associated with the user's first node to a private account associated with the user's second node. In some embodiments, the transaction amount is from a private account associated with the user's first node to a public account of the user's second node. In such cases, the consensus node may also receive proof of reach from the user's first node to prove that the transaction amount is less than or equal to a special account balance on the user's first node. [048] At (604), the consensus node verifies the digital signature of the transaction data using a public key from the user's first node. [049] At (606), the consensus node determines that the transaction amount is valid, if the commitment amount is correct based on the random number and the commitment scheme. The consensus node also determines that the transaction amount is less than or equal to a balance between the public account or the private account of the user's first node before the transfer of the transaction amount. In some embodiments, the transaction amount is from a private account on the user's first node to a public account on the user's second node. In such cases, determining whether the balance transfer is valid also includes determining whether the transaction amount is less than or equal to the special account balance associated with the user's first node based on proof of reach. [050] In some embodiments, the example method (600) may also include updating the balance of a public account or the private account associated with the first user node and the balance of a public account or private account associated with the second node of the user. The update can be performed based on the transaction amount, if the transaction amount is valid. In some embodiments, the private account balance is updated based on the commitment amount of the transaction amount and an account balance commitment Petition 870190058526, dated 06/25/2019, p. 24/40 17/22 private generated using the commitment scheme. [051] The achievements of the subject described in this specification can be implemented in a way that achieves specific advantages or technical effects. For example, the achievements of the present invention enable a blockchain network to support transactions between public accounts, transactions between private accounts and transactions between public and private accounts. As such, adequate privacy protection can be implemented regardless of account types, so a user node of the blockchain network can flexibly select to send and receive funds from their public account or private account based on privacy preferences. [052] The methodology described makes it possible to intensify the security of the account / data of several mobile computing devices. The private account balance can be committed based on a commitment scheme. As such, the private account balance can be checked against the commitment without revealing the actual account balance. The amount of the transaction made to or from a private account can also be confirmed based on the commitment scheme to update the special account after the transaction, without revealing the actual amount transferred. In this way, greater control over the security of private account transactions is provided. [053] The methodology described can guarantee the efficient use of computer resources (for example, the processing cycles, network bandwidth and memory utilization), by efficiently updating the blockchain. Account operations can be performed more quickly and securely through simpler consensus processes. [054] The achievements and operations described in this specification can be implemented in digital electronic circuits, or in computer software, firmware or hardware, including the structures described in the present invention or in combinations of one or more of them. Operations can be Petition 870190058526, dated 06/25/2019, p. 25/40 18/22 implemented as operations performed by a data processing device on data stored on one or more storage devices that are readable by computer or received from other sources. A data processing device, computer or computing device (120) can encompass data processing apparatus, devices and machines, including, for example, a programmable processor, a computer, a system on a chip or various, or combinations of the above. The device may include logic circuits for special purposes, for example, a central processing unit (CPU), an FPGA (Field Programmable Gate Array) or an application-specific integrated circuit (ASIC). The device may also include code that creates an execution environment for the computer program in question, for example, the code that constitutes the processor firmware, a protocol stack, a database management system, an operating system ( for example, an operating system or a combination of operating systems), a runtime environment between platforms, a virtual machine, or a combination of one or more of them. The device and the execution environment can carry out different infrastructures of different computing models, such as Web services, distributed computing and grid computing infrastructures. [055] A computer program (also known, for example, as a program, software, software application, software module, software unit, script or code) can be written in any form of programming language, including languages compiled or interpreted, declarative or procedural languages, and can be deployed in any way, including as an independent program or as a module, component, subroutine, object or other unit suitable for use in a computing environment. A program can be stored Petition 870190058526, dated 06/25/2019, p. 26/40 19/22 in a part of a file that contains other programs or data (for example, one or more scripts stored in a markup language document), in a single file dedicated to the program in question or in several coordinated files (for example , files that store one or more modules, subprograms or parts of the code). A computer program can be run on one computer or on several computers located on one site or distributed on several sites and interconnected by a communication network. [056] Processors for running a computer program include, for example, microprocessors for general and special purposes, and any one or more processors for any type of digital computer. In general, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor to perform actions according to instructions and one or more memory devices to store instructions and data. In general, a computer will also include, or be operationally attached to receive data or transfer data, or both, to one or more mass storage devices for data storage. A computer can be incorporated into another device, for example, a mobile device, a personal digital assistant (PDA), a game console, a Global Positioning System (GPS) receiver or a portable storage device. Suitable devices for storing computer program instructions and data include non-volatile memory, media and memory devices, including, for example, semiconductor memory devices, magnetic disks and magneto-optical disks. The processor and memory can be supplemented by, or incorporated into special purpose logic circuits. Petition 870190058526, dated 06/25/2019, p. 27/40 20/22 [057] Mobile devices may include cell phones, user equipment (EU), mobile phones (for example, smartphones), tablets, wearable devices (for example, smart watches and smart glasses), implanted devices inside the human body (for example, cochlear implant biosensors) or other types of mobile devices. Mobile devices can communicate wirelessly (for example, using radio frequency (RF) signals) for various communication networks (described below). Mobile devices can include sensors to determine the characteristics of the mobile device’s current environment. The sensors can include cameras, microphones, proximity sensors, GPS sensors, motion sensors, accelerometers, ambient light sensors, humidity sensors, gyroscopes, compasses, barometers, fingerprint sensors, facial recognition systems, RF sensors (e.g. Wi-Fi and cellular radios), thermal sensors, or other types of sensors. For example, cameras can include a forward or backward-facing camera with movable or fixed lenses, a flash, an image sensor and an image processor. The camera can be a megapixel camera capable of capturing details for facial and / or iris recognition. The camera, in conjunction with a data processor and authentication information stored in memory or accessed remotely, can form a facial recognition system. The facial recognition system or one or more sensors, for example, microphones, motion sensors, accelerometers, GPS sensors or RF sensors, can be used for user authentication. [058] To provide interaction with a user, achievements can be implemented on a computer that has a display device and an input device, for example, a liquid crystal display (LCD) or organic light-emitting diode (OLED) ) / virtual reality (VR) / augmented reality (AR) display to display information to the user and a Petition 870190058526, dated 06/25/2019, p. 28/40 21/22 touch screen, keyboard and a pointing device by which the user can provide input to the computer. Other types of devices can also be used to provide interaction with a user; for example, the feedback provided to the user can be any form of sensory feedback, for example, visual feedback, auditory feedback or tactile feedback; and user input can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents and receiving documents from a device used by the user; for example, by sending web pages to a web browser on a user’s client device in response to requests received from the web browser. [059] The realizations of the present invention can be realized using the computing devices interconnected by any form or means of digital data communication wired or wireless (or combination thereof), for example, a communication network. Examples of interconnected devices are a client and a server, in general, remote from each other that normally interact through a communication network. A customer, for example, a mobile device, can carry out transactions itself, with a server or through a server, for example, carrying out the purchase, sale, payment, delivery, shipping or loan transactions, or authorizing the same. Such transactions can be in real time, so that an action and a response are temporarily close; for example, an individual perceives the action and the response occurring substantially simultaneously, the time difference for a response after the individual's action is less than 1 millisecond (ms) or less than 1 second (s), or the response is without delay intentional taking into account the processing limitations of the system account. [060] Examples of communication networks include a local area network (LAN), a radio access network (RAN), an area network Petition 870190058526, dated 06/25/2019, p. 29/40 22/22 metropolitan area (MAN) and a wide area network (WAN). The communication network can include all or part of the Internet, another communication network or a combination of communication networks. Information can be transmitted on the communication network according to several protocols and standards, including Long Term Evolution (LTE), 5G, IEEE 802, Internet Protocol (IP) or other protocols or combinations of protocols. The communication network can transmit voice, video, biometric or authentication data or other information between connected computing devices. [061] The features described as separate realizations can be implemented, in combination, in a single realization, while the features described as a single realization can be implemented in multiple realizations, separately or in any suitable subcombination. The operations described and claimed in a specific order are not to be understood as requiring that specific order, nor that all illustrated operations are performed (some operations may be optional). As appropriate, multitasking or parallel processing (or a combination of multitasking and parallel processing) can be performed.
权利要求:
Claims (9) [1] Claims 1. METHOD (600) IMPLEMENTED BY COMPUTER TO VALIDATE BLOCKCHAIN TRANSACTIONS BASED ON ACCOUNT MODELS, characterized by the fact that it comprises the steps of: - receive (602), by a consensus node (214) from a blockchain network (102, 212), the transaction data and a digital signature of the transaction data, where the transaction data includes a commitment value, a random number and a transaction amount to be transferred between a public account or a private account of the user's first node between a public account or a private account of a second user's node and where the digital signature is generated by digitally signing the data of the transaction using a private key from the user's first node and the commitment amount is generated based on the random number and the transaction amount using a commitment scheme; - verify (604) the digital signature of the transaction data using a public key from the user's first node; and - determine (606) that the transaction amount is valid, if the commitment amount is correct based on the random number and the commitment scheme, and the transaction amount is less than or equal to a balance between the public account or the account the user's first node before transferring the transaction amount. [2] 2. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 1, characterized by the fact that the public account has a public balance visible by the consensus node (214) and the private account has a private balance visible using a private key respective user node. [3] 3. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 1, characterized by the fact that the amount of Petition 870190058526, dated 06/25/2019, p. 31/40 2/3 transaction is from a public account associated with the first user node to a private account associated with the second user node. [4] 4. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 1, characterized by the fact that the transaction amount is from the private account of the first user node to the public account of the second user node and the method ( 600) further comprising: - receive a proof of reach from the user's first node to prove that the transaction amount is less than or equal to a balance in the private account of the user's first node; and - where the transfer is determined to be valid, if the transaction amount is less than or equal to the private account balance of the user's first node based on proof of reach. [5] 5. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 2, characterized by the fact that it still comprises the update of the public account or private account balance of the first user node, and the balance of the public account or account second user's private node based on the transaction amount, if the transfer is valid. [6] 6. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 5, characterized by the fact that the balance of the private account is updated based on the commitment amount of the transaction amount and a commitment on the balance of the private account generated using the commitment scheme. [7] 7. METHOD (600) IMPLEMENTED BY COMPUTER, according to claim 1, characterized by the fact that the commitment scheme is homomorphic. [8] 8. LEGIBLE MEDIA BY COMPUTER, non-transitory, coupled to one or more processors, characterized by the fact that it has the instructions stored in it that, when executed by one or more Petition 870190058526, dated 06/25/2019, p. 32/40 3/3 processors, cause one or more processors to perform operations according to method (600), as defined in any one of claims 1 to 7. [9] 9. SYSTEM (106, 108), characterized by the fact that it comprises: a computing device (120); and a computer-readable storage device coupled to the computing device (120) and which has instructions stored on it that, when executed by the computing device (120), cause the computing device (120) to perform operations in accordance with the method (600), as defined in any one of claims 1 to 7.
类似技术:
公开号 | 公开日 | 专利标题 BR112019008171A2|2019-09-10|computer-implemented method for validating blockchain transactions based on account templates, computer readable storage media, and system BR112019008148B1|2021-08-10|METHOD IMPLEMENTED BY COMPUTER AND SYSTEM FOR IMPLEMENTING A METHOD BR112019008160B1|2021-08-24|COMPUTER IMPLEMENTED METHOD EXECUTED BY A CONSENSUS NODE OF A BLOCK CHAIN NETWORK, COMPUTER-READABLE STORAGE MEDIA, AND SYSTEM TO IMPLEMENT A METHOD ES2876926T3|2021-11-15|Blockchain data protection using homomorphic encryption US10805088B2|2020-10-13|Cross-blockchain authentication method, apparatus, and electronic device KR20200079219A|2020-07-02|Blockchain data protection based on general account model and homogeneous encryption BR112019014629A2|2021-07-20|computer implemented method, computer readable storage medium and system KR20200054132A|2020-05-19|Management of private transactions on the blockchain network based on workflow BR112019008154A2|2019-09-10|computer-implemented method, computer-readable storage medium, and system US11108571B2|2021-08-31|Managing communications among consensus nodes and client nodes BR112019008140B1|2021-11-30|COMPUTER-IMPLEMENTED METHOD, COMPUTER-READABLE STORAGE MEDIA AND SYSTEM FOR IMPLEMENTING A METHOD
同族专利:
公开号 | 公开日 SG11201903563WA|2019-05-30| MX2019004672A|2019-08-21| JP6830530B2|2021-02-17| KR102151894B1|2020-09-03| WO2019072265A3|2019-08-22| EP3542332A2|2019-09-25| JP2020501406A|2020-01-16| CN110326013A|2019-10-11| EP3542332A4|2020-01-22| CA3041157A1|2019-04-18| CA3041157C|2020-09-08| WO2019072265A2|2019-04-18| US20190244195A1|2019-08-08| PH12019500893A1|2019-11-25| AU2018348318B2|2020-05-21| KR20200054124A|2020-05-19| RU2727552C1|2020-07-22|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 US7434726B2|2006-05-15|2008-10-14|Pitney Bowes Inc.|Method and system for postdating of financial transactions| US8296568B2|2009-10-27|2012-10-23|Google Inc.|Systems and methods for authenticating an electronic transaction| SG183988A1|2010-04-09|2012-10-30|Visa Int Service Ass|System and method for securely validating transactions| US20170061398A1|2014-06-19|2017-03-02|Jim Austin Joseph|Cryptographic currency block chain based voting system| US11080701B2|2015-07-02|2021-08-03|Royal Bank Of Canada|Secure processing of electronic payments| EP3767878A1|2015-03-27|2021-01-20|Black Gold Coin, Inc.|A system and a method for personal identification and verification| WO2016200885A1|2015-06-08|2016-12-15|Blockstream Corporation|Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction| WO2017207717A1|2016-06-01|2017-12-07|Brand New Ideas B.V.|Validating blockchain transactions regarding real money| CN106911470B|2017-01-23|2020-07-07|北京航空航天大学|Bit currency transaction privacy enhancement method| CN106910072A|2017-02-15|2017-06-30|捷德(中国)信息科技有限公司|Digital cash management method and system| KR20180113146A|2017-04-05|2018-10-15|삼성에스디에스 주식회사|Method for charging electronic money automatically based on blockchain and system thereof| US10102265B1|2017-04-12|2018-10-16|Vijay K. Madisetti|Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing| WO2019109003A1|2017-11-30|2019-06-06|Visa International Service Association|Blockchain system for confidential and anonymous smart contracts| CN108335103B|2017-12-28|2021-06-11|中国人民银行数字货币研究所|Deduction method and system based on digital currency| CN108389046B|2018-02-07|2020-08-28|西安交通大学|Privacy protection transaction method based on block chain technology in electronic commerce| CN108764874B|2018-05-17|2021-09-07|深圳前海微众银行股份有限公司|Anonymous transfer method, system and storage medium based on block chain|CN111768304A|2018-08-06|2020-10-13|阿里巴巴集团控股有限公司|Block chain transaction method and device and electronic equipment| EP3745637B1|2018-11-27|2021-06-09|Advanced New Technologies Co., Ltd.|System and method for information protection| RU2719311C1|2018-11-27|2020-04-17|Алибаба Груп Холдинг Лимитед|Information protection system and method| KR102150814B1|2018-11-27|2020-09-02|알리바바 그룹 홀딩 리미티드|Systems and methods for information protection| US10700850B2|2018-11-27|2020-06-30|Alibaba Group Holding Limited|System and method for information protection| SG11201903419WA|2018-11-27|2019-05-30|Alibaba Group Holding Ltd|System and method for information protection| RU2719423C1|2018-11-27|2020-04-17|Алибаба Груп Холдинг Лимитед|Information protection system and method| CN110084600B|2019-04-29|2021-08-27|百度在线网络技术(北京)有限公司|Processing and verifying method, device, equipment and medium for resolution transaction request| US10536537B1|2019-06-13|2020-01-14|Accenture Global Solutions Limited|Multi-source deterministic oracle management| US10790990B2|2019-06-26|2020-09-29|Alibaba Group Holding Limited|Ring signature-based anonymous transaction| CN111538757B|2020-04-13|2022-02-11|支付宝信息技术有限公司|Data storage method, query method, device, server and medium| CN113505138B|2021-09-06|2021-12-21|支付宝信息技术有限公司|Method and apparatus for state attestation and execution of blocks in a blockchain system| CN113570373B|2021-09-23|2022-02-11|北京理工大学|Responsibility pursuing transaction method and system based on block chain|
法律状态:
2021-01-19| B25A| Requested transfer of rights approved|Owner name: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD. (KY) | 2021-02-09| B25A| Requested transfer of rights approved|Owner name: ADVANCED NEW TECHNOLOGIES CO., LTD. (KY) | 2021-09-08| B07A| Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]| 2021-10-05| B350| Update of information on the portal [chapter 15.35 patent gazette]| 2022-02-01| B09B| Patent application refused [chapter 9.2 patent gazette]|
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 PCT/CN2018/114401|WO2019072265A2|2018-11-07|2018-11-07|Blockchain system supporting public and private transactions under account models| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|