Blockchain DNS Interface

The Domain Name System (DNS) is a hierarchical and decentralized naming system for computers, services, or other resources connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities. By providing a worldwide, distributed service, the Domain Name System is the ideal extension for Distributed Ledger Technologies.

Possible Use Cases

  • Dynamic, blockchain based DNS System (DynDNS/DDNS).
  • Checking of validity of vouchers.
  • Antifraud Interface to end Short Stopping.
  • Publishing of Black-/Whitelists of phone number, email addresses, etc
  • Publishing of routing information.
  • Validation of Blockchain Certificates or Contracts.
  • Transaction Validation.

Try it out

Every node has an inbuild DNS Server and is able return public blockchain information (limited to 100 characters)

First upload your data with the following Web Service:

https://coin.codeb.io/cdr.asmx?op=StoreCDR

As a reply you will receive a Base58 encoded transaction ID. This ID will be used as the Hostname for the DNS Query.

For example: QmcufvEAcMFXyjVTNXJbFtaEpTN4iLUdwEkFjUeaM8A7PA

Now you can query for a A Record. To proof the existence of a record (for example to test if a call has been terminated correctly). If the answer is 127.0.0.2 then the record does exist.

You can use the command ReadDataByDNS from our Tools Namespace to lookup TXT Records or you can use the NSLOOKUP of your local machine. As DNS Server you can use your own or just Google DNS with IP 8.8.8.8.

To query the content of the record you need to lookup the TXT Record.

  • Open command prompt
  • Start NSLOOKUP
  • increase timeout in case your default timeout is too small with set timeout=30
  • configure NSLOOKUP to query txt, A or any. For example: set type=any
  • Query command. For example:
    QmcufvEAcMFXyjVTNXJbFtaEpTN4iLUdwEkFjUeaM8A7PA.dfs.codeb.io
    will return the content saved with transaction QmcufvEAcMFXyjVTNXJbFtaEpTN4iLUdwEkFjUeaM8A7PA
    (Hello World)
  • In case you get a timeout it means that the value has not been cached in the DNS tree. Just repeat the command till you get a valid answer.

blockchain dns