Two questions regarding Diffie-Hellman key exchange
matt at ucc.asn.au
Fri Sep 14 23:21:37 WST 2007
On Fri, Sep 14, 2007 at 05:11:46PM +0200, oliver.hanka at gi-de.com wrote:
> I am currently working on my master-thesis, which involves implementing
> the SSH protocol on a smart-card. Therefore I am using dropbear as a non
> cpu and memory intensiv blueprint.
> I am currently stucked with two questions regarding the Diffie-Hellman key
> exchange (SSH_MSG_KEXDH_INIT message). First of all, can you point me to a
> document where the prime number p (128Byte) is defined? Unfortunatly the
> RFC 4253 (SSH Transport Layer) doesn't give a hint.
Take a look at section 6.2 of RFC 2409. The naming is a bit
of a shambles - I'm not sure why diffie-hellman-group1-sha1
actually refers to "Second Oakley Group".
> The next question I am puzzled with: How come the result (e) of the client
> side 'e = g^x mod p' calculation is a 133 Byte value? At least, that's
> what it looks like when I sniff the packet with wireshark (formaly
> ethereal). From my understanding, a modulo calculation with a 128 byte
> value should produce a result equal or less than 128 byte. Am I wrong?
> Are there additional bytes added to e, which the RFC 4253 doesn't mention?
> (the message is described in section 8, RFC 4252, jan 2006)
Have a look at section 5, rfc4251. mpints have a 4 byte
lengthh, then may be padded by a byte if their most
significant bit is set.
More information about the Dropbear