IP Library Granted Patent US 12,483,412
Granted Patent B1
US 12,483,412 · App. 18/623,758 · Granted Nov 25, 2025

System and method to shorten cryptographic proofs

Inventors: Jerónimo Irazábal (Buenos Aires, AR); Moshe Bar (Houston, TX); Dennis Zimmer (Kuessnacht am Rigi, CH)
Assignee: Codenotary Inc.
H04L9/3218H04L9/3242
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,483,412
App. No.
18/623,758
Granted
Nov 25, 2025
Kind
B1
Abstract

Disclosed herein are computer-implemented methods of, and computer systems for, constructing dual cryptographic proofs for transactions where transaction data is stored in a cryptographically-linked data file and in an incremental hash tree, where a dual cryptographic proof includes linear cryptographic proof data from the cryptographically-linked transaction file and binary cryptographic proof data from the incremental hash tree. The transaction may include one or more key-value pairs.

Claims (35)

1 . A computer-implemented method of adding data to a cryptographically-linked transaction data file, comprising:

under control of one or more computer systems configured with executable instructions and operatively coupled to a data store comprising a cryptographically-linked transaction data file, said cryptographically-linked transaction data file comprising a plurality of cryptographically-linked transaction records, said plurality comprising a first cryptographically-linked transaction record, and an incremental hash tree having a plurality of leaves, wherein each leaf corresponds to a different cryptographically-linked transaction record in the cryptographically-linked transaction file,

receiving transaction data, said transaction data comprising a plurality of key-value data pairs, for storage in the cryptographically-linked transaction data file;

computing a current transaction hash value corresponding to the plurality of key-value pairs;

computing a first transaction record hash value on metadata contained in the first cryptographically-linked transaction record;

constructing a current transaction record comprising the current transaction hash value, the first transaction record hash value, and key-value information corresponding to the plurality of key-value data pairs;

appending the current transaction record to the cryptographically-linked transaction data file;

creating a new transaction leaf for the incremental hash tree, said new transaction leaf corresponding to the current transaction record and comprising current transaction linking data and first transaction linking data; and

appending the new transaction leaf to the incremental hash tree.

2 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , whereby a dual cryptographic proof can be generated from data stored in the cryptographically-linked transaction data file and data stored in the incremental hash tree.

3 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 2 , whereby the dual cryptographic proof is shorter than a linear cryptographic proof can generated from data stored in the cryptographically-linked transaction data file.

4 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 2 , wherein the dual cryptographic proof comprises an inclusion proof or a consistency proof pertaining to the transaction data.

5 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , further comprising creating intermediate notes and recomputing the root hash value of the incremental hash tree.

6 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the current transaction linking data comprises the current transaction hash value.

7 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the first transaction linking data comprises the first transaction record hash value.

8 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein data components of the plurality of key-value data pairs are stored separately from the key components, and the key-value information corresponding to the plurality of key-value data pairs comprises location information for said value components.

9 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the incremental hash tree comprises a Merkle tree data structure.

10 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the incremental hash tree comprises a binary tree.

11 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the incremental hash tree is stored external to, outside, or separately from the cryptographically-linked transaction data file.

12 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the current transaction record further comprises cryptographic data from the incremental hash tree.

13 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the current transaction record further comprises a root hash value of the incremental hash tree.

14 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 1 , wherein the current transaction record further comprises first transaction leaf data corresponding to a first transaction leaf in the incremental hash tree.

15 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 14 , wherein the first transaction leaf was successfully inserted into the incremental hash tree before the new transaction leaf and the first transaction leaf data comprises location data for the first transaction leaf in the incremental hash tree or the root hash value of the incremental hash tree after insertion of the first transaction leaf.

16 . The computer-implemented method of adding data to a cryptographically-linked transaction data file of claim 15 , wherein the first transaction leaf data comprises location data for the first transaction leaf in the incremental hash tree and the root hash value of the incremental hash tree after insertion of the first transaction leaf.

17 . A computer system for storing cryptographically-linked transaction data, comprising:

a non-transitory data store comprising a cryptographically-linked transaction data file comprising a plurality of cryptographically-linked transaction records, and an incremental hash tree comprising a plurality of leaves, wherein each leaf corresponds to a different cryptographically-linked transaction record in the cryptographically-linked transaction file; and

a computer system operatively coupled to the non-transitory data store, wherein the computer system is programmed to:

receive transaction data comprising a plurality of key-value pairs;

construct a current transaction record comprising key-value information corresponding to the plurality of key-value pairs and first hash data linking the current transaction record to a previous transaction record, said previous transaction record having been previously stored in the cryptographically-linked transaction data file;

append the current transaction record to the cryptographically-linked transaction data file;

construct a new transaction leaf for the incremental hash tree, said new transaction leaf corresponding to the current transaction record; and

append the new transaction leaf to the incremental hash tree.

18 . The computer system for storing cryptographically-linked transaction data of claim 17 , wherein the new transaction leaf corresponding to the current transaction record comprises current transaction linking data and first transaction linking data.

19 . The computer system for storing cryptographically-linked transaction data of claim 17 , wherein the current transaction record further comprises hash data from the incremental hash tree.

20 . The computer system for storing cryptographically-linked transaction data of claim 17 , wherein the computer system is further programmed to generate a dual cryptographic proof from data stored in the cryptographically-linked transaction data file and data stored in the incremental hash tree.

Continuity (2)
Continuation 17508916 · Oct 22, 2021
Provisional Application 63116847 · Nov 21, 2020
References Cited (8)
US 12309257B2 · Covaci · 2025 [cited by examiner]
US 20050114666A1 · Sudia · 2005 [cited by examiner]
US 20180006820A1 · Arasu · 2018 [cited by examiner]
US 20190349426A1 · Smith · 2019 [cited by examiner]
US 20200021446A1 · Roennow · 2020 [cited by examiner]
US 20200052886A1 · Buldas · 2020 [cited by examiner]
US 20200073962A1 · Natarajan · 2020 [cited by examiner]
US 20210152364A1 · Beecham · 2021 [cited by examiner]