Skip to content

Commit

Permalink
Improve EC efficiency.
Browse files Browse the repository at this point in the history
  • Loading branch information
45264 committed Nov 15, 2001
1 parent bbc206f commit 3ba1f11
Show file tree
Hide file tree
Showing 4 changed files with 373 additions and 13 deletions.
13 changes: 10 additions & 3 deletions CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@
*) applies to 0.9.6a/0.9.6b/0.9.6c and 0.9.7
+) applies to 0.9.7 only

+) Use wNAFs in EC_POINTs_mul() for improved efficiency (about 10%
better than before for single multiplications over P-192 or P-224).
[Bodo Moeller]

-) [In 0.9.6c-engine release:]
Add support for Broadcom crypto accelerator cards, backported
from 0.9.7.
Expand Down Expand Up @@ -943,9 +947,12 @@ des-cbc 3624.96k 5258.21k 5530.91k 5624.30k 5628.26k
don't write to the wrong index in ERR_set_error_data.
[Bodo Moeller]

+) Function EC_POINTs_mul for simultaneous scalar multiplication
of an arbitrary number of elliptic curve points, optionally
including the generator defined for the EC_GROUP.
+) Function EC_POINTs_mul for multiple scalar multiplication
of an arbitrary number of elliptic curve points
\sum scalars[i]*points[i],
optionally including the generator defined for the EC_GROUP:
scalar*generator + \sum scalars[i]*points[i].

EC_POINT_mul is a simple wrapper function for the typical case
that the point list has just one item (besides the optional
generator).
Expand Down
1 change: 1 addition & 0 deletions crypto/ec/ec.h
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,7 @@ void ERR_load_EC_strings(void);
/* Error codes for the EC functions. */

/* Function codes. */
#define EC_F_COMPUTE_WNAF 143
#define EC_F_EC_GFP_MONT_FIELD_DECODE 133
#define EC_F_EC_GFP_MONT_FIELD_ENCODE 134
#define EC_F_EC_GFP_MONT_FIELD_MUL 131
Expand Down
1 change: 1 addition & 0 deletions crypto/ec/ec_err.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@
#ifndef OPENSSL_NO_ERR
static ERR_STRING_DATA EC_str_functs[]=
{
{ERR_PACK(0,EC_F_COMPUTE_WNAF,0), "COMPUTE_WNAF"},
{ERR_PACK(0,EC_F_EC_GFP_MONT_FIELD_DECODE,0), "ec_GFp_mont_field_decode"},
{ERR_PACK(0,EC_F_EC_GFP_MONT_FIELD_ENCODE,0), "ec_GFp_mont_field_encode"},
{ERR_PACK(0,EC_F_EC_GFP_MONT_FIELD_MUL,0), "ec_GFp_mont_field_mul"},
Expand Down

0 comments on commit 3ba1f11

Please sign in to comment.