IP Library › Granted Patent US 12,417,256
Granted Patent B2
US 12,417,256 · App. 18/567,716 · Granted Sep 16, 2025

Computer implemented method and system of maintaining a status of a stream on a blockchain

Inventor: Ricky Charles Rand (London, GB)
Assignee: nChain Licensing AG
G06F17/40G06F21/64H04L9/50H04L2209/56
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,417,256
App. No.
18/567,716
Granted
Sep 16, 2025
Kind
B2
Abstract

The present disclosure relates to a computer implemented method of maintaining a status of a stream on a blockchain. The method includes, receiving a create stream message, the create stream message comprising an indication of at least one trigger condition. Then, based on a trigger condition being met, the method includes obtaining data indicative of a state of the stream, and generating an append transaction comprising the data indicative of the state of the stream.

Claims (59)

1. A computer implemented method of maintaining a status of a stream on a blockchain comprising the steps:

receiving a create stream message, the create stream message comprising an indication of at least one trigger condition,

based on a trigger condition being met, performing the steps of:

obtaining data indicative of a state of the stream, and

generating an append transaction comprising the data indicative of the state of the stream.

2. The method of claim 1 , the method comprising, after generating the append transaction:

arranging for the append transaction to be broadcast to the blockchain; and/or

monitoring re-occurrence of the trigger condition.

3. The method of claim 1 , further comprising the step of:

generating and broadcasting an initial transaction comprising at least data based on the indication of the trigger condition.

4. The method of claim 3 , wherein:

the data based on the indication of the trigger condition is stored on an output of the initial transaction; and/or

the append transaction comprises an input that spends an output of the initial transaction.

5. The method of claim 1 , wherein:

the append transaction comprises an input that spends an output of an append transaction previously submitted to the blockchain; and/or

the data indicative of the state of the stream is stored on an output of the append transaction.

6. The method of claim 1 , wherein the trigger condition is based on any one or more of:

reception of a message indicating the stream is finalised,

an elapsed time,

a comparison of an elapsed time and a threshold time, and/or

a comparison of a number of events received and a threshold number of events.

7. The method of claim 6 , wherein:

the elapsed time is based on the time since a preceding trigger condition was met and/or the time since the create message was received, and/or

the create message further comprises the threshold time.

8. The method of claim 6 , wherein:

the number of events received is based on the number of events received since a preceding trigger condition was met and/or a number of events received since the create message was received; and/or

the create message comprises the threshold number of events.

9. The method of claim 6 , wherein:

the threshold number of events is 1;

the threshold number of events is greater than 1;

the trigger condition is based only on the comparison of the elapsed time and the threshold time; and/or

the trigger condition is based only on the comparison of the number of events received and the threshold number of events.

10. The method of claim 1 , wherein the state of the stream comprises a hash of a preimage of a latest event of the stream and optionally the state of the stream comprises the preimage of the latest event of the stream.

11. The method according to claim 10 , wherein the state of the stream comprises data indicative of a data of the latest event of the stream, and optionally wherein the data indicative of the data of the latest event of the stream comprises a hash of the data of the latest event of the stream, and optionally wherein the data indicative of a data of the latest event of the stream is the data of the latest event of the stream.

12. The method of claim 1 , wherein the create stream message comprises an indication of a format of the data indicative of a state of the stream.

13. The method of claim 1 , further comprising the step of:

updating an off-chain database with metadata of the append transaction.

14. The method of claim 13 , wherein:

the metadata is used to identify the transaction on the blockchain;

the metadata is used to verify a presence of the transaction in a block on the blockchain; and/or

the metadata is used to construct a proof of inclusion of the transaction into the blockchain.

15. The method of claim 13 , wherein the metadata comprises any one or more of:

a transaction id of the append transaction, a subset of the input(s) to the append transaction, a block header of a block the append transaction is included in, a block id of the block the append transaction included in, a timestamp associated with the append transaction, and an array of sibling hashes for the transaction id of the append transaction; and optionally the metadata is used to construct a proof of inclusion of the transaction into the blockchain.

16. The method of claim 1 , further comprising the steps of:

receiving a request to add an event to the stream, the request comprising event data and an override flag,

generating a further append transaction comprising data indicative the event data, and

arranging for the append transaction to be broadcast to the blockchain.

17. A device comprising a processor and memory, the memory including executable instructions that, as a result of execution by the processor, cause the device to perform a computer-implemented method of maintaining a status of a stream on a blockchain by:

receiving a create stream message, the create stream message comprising an indication of at least one trigger condition, and

based on a trigger condition being met, performing the steps of:

obtaining data indicative of a state of the stream, and

generating an append transaction comprising the data indicative of the state of the stream.

18. A system, comprising:

a platform processor including device comprising a processor and memory, the memory including executable instructions that, as a result of execution by the processor, cause the device to perform a computer-implemented method of maintaining a status of a stream on a blockchain by:

receiving a create stream message, the create stream message comprising an indication of at least one trigger condition, and

based on a trigger condition being met, performing the steps of:

obtaining data indicative of a state of the stream, and

generating an append transaction comprising the data indicative of the state of the stream; and

a client device configured to submit event data to the platform processor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2023
From: RAND, RICKY CHARLES
To: NCHAIN LICENSING AG
Reel/Frame 065808/0774 →
Priority Claims (1)
GB 2108385 · Jun 11, 2021 · national
Continuity (1)
Related Publication 20240370866A1 · Nov 7, 2024
References Cited (15)
US 20200005285A1 · Jimenez-Delgado et al. · 2020 [cited by applicant]
US 20200099528A1 · Chan et al. · 2020 [cited by applicant]
US 20210081403A1 · Tian · 2021 [cited by examiner]
US 20230082545A1 · Mee · 2023 [cited by examiner]
WO 2020240290A1 · 2020 [cited by applicant]
WO 2020240320A1 · 2020 [cited by applicant]
WO 2021165817A1 · 2021 [cited by applicant]
WO 2021165848A1 · 2021 [cited by applicant]
WO 2021165907A1 · 2021 [cited by applicant]
WO 2022049218A1 · 2022 [cited by applicant]
WO 2022238154A1 · 2022 [cited by applicant]
“How to get all historic changes of a state variable in a smart contract?”, retrieved from https://ethereum.stackexchange.com/questions/29024/how-to-get-all-historic-changes-of-a-state-variable-in-a-smart-contract, Feb.… [cited by examiner]
Chow Events and Logs in Ethereum Smart Contracts: Complete Guide, Jun. 6, 2016, 10 pages (Year: 2016). [cited by examiner]
GB2108385.2 Combined Search Report and Abbreviated Examination Report dated Oct. 19, 2021, 6 pages. [cited by applicant]
PCT/EP2022/064475 International Search Report and Written Opinion dated Sep. 5, 2022, 15 pages. [cited by applicant]