Subject: RE: [SIP] Digest Authentication

From: "Sunil Veluvali" <[email-masked]>
Date: Mon, 6 Nov 2000 14:18:14 -0800

With respect to MD5 authentication, is the following the correct way to
compute the response tag of the authentication header for a 401
Unauthorized? I am assuming cnonce, noncecount and qop are not specified.

1. get the method name from CSeq of the response
2. get nonce, realm from the WWW-Authenticate header
3. Query uid and password from user

4. Following RFC 2617, setup the following:
 nonce      = WWW-Authenticate::nonce
 cnonce     = ""
 user       = query_user_for_uid()
 realm      = WWW-Authenticate::realm
 password   = query_user_for_password()
 algorithm  = "MD5"
 noncecount = ""
 method     = CSeq::method
 qop        = ""
 uri        = registrar

5. Calculate DigestCalcHA1(algorithm, user, realm, password, nonce,cnonce);
6. Calculate DigestCalcResponse(HA1, nonce,noncecount, cnonce, qop,
                                method, uri, HA2, response);

thanks,
Sunil Veluvali
Sylantro Systems

-----Original Message-----
From: Sunitha Kumar [mailto:[email-masked]]
Sent: Friday, October 20, 2000 10:54 AM
To: Mark Wisdom
Cc: [email-masked]
Subject: Re: [SIP] Digest Authentication

Mark: 
With respect to your question about mutual authentication, maybe PGP could
be considered as the way to go. 
Using PGP, the server can authenticate the client, and the client could
verify that this is the server. 
Using Digest for mutual authentication may require 2 independent msgs to go
from the server to client and client to server, 
each sending each other their generated nonces, and the other forming the
digest with that nonce. 
Just my 2c. 
sunitha 

Mark Wisdom wrote: 
I need some clarification on, and help with, digest authentication. 
rfc2617, section 3.2.1 states: 
> A nonce might, for example, be constructed as the base 64 
> encoding of 
> 
>     time-stamp H(time-stamp ":" ETag ":" private-key) 
Then in section 4.5 it states: 
> The server created "nonce" value is implementation dependent, 
> but if it contains a digest of the client IP, a time-stamp, 
> the resource ETag, and a private server key (as recommended 
> above) then a replay attack is not simple. 
rfc2543bis-02, section 14.3 states: 
> 4. The example procedure for choosing a nonce based on Etag 
>    does not work for SIP. 
It would be nice if rfc2543 provided an alternate example for 
creating a nonce. Can this be added to the rfc2543? 
Does anyone have any guidelines on creating a nonce for use 
with digest authentication? 
rfc2543bis-02, section 14.3 also states: 
> 5. The Authentication-Info and Proxy-Authentication-Info 
>    fields are not used in SIP. 
If I understand correctly, not allowing the Authentication-Info 
header eliminates support for mutual authenication (i.e. 
allowing the server to also authenticate itself to the client 
by proving to the client that it knows the client's secret). 
Does SIP allow for mutual authentication when using digest 
authentication? 
If not, can we modify rfc2543 so that mutual authentication is 
possible? 
Thanks, 
Mark Wisdom 
_______________________________________________ 
SIP mailing list 
[email-masked] 
http://lists.bell-labs.com/mailman/listinfo/sip
-- 
Sunitha Kumar
http://www.vovida.com

_______________________________________________
SIP mailing list
[email-masked]
http://lists.bell-labs.com/mailman/listinfo/sip