Closed Bug 1073990 Opened 10 years ago Closed 8 months ago

Fast implementation of P256 prime field ECC

Categories

(NSS :: Libraries, enhancement, P1)

x86_64
Linux
enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: shay.gueron, Unassigned)

Details

Attachments

(1 file)

Hello all, 

Here is a contribution for NSS: high performance code for implementing ECC (ECDSA sign/verify, ECDH) with NIST’s P256 prime.

For testing and benchmarking, the code appears as a patch for OpenSSL (patching over OpenSSL version 1.0.1). 

It performs fast Elliptic Curve scalar multiplication over NIST P256, by the standard generator G, as well as any arbitrary point P.

The code is optimized for any x64 CPU (and can also be tweaked to support 32 bit architectures). 
In particular, it is optimized for the latest Intel CPUs, architecture codename Haswell and Broadwell. 

For example, the relative performance gains NIST P256 prime field, compared to the default implementation in OpenSSL version 1.0.1, are:

ECDSA sign: 2.3x
ECDSA verify: 3.1x
ECDH compute key: 3.4x

It needs to be ported and embedded into the NSS library.Richard Barnes has agreed to work this out. 


Developers and authors:
***************************************************************************
Shay Gueron (1, 2), and Vlad Krasnov (1)
(1) Intel Corporation, Israel Development Center, Haifa, Israel
(2) University of Haifa, Israel
***************************************************************************

Copyright(c) 2014, Intel Corp.
Severity: normal → S3

HACL* and ECCKiila

Severity: S3 → S4
Status: NEW → RESOLVED
Closed: 8 months ago
Priority: -- → P1
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: