funded
Handshake decentralized DNS blockchain integration with cDNSd by Blink Labs
Current Project Status
In Progress
Amount
Received
₳0
Amount
Requested
₳130,500
Percentage
Received
0.00%
Solution

Create the ability to prove DNS data from the Handshake blockchain in a fully trustless manner and integrate this capability into the open source Blink Labs cDNSd server software.

Problem

The Internet Domain Name System (DNS) is controlled by a single entity. Cardano services should integrate with the Handshake decentralized DNS blockchain in a trustless manner.

Impact Alignment
Feasibility
Value for money

Blink Labs

2 members

Handshake decentralized DNS blockchain integration with cDNSd by Blink Labs

Please describe your proposed solution

Blockchain technologies are rapidly gaining traction as more organizations move toward decentralized, scalable solutions. However, one critical component of the internet—DNS—is still largely controlled by a single organization, ICANN. This centralization presents several risks, particularly around privacy, autonomy, and censorship.

The Domain Name System (DNS) relies on a network of root servers run by government entities, academic institutions, and private corporations that act as the top of the DNS hierarchy. These root servers store the authoritative directory for the internet's top-level domains (TLDs), like .com, .org, and country codes such as .uk. These operators work under the oversight of ICANN, which limits the TLDs that can be sold to an approved list. Handshake’s decentralized naming system aims to solve these problems by removing control from any particular organization, allowing users to create any TLD without restrictions, and being able to prove ownership.

The Blink Labs cDNSd server is already capable of indexing domain data from the Cardano blockchain and serving it via DNS. This proposal would add the ability to serve Handshake domains directly by acting as a Handshake lightweight client by utilizing SPV to verify domain ownership and ensure data authenticity in a trustless and decentralized way. Handshake’s Simplified Payment Verification (SPV) works similarly to Bitcoin’s SPV, allowing users to verify domain ownership without needing to download the entire Handshake blockchain. Instead, users rely on cryptographic Merkle proofs to confirm that a particular transaction (in this case, a domain auction or transfer) is included in the blockchain.

Exposing domain data from the blockchain via DNS allows decentralized information to be accessible using familiar domain name infrastructure, making it easy to integrate with traditional web technologies. This helps streamline the onboarding of users that may not be familiar with blockchain technology by using standard protocols for naming used for decades.

Please define the positive impact your project will have on the wider Cardano community

Handshake’s purpose is to decentralize the Domain Name System (DNS) by replacing the need for a central authority like ICANN with a blockchain-based, peer-to-peer system. A decentralized blockchain-based DNS system eliminates the need to trust any single organization, providing users with greater autonomy and control over their domain names. Domain ownership and management are transparently recorded on the blockchain, ensuring that no central authority can revoke or manipulate domain records. This trustless framework enhances security and resilience, as users can verify ownership through cryptographic proofs rather than relying on potentially fallible or biased entities.

Cardano decentralized applications can utilize domains based on Handshake and build truly decentralized versions of their applications. By coupling direct Handshake support with cDNSd, the Cardano community can create second level domains on Cardano.

What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?

Blink Labs has decades of experience delivering open source software. Our team also has experience building global scale DNS infrastructure for ISPs and cloud providers. We have a proven track record of delivery and have successfully completed two previous Catalyst Fund 9 proposals. We have two open funded proposals from Fund 11, have met our milestones and are wrapping up closeout videos now; we are just starting milestone 1 objectives for our Fund 12 proposal which is slated to complete before Fund 13 onboarding completes. Our work is open source and public for all to view. Our team is highly cohesive and have worked together for years, allowing us to provide accurate time and cost estimates to our work. Funding allows us to dedicate engineering time to an open source project, rapidly accelerating its development.

Blink Labs will create GitHub issues for the individual items of work and will track those items using a project Kanban board on GitHub.

What are the key milestones you need to achieve in order to complete your project successfully?

Milestone 1: Milestone 1 will implement parsing and validation of Handshake blockchain data.

  • Develop primitives to handle Handshake block format
  • Implement validation of Handshake proofs
  • Demonstrate the ability to parse a Handshake block for specific domain ownership

Milestone 2: Milestone 2 will implement network communication with Handshake nodes and generation of a stream of updated blocks.

  • Develop network protocol code for Handshake
  • Implement block synchronization of Handshake data
  • Demonstrate the ability to synchronize blocks and process domain ownership updates

Milestone 3: Milestone 3 will integrate Handshake blockchain data into cDNSd and serve it via DNS.

  • Create the ability to store and retrieve Handshake blockchain data in cDNSd
  • Create a Handshake resolver
  • Create an ICANN resolver
  • Implement a fallback from local (Cardano) to Handshake to ICANN resolvers
  • Demonstrate DNS resolution for domains in local, Handshake, and ICANN

Final Milestone: Our 4th and final milestone will wrap up the project, including the Project closeout report and video. The project closeout report will include a comprehensive summary of project objectives and evidence of goals achieved. The project closeout video will provide a visual overview of the projects journey, start to finish, highlight key achievements, and showcase the net products: HNS Simplified Payment Verification (SPV) Support In cDNSd

Who is in the project team and what are their roles?

The project development will be completed by the Blink Labs engineering team. Our team includes Principal / Staff Engineers, with more than 50 years combined experience. This project will be primarily assigned to Aurora Gaffney (<https://github.com/agaffney>) for development completion, with additional Blink Labs developers providing code review, documentation, and support.

Additional Blink Labs staff may be used for administrative functions, such as project management and community reporting.

Please provide a cost breakdown of the proposed work and resources

Funding will primarily pay for engineering time. There is also a small piece set aside for paying administrative staff for project management.

The project budget is 41500 ADA per month to pay for Engineering (40000) and Project Management (1500) for the first three milestones. The final milestone will be an additional 6000 ADA for the project manager. Each of the first three milestones corresponds to a month, and time is allocated to take approximately 75 percent of a full time software engineer or 120 hours and approximately 10 hours of project management. The final milestone includes closeout reporting and video production and will take approximately 40 hours of project management time.

No additional funding is necessary for third party products or services.

No dependencies.

How does the cost of the project represent value for money for the Cardano ecosystem?

Costs are estimated on a 333.33 ADA per hour rate for a senior Golang blockchain software engineer working remotely within the United States (~ $192k USD annually) and 150 ADA per hour rate for a project manager working remotely (~ $86k USD annually)

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00