Introduction to DIG Network
Let me start by painting a picture of what the DIG Network aims to achieve. In a world increasingly dominated by centralized entities that control and monitor our digital lives, DIG stands as a beacon of hope. It offers a platform where free speech is protected in its purest form and where individuals have complete sovereignty over their digital data. DIG is not just another blockchain project or decentralized application; it’s a bold vision for the future of digital freedom and data sovereignty.
The Endgame for DIG
Our endgame for DIG is nothing short of revolutionary. Imagine a world where your digital data is yours alone, free from the control of centralized overseers. DIG aims to make this a reality by building the ultimate weapon to protect free speech—not as a feel-good promise, but as a tangible, enforceable reality. This means creating a system where digital data sovereignty is not just a concept but a lived experience for every user.
To achieve this, DIG is designed as a pure peer-to-peer protocol that operates independently of any single controlling entity. This isn’t just another DAO with governance tokens and voting mechanisms. Instead, DIG embodies the true spirit of a decentralized autonomous organization—a loosely coupled group of peers communicating seamlessly to form a system that is greater than the sum of its parts. This ensures that no single entity can control or manipulate the network, preserving the integrity and freedom that DIG stands for.
Why DIG is Different
What sets DIG apart from other projects is our unwavering commitment to building the purest public good imaginable. Unlike many projects that have been co-opted by venture capitalists, DIG remains untouched by large backers. Instead, it has been nurtured by the generosity and dedication of the Chia community. This ensures that the economic benefits of DIG flow directly to the people, not to a central entity.
I want to highlight a crucial point: DIG is built as a system that is not driven by the profit motives of developers or large investors. This commitment was demonstrated when I declined funding from venture capitalists on the MegaEth blockchain. By refusing large backers that could compromise our goals, we’ve maintained the integrity and vision of DIG. As DIG matures and gains adoption, we anticipate an economic impact in the billions. However, these billions will flow to the people and not to a central entity. We expect high-value businesses to build on top of this protocol, further strengthening the power and reach of the DIG Network.
High-Level Architecture
Now, let’s delve into the high-level architecture of DIG. DIG’s design is inspired by the innovative Chia Datalayer, but we’ve taken it a step further. Built from the ground up, DIG leverages the strengths of Rust and TypeScript to create a system that’s both powerful and adaptable.
The blockchain driver, written in Rust, handles computationally intensive tasks with exceptional efficiency. Rust’s performance and safety make it the perfect choice for these critical components. On the other hand, TypeScript facilitates rapid development and taps into a wide pool of developers, allowing us to iterate quickly without accumulating technical debt. This combination ensures that DIG remains both robust and flexible, capable of evolving with the needs of its users.
A key aspect of our architecture is that DIG does not reuse any of the Chia Datalayer code. Instead, it is a completely new implementation, built from scratch to meet the unique demands of our network. This allows us to incorporate scaling improvements that were essential for DIG to function effectively.
Innovations and Technical Excellence
One of the most significant innovations of DIG and Chia DataLayer is the ability for untrusted peers to become reliable mirrors of data. Traditionally, having a trusted mirror requires a relationship between the data owner and the mirror provider, ensuring that the data remains untampered. This creates vulnerabilities, especially when data publishers face takedown notices, as it leaves a paper trail that can be exploited to shut down each mirror. Additionally this affects the scale of how many mirrors for a dataset are feasible. As only high value data will be mirrored across the world.
DIG revolutionizes this by allowing anonymous peers to become mirrors without needing to know who published the data or who serves it. This anonymity and trustless nature make it incredibly difficult to shut down the network, as peers can pop in and out of existence seamlessly. The system uses Merkle trees to encode data, allowing any piece of data to be verified against its root hash stored on the blockchain. This ensures data integrity without requiring a trusted relationship between peers.
I want to give a special mention to Ken Griggs, whose invention of the Datalayer Merkle tree system forms the foundation of our data integrity approach. His work has been instrumental in enabling us to create a secure and verifiable data storage and delivery mechanism that underpins the entire DIG Network.
Moreover, DIG enables decentralized frontends by encoding static web applications into Merkle trees. This means that frontends can be served by a network of anonymous peers, making them highly resilient and difficult to shut down. The incentive structure of DIG ensures that if a peer shuts down, another peer will step in to take its place, maintaining the availability and integrity of the data. This is the ultimate and unstoppable killer app for DeFi applications and can make them unregulatable.
Technical Implementation
We believe that a combination of Rust and Typescript is a excellent way to develop Chia applications. By placing computationally intensive logic in Rust binaries and building business logic in TypeScript, we achieve rapid iteration without the drawbacks of slowness where TypeScript is not appropriate. This setup feels very natural, especially with proper separation of concerns. If something appears slow in Node.js and it’s determined that Node is a bad fit for that behavior, it can be moved to Rust without incurring significant technical debt. Additionally, TypeScript has a wide developer pool to tap into, ensuring that we can scale our development efforts as needed. I want to thank both Yakuhito and Rigidity for their guidance and mentorship on Chia, Rust and Typescript. I could not have gotten DIG to where it is today without them.
Components of the DIG Network
To make this decentralized CDN possible, the DIG Network comprises several key components:
- DIG SDK:
This includes all the functions needed to interact with datastores on the Chia blockchain, encode data into Merkle trees, become a peer to the network, and query the network for data. Any project built on TypeScript can import this as an NPM package to interact with the DIG Network, its data, and its peers. - Propagation Server:
This server handles the syncing of Merkle trees across peers and manages the upload protocol similar to Git. It allows new data and trees to be easily pushed to the propagation server, making them available for synchronization worldwide. - Content Server:
The content server maps requests to datastores and serves the data in the browser. This ensures that data is readily available for consumption within applications. - DIG CLI Tool:
Modeled after Git, the CLI tool allows users to encode data into a Merkle tree and push it to a propagation server. A major difference between DIG and Chia Datalayer is that DIG separates Merkle tree management from the main client. DIG does not require anything to be running in the background to manage Merkle trees—it’s a simple tool run via the CLI. - Incentive Server:
This is a temporary server designed to create incentive programs and challenge peers for proofs that they are indeed serving the data as promised. Currently, it performs “proof of retrievability,” but we plan to implement various types of proofs to ensure peers fulfill their responsibilities. If a peer passes all challenges, they are awarded an incentive for that round, which currently lasts 10 minutes. We are actively seeking an on-chain solution to replace the incentive server, reducing reliance on what is turning out to be an unreliable method of payment.. - Server Coin:
The server coin acts as an on-chain registry for which peer is serving which datastore. The DIG Network functions as a federated database of databases, where peers only serve the data they choose to. Each server coin is valid for a single epoch—7 days from Tuesday to Monday UTC. This ensures that if a peer goes offline, the network automatically forgets about it, acting as a form of garbage collection for invalid peers. Additionally, creating a server coin requires locking up a certain threshold of funds, making spam attacks expensive while keeping the system secure.
Alpha Program and Lessons Learned
Our alpha program has been an incredible journey of learning and growth. I extend my deepest gratitude to the Chia community for their participation and invaluable feedback. Special thanks to Drac for educating me on technologies like GunJS and WebRTC, which are potential candidates for solving our NAT traversal challenge.
Through this phase, we’ve identified and addressed numerous bugs, enhanced system stability, and refined our incentive structures. The enthusiasm and dedication shown by the community have reinforced my belief that DIG is poised for success. One of the key takeaways from the alpha program is the power of incentives in creating a robust and sustainable network. By unlocking an economy that monetizes XCH, DIG not only benefits its users but also strengthens the entire Chia ecosystem. This incentive structure promises an economic impact in the billions, flowing through the Chia Blockchain.
Despite being the primary developer working full-time on this project, the community’s involvement has been crucial. Your feedback, even on the smallest suggestions, has been instrumental in driving improvements. The activity in the commit log is a testament to the collaborative effort and the vibrant development happening behind the scenes.
Final Challenges and Call for Expertise
Despite our progress, we face two major challenges that require the collective expertise of our community to overcome:
- NAT Traversal: Most potential DIG Node operators encounter difficulties with NAT traversal, which hampers widespread participation. Requiring port openings is a significant barrier, preventing approximately 80% of potential node operators from joining. We need a reliable, decentralized solution that doesn’t rely on centralized infrastructure. Potential candidates include GunJS and WebRTC. With the rich history of BitTorrent and the expertise within our community, I believe we can identify and implement an effective solution. Overcoming this challenge is crucial for achieving the widespread adoption necessary for DIG to function as a truly decentralized network.
- Payment Mechanism: Currently, our payment model relies on trust—a “Trust Me Bro” approach—which is neither sustainable nor secure. Store sponsors can announce on-chain or elsewhere that they will pay for propagation, but there’s nothing forcing them to follow through. This opens the door to abuse and inconsistencies, especially if store sponsors struggle to maintain their incentive servers. We need a robust, on-chain mechanism that ensures guaranteed and provably fair payments to peers. This involves:
- Escrow System: Store sponsors must lock funds in an escrow as proof of guaranteed payment to peer mirrors.
- Proof of Service: Developing mechanisms to prove that peers have fulfilled their responsibilities throughout the epoch.
- Payment Unlocking: Establishing a way to unlock payments based on these proofs.
- I envision leveraging the new oracle functionality in CHIP-35 to create a fair and transparent payment system. CHIP-35 enforces a fee to the oracle maintainer every time it’s used in a puzzle, so the monetization scheme is already built in. If we can establish an oracle market for stores that are incentivized and use these oracles to unlock payments in a provably fair manner, we have a strong solution for this problem. However, I am open to any innovative solutions that achieve these goals. The solution will likely be multifaceted, potentially requiring specialized Chialisp, but the community’s creativity and expertise can help us develop a robust and sustainable payment mechanism.
Call to Action
The DIG Network stands at the brink of something extraordinary. Together, we have the opportunity to build a decentralized network that champions free speech, data sovereignty, and unstoppable innovation. To move beyond the alpha phase and achieve our vision, we need your expertise, creativity, and passion.
I am asking for your help to:
- Collaborate on Solutions:
Help us tackle NAT traversal and payment mechanisms with innovative ideas and implementations. Your expertise in technologies like GunJS, WebRTC, or any other decentralized solutions can make a significant difference. - Contribute to Development:
Utilize your skills in Rust, TypeScript, or Chialisp to enhance the DIG infrastructure. Whether it’s improving the SDK, refining the propagation server, or developing the incentive mechanisms, your contributions are invaluable. - Spread the Word:
Advocate for DIG within your networks to build a vibrant, supportive community. The success of DIG relies not only on our technical achievements but also on the strength and dedication of our community. - Become a sponsor
As I’ve shared with you today, the DIG Network thrives without the support of large backers. I have personally invested a significant portion of my own funds to bring DIG to where it is now. To sustain and accelerate our development, I recently launched a GitHub Sponsor program. I’m excited to announce that we’ve reached 21% of our initial goal of $2,000 per month and have 14 amazing sponsors.
These funds are crucial—they will enable us to offer bounties, hire talented community developers, and support various initiatives that drive DIG’s growth. Your contributions, no matter the size, are invaluable in helping us overcome challenges and unlock DIG’s full potential. By supporting the GitHub Sponsor program, you’re not just funding development; you’re investing in a future where digital data sovereignty and free speech are protected for everyone. Together, we can build a decentralized network that stands as a beacon of freedom and resilience in the digital age. If you’re able to contribute, your support will make a profound difference in achieving our shared vision.
Overall, The involvement of you and our community is crucial. Whether you’re a developer, a community member, or someone passionate about digital freedom, there’s a place for you in the DIG Network. Together, we can overcome these challenges and unlock the full potential of DIG.
Inspiring the Future
Imagine a future where digital data is decentralized, secure, and sovereign. A future where free speech is protected by an unstoppable network, and where individuals have complete control over their digital lives. When data is free, society becomes more equitable, stable and free. DIG is not just a project; it’s a movement towards a freer, more equitable digital future. By collaborating and pooling our expertise, we can turn this vision into reality.
Closing
In closing, I want to emphasize that DIG is built as the purest public good, free from the constraints of profit-driven motives. Its success hinges on the collective effort and dedication of our community. I am deeply grateful for your support thus far, and I am excited about the possibilities that lie ahead.
Thank you for your time, your dedication, and your belief in the power of decentralized technology. Now, I’d like to open the floor for questions and feedback. Your insights are crucial as we navigate these final challenges and strive towards a successful launch. Let’s discuss how we can collectively bring DIG to its full potential.