Auditing certified blockchain checkpoints

US10460289B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10460289-B2
Application numberUS-201715422980-A
CountryUS
Kind codeB2
Filing dateFeb 2, 2017
Priority dateNov 30, 2016
Publication dateOct 29, 2019
Grant dateOct 29, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A certified checkpoint is provided for a ledger comprising a blockchain and a world state. The certified checkpoint enables a third party to recognize and verify that the ledger has integrity, a known starting state, and immutability properties starting at a specific point in time. Certification means that all of the validating peers reached consensus on the state of the ledger at that point in time. Thus, the certified checkpoint state represents an agreed-upon state, and that one or more subsequent operations on the ledger are relative to that agreed-upon state. Preferably, before a checkpoint is certified, it must be consistent, meaning that all validating peers have reached the same value for the checkpoint. Preferably, the checkpoint is a compression of the current blockchain world state into a compact representation (e.g., a hash) of the ledger that based on an agreed-upon consensus protocol is consistent across the (validating) peers. A technique to certify a blockchain checkpoint also is described.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method of certifying a checkpoint of a blockchain in a peer-to-peer distributed network having a set of computing entities, the method carried out at a computing entity of the set of computing entities, comprising: starting from known position in the blockchain, retrieving a world state associated with the known position; upon validating a compact representation of the world state associated with the known position, re-running against the world state a set of transactions that are represented in the blockchain and that occurred between the known position and the checkpoint to generate an updated world state, wherein re-running the set of transactions including validating a hash on each block in the blockchain between the known position and the checkpoint; and determining whether a compact representation associated with the updated world state matches a compact representation of the checkpoint being certified; and upon a determination that the compact representation associated with the updated world state matches the compact representation of the checkpoint being certified, providing an attestation that the updated world state is a certified checkpoint in the blockchain; wherein the operations are carried out in software executing in a hardware processor. 2. The method as described in claim 1 wherein the known position is one of: a genesis block in the blockchain, and a last previously-certified checkpoint. 3. The method as described in claim 1 wherein re-running the set of transactions comprises processing all transactions in each block of the blockchain, block-by-block, beginning with a first block following the known position until the checkpoint being certified has been reached. 4. The method as described in claim 1 , wherein the compact representation is a hash, and wherein the method further includes validating the hash associated with each block of the blockchain located between the known position and the checkpoint being certified. 5. The method as described in claim 1 further including validating one or more signatures associated with one or more transactions recorded in one or more blocks of the blockchain. 6. The method as described in claim 1 further including saving the compact representation associated with the updated world state as a transaction in a next block of the blockchain to be written. 7. The method as described in claim 1 wherein the computing entity is independent of a subset of computing entities that submit transactions to the blockchain. 8. The method as described in claim 1 wherein the computing entity is a designated attestation authority or one of a set of authorities that use distributed consensus to reach the attestation. 9. An apparatus, comprising: a processor; and computer memory holding computer program instructions executed by the processor and configured to certify a checkpoint of a blockchain in a peer-to-peer distributed network having a set of computing entities, the apparatus being a computing entity of the set of computing entities, the computer program instructions comprising program code configured: to retrieve a world state associated with a known position in the blockchain; upon validating a compact representation of the world state associated with the known position, to re-run against the world state a set of transactions that are represented in the blockchain and that occurred between the known position and the checkpoint to generate an updated world state, wherein re-running the set of transactions including validating a hash on each block in the blockchain between the known position and the checkpoint; to determine whether a compact representation associated with the updated world state matches a compact representation of the checkpoint being certified; and upon a determination that the compact representation associated with the updated world state matches the compact representation of the checkpoint being certified, to provide an attestation that the updated world state is a certified checkpoint in the blockchain. 10. The apparatus as described in claim 9 wherein the known position is one of: a genesis block in the blockchain, and a last previously-certified checkpoint. 11. The apparatus as described in claim 9 wherein the program code configured to re-run the set of transactions comprises program code to process all transactions in each block of the blockchain, block-by-block, beginning with a first block following the known position until the checkpoint being certified has been reached. 12. The apparatus as described in claim 9 , wherein the compact representation is a hash, and wherein the apparatus further includes program code configured to validate the hash associated with each block of the blockchain located between the known position and the checkpoint being certified. 13. The apparatus as described in claim 9 further including program code to validate one or more signatures associated with one or more transactions recorded in one or more blocks of the blockchain. 14. The apparatus as described in claim 9 further including program code to save the compact representation associated with the updated world state as a transaction in a next block of the blockchain to be written. 15. The apparatus as described in claim 9 wherein the computing entity is independent of a subset of computing entities that submit transactions to the blockchain. 16. The apparatus as described in claim 9 wherein the computing entity is a designated attestation authority or one of a set of authorities that use distributed consensus to reach the attestation. 17. A computer program product in a non-transitory computer readable medium for use in a data processing system, the computer program product holding computer program instructions which, when executed by the data processing system, are configured to certify a checkpoint of a blockchain in a peer-to-peer distributed network having a set of computing entities, the data processing system being a computing entity of the set of computing entities, the computer program instructions comprising program code configured: to retrieve a world state associated with a known position in the blockchain; upon validating a compact representation of the world state associated with the known position, to re-run against the world state a set of transactions that are represented in the blockchain and that occurred between the known position and the checkpoint to generate an updated world state, wherein re-running the set of transactions including validating a hash on each block in the blockchain between the known position and the checkpoint; to determine whether a compact representation associated with the updated world state matches a compact representation of the checkpoint being certified; and upon a determination that the compact representation associated with the updated world state matches the compact representation of the checkpoint being certified, to provide an attestation that the updated world state is a certified checkpoint in the blockchain. 18. The computer program product as described in claim 17 wherein the known position is one of: a genesis block in the blockchain, and a last previously-certified checkpoint. 19. The computer program product as described in claim 17 wherein the program code configured to re-run the set of transactions comprises program code to process all transactions in each block of the blockchain, block-by-block, beginning with a first block following the known position until the checkpoint

Assignees

Inventors

Classifications

  • Peer-to-peer [P2P] networks · CPC title

  • involving time stamps, e.g. generation of time stamps · CPC title

  • using cryptographic hash functions · CPC title

  • Use of message hashing · CPC title

  • G06Q10/10Primary

    Office automation; Time management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10460289B2 cover?
A certified checkpoint is provided for a ledger comprising a blockchain and a world state. The certified checkpoint enables a third party to recognize and verify that the ledger has integrity, a known starting state, and immutability properties starting at a specific point in time. Certification means that all of the validating peers reached consensus on the state of the ledger at that point in…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06Q10/10. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 29 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).