# US 12,182,107 B2 · Systems and methods for writing updates to and/or reading previously stored updates of assets implemented as smart contracts on a decentralized database

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

- Number: US 12,182,107 B2
- Document ID: US12182107B2
- Status: Granted
- Kind: B2
- Application number: 18/336,570
- Filed: 2023-06-16
- Published: 2023-10-19
- Granted: 2024-12-31
- Earliest claimed: 2019-09-23
- Assignees: Trace Labs LLC
- Applicants: Trace Labs LLC
- Inventors: Paul Lintilhac; Joshua Decatur; Paul Oostenrijk; Laura Seach
- Web page: https://patentgrep.com/patent/US12182107B2

## CPC

- G06F 16/2379: {Updates performed during online database operations; commit processing}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- G06F 16/137: {Hash-based (content-based indexing of textual data G06F16/31)}
- G06F 16/168: {Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs (query results presentation G06F16/156)}
- G06F 16/1834: {implemented based on peer-to-peer networks, e.g. gnutella (p2p communication protocols H04L67/104)}
- G06F 16/219: {Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477)}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- H04L 9/0637: {Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]}
- H04L 9/3247: {involving digital signatures}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L 63/12: {Applying verification of the received information (cryptographic mechanisms or cryptographic arrangements for data integrity or data verification H04L9/32)}
- G06F 2221/2141: Access rights, e.g. capability lists, access control lists, access tables, access matrices
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods for writing updates to and/or reading previously stored updates of assets that are implemented as smart contracts on a decentralized database are disclosed. Exemplary implementations may: receive a first request, from a first client computing device associated with a first user, to write a first update to an individual asset, or to read one or more previously stored updates; transfer the first request to the decentralized database; responsive to transferring the first request, receive the first reference from the decentralized database; generate a second file and a second reference; store the second file on the content-addressable file system; and record the second reference in the state of the individual asset on the decentralized database.

## Claims

### Claim 1

A system configured to modify assets that are stored, at least in part, on a decentralized database that implements a blockchain, wherein at least part of some of the assets is stored on a file system that is distinct and separate from the blockchain, the system comprising:
one or more hardware processors configured by machine-readable instructions to:
store an individual asset that has a state, wherein the state includes a first part of the state and a second part of the state, wherein the first part of the state of the individual asset is stored on the blockchain, and wherein the second part of the state of the individual asset is stored on the file system;
receive a write request, from a first client computing device associated with a user, to modify the state of the individual asset as previously stored;
responsive to receiving the write request, access the blockchain to obtain first information pertaining to the second part of the state of the individual asset as currently stored;
responsive to receiving the write request, obtain, from the blockchain, the first information pertaining to the second part of the state of the individual asset as currently stored, wherein the first information includes a first reference to a first file, wherein the first file is stored on the file system;
responsive to receiving the write request, generate a second file and a second reference to the second file, wherein contents of the second file is based on the write request, and wherein the second file will be stored on the file system;
store the second file on the file system; and
record, on the blockchain, the second reference in the first part of the state of the individual asset.

### Claim 2 (depends on 1)

The system of claim 1, wherein the file system supports content-addressable files, wherein the first file is a first content-addressable file, and wherein the second file is a second content-addressable file.

### Claim 3 (depends on 2)

The system of claim 2, wherein the first reference includes a first hash value that is generated by hashing some or all of the first file, and wherein the second reference includes a second hash value that is generated by hashing some or all of the second file.

### Claim 4 (depends on 1)

The system of claim 1, wherein the first information is the first reference.

### Claim 5 (depends on 1)

The system of claim 1, wherein the individual asset is implemented using one or more smart contracts on the blockchain.

### Claim 6 (depends on 1)

The system of claim 1, wherein an address of the first file on the file system includes a particular hash value that is generated by hashing some contents of the first file or all of the contents of the first file.

### Claim 7 (depends on 1)

The system of claim 1, wherein the contents of the second file is based on contents of the first file.

### Claim 8 (depends on 1)

The system of claim 1, wherein the file system is the Inter-Planetary File System.

### Claim 9 (depends on 1)

The system of claim 1, wherein the contents of the second file include a device identifier that identifies the first client computing device and a digital signature that is based on a user-specific cryptographic key, wherein the user-specific cryptographic key is associated with a user account of the user, and wherein recording the second reference includes verifying whether the first client computing device has permission for recording the second reference.

### Claim 10 (depends on 1)

The system of claim 1, wherein a combination of (i) all or some contents of the first file, and (ii) all or some of the contents of the second file forms the second part of the state of the individual asset that is stored on the file system.

### Claim 11

A method of modifying assets that are stored, at least in part, on a decentralized database that implements a blockchain, wherein at least part of some of the assets is stored on a file system that is distinct and separate from the blockchain, the method comprising:
storing an individual asset that has a state, wherein the state includes a first part of the state and a second part of the state, wherein the first part of the state of the individual asset is stored on the blockchain, and wherein the second part of the state of the individual asset is stored on the file system;
receiving a write request, from a first client computing device associated with a user, to modify the state of the individual asset as previously stored;
responsive to receiving the write request, accessing the blockchain to obtain first information pertaining to the second part of the state of the individual asset as currently stored;
responsive to receiving the write request, obtaining, from the blockchain, the first information pertaining to the second part of the state of the individual asset as currently stored, wherein the first information includes a first reference to a first file, wherein the first file is stored on the file system;
responsive to receiving the write request, generating a second file and a second reference to the second file, wherein contents of the second file is based on the write request, wherein the second file will be stored on the file system;
storing the second file on the file system; and
recording the second reference in the first part of the state of the individual asset on the blockchain.
