<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Cc: "<a href="javascript:;" onclick="_e(event, 'cvml', 'cryptography@metzdowd.com')">cryptography@metzdowd.com</a>" <<a href="javascript:;" onclick="_e(event, 'cvml', 'cryptography@metzdowd.com')">cryptography@metzdowd.com</a>><br>

Subject: Re: [Cryptography] IETF discussion on new ECC curves.<br>
Message-ID: <<a href="javascript:;" onclick="_e(event, 'cvml', '683EFDEB-06A0-4248-8579-CDCF17CAEF34@gmail.com')">683EFDEB-06A0-4248-8579-CDCF17CAEF34@gmail.com</a>><br><br>
Does it make sense to have a small set of curves that everyone uses?  Or would it be better to have every application or even every user generate their own curve, using some process that would convince skeptics that the curves had been generated randomly?<br>

<br>
--John</blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"></blockquote><div><br></div><div>I think that Mike Hamburg has been working on a Sage(?) script to select a curve satisfying the SafeCurves criteria deterministically from a random seed. (He mentioned this on another list.)</div>
<div><br></div>It makes most sense on a per-application basis -- the computational cost of verifying these conditions is fairly high.[*] <div><br></div><div>However. Some EC primitives lose some of their nice properties if users can select arbitrary curves (even over a single prime field). E.g., ECDSA is not subject to key-share attacks if all users use the same curve; it is, if arbitrary curves are permitted. (Koblitz and Menezes discuss this in their 'Another look' papers.)</div>
<div><br></div><div>So current uses of EC might need reëxamination.</div><div><br></div><div>-dlg</div><div><br></div><div>PS, or, taking the other side: There is, by the way, a good counter-argument to the 'just increase the bit-length' argument djb uses for single curves:</div>
<div><br></div><div>Suppose that an unknown fraction of elliptic curves has some undesirable property. By using a large number of curves, we decrease the variance of our risk in expectation. Under a minimax cost model, this is a big gain. (A certainty of small loss, rather than a small chance of catastrophe.)</div>
<div><br></div><div>[*] For applications that are extremely length-constrained -- e.g., some embedded devices -- provisioning with a per-device curve is the most feasible way of increasing security. I, personally, would like a standardized process for this. </div>