We have developed a secured DNS system in which even when the request from resolver has been received by the attacker, it would not be able to reply for the same. We have also shown fake server which tries to enter in the communication between the resolver and servers & grant the access. Our system also maintains log files for all the connections established in the network.
a) SK: Secret Key
b) PUR: Root’s Public key
c) ESK: Encryption using Secret Key
d) EPUR : Encryption using Root’s Public Key
2. Resolver and DNSRootServer
a) Resolver DNSRoot: EPURi(SK, hostname)
b) DNSRoot Resolver: ESK[hmac (EPURi(SK, hostname)), IPi)]
3. Resolver and Destination Server ...view middle of the document...
Send this HMAC to top level domain. This procedure is repeated for each request from Resolver. The screenshot shows the output when it gets the request from the resolver. It has been implemented using virtual machine. DNSRootServer creates hmac and sends this hmac to next DNSServer and Resolver. (See Fig 1.4)
The main task of DNSResolver is take host name from client and returns its ip or vice versa. When it receives host name it will first connects to the DNSRoot Server and then reads the public key of DNSRoot Server through this connection. AES algorithm is used for the generation of secret keys. DNSResolver create Secret key using EncManager. It will encrypt the host name and secret key using public key of DNSRoot Server then send this encrypted host name and secret key to DNSRoot server. After receiving host name and secret key DNSRoot server send the top level domain’s port, address (IP) and HMAC to the DNSResolver. DNSResolver checks to see whether the desired hostname is retrieved or not, otherwise it iteratively sends IP and hostname to DNS Server, read the next domain name and IP address. Reply contains encrypted hmac and ip of witsolapur.com which is in encrypted format. (See Fig 1.5)
DNS Server are middle level servers which provides services. DNS Root Server forwards data i.e. HMAC and secret key to DNS Server using DNS Server public key. Received data is decrypted using its own private key. It stores secret key in its own database. Then it compares HMAC received from DNS Root Server with HMAC received from DNS Resolver, if it matches then it Obtains next hostname and corresponding IP from its database, else the...