# US 12,007,972 B2 · Systems and methods for processing blockchain transactions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,007,972 B2
- Document ID: US12007972B2
- Status: Granted
- Kind: B2
- Application number: 17/844,012
- Filed: 2022-06-19
- Published: 2022-12-22
- Granted: 2024-06-11
- Earliest claimed: 2021-06-19
- Assignees: Inveniam Capital Partners, Inc.
- Applicants: Inveniam Capital Partners, Inc.
- Inventors: Paul Snow
- Web page: https://patentgrep.com/patent/US12007972B2

## CPC

- G06F 16/2255: {Hash tables}
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A blockchain system organized around digital identities and their accounts. Each account is treated as an independent blockchain and managed as a continuously growing Stateful Merkle Tree, while the blocks are treated as temporal synchronization points for all the chains in the system. Indexing of transactions in each block allows the system to operate at more than one synchronization level (frequency).

## Claims

### Claim 1

A blockchain system comprising:
a hardware processor; and
a memory device storing instructions that, when executed by the hardware processor, generate a blockchain organized as a merkle tree having a continuously increasing number of leaves, the merkle tree spanning a plurality of consecutive temporal blocks of a predetermined duration,
wherein an end of each consecutive temporal block of the plurality of consecutive temporal blocks constitutes a corresponding reference point, and
wherein a first plurality of roots of non-overlapping subtrees of the merkle tree summarizes a cumulative state of the blockchain at a particular temporal block's reference point, and
wherein the first plurality of roots differs from a second plurality of roots of non-overlapping subtrees of the merkle tree that summarizes a cumulative state of the blockchain at an earlier block's reference point.

### Claim 2 (depends on 1)

The blockchain system of claim 1, wherein a root of the first plurality of roots is also a member of the second plurality of roots of non-overlapping subtrees of the merkle tree.

### Claim 3 (depends on 2)

The blockchain system of claim 2, wherein the earlier temporal block immediately precedes the particular temporal block whose state is summarized by the first plurality of roots.

### Claim 4 (depends on 1)

The blockchain system of claim 1, wherein all of the temporal blocks of the plurality of temporal blocks have an equal duration.

### Claim 5 (depends on 1)

The blockchain system of claim 1, wherein at least two temporal blocks of the plurality of temporal blocks have an unequal duration.

### Claim 6 (depends on 1)

The blockchain system of claim 1, wherein the first plurality of roots differs from the second plurality of roots in a number of roots.

### Claim 7

A memory device storing instructions that, when executed by a hardware processor, cause the hardware processor to generate a blockchain organized as a merkle tree having a continuously increasing number of leaves, the merkle tree spanning a plurality of consecutive temporal blocks of a predetermined duration,
wherein an end of each consecutive temporal block of the plurality of consecutive temporal blocks constitutes a corresponding reference point, and
wherein a first plurality of roots of non-overlapping subtrees of the merkle tree summarizes a cumulative state of the blockchain at a particular temporal block's reference point, and
wherein the first plurality of roots differs from a second plurality of roots of non-overlapping subtrees of the merkle tree that summarizes a cumulative state of the blockchain at an earlier block's reference point.

### Claim 8 (depends on 7)

The memory device of claim 7, wherein a root of the first plurality of roots is also a member of the second plurality of roots of non-overlapping subtrees of the merkle tree.

### Claim 9 (depends on 8)

The memory device of claim 8, wherein the earlier temporal block immediately precedes the particular temporal block whose state is summarized by the first plurality of roots.

### Claim 10 (depends on 7)

The memory device of claim 7, wherein all of the temporal blocks of the plurality of temporal blocks have an equal duration.

### Claim 11 (depends on 7)

The memory device of claim 7, wherein at least two temporal blocks of the plurality of temporal blocks have an unequal duration.

### Claim 12 (depends on 7)

The memory device of claim 7, wherein the first plurality of roots differs from the second plurality of roots in a number of roots.

### Claim 13

A method of generating a blockchain, the method comprising the steps of:
receiving, on a continuous basis, hashes representing blockchain transactions;
appending the received hashes in an order of arrival as leaves of a continuously growing merkle tree;
receiving a plurality of temporal reference points over a period of time; and
upon receipt of each temporal reference point, deriving a separate plurality of roots of non-overlapping subtrees of the merkle tree,
wherein each derived plurality of roots of non-overlapping subtrees of the merkle tree creates a respective proof of a cumulative state of the blockchain at the corresponding temporal reference point,
wherein a first plurality of roots, of the derived pluralities of roots, differs from a second plurality of roots, of the derived plurality of roots, and
wherein the second plurality of roots is derived before the first plurality of roots.

### Claim 14 (depends on 13)

The method of claim 13, wherein two successive temporal reference points define a blockchain block.

### Claim 15 (depends on 13)

The method of claim 13, wherein a root of a first plurality of roots corresponding to a first temporal reference point is also a member of the second plurality of roots corresponding to a second temporal reference point.

### Claim 16 (depends on 15)

The method of claim 15, wherein the second received temporal reference point immediately precedes the first received temporal reference point.

### Claim 17 (depends on 13)

The method of claim 13, wherein the temporal reference points are received at a constant frequency.

### Claim 18 (depends on 13)

The method of claim 13, wherein the temporal reference points are received at a variable frequency.

### Claim 19 (depends on 13)

The method of claim 13, wherein the first plurality of roots differs from the second plurality of roots in a number of roots.
