Please describe your proposed solution.
The idea
An interesting idea would be to develop a blockchain-based Domain Name System (DNS) to record DNS data and ensure the integrity and security of the information related to DNS records. The DNS is responsible for translating human-readable domain names into IP addresses used by computers to communicate on the internet. Currently, most DNS records are stored in a centralized manner on servers maintained by domain registrars and hosting providers. However, by using blockchain technology, we can create a decentralized DNS system where DNS records are stored in blocks of a shared blockchain. Each block would contain information about a set of DNS records, such as the domain name, corresponding IP address, and other relevant data. Here are some key aspects of the blockchain-based DNS system:
- Decentralization: Instead of relying on centralized DNS servers, the system utilizes a network of distributed nodes that store and validate DNS records. Each node contains a complete copy of the blockchain, ensuring redundancy and resilience to failures.
- Consensus: The network nodes use consensus algorithms such as Proof of Stake to validate and add new blocks to the chain. This ensures that only valid DNS records are accepted and added to the chain.
- Security: The blockchain technology provides an additional layer of security to DNS records. Once blocks are added to the chain, they become immutable, and any attempt to alter them requires consensus from the majority of the network nodes, making the system resistant to malicious attacks.
- Transparency: The transparent nature of the blockchain allows anyone to verify DNS records and track changes made over time. This increases trust and accountability in the DNS system.
- Privacy: While the blockchain is transparent, the system can be designed to protect user privacy by allowing them to control which information is publicly disclosed and which remains private. By implementing a blockchain-based DNS system, organizations and users can benefit from a more secure, censorship-resistant, and decentralized system. Additionally, leveraging blockchain can help address trust and security issues associated with traditional DNS systems. It is important to note that implementing a blockchain-based DNS system would face technical challenges and require widespread adoption to be effective. However, considering the potential of blockchain technology and the importance of DNS in the internet infrastructure, this idea offers an interesting perspective for future innovations in this field.
MVP Testing
We made several transactions in the test environment and after, then a direct transaction on the blockchain to validate this idea.
First we generate a query to find the asset's id, using the adahandle's policy id and its assetname.
Below is the example of $adfad
select id from multi_asset
where policy = decode('f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a', 'hex')
and name = 'adfad'
-------------
3847413
After getting the id of the asset, we look for the metadata data of the last transaction there is content in key 320 to get the redirection data
select json from ma_tx_out
inner join tx_out on tx_out.id = ma_tx_out.tx_out_id
inner join tx_metadata on tx_metadata.tx_id = tx_out.tx_id and tx_metadata.key = 320
where ident = 3847413
order by tx_out.id desc limit 1
-------------
{"url": "<https://beerhouse.io>"}
Steps for development
- Create a CIP to generate base definitions :
- Define which policy ID we should use as official. As an initial suggestion, we considered two alternatives:
- Use the adahandle, generating one more utility for the owners of this project.
- Develop an own NFT in the adahandle style, making the project profitable.
- Define which key we will use to insert DNS metadata data
- Define the json pattern we will use to record the data
- Create the smart contract to generate internal transactions containing the metadata and the asset.
- Develop a website to interact with the smart contract
- Choose and buy the domain
- Create the interface that takes the data directly from and does the redirection
- Create the necessary infrastructure for the system to run
- Make the code open source
- Promote the product to generate use of the service
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
The project will not bring more users as usual, but many used the network without knowing it. It will bring more confidence to the internet, eliminating a bottleneck and more transactions to the cardano network, generating more transaction fees.
How do you intend to measure the success of your project?
having a pilot project for IP address resolution that can run together with the current DNS network, but can also run without the need for the current infrastructure.
Please describe your plans to share the outputs and results of your project?
create a social media and medium to share the progress