Subject: Re: [Fwd: SIP privacy]

From: Hans Viens <[email-masked]>
Date: Tue, 01 Jun 1999 14:23:30 -0400

Hi!

Is that mean that the public and private key MUST be generate by ElGamal 
algorithm ???

Hans....
----------------------------------------------------------

Jonathan Rosenberg wrote:

 > First, you encrypt with the recipients public key, not the callers.

Correct. Encrypting with the caller's public key would be pointless -
nobody else could do anything with it.

However, the operation is a bit more involved than described in the
bullets below. See RFC 2440 for the details and any cryptography book
(e.g., Kaufman/Perlman/Speciner) for a high-level description. The SIP
spec intentionally leaves the details unspecified, as it is long enough
as is.

 > Second, there is no need for a signature, you could also do that. PGP
 > allows for either MD5 or SHA-1, we don't mandate a particular one (its
 > similar to not having a baseline codec),though I expect most will have
 > at least MD5.

As I mentioned on my response on the pint list, the OpenPGP
specification defines what is required (RFC 2440) :

Implementations MUST implement Triple-DES. Implementations SHOULD
    implement IDEA and CAST5.Implementations MAY implement any other
    algorithm.

Implementations MUST implement SHA-1. Implementations SHOULD
    implement MD5.

Implementations MUST implement DSA for signatures, and Elgamal for
    encryption. Implementations SHOULD implement RSA keys.
    Implementations MAY implement any other algorithm.

However, if you write your own PGP implementation, you are probably
wasting your time (and risking making security mistakes). The whole
point of using PGP is to be able to use existing implementations.

 > Subject: SIP privacy
 > Date: Wed, 26 May 1999 15:50:49 -0400
 > From: Hans Viens <[email-masked]>
 > To: [email-masked]
 >
 > Hi!
 >
 > I'd like to know if my understanding of SIP encryption is good... if not...
 > please tell me what's wrong.
 >
 > If I want to send an encrypted request:
 >
 > - I encrypt the part of the request with the sender's private key;
 > - Create a signature with a hash algorithm (MD5 or SHA-1);
 > - Prepended the signature to the encrypted message;
 > - Then send it
 >
 > Is it the way it should be ???
 >
 > Hans...

--
Henning Schulzrinne   http://www.cs.columbia.edu/~hgs