The Multimedia Nostr Relay
Adding Scionic Merkle DAG Tree Support to Iris
Nostr-enabled multimedia without HTTP: Scionic Merkle DAG Trees support various file types with multicodec. Alice converts the file (video, picture, etc.) attached to her note into a Merkle DAG Tree, signs the root, then sends the Merkle DAG Tree to relays. Bob securely downloads chunks of Alice's file from relays as Merkle Branches by verifying that each branch hash matches Alice's signed root hash.
Web5 Uses Merkle DAG Trees for File Chunking
Web5 will utilize Scionic Merkle DAG Trees as a file chunking standard for their Decentralized Web Node (DWN). Users can resume downloads easily using numbered Merkle leaves and save on bandwidth costs with small Merkle DAG branches. The Decentralized Web Node (DWN) is a masterless multitenant datastore, each user's data is partitioned with a built-in permissions system for read and write access.
GitHub-like Social Posts and Repository Trees
Repositories, if stored on relays around the world, must be chunked with and stored as Merkle DAG Trees to prevent delay attacks. Every state change (new Merkle Root) is logged in a custom Nostr note. These broadcasted notes can lead Nostr users to the repository tree stored in relays. The Merkle root inside each signed note is indirectly authenticating every Merkle branch (file chunk) in the repository.
H.O.R.N.E.T. Storage operates as a Layer 2 atop Nostr, storing relay data as signed Scionic Merkle DAG Trees. The H.O.R.N.E.T. Storage relay lets relay operators view how much data each nostr app is occupying, allowing relays to toggle which applications and file types they want to support.
Each time data is stored as a Merkle DAG Tree, its denoted with a unique identifier indicating the app name that data belongs to. Some examples might include: "NostrTube" for a nostr video platform, "stemstr" for sharing large albums beyond single songs, "git" for storing git repositories, etc.