What is Authentication/confirmation? How it is different from the Authorization/approval? Explain in brief different authentication protocols along with their merits and demerits.
Authentication is described below
Authentication is the process of checking the genuineness of someone (or) something which claims to be authentic.
In the internet applications, authentication can be done by means of login-ID and passwords, that is an individual who knows the correct ID and a respective password is considered to be a authentic user and is provided right to use to the internal applications. Whereas, the authorization is a process of assigning different access permissions to many users.
The authorization is the initial task carried-out by a system administrator after authentication is carried away.
Or we can say that, a system administrator assigns access permissions and privileges to the users once they become authenticated.
Authentication Protocols can be defined as follows:
Authentication protocols are majorly used for addressing the security issues regarding the un trusted networks (internet). Many different protocols and methods/techniques are available for the authentication.
Diffie-Heliman Key Exchange Protocol can be understood as follows:
When two strangers like to set up a shared secret key, they can make use of the
'Diffie-Heliman Key Exchange Protocol'.
Working of Diffie-Heliman key exchange protocol is given below.
The senders and receivers will exchange the calculated and measured values between each other, using which they will compute the encryption. This calculation also comprises two more numbers which are not kept secret.
Consider a condition when Alice and Bob would like to communicate they require to have a shared secret key. To set up this key any one among Alice and Bob can decide to use two large prime numbers p and n such as the result of (p-1)/2 is also a prime number, and then tell the other about these numbers frankly. Then both of them will choose their large secret numbers as a and b respectively.
To begin this key exchange protocol, suppose Alice sends the message consisting of (p, n na mod p) to Bob. Then Bob gives response with a message containing Alice will now compute the secret key by raising received message to the power a, that is,nb mod p)a = nab mod p. Conversely, Bob will compute the secret key by raising the received message to the power b that is (na mod p)b = ( nab mod p). In due course, both Alice and Bob will now share the b secret key that is (nab mod p).
Disadvantage this process is as follows:
If an invader comes to know the p and n numbers somehow from the messages and if he also computes the a and b values then he will be easily able to compute the secret key which is shared by the sender and the receiver.
Merits of it are as follows:
(i) This key swap algorithm enables the users to establish a shared session even with the strangers.
(ii) Somehow if the intruder intercepts the message he/she cannot understand it unless he knows the shared session key as well.
Demerits of it are as follows:
(i) The difficulty with the Diffie-heilman key exchange algorithm is that, it cannot pact with bucket brigade attack in which the intruder directly intercepts the session establishment messages.
(ii) For interacting with the 'n' number of people, we require 'n' keys to be saved and managed.