top of page

Browse Nostr without HTTP:// Connect to Relays Directly.

Connect to
Relays Directly.

Browse nostr
without HTTP

Merkle DAG Tree Storage and Syncing
For Nostr Apps

Your modular Nostr Relay and storage manager, built to host any type of user data for different nostr apps.


Hashed organized (content-addressed) storage to avoid data duplication, with reduced bandwidth overhead by utilizing compressed Merkle DAG branches to deliver file chunks and compact ranged requests to sync missing file chunks as numbered Merkle leaves.

Scaling Nostr with Scionic Merkle DAG Trees

Classic Merkle Trees are cryptographic structures used to manage and securely verify large amounts of data. However, they have a significant drawback: they cannot store folders or files. Merkle DAGs were developed as a solution to incorporate folders and files into Merkle Trees.

 

However, Merkle DAGs require users to download the hash of every other file inside the folder its stored in. This becomes inefficient when dealing with folders that contain large amounts of files. Scionic Merkle DAG Trees exhibit logarithmic growth. This means that as the size of the input (the number of files in a folder) increases, the growth rate of the Scionic Merkle branches decreases.

 

This makes Scionic Merkle DAG Trees an efficient structure for managing large datasets, as the branches become exponentially smaller with the increasing number of files in the folder. In contrast, the number of hashes required to validate a single folder in a Merkle DAG exhibits linear growth. If there are more children (files) in the folder, you must download the hashes to all of them to retrieve a single file. This requirement can lead to the overly large branches Merkle DAGs suffer from that Scionic Merkle DAG Trees aim to resolve.

Files and Directories with Small Merkle Branches.

Scionic Merkle Tree DAGs are a new type of Merkle Tree/Merkle DAG structure for file chunking. Scionic Merkle DAG Trees have small branches like Classic Merkle trees, the file storage ability of Merkle DAGs, and numbered leaves so relays can request a range of missing leaf numbers in order to sync succinctly. Merging the advantages of Classic Merkle trees and Merkle DAGs gives H.O.R.N.E.T. Storage the best of both worlds: file storage and small branches. This will unlock a new tier of speed for a variety of decentralized apps that require large file directories. 

Branches are File Chunks that Match Signed Roots.

Nostr relays lack a standard for file storage secured by cryptographically verifiable file chunking. This restrains the variety of apps nostr can support, such as applications that require large file sizes or apps that require directories like a decentralized GitHub. For example, users could utilize Scionic Merkle DAG Trees to turn their entire Git repository folder into a Merkle DAG Tree, sign the Merkle root, and store the signed repository on relays.  Decentralized file storage systems require chunking to prevent delay attacks caused by large files. Without cryptographically verifiable file chunking (Merkle branches), users would need to download the entire file before verifying it. If the file's hash turned out to be incorrect after spending a lot of time downloading the large file, then it can cause a delay in service because the user would need to restart that file download process with another relay. The delay in service can be prevented when using the Scionic Merkle DAG Trees to verify each chunk of the file one by one (branch by branch) immediately after downloading them, similar to how Bitcoin Merkle Branches and IPFS Merkle DAG branches function.

Scionic Merkle DAG Tree

Merkle DAG Tree
Storage & Syncing
For Nostr Apps

Your modular Nostr Relay and storage manager, built to host any type of user data for different nostr apps.


Hashed organized (content-addressed) storage to avoid data duplication, reduced bandwidth overhead from utilizing compressed Merkle DAG branches to deliver file chunks, and compact ranged requests to sync missing file chunks as numbered Merkle leaves.

Get started with H.O.R.N.E.T.S.

Scionic Merkle Branch

Scionic Merkle DAG Tree & Branch

Whitepapers, podcasts, and relevant learning materials can be found on this page.

Visit The Library of Whitepapers

bottom of page