Authentication Methods

1. Introduction

Authentication is the process of determining whether someone or something is, in fact, who or what it says it is. Authentication technology provides access control for systems by checking to see if a user's credentials match the credentials in a database of authorized users or in a data authentication server.

2. Secret authentication key

2.1. Classic method

  1. Alice declares to be A

  2. Bob generates a random integer

  3. Alice replies encrypting the received number, by using shared key between A and B

  4. Alice generates a radom integer

  5. Bob replies encrypting the received number, by using shared key between A and B

2.1.1. Reflection attack

Legend

  • First session

  • Second session

  1. Alice declares to be A

  2. The intruder declares to be B

  3. A replies with a random integer

  4. The intruder uses the integer received from A as the random integer

  5. A replies with encrypted random integer

  6. The intruder replies to A with the encrypted integer, sent by A in the first session

  7. A sends a random integer

  8. The intruder sends the random integer sent by A in the first session

  9. A replies with the encrypted random integer

  10. The intruder replies to A with the encrypted random integer, sent by A, in the second session

2.2. Simplified classic method

  1. Alice declares to be A and sends a random integer

  2. Bob replies encrypting the received number, by using shared key between A and B, and sending a new random integer

  3. Alice replies encrypting the received number

2.1.1. Reflection attack

Legend

  • First session

  • Second session

  1. The intruder sends a random integer

  2. Bob replies with a random integer and with the encrypted intruder integer

  3. The intruder uses the random integer received from Bob as the random integer

  4. Bob replies with a new random integer and the encrypted intruder integer

  5. The intruder shuts the second session and replies to A with the encrypted random integer, sent by A in the second session.

2.3. Hashing method

2.4. Condivisione della chiave con Diffie - Hellman

  • A and B select two large prime numbers

  • A and B privately select a random integer (x for A and y for B)

  • A computes

  • B computes

Last updated