Re: [Cfrg] 512-bit twisted Edwards curve and curve generation methods in Russian standardization

"Paterson, Kenny" <Kenny.Paterson@rhul.ac.uk> Wed, 28 January 2015 10:32 UTC

Return-Path: <Kenny.Paterson@rhul.ac.uk>
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 AC8911A039A for <cfrg@ietfa.amsl.com>; Wed, 28 Jan 2015 02:32:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.202
X-Spam-Level:
X-Spam-Status: No, score=-0.202 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, MIME_8BIT_HEADER=0.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=no
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 KvBMp2HVMQ9h for <cfrg@ietfa.amsl.com>; Wed, 28 Jan 2015 02:32:54 -0800 (PST)
Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1on0649.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe00::649]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B87D51A0211 for <cfrg@irtf.org>; Wed, 28 Jan 2015 02:32:53 -0800 (PST)
Received: from DBXPR03MB383.eurprd03.prod.outlook.com (10.141.10.15) by DBXPR03MB382.eurprd03.prod.outlook.com (10.141.10.12) with Microsoft SMTP Server (TLS) id 15.1.65.19; Wed, 28 Jan 2015 10:32:29 +0000
Received: from DBXPR03MB383.eurprd03.prod.outlook.com ([10.141.10.15]) by DBXPR03MB383.eurprd03.prod.outlook.com ([10.141.10.15]) with mapi id 15.01.0065.013; Wed, 28 Jan 2015 10:32:29 +0000
From: "Paterson, Kenny" <Kenny.Paterson@rhul.ac.uk>
To: Станислав Смышляев <smyshsv@gmail.com>, "cfrg@irtf.org" <cfrg@irtf.org>
Thread-Topic: [Cfrg] 512-bit twisted Edwards curve and curve generation methods in Russian standardization
Thread-Index: AQHQOkpgQWElPvL0/EaQwowVk8M5cZzVVs2A
Date: Wed, 28 Jan 2015 10:32:29 +0000
Message-ID: <D0EE695F.3D7F3%kenny.paterson@rhul.ac.uk>
References: <CAMr0u6=prmjMv7e+S5UAGVw+uCQWPk-f86Koa04GVx8CZs4J4Q@mail.gmail.com>
In-Reply-To: <CAMr0u6=prmjMv7e+S5UAGVw+uCQWPk-f86Koa04GVx8CZs4J4Q@mail.gmail.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.4.7.141117
x-originating-ip: [134.219.227.30]
authentication-results: gmail.com; dkim=none (message not signed) header.d=none; gmail.com; dmarc=none action=none header.from=rhul.ac.uk;
x-dmarcaction-test: None
x-microsoft-antispam: BCL:0;PCL:0;RULEID:(3005004);SRVR:DBXPR03MB382;
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:;SRVR:DBXPR03MB382;
x-forefront-prvs: 047001DADA
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(24454002)(66654002)(479174004)(51704005)(52604005)(107886001)(106116001)(15975445007)(77096005)(102836002)(77156002)(62966003)(2900100001)(19580405001)(19580395003)(83506001)(2950100001)(40100003)(122556002)(575784001)(86362001)(15395725005)(87936001)(2656002)(4477795004)(66066001)(2501002)(74482002)(92566002)(46102003)(50986999)(54356999)(76176999)(36756003)(15198665003); DIR:OUT; SFP:1101; SCL:1; SRVR:DBXPR03MB382; H:DBXPR03MB383.eurprd03.prod.outlook.com; FPR:; SPF:None; MLV:sfv; LANG:en;
Content-Type: text/plain; charset="windows-1251"
Content-ID: <7F0753CE1A8A094CA3332503184DF763@eurprd03.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: rhul.ac.uk
X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jan 2015 10:32:29.1822 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2efd699a-1922-4e69-b601-108008d28a2e
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBXPR03MB382
Archived-At: <http://mailarchive.ietf.org/arch/msg/cfrg/Gf4NOqw1hQi0p67AsAqBosnnv8c>
Subject: Re: [Cfrg] 512-bit twisted Edwards curve and curve generation methods in Russian standardization
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: Wed, 28 Jan 2015 10:32:56 -0000

Dear Stanislav,

Many thanks for sharing this detailed information.

In the current draft https://tools.ietf.org/html/draft-agl-cfrgcurve-00
(which CFRG has just adopted), we have a specific curve generation method
that is different from the one you outline below. It has taken the group
quite a bit of discussion to get to the point of having a rough consensus
that that method is one we want to use, and if we decide to produce a
higher security level curve (which I personally hope we will), then it
seems pretty likely that this method will be the one we select.

Perhaps I could encourage you to look at the current draft and engage with
the editors on it where you see fit? Note that the draft should be
evolving fairly rapidly in response to others' inputs and as we further
develop it to include signatures, higher security level curves, etc.

Regards,

Kenny (for the chairs)



On 27/01/2015 15:57, "Станислав Смышляев" <smyshsv@gmail.com> wrote:

>Good afternoon, dear colleagues,
> 
>Currently the proposed draft on elliptic curves generation methods does
>not explicitly consider curves with security more than 256 bits.
>
> 
>In Russia we have had a similar lack of 512-bit curves (both twisted
>Edwards ones and curves with groups of prime order), so we at CryptoPro
>(Russian cryptographic software company) proposed three of them to our
>Technical
> Committee for Standardization «Cryptography and Security Mechanisms»
>(http://tc26.ru/en/).
> 
>In 2014 after a deep discussion with colleagues these curves were
>standardized for usage with Russian national digital signature standard
>(GOST R 34.10-2012).
>
> 
>For example, the twisted Edwards 512-bit curve is defined over the field
>GF(p), where p is equal to 2^512 – 569, p = 3 (mod 4).
>p = 
>0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
>FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC7
>d = 
>0x9E4F5D8C017D8D9F13A5CF3CDF5BFE4DAB402D54198E31EBDE28A0621050439CA6B39E0A
>515C06B304E2CE43E79E369E91A0CFC2BC2A22B4CA302DBB33EE7550
>e = 0x1
>m = 
>0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26336E91
>941AAC0130CEA7FD451D40B323B6A79E9DA6849A5188F3BD1FC08FB4
>q = 
>0x3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC98CDBA4
>6506AB004C33A9FF5147502CC8EDA9E7A769A12694623CEF47F023ED
>u(P) = 0x12
>v(P) = 
>0x469AF79D1FB1F5E16B99592B77A01E2A0FDFB0D01794368D9A56117F7B38669522DD4B65
>0CF789EEBF068C5D139732F0905622C04B2BAAE7600303EE73001A3D
>a = 
>0xDC9203E514A721875485A529D2C722FB187BC8980EB866644DE41C68E143064546E861C0
>E2C9EDD92ADE71F46FCF50FF2AD97F951FDA9F2A2EB6546F39689BD3
>b = 
>0xB4C4EE28CEBC6C2C8AC12952CF37F16AC7EFB6A9F69F4B57FFDA2E4F0DE5ADE038CBC2FF
>F719D2C18DE0284B8BFEF3B52B8CC7A5F5BF0A3C8D2319A5312557E1
>x(P) = 
>0xE2E31EDFC23DE7BDEBE241CE593EF5DE2295B7A9CBAEF021D385F7074CEA043AA27272A7
>AE602BF2A7B9033DB9ED3610C6FB85487EAE97AAC5BC7928C1950148
>
>y(P) = 
>0xF5CE40D95B5EB899ABBCCFF5911CB8577939804D6527378B8C108C3D2090FF9BE18E2D33
>E3021ED2EF32D85822423B6304F726AA854BAE07D0396E9A9ADDC40F
>(The following notation is used for Edwards curve coefficients: eu^2 +
>v^2 = 1 + du^2v^2, while the corresponding Weierstrass curve has form y^2
>= x^3 + ax +b. We denote the total number of points on the curve as m and
> prime subgroup order as q. We denote base point as P; x(P), y(P) and
>u(P), v(P) are respectively base point coordinates in Weierstrass and
>twisted Edwards form.)
> 
>p and q are prime. The curve has been examined to be secure against
>MOV-attacks (thus it can be believed to be DDH-secure) and to satisfy
>CM-security requirements. Twisted curve security has also been studied:
>twisted
> curve points group order has a prime factor of:
>0x40000000000000000000000000000000000000000000000000000000000000003673245b
>9af954ffb3cc5600aeb8afd33712561858965ed96b9dc310b80fdaf7, while the other
>factor is equal to 4.
> 
>The curve can be used both for digital signatures and for Diffie-Hellman
>key agreement.
> 
>The curve parameters have been generated using random nonce W in such way
>that e = 1, d = hash(W), where hash() is Russian national standard GOST R
>34.11-2012 hash function (also known as “Streebog”,
>https://www.streebog.net/en/). The seed value W is equal to:
>W = 1F BB 79 69 B9 1B 3E A0 81 17 FB 10 74 BF BF 55 49 DD 66 07 63 F6 A5
>AF 09 57 77 5B 66 4C B1 13 CF CB 91 C4 A7 7D 27 98 06 BC F2 4A 56 77 F2
>5E AF FE C6 67 76 70 2E E2 C7 AA 84 16 07 50 DA 1D D1 50 AE D2 8C 30 26
> AC 7E D6 D1 9B 97 AC 2C B5 82 7C 00 03 18 47 13 53 5B FA 65 24 B3 E4 60
>83,
> 
>GOST R 34.11-2012 (Streebog) implementation can be found at
>https://github.com/okazymyrov/stribog, for example.
>
> 
>The base point has been selected as a point with the smallest
>u-coordinate, satisfying curve equation and having order equal to q.
> 
>Also we have an agreed (with Russian cryptographic community, including
>experts from other Russian companies, scientific community and
>governmental authorities) version of curve generation methods; if you
>consider it
> interesting, we could prepare an English translation in a couple of days.
> 
>Best regards,
>Stanislav V. Smyshlyaev, Ph.D.,
>Head of Information Security Department,
>CryptoPro LLC
>
>
>
>
>
>