Content-addressed data has several interesting properties. This exploration report concentrates on incremental verifiability of streams. Such a system would not need to buffer the whole data in memory, before the verification will be able to start. It's extendable to all kinds of content-addressing and not limited to a specific implementation/protocol.
Background
A common form of verifiable data is checksums provided next to the data. An example are Debian ISOs where you have a file called SHA256SUMS that provides the checksums of the ISOs in that directory. You can then verify locally that the download was correct and that it was the expected file. The problem is that you need to download the full file, several GBs, of data first.
With incremental verification, you can start verifying while the download is in progress and in case there's wrong/bad data you can stop early. Sometimes you don't event want to download the file at all, but just process it on-the-fly, like listening to a podcast or watching a video. Or event skip some data and start in the middle somewhere.
There are already systems out there that do such verification, such as Helia's verified fetch, Amazon S3 object integrity checks, BitTorrent or iroh's BAO based verification. The goal is to explore a system that could be used as a library, that supports all those cases and also future ones.
Scope