<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Feb 21, 2014 at 2:58 PM, Michael Hamburg <span dir="ltr"><<a href="mailto:mike@shiftleft.org" target="_blank">mike@shiftleft.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="word-wrap:break-word"><div><br></div><div><a href="https://sourceforge.net/p/ed448goldilocks/code/ci/master/tree/" target="_blank">https://sourceforge.net/p/ed448goldilocks/code/ci/master/tree/</a></div>
</div></blockquote><div><br></div><div><br></div><div><div>Cool.  It would be nice to see this on eBACS, but its performance looks good on my Macbook Air -</div><div><br></div><div>Scalar mults per second:</div><div>----</div>
<div>OpenSSL P-256    ~2800</div><div>OpenSSL P-384    ~1400</div><div>OpenSSL P-521    ~670</div><div>Curve25519-donna-c64 ~14300</div><div>Goldilocks-448   ~5900</div><div>(</div><div>  OpenSSL 1.0.2-beta1</div><div>  <a href="https://github.com/agl/curve25519-donna">https://github.com/agl/curve25519-donna</a></div>
<div>  <a href="http://sourceforge.net/p/ed448goldilocks/">http://sourceforge.net/p/ed448goldilocks/</a></div><div>  2013 Macbook Air, 1.7 GHz Core i7</div><div>)</div><div><br></div><div>How do we compare the efficiency of different-size curves?  Is it reasonable to assume performance scales as O(n) due to scalar size and O(n^1.6) due to Karatsuba, or O(n^2.6) overall, where n is the security level - i.e. the sqrt of the order of the base point?</div>
<div><br></div><div>For example, curve25519 has a security level of ~126 bits, so would we expect a comparably efficient curve of Goldilocks size (~223-bits security) to be ~4.4x slower = (223/126)^2.6 ?</div><div><br></div>
<div><br></div><div>Trevor</div></div><div><br></div></div></div></div>