430 likes | 598 Views
Authenticated Key Exchange Protocols. 孫宏民 博士 hmsun@cs.nthu.edu.tw Phone: 03-5742968. 國立清華大學資訊工程系 資訊安全實驗室. Cryptographic System. Symmetric Cryptosystem. Stream Cipher DES (1977) IDEA (1992) RC5 (1994) Skipjack (1993) AES (2001). Symmetric Cryptosystem. Security Service:
E N D
Authenticated Key Exchange Protocols 孫宏民博士 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國立清華大學資訊工程系 資訊安全實驗室
Symmetric Cryptosystem • Stream Cipher • DES (1977) • IDEA (1992) • RC5 (1994) • Skipjack (1993) • AES (2001)
Symmetric Cryptosystem • Security Service: • Confidentiality • Authentication • Integrity • Advantage:High Speed • Disadvantages: • how to obtain a common secret key between two parities, the number of secret keys is too big, can not achieve nonrepudiation.
Asymmetric Cryptosystem • RSA (1978) • El-Gamal (1984) • McEliece (1978) • Knapsack (1978) • Elliptive Curve
Asymmetric Cryptosystem • Security Service: Confidentiality • Integrity • Authentication (by Signature) • Nonrepudiation (by Signature) • Advantage:a pair of keys for each user • Disadvantages: • Slow speed • Public key need to be authenticated by CA
One-way hash function • Input: X (unlimited length) Output: Y=H(X) (fixed length, e.g., 160 bit) • Given X, it is easy to compute Y. • Given Y, and H( ), it is computational infeasible to compute X. • Given X and Y, it is computational infeasible to find X’ such that Y=H(X’).
Digital Signature M Message Message Signature Generation Signature Verification Ture or False Signature(S) Private Key Public Key Signer A Verifier B
Hash Signature Functions : RSA DSA El-Gamal Elliptive Curve LUC Digital Signature M M S h(M) S Hash Functions : SHA MD5 FFT Snefru N Hash
Secure Communication between Client and Server • Using Symmetric Cryptosystem: Each client and the server share a common secret key. Disadvantages: 1. Secret key must be strong 2. If the secret key is revealed, the messages in the past will also be revealed. ID, E(M) Client Server E(M’)
Secure Communication between Client and Server • Using Asymmetric Cryptosystem: Use Digital Envelope (2) to send a session key. Disadvantages: 1. Public keys need to be authenticated by a CA. 2. Private key must be strong. 3. If the server’s private key is revealed, the messages in the past will also be revealed.
Authentication in general • Based on one or more of: • something a user has (smart card/token card) • something a user is (fingerprint/voiceprint/retinal scan) • something a user knows (password/short secret) • What’s a popular user authentication system based on three of these?
Secure Password Authentication • Remote user access • Goal: secure without requiring the user to carry/remember anything except password VPN traffic protected domain (authenticated using password) Remote client Firewall
Dictionary Attacks (Password Guessing Attacks) • An off- line, brute force guessing attack conducted by an attacker on the network. • Attacker usually has a “dictionary” of commonly-used passwords to try • People pick easily remembered passwords • “Easy- to- remember” is also “easy- to- guess”
Passwords in the Real World • Entropy is less than most people think • Dictionary words, e. g. “pudding”, “plan9” • – Entropy: 20 bits or less • Word pairs or phrases, e. g. “hate2die” • – Represents average password quality • – Entropy: around 30 bits • Random printable text, e. g. “nDz2\ u> O” • – Entropy: slightly over 50 bits
ID , h(Password) Server Client Password-based protocols • Telnet, FTP are insecure ID , Password Server Client • Hash function is not helpful due to dictionary attacks.
Server Client ID Cha h(Cha,Password) Password-based Protocol with Challenge • Insecure against the dictionary attacks.
We need .............. a password-based authentication protocol which is secure against dictionary attacks.
Secure Communication between Client and Server • What to do after authentication? • We need a common session key to protect our communication. • Diffie-Hellman key agreement provides two parties to share a common session key.
Diffie-Hellman Key Agreement • Goal : to provide two parties share a common session key • p : large prime, g : generator gRa mod p Client Server gRb mod p K= (gRa)Rb mod p K= (gRb)Ra mod p
Diffie-Hellman Key Agreement • Diffie-Hellman key agreement is vulnerable to the man-in-the-middle attack; it does not reach authentication • How about Diffie-Hellman key agreement using public key? • Problem: (1) does not provide forward secrecy, (2) hard to remember (not a password). Client Server
Forward Secrecy • Prevents one compromise from causing further damage • CompromisingShould Not Compromise • Current passwordFuture passwords • Old passwordCurrent password • Current passwordCurrent or past session keys • Current session keyCurrent password
Research Goal • To design a user authentication and key agreement protocol via password. • The protocol must satisfy the following requirements: 1. based on password only, 2. password may be weak, 3. be secure against the dictionary attack, 4. can provide perfect forward secrecy.
Encrypted Key Exchange (EKE)[Bellovin and Merritt, 1992] • Two parties share a common password • EKE can withstand dictionary attack P P Client Server Generate encrypt/decrypt keys Generate R R(Cha) R(Cha||Chb) R(Chb)
Three-Party Key Exchange Protocol • Each client shares an easy-to-remember password with the server. • The protocol is responsible for establishing secure communication between two clients via the help of the server. • Application: E.g., ICQ, or mobile users
record get guess Undetectable On-line guessing attack (I)[Ding and Horster, 1995] A S B
guess compute Undetectable On-line guessing attack (II)[Ding and Horster, 1995] S B
Off-line Guessing Attack on STW-3PEKE[Lin, Sun, and Hwang, 2000] A* S* B
LSH-3PEKE (with server’s public key)[Lin, Sun, and Hwang, 2000] A S B
LSSH-3PEKE (without server’s public key)[Lin, Sun, Steiner, and Hwang, 2001] A S B A,B
Conclusions • Password authentication and key agreement protocols are widely used. • EX:Electronic Commerce, Electronic Stock Trading • Two-parties protocols are suitable for client/server environment. • EX:Telnet, FTP • Three-Party protocols are suit for single server and multiple clients environment. Any two clients can authenticate each other and reach secure communication.
MQV B A
Plaintext-Equivalent Protocols • EKE, Bellovin & Merritt: 1992 • “Secret public- key”, Gong, Lomas, Needham, Saltzer: • 1993 • SPEKE, Jablon: 1996 • OKE, Lucks: 1997
Verifier-based Protocols • A- EKE, Bellovin & Merritt: 1994 • B- SPEKE, Jablon: 1997 • SRP, Wu: 1997 • GXY, SNAPI X, AuthA, and PAK X
Verifier-based Protocol • A server does not store plain password directly. • Instead of storing a plain password, a server stores a verifiable text (called verifier). • It provides higher security level: an attacker must perform dictionary attack when the server is corrupted. • Furthermore, a verifier-based protocol can withstand the stolen verifier attack.
References 1. Bellovin, S. Merritt, M., 1992, “Encrypted key Exchange: Password-based Protocols Secure against Dictionary Attacks. Proceedings of IEEE Symposium on Research in Security and privacy, Oakland. 2. Steiner, M. Tsudik G. and Waidner, M., 1995, “Refinement and Extension of Encrypted Key Exchange,” ACM Operating Systems Review, Vol.29, Issue 3, pp. 22-30. 3. Ding, Y. and Horster, P., 1995, “Undetectable On-line Password Guessing Attacks”, Technical Report, TR-95-13-F, July. 4. C. L. Lin, H. M. Sun, and T. Hwang, 2001, “Efficient and Practical DHEKE Protocols ,” ACM Operating Systems Review, Vol. 35, No. 1, pp. 41-47. 5. C. L. Lin, H. M. Sun, M. Steiner, and T. Hwang, 2001, "Three-party Encrypted Key Exchange Without Server Public-Keys,"IEEE Communications Letters, Vol. 5, No. 12, pp. 497-499. 6. C. L. Lin, H. M. Sun, and T. Hwang, 2001, “Efficient and Practical DHEKE Protocols ,” ACM Operating Systems Review, Vol. 35, No. 1, pp. 41-47.