[Bug 1018522] Re: Enable optimized 64bit elliptic curve code contributed by Google

cc 1018522 at bugs.launchpad.net
Tue Oct 9 06:59:32 UTC 2012


So I decided to measure the relative performance of enabling this and
for various sizes, there is a marked improvement.

No enable-ec_nistp_64_gcc_128
                              sign    verify    sign/s verify/s
 160 bit ecdsa (secp160r1)   0.0001s   0.0005s   7889.4   2003.0
 192 bit ecdsa (nistp192)   0.0002s   0.0006s   6329.4   1666.1
 224 bit ecdsa (nistp224)   0.0002s   0.0008s   4867.4   1190.7
 256 bit ecdsa (nistp256)   0.0002s   0.0010s   4194.6   1015.7
 384 bit ecdsa (nistp384)   0.0005s   0.0022s   2134.0    456.3
 521 bit ecdsa (nistp521)   0.0009s   0.0049s   1096.0    205.3
 163 bit ecdsa (nistk163)   0.0004s   0.0017s   2660.8    583.8
 233 bit ecdsa (nistk233)   0.0007s   0.0023s   1437.2    444.0
 283 bit ecdsa (nistk283)   0.0011s   0.0048s    898.1    208.3
 409 bit ecdsa (nistk409)   0.0027s   0.0104s    376.0     95.7
 571 bit ecdsa (nistk571)   0.0059s   0.0232s    170.0     43.0
 163 bit ecdsa (nistb163)   0.0004s   0.0017s   2760.7    572.5
 233 bit ecdsa (nistb233)   0.0007s   0.0023s   1443.8    429.2
 283 bit ecdsa (nistb283)   0.0011s   0.0053s    898.5    187.8
 409 bit ecdsa (nistb409)   0.0027s   0.0116s    374.5     86.0
 571 bit ecdsa (nistb571)   0.0059s   0.0255s    169.5     39.2


With enable-ec_nistp_64_gcc_128
                              sign    verify    sign/s verify/s
 160 bit ecdsa (secp160r1)   0.0001s   0.0006s   7893.1   1791.3
 192 bit ecdsa (nistp192)   0.0002s   0.0006s   6287.6   1672.9
 224 bit ecdsa (nistp224)   0.0001s   0.0003s   7372.8   3263.7
 256 bit ecdsa (nistp256)   0.0002s   0.0006s   4320.8   1675.4
 384 bit ecdsa (nistp384)   0.0005s   0.0023s   2130.6    443.6
 521 bit ecdsa (nistp521)   0.0008s   0.0018s   1320.9    571.2
 163 bit ecdsa (nistk163)   0.0004s   0.0017s   2717.4    586.9
 233 bit ecdsa (nistk233)   0.0007s   0.0022s   1444.7    451.7
 283 bit ecdsa (nistk283)   0.0011s   0.0048s    898.3    206.3
 409 bit ecdsa (nistk409)   0.0027s   0.0104s    377.3     96.5
 571 bit ecdsa (nistk571)   0.0059s   0.0230s    168.3     43.5
 163 bit ecdsa (nistb163)   0.0004s   0.0017s   2759.1    574.6
 233 bit ecdsa (nistb233)   0.0007s   0.0023s   1459.6    435.0
 283 bit ecdsa (nistb283)   0.0011s   0.0053s    887.6    189.0
 409 bit ecdsa (nistb409)   0.0026s   0.0117s    379.3     85.7
 571 bit ecdsa (nistb571)   0.0059s   0.0259s    169.8     38.7

After conversing with Adam Langley, it seems does make sense to enable
this. Attached is a patch to build/makefile.

** Patch added: "openssl patch"
   https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1018522/+attachment/3388669/+files/openssl.patch

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to openssl in Ubuntu.
https://bugs.launchpad.net/bugs/1018522

Title:
  Enable optimized 64bit elliptic curve code contributed by Google

Status in “openssl” package in Ubuntu:
  New

Bug description:
  This is to turn on the code contributed by Google for optimized 64bit
  implementations of elliptic curves.

  From the OpenSSL changelog, http://www.openssl.org/news/changelog.html

  Specify "enable-ec_nistp_64_gcc_128" on the Configure (or config) command
       line to include this in your build of OpenSSL, and run "make depend" (or
       "make update"). This enables the following EC_METHODs:

  So it really is as simple as enabling an additional compile flag.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1018522/+subscriptions




More information about the foundations-bugs mailing list