<div dir="ltr">From Wikipedia: "<span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">As is the case for other popular public key cryptosystems, no mathematical proof of security has been published for ECC as of 2009</span><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">."</span><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">Why do we believe this is secure, other than the fact that in EEC's short life, no one has cracked it?  Compared to DLP and integer factorization, I doubt many people have tried.  BitCoin began to make me a believer, but consider this attack:</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><img src="cid:ii_ia9zcv320_14da11111df0bcd9" width="394" height="222"><br>​<br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">As you may know Edwards curves have formulas of the form:</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">    x^2 + y^2 = 1 + d*x^2*y^2</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">and that as d ==> 0, this morphs into a unit circle.  With d == 0, addition becomes addition of angles, and we can compute the modular inverse of a point, and easily reveal the secret multiplicand.  The security relies on the warping done by the d parameter.  However, what if we say:</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">    z^2 = -d*x^2*y^2</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px">then we have:</span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px"><br></span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px">    x^2 + y^2 + z^2 = 1</span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px"><br></span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px">which is just the unit sphere.  Looking at the drawing for this EC curve, where d == -30, you can see the angles don't add up like they do on the circle.  However, z increases rapidly when leaving the for corners.  The path climbs the sphere.  Visually, it looks like the path lengths may add up just like angles do for circles, once you realize the point moves in the positive z direction (towards us) when moving away from corners.</span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px"><br></span></font></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px">If the path lengths in fact add up on the sphere, then we trivially can break EEC, simply by transforming the problem into regular integer modular arithmetic and computing the mod</span></font><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">ular inverse.</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">Has this been investigated?</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">Actually... I investigated it, and no, the path lengths do not add up.  There are other avenues to explore.  If any transformation from EEC to regular modular arithmetic is found, it looks like it will transform into finding m when given m*g mod P, which is trivial.  When other systems, such as PKC based on matrix powers, were converted to regular integer equivalents, they at least had DLP to fall back on.  ECC, even if it also translated to regular DLP, uses keys that are far too short to be secure.</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px">Should we be concerned?</span></div><div><span style="color:rgb(37,37,37);font-family:sans-serif;font-size:14px;line-height:8.96000003814697px"><br></span></div><div><font color="#252525" face="sans-serif"><span style="font-size:14px;line-height:8.96000003814697px">Bill</span></font></div></div>