Efficient nonce-based authentication scheme for Session Initiation Protocol



Similar documents
Efficient Nonce-based Authentication Scheme for. session initiation protocol

Cryptography. Debiao He. School of Mathematics and Statistics, Wuhan University, Wuhan, People s Republic of China. hedebiao@163.

An Improved Authentication Protocol for Session Initiation Protocol Using Smart Card and Elliptic Curve Cryptography

A More Robust Authentication Scheme for Roaming Service in Global Mobility Networks Using ECC

Client Server Registration Protocol

Application of Automatic Variable Password Technique in Das s Remote System Authentication Scheme Using Smart Card

User authentication in SIP

Bit Chat: A Peer-to-Peer Instant Messenger

Secure File Transfer Using USB

Authentication Types. Password-based Authentication. Off-Line Password Guessing

2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries

CRYPTANALYSIS OF A MORE EFFICIENT AND SECURE DYNAMIC ID-BASED REMOTE USER AUTHENTICATION SCHEME

Module 8. Network Security. Version 2 CSE IIT, Kharagpur

Single Sign-On Secure Authentication Password Mechanism

Asymetrical keys. Alices computer generates a key pair. A public key: XYZ (Used to encrypt) A secret key: ABC98765 (Used to decrypt)

On the Security Vulnerabilities of a Hash Based Strong Password Authentication Scheme

Computer Security: Principles and Practice

How To Use Kerberos

Capture Resilient ElGamal Signature Protocols

Keywords Decryption, Encryption,password attack, Replay attack, steganography, Visual cryptography EXISTING SYSTEM OF KERBEROS

Final Exam. IT 4823 Information Security Administration. Rescheduling Final Exams. Kerberos. Idea. Ticket

CUNSHENG DING HKUST, Hong Kong. Computer Security. Computer Security. Cunsheng DING, HKUST COMP4631

A Lightweight Secure SIP Model for End-to-End Communication

A novel deniable authentication protocol using generalized ElGamal signature scheme

Unregister Attacks in SIP

Chapter 16: Authentication in Distributed System

MANAGING OF AUTHENTICATING PASSWORD BY MEANS OF NUMEROUS SERVERS

A Stubborn Security Model Based on Three-factor Authentication and Modified Public Key

CS 494/594 Computer and Network Security

Securing Session Initiation Protocol for VOIP Services

Authentication and Authorization Applications in 4G Networks

Elements of Applied Cryptography. Key Distribution. Trusted third party: KDC, KTC Diffie-Helmann protocol The man-in-the-middle attack

The Feasibility and Application of using a Zero-knowledge Protocol Authentication Systems

Secure Authentication of Distributed Networks by Single Sign-On Mechanism

7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?

Anat Bremler-Barr Ronit Halachmi-Bekel Jussi Kangasharju Interdisciplinary center Herzliya Darmstadt University of Technology

Public Key Cryptography. c Eli Biham - March 30, Public Key Cryptography

EXAM questions for the course TTM Information Security May Part 1

Security vulnerabilities in the Internet and possible solutions

1. discovery phase 2. authentication and association phase 3. EAP/802.1x/RADIUS authentication 4. 4-way handshake 5. group key handshake 6.

Prevention of Anomalous SIP Messages

Using Foundstone CookieDigger to Analyze Web Session Management

A SMART CARD-BASED MOBILE SECURE TRANSACTION SYSTEM FOR MEDICAL TREATMENT EXAMINATION REPORTS. Received January 2010; revised May 2010

A secure login system using virtual password

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

Kerberos. Guilin Wang. School of Computer Science, University of Birmingham

How To Attack A Phone With A Billing Attack On A Sip Phone On A Cell Phone On An At&T Vpn Vpn Phone On Vnet.Com (Vnet) On A Pnet Vnet Vip (Sip)

A Novel Approach for Evaluating and Detecting Low Rate SIP Flooding Attack

An Overview of Communication Manager Transport and Storage Encryption Algorithms

National Security Agency Perspective on Key Management

Cryptography and Network Security

Vulnerability Analysis on Mobile VoIP Supplementary Services and MITM Attack

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Chapter 7 Transport-Level Security

SECURITY ANALYSIS OF PASSWORD BASED MUTUAL AUTHENTICATION METHOD FOR REMOTE USER

Multi-Factor User Authentication in Wireless Sensor Networks

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

Q: Why security protocols?

Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015

Alternative: Strong password Protocols

Authentication protocol for fingerprint feature extraction and IBC in monitoring systems

1. a. Define the properties of a one-way hash function. (6 marks)

CRYPTOGRAPHY IN NETWORK SECURITY

An Efficient Implementation For Key Management Technique Using Smart Card And ECIES Cryptography

SECURITY ANALYSIS OF A SINGLE SIGN-ON MECHANISM FOR DISTRIBUTED COMPUTER NETWORKS

QR-CODE BASED NON-REPUDIATION TRANSACTION VERIFICATION SYSTEM

SECURITY ANALYSIS OF A SINGLE SIGN-ON MECHANISM FOR DISTRIBUTED COMPUTER NETWORKS

Authentication requirement Authentication function MAC Hash function Security of

SIP, Session Initiation Protocol used in VoIP

Programming SIP Services University Infoline Service

Network Security. HIT Shimrit Tzur-David

Three attacks in SSL protocol and their solutions

A Layered Signcryption Model for Secure Cloud System Communication

A Vulnerability in the Song Authentication Protocol for Low-Cost RFID Tags

VoIP Security. Seminar: Cryptography and Security Michael Muncan

Secure Remote Password (SRP) Authentication

SIP Trunking Manual. For Samsung OfficeServ. Sep 18, 2006 doc v Sungwoo Lee Senior Engineer

Computer and Network Security. Outline

2. SIP Authentication Mechanisms. 2.1 SIP Digest Authentication

Two Factor Zero Knowledge Proof Authentication System

Authentication Application

Efficient ID-based authentication and key agreement protocols for the session initiation protocol

SFWR ENG 4C03 - Computer Networks & Computer Security

Radius/LDAP authentication in open-source IP PBX

SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES

Practice Questions. CS161 Computer Security, Fall 2008

A New Efficient Digital Signature Scheme Algorithm based on Block cipher

ABSTRACT I. INTRODUCTION

Transcription:

Efficient nonce-based authentication scheme for Session Initiation Protocol Jia Lun Tsai National Chiao Tung University, Taiwan, R.O.C. crousekimo@yahoo.com.tw Abstract: In recent years, Session Initiation Protocol (SIP) is more and more popular. However, there are many security problems in the Session Initiation Protocol. In 2005, Yang et al. [2] proposed a secure authentication scheme for Session Initiation Protocol. This authentication scheme is based on Diffe-Hellman [9] concept, so the computation cost of this authentication scheme is very high. In order to improve this shortcoming, Durlanik et al. [1] also proposed an authentication Scheme using ECDH in 2005. However, the computation cost of this authentication scheme is still very high. In this paper, we propose an efficient noncebased authentication scheme. The computation cost of this authentication scheme is lower than Yang et al. s authentication scheme and Durlanik et al. s authentication scheme, and it is very suitable for low computation power equipment. Keywords: Session Initiation Protocol, authentication scheme, HTTP Digest authentication 1 Introduction Session Initiation Protocol (SIP) [3, 4, 8] is the Internet Engineering Task Force (IETF) standard for IP telephone. The Session Initiation Protocol (SIP) is an application-layer control (signaling) protocol that can create, modify and terminate sessions with one or more participants. These sessions include Internet multimedia conferences, Internet telephone calls and multimedia distribution. Members in a session can communicate via multicast or via a mesh of unicast relations, or a combination of these. Session Initiation Protocol is a text-based peer-to-peer protocol, and incorporates elements of two widely used Internet protocols: Hyper Text Transport Protocol (HTTP) used for Web and Simple Mail Transport Protocol (SMTP) [6]. Authentication is the most important for Session Initiation protocol. When a user wants to use Session Initiation Protocol, this user must be authenticated. However, other than needing to recognize whether a user s identity is legal, the user will also need to recognize whether the server is the correct one as well. For these reasons, the authentication scheme of SIP is not safe, because the SIP authentication scheme is derived from HTTP Digest authentication [4]. The authentication scheme of SIP uses challenge-response mechanism to only verify the identity of the user and is vulnerable to off-line password guessing attack, server spoofing. In order to resist these flaws, Yang et al. [2, 8] proposed a secure authentication scheme for session initiation protocol. This authentication scheme is based on Diffe-Hellman Key Exchange [9], which depends on the difficulty of discrete logarithms. The computation cost of the Yang et al. s authentication scheme is very high, so it is not suitable for low computation power equipments. In order to improve this shortcoming, Durlanik et al. [1] also proposed an authentication Scheme using ECDH in 2005. In this paper, we propose an efficient noncebased authentication scheme. This authentication scheme is based on the random nonce. All communication messages are encrypted/ decrypted by using one-way hash function and exclusive-or operation, so its computation cost is low. It is very suitable for low computation equipment. 1

2 Review Yang et al. s scheme and Durlanik et al. s scheme In this section, we reviewed Yang et al. s authentication scheme [2] and Durlanik et al. s authentication scheme [1]. Before we review these two proposed authentication schemes for Session Initiation Protocol, we define the symbols first. Symbol H() PW Table 1. Symbol table Explanation One-way hash function Exclusive or The remote user password Concatenation The random nonce generated by the user N and the server. X->Y:M X send a message M to Y U, S Each represents as user and server. P Large prime number Dc,ds Represents the public key and private key G Base point in the curve 2.1 Review Yang et al. s authentication scheme In this section, we review Yang et al. s authentication scheme. This authentication scheme is based on Diffie-Hellman Key Exchange (Diffie and Hellman, 1976) and enhances the security of the orginal SIP authentication scheme. 2.1.1 Registration Phase When a user wants to register and become a new legal user, the person must first submit his or her username and password to remote server. The username and password is used to verify the identity of the user and server. When the server receives this user s username and password, the server stores this username and password. 2.1.2 Authentication Phase If a legal user wants to login in system, this user must type his or her username and password. All steps of authentication phase excute as following. Step1: U -> S : Request( username, t 1 h(pw)), where t1=g r1 mod p. The user generates a random number r 1, and use r 1, g, p to compute t 1 =g r1 mod p. Step2: S -> U : Challenge( relam, t 2 h(pw), h(t2,k). When the server receives the user s messages, the server uses username to get the user s pw from its database. The server uses pw to compute h(pw) t 1 h(pw) to get t1. Furthermore, the server generate a random number r 2 and use t 1, r 2, g, p, pw to compute t 2 h(pw), K=t1 r2 mod p, and 2

h(t 1, K). Then the server sends Challenge (reakm, t 2 h(pw), h(t1, K)) to the user. Step3: U -> S : Response( username, relam, h(username, realm, K)) When the user receives the Challenge message, the user uses h(pw) to compute h(pw) t 2 h(pw) to get t 2. Then the user uses t 2, r 1, p to compute K=t r1 2 mod p and h(t 1,K). If the computed h(t 1, K) is not the same as the Challenge(h(t 1, K)), the user rejects the server request. Otherwise, the user use username, realm, K to compute h(username, realm, K) and sends Response ( username, relam, h(username, realm, K )) to the server. Step4: When the server receives the Response message, the server use username, realm, K to compute h(username, realm, K). If the computed h(username, realm, K) is the same as the Response(h(username, realm, K)), the server accepts the user s connection. Otherwise, the server rejects the user request. Fig. 1. Yang et al. s authentication scheme 2.2 Review Durlanik et al. s authentication scheme In this section, we review Durlanik et al. s authentication scheme. This authentication scheme is bassed on Elliptic Curve Diffie-Hellman(ECDH). 2.2.1 Registration Phase In Durlanik et al. s authentication scheme, both the server and the user have a pre-shared password for authentication and an elliptic curve public key pair. 3

2.2.2 Authentication Phase If a legal user wants to login in system, this user must type his or her username and password. All steps of authentication phase excute as following. Step1: U -> S : Request( username, d c G h(pw)) The user sends a Request message including its username and its public key xor by its hashed password. Step2: S -> U : Challenge( relam, d s G h( PW), h(d c G,d c d s G) When the server receives the Request message, the server computes d c G h(pw) h(pw) to obtain d c G. Then, the server computes a session key K=d s d c G, d s G h( PW), and h(d c G,d c d s G). Finally, the server send Challenge( relam, d s G h( PW), h(d c G,d c d s G) message to the user. Step3: When the user receives the challenge messages, this user computes d s G h( PW) h( PW) to obtain d s G. Then, the user computes h(d c G,d c d s G) to verify received h(d c G,d c d s G). If they are equal, the user computes a session key K=d s d c G. Step4: U -> S : Response( relam, username, h(username, realm, K)) The user computes h(username, realm, K). Then, the user sends Response( relam, username, h(username, realm, K)) to the server. Step5: When the server receives Response( relam, username, h(username, realm, K)), the server computes h(username, realm, K). Then, the server verifies Response message. If they are equal, the server accepts this connection. Otherwise, the server disconnect this connection. Fig. 2. Durlanik et al. s authentication scheme 4

3 Our proposed authentication scheme In this section, we reviewed our authentication scheme. Before we review our proposed authentication scheme for Session Initiation Protocol, we define the symbols first. 3.1 Registration Scheme When a user wants to register and become a new legal user, this user must first submit his/her username and password to remote server. The username and password PW is used to verify the identity of the user and server. When the server receives this user s username and password, the server stores the user s username and password PW. 3.2 Authentication Scheme If a legal user wants to login in system, he/she must type his or her username and password. All steps of authentication phase excute as following. Step1: U -> S : Request( username, N c ) The user generates a random number N c and sends Request( username, N c ). Step2: S -> U : Challenge( realm, N s h(pw N c ), h(pw N s N c )) When the server receives the Request message, the server generates a random N s and uses N s, N c, pw to compute N s h(pw N c ). Then, the server uses pw, N s, N c to compute h(pw N s N c ) and sends Challenge(realm,N s h(pw N c ), h(pw N s N c )) to the user. Step3: U -> S : Response( username, realm, h(n s pw N c )) When the user receives the Response message, this user uses N c, pw to compute h(pw N c ) and uses h(pw N c ), N s h(pw N c ) to compute h(pw N c ) N s h(pw N c ) to get N s. Then, the user uses pw, N s, N c to compute h(pw N s N c ). If the computed h(pw N s N c ) is not the same as Challenge(h(pw N s N c )), the user rejects the server request. Otherwise, the user uses N s, pw, N c to compute h(n s pw N c ) and sends Response(username,realm,h(N s pw N c )) to the server. Step4: When the server receives Response message, the server uses N s, pw, N c to compute h(n s pw N c ). If the computed h(n s pw N c ) is not the same as Response(h(N s pw N c )), the server rejects the user request. Otherwise, the server accepte the connection. Step5: After the server and the remote user authenticate each other, they use Ns as a session key SK= Ns. 5

Fig. 3. Our authentication scheme 4 Security Analysis Below we can examine whether the communication agreement is safety, we will examine our authentication scheme on various known attacks. 4.1 Reply Attack Our authentication scheme uses the random nonce to withstand the replay attack. Authentication messages { N s h(pw N c ), h(pw N s N c ), h(n s pw N c )} are generated by random nonce Nc and the random nonce Ns. The random nonce Nc and the random nonce Ns are generated independently, and both values will deficient in each session. Assume an adversary wants to enter the system. This adversary can not enter the system by resending messages ever transmitted by a legal user, because the random nonce Ns is different. 4.2 Password Guess Attack In our authentication scheme, it is impossible for an adversary to guess the user s password. The password of a user was protected by the random number N c and the random number N s. The random number N s is generated by the server and the random number N c is generated by the user. They are different in the next session, so our authentication scheme can withstand password guess attack. 6

4.3 Server Spoofing Attack In our authentication scheme, we will obviously ask the user to know whether the server is the correct one before authenticating the user. Therefore, if an attacker wants to masquerade as the server to cheat the user, this attacker must have the user password PW. If someone is discovered to masquerade as the server to cheat the user, the user will disconnect all following transmissions. Hence, any server spoofing attack will fails. 4.4 Impersonation Attack In our scheme, an attacker can not masquerade as a legal user. To successfully perform the impersonation attack, the attacker must require the knowledge of PW to generate and interpret authentication messages correctly, because all the authentication messages between the server and the user are protected by pw. pw is memorized by the user. If someone is discovered to masquerade as the legal user to cheat the server, the server will disconnect all following transmissions. Hence, any impersonation attack will fails. 4.5 Security of Session Key A session key is protected by user s password PW and two random numbers. Whenever the communication ends between the user and the server, the key will self destruct immediately and will not be reused at the next time. When the user reenters the system, a new session key will be generated to encrypt the information during the communication process. Therefore assuming the attacking has obtained a session key, the person will not be able to use the session key to decode the information in other communication processes. Because the random nonce Ns and random nonce N c are generated randomly, it will not be able to use a known session key to calculate the value of the next session key. 5 Compare with other authentication scheme In this section, we compare our nonce-based authentication scheme with Yang et al. s authentication scheme [2] and Durlanik et al. s authentication scheme [1]. All comparisons are described as following. Table 2. To compare with other two authentication schemes Hash Exclusive Exponentiation ECC Function Or Computation Computation Number of message flows Session Key Server Spoofing Off-Line Password guessing Our 7 4 0 0 1.5 Yes No No Yang et al. 7 4 4 0 1.5 No No No Durlanik et al. 7 2 0 6 1.5 Yes No No 6 Conclusion In this paper, we describe Yang et al. s authentication scheme. The computation cost of Yang et al. s authentication schemes is very high. In order to improve this flaw, we propose a 7

nonce-based authentication scheme. This nonce-based authentication scheme is only based on nonce. The computation cost of this authentication scheme is lower than Yang et al. s authentication schemes. It is very suitable for low computation equipment. References [1] A. Durlanik, I. Sogukpinar, SIP Authentication Scheme using ECDH, World Enformatika socity Transaction on Engineering computing and technology, vol.8, pp. 350-353, 2005. [2] C. C. Yang, R. C. Wang, and W. T. Liu, Secure authentication scheme for session initiation protocol, Computers & Security, vol. 24, pp. 381-386, 2005. [3] J. Arkko, et al., Security mechanism agreement for SIP sessions, IETF Internet draft (draft-ietf-sip-sec-agree-04.txt), June 2002. [4] J. Franks et al. HTTP authentication: basic and digest access authentication, IETF RFC2617, June 1999. [5] J. Rosenberg, et al., SIP: session initiation protocol, IETF RFC3261, June 2002. [6] L. Veltri, S. Salsano, D. Papalilo, SIP security issues: the SIP authentication procedure and its processing load, IEEE Network, vol. 16, no. 6, pp. 38-44, 2002. [7] M. Handley et al., SIP: session initiation protocol, IETF RFC2543, March 1999. [8] M. Thomas, SIP security requirements, IETF Internet draft (draftthomas-sip-sec-reg-00. txt), November 2001 (work in progress). [9] W. Diffe, M. Hellman New directions in cryptology, IEEE Transaction on Information Theory, vol. 22, no. 6, 1976. 8