Re: Curve25519/448 key agreement for SSH

denis bider <[email protected]>
Newsgroups gmane.ietf.secsh
Message-ID <[email protected]>
But X and K are different in each key exchange. The only way to make them same would be for both parties to conspire.

I have suggested solving this by reinterpreting X as an already encoded K, which may be negative. Well - that has a different issue: it violates mpint encoding when the first byte of X is zero...

All things considered, I don't think it really matters which way this is resolved. Just please make sure to be clear when you specify it. :) An imprecise specification may lead to problems that manifest in e.g. 1/256 of key exchanges.


Simon Josefsson <[email protected]> , 11/12/2015 8:50 AM:
denis bider <[email protected]> writes: 
 
> Simon - 
> 
> 
>> A simple approach would be to say that if the MSB is 1, 
>> prepend a zero byte.  However, the length difference 
>> would leak that information. 
> 
> The length difference might not be much of a problem, since K is never sent. 
 
It shouldn't be difficult to fingerprint (statistically, over many 
connections) if a remote application performs a hash on X bytes or X+1 
bytes.  Knowing which leaks the MSB of the derived secret. 
 
I'm inclined to add a security consideration describing this, and allow 
for the potential of a nice conference paper describing how to exploit 
this observation.  At this point, to fix this (as Damien described) 
appear less appealing. 
 
/Simon
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.