Thank you, Johannes, for your comments. I will integrate them in the next revision.

I do agree that for online protocols like IKE and TLS the point compression of the ephemeral ECDH is not that beneficial.

Point compression is more beneficial for storage security for reasons of performance and storage efficiency. For storage efficiency side: when there are multiple recipients per message, each associated with one ECDH-related field, it's possible for ECDH-specific payload to get arbitrary large for a fixed short message. For the performance argument: if the message was encrypted to N recipients, to decode it only one recipient will be used, and thus the calculation of 'y' is done once but the space is saved for N.

Even for certificates that have one public key there is some benefit, given that the certificates are pre-precessed for chain validation and are often cached.

On 01/04/2013 04:10 AM, Johannes Merkle wrote:
Hi Andrey,

point compression has been deleted from the draft due to the strong objections 
in this WG. The possibility to choose
from two distinct encodings was considered inappropriate complexity given the 
limited benefit.

Generally, I think that your draft has its value, albeit probably not for IKE.

Some nits:
Line 256:
    Recall that the x is an integer in the underlying finite field.
should be
    Recall that the x is an element in the underlying finite field represented 
by an integer.
                            ^^^^^^^                                
^^^^^^^^^^^^^^^^^^^^^^^^^
Line 352:
    When p = 4*k+3, as is the case of [SuiteB] the Brainpool curves
should be
    When p = 3 mod 4, as is the case of [SuiteB] and the Brainpool curves
             ^^^^^^^                             ^^^
Remark: Writing p = 4*k+3 is unfortunate, as k has been used to denote the 
private key in Section 4.2

Section 5:
    First, key pairs must be generated as defined in Section 4.2 to allow
    compact representation.
But, as you have pointed out in Section 3:
    Some protocols, such as ECDH, don't depend on the exact value of
    the y.
Thus, in these protocols, it does not matter, if the key is "compliant" or not. 
This should be explained, not only in
Section 5 but also in the beginning of Section 4.2.

regards,
Johannes


Andrey Jivsov schrieb am 03.01.2013 08:07:
Sorry for bringing up this so late, but I just noticed the discussion about the 
point compression in this thread.

I posted the "Compact representation of an elliptic curve point" 
http://tools.ietf.org/html/draft-jivsov-ecc-compact
that I think is helpful as a generic definition of a compressed point.

I know that https://datatracker.ietf.org/doc/draft-merkle-ikev2-ke-brainpool/ 
-03 moved away from the compressed
representation, but the preceding discussion is one of the reasons why I 
created this draft. It's unfortunate that with
current state of ECC at IETF there is always an uncertainty/complexity such as 
"do we use an uncompressed point or
compressed point; and there is IPR". There is also an issue of what's hashed 
and how the {x,y} is encoded. In the end in
practice this means that there is no compression used.

I want to add as an alternative point of view that for new features or 
protocols there is also a way to reduce
complexity by using only the compact point representation, such as in 
http://tools.ietf.org/html/draft-jivsov-ecc-compact.
_______________________________________________
IPsec mailing list
IPsec@ietf.org
https://www.ietf.org/mailman/listinfo/ipsec




_______________________________________________
IPsec mailing list
IPsec@ietf.org
https://www.ietf.org/mailman/listinfo/ipsec

Reply via email to