Contextual iot with blockchain
US-2021056501-A1 · Feb 25, 2021 · US
US2022100733A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2022100733-A1 |
| Application number | US-202017035912-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 29, 2020 |
| Priority date | Sep 29, 2020 |
| Publication date | Mar 31, 2022 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A processor may endorse the group of transactions received from one or more clients. The processor may provide a read-set and a write-set for each transaction of the group of transactions. The processor may order the group of transactions at an ordering service. The ordering service may have a group of orderers and may order the group of transactions. The order of the transactions may be based on the read-set and the write-set of each transaction. The processor may commit the group of transactions to the blockchain.
Opening claim text (preview).
What is claimed is: 1 . A method for ordering a group of transactions on a blockchain, the method comprising: endorsing, by a processor, the group of transactions received from one or more clients; generating a read-set and a write-set for each transaction of the group of transactions; ordering the group of transactions at an ordering service, wherein the ordering service, having a group of orderers, orders the group of transactions based on the read-set and the write-set of each transaction; and committing the group of transactions to the blockchain. 2 . The method of claim 1 , wherein ordering the group of transactions at the ordering service comprises: verifying each transaction of the group of transactions, wherein verifying each transaction includes inspecting each transaction for at least one necessary component. 3 . The method of claim 1 , wherein ordering the group of transactions at the ordering service comprises: identifying a precedence order within the group of transactions based on the read-set and the write-set of each transaction. 4 . The method of claim 3 , wherein ordering the group of transactions at the ordering service further comprises: determining a transaction schedule from the precedence order, wherein the transaction schedule includes a conflict-free transaction set and a rejected transaction set. 5 . The method of claim 4 , wherein each orderer of the group of orderers independently determines the transaction schedule from the precedence order. 6 . The method of claim 5 , wherein determining the transaction schedule further includes: analyzing each of the transaction schedules independently processed by each orderer of the group of orderers; and identifying whether a consensus on the transaction schedule has been reached. 7 . The method of claim 6 , wherein a consensus is a predetermined portion of orderers from the group of orderers agreeing on the conflict-free transaction set and the rejected transaction set. 8 . The method of claim 4 , further comprising: identifying a particular transaction is part of the rejected transaction set of the transaction schedule; and providing a rejection message to the one or more clients associated with the particular transaction. 9 . The method of claim 8 , wherein the rejection message includes a transaction identifier, a number of a reject transaction block were the rejected transaction set is recorded, and a hash of a new block. 10 . The method of claim 8 , wherein one or more orderers from the group of orderers, automatically send the one or more clients associated with the particular transaction the rejection message. 11 . The method of claim 8 , wherein a quorum of the group of orderers agree on rejecting the particular transaction as part of the rejected transaction set and the ordering service sends the one or more clients associated with the particular transaction the rejection message. 12 . The method of claim 1 , wherein the ordering service further includes a skeleton-key database configured to maintain an archive of keys and an archive of versions associated with the archive of keys, wherein the skeleton-key database is separate from a world-state database associated with the blockchain. 13 . The method of claim 12 , wherein a transaction schedule is based on the skeleton-key database and the read-set and the write-set of each transaction of the group of transactions. 14 . The method of claim 12 , wherein the ordering service is configured to determine if any transaction of the group of transactions at the ordering service conflicts with a previously committed transaction based on the skeleton-key database and the read-set and the write-set of each transaction of the group of transactions. 15 . The method of claim 1 , wherein ordering the group of transactions at the ordering service further comprises: cutting a valid transaction block having a transaction schedule, wherein the transaction schedule includes a conflict-free transaction set and a rejected transaction set; broadcasting the valid transaction block to a group of peers; generating a reject transaction block, wherein the reject transaction block includes the rejected transaction set; and committing the reject transaction block to a reject chain in the ordering service. 16 . The method of claim 15 , further comprising: generating a Merkle-tree of the rejected transaction set; identifying a block number of the valid transaction block; and including the Merkle-tree of the rejected transaction set and the block number of the valid transaction block in the reject transaction block. 17 . The method of claim 16 , further comprises: exposing an API to fetch the reject transaction block. 18 . The method of claim 15 , further comprising: generating a Merkle-tree from the rejected transaction set of the transaction schedule; organizing the Merkle-tree into a Merkle-root; and including the Merkle-root in the transaction schedule of the valid transaction block. 19 . A computer system for ordering a group of transactions on a blockchain, the computer system comprising: one or more computer processors; one or more computer readable storage media; computer program instructions; the computer program instructions being stored on the one or more computer readable storage media for execution by the one or more computer processors; and the computer program instructions including instructions to: endorse by a processor, the group of transactions received from one or more clients; generate a read-set and a write-set for each transaction of the group of transactions; order the group of transactions at an ordering service, wherein the ordering service, having a group of orderers, orders the group of transactions based on the read-set and the write-set of each transaction; and commit the group of transactions to the blockchain. 20 . A computer program product for ordering a group of transactions on a blockchain, the computer program product comprising one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions including instructions to: endorse by a processor, the group of transactions received from one or more clients; generate a read-set and a write-set for each transaction of the group of transactions; order the group of transactions at an ordering service, wherein the ordering service, having a group of orderers, orders the group of transactions based on the read-set and the write-set of each transaction; and commit the group of transactions to the blockchain.
Protecting data integrity, e.g. using checksums, certificates or signatures · CPC title
Ensuring data consistency and integrity · CPC title
Concurrency control, e.g. optimistic or pessimistic approaches · CPC title
using hash chains, e.g. blockchains or hash trees · CPC title
involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.