[Cfrg] Announcing the availability of the MSR Elliptic Curve Cryptography Library for NUMS Curves

Brian LaMacchia <bal@microsoft.com> Mon, 30 June 2014 07:58 UTC

Return-Path: <bal@microsoft.com>
X-Original-To: cfrg@ietfa.amsl.com
Delivered-To: cfrg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F23301A002D; Mon, 30 Jun 2014 00:58:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.798
X-Spam-Level:
X-Spam-Status: No, score=0.798 tagged_above=-999 required=5 tests=[BAYES_50=0.8, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id q9Zs7nrdIwgj; Mon, 30 Jun 2014 00:58:15 -0700 (PDT)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1blp0183.outbound.protection.outlook.com [207.46.163.183]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 242CF1A001C; Mon, 30 Jun 2014 00:58:15 -0700 (PDT)
Received: from BL2PR03MB242.namprd03.prod.outlook.com (10.255.231.18) by BL2PR03MB242.namprd03.prod.outlook.com (10.255.231.18) with Microsoft SMTP Server (TLS) id 15.0.974.11; Mon, 30 Jun 2014 07:58:13 +0000
Received: from BL2PR03MB242.namprd03.prod.outlook.com ([169.254.8.49]) by BL2PR03MB242.namprd03.prod.outlook.com ([169.254.8.49]) with mapi id 15.00.0974.002; Mon, 30 Jun 2014 07:58:13 +0000
From: Brian LaMacchia <bal@microsoft.com>
To: "cfrg@ietf.org" <cfrg@ietf.org>, "tls@ietf.org" <tls@ietf.org>
Thread-Topic: Announcing the availability of the MSR Elliptic Curve Cryptography Library for NUMS Curves
Thread-Index: Ac+ULptlErlgH8vFSUux7ZRAEp5kVg==
Date: Mon, 30 Jun 2014 07:58:12 +0000
Message-ID: <e9a75f08a57847b088d1897aa23c8dc4@BL2PR03MB242.namprd03.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [63.229.5.96]
x-microsoft-antispam: BCL:0;PCL:0;RULEID:
x-forefront-prvs: 0258E7CCD4
x-forefront-antispam-report: SFV:NSPM; SFS:(6009001)(189002)(199002)(164054003)(2656002)(85852003)(31966008)(4396001)(74502001)(81342001)(92566001)(20776003)(46102001)(33646001)(76576001)(15975445006)(21056001)(76482001)(74662001)(54356999)(15202345003)(80022001)(50986999)(81542001)(74316001)(99396002)(64706001)(79102001)(66066001)(86362001)(99286002)(77982001)(87936001)(106356001)(101416001)(95666004)(85306003)(105586002)(77096002)(83322001)(19580395003)(19580405001)(83072002)(107886001)(229853001)(107046002)(42262001)(24736002)(9853045004); DIR:OUT; SFP:; SCL:1; SRVR:BL2PR03MB242; H:BL2PR03MB242.namprd03.prod.outlook.com; FPR:; MLV:sfv; PTR:InfoNoRecords; MX:1; LANG:en;
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: microsoft.onmicrosoft.com
Archived-At: http://mailarchive.ietf.org/arch/msg/cfrg/A6Glkt0eL-VPxy8LeYlOyFhqZj4
Subject: [Cfrg] Announcing the availability of the MSR Elliptic Curve Cryptography Library for NUMS Curves
X-BeenThere: cfrg@irtf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
List-Unsubscribe: <http://www.irtf.org/mailman/options/cfrg>, <mailto:cfrg-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/cfrg/>
List-Post: <mailto:cfrg@irtf.org>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Subscribe: <http://www.irtf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Jun 2014 07:58:19 -0000

Dear members of the IRTF CFRG and the IETF TLS WG,

On behalf of the Microsoft Research ECCLib Project, I am pleased to announce the first release of the Microsoft Research Elliptic Curve Cryptography Library (ECCLib) for NUMS ("Nothing Up My Sleeve") curves.  We are releasing ECCLib under the Apache 2.0 License.  Here is a link to the project page and download location:

http://research.microsoft.com/en-us/projects/nums/  

The MSR ECCLib is an efficient cryptography library that provides functions for computing essential elliptic curve operations on a new set of high-security curves as previously described in [1] and presented at the CFRG Spring 2014 Interim Meeting (see [2] for a copy of the slides from that presentation).  All computations in ECCLib on secret data exhibit regular, constant-time execution, providing protection against timing and cache attacks.

ECCLib supports six high-security elliptic curves proposed in [1], which cover three security levels (128-, 192-, and 256-bit security) and two curve models. The curves have a very simple and deterministic generation with minimal room for parameter manipulation.  ECCLib includes all the ECC functions necessary to implement most popular elliptic curve-based schemes. In particular, ECCLib supports the computation of scalar multiplication for the six curves above in three variants: 
	1. Variable-base scalar multiplication (e.g., this is used for computing the shared key in the Diffie-Hellman key exchange).
	2. Fixed-base scalar multiplication (e.g., this is used for key generation in the Diffie-Hellman key exchange).
	3. Double-scalar multiplication. This operation is typically used for verifying signatures. 
 
As both the CFRG and the TLS WG are currently considering additional curves for elliptic curve cryptography, we hope that this contribution (in addition to the technical paper previously presented) will further a thoughtful discussion concerning what new curves CFRG should recommend and TLS should consider for inclusion.  We welcome questions/comments/feedback on this library; please send them to msrsc@microsoft.com.

Please Note: the version of ECCLib that we are releasing today is for x64 platforms with AVX and builds with the Microsoft Visual Studio toolchain.  We are actively working on both a version that builds with GCC and also a portable C version and hope to add these to the release in the near future.

Thanks,

                                                                                --bal

[1] Joppe W. Bos, Craig Costello, Patrick Longa and Michael Naehrig, "Selecting Elliptic Curves for Cryptography: An Efficiency and Security Analysis", Cryptology ePrint Archive: Report 2014/130. Available at: http://eprint.iacr.org/2014/130 

[2] http://patricklonga.webs.com/Presentation_CFRG_Selecting_Elliptic_Curves_for_Cryptography.pdf