Re: [Cfrg] [TLS] Closing out tls1.3 "Limits on key usage" PRs (#765/#769)

"Dang, Quynh (Fed)" <> Thu, 16 February 2017 12:23 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 040AA129AC7 for <>; Thu, 16 Feb 2017 04:23:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id yBFwM1ygYYaB for <>; Thu, 16 Feb 2017 04:23:08 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 7AC67129AC5 for <>; Thu, 16 Feb 2017 04:23:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector1-nist-gov; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Mn427C0mM0Y1SKWnGL0lLQfr4uMnjO2JxwenELlWOjg=; b=dT3KPENs+l9JSnAPpaPIba6ZVlO11b53psU6lxpHwY1zShArPJLv8kRmSmeDgMmFd+qPf3aj9xjwL0C2tLk5w4+3zxnPWRD2MN9kObo5zqyKZr0lDkBIzzqHBumwg9p4LeK2VZ+R4Hr9SODIhilxXe/y5gDsx9kHoiRGdL1AT3s=
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Thu, 16 Feb 2017 12:23:06 +0000
Received: from ([]) by ([]) with mapi id 15.01.0888.034; Thu, 16 Feb 2017 12:23:05 +0000
From: "Dang, Quynh (Fed)" <>
To: "Paterson, Kenny" <>, "Dang, Quynh (Fed)" <>
Thread-Topic: [TLS] [Cfrg] Closing out tls1.3 "Limits on key usage" PRs (#765/#769)
Thread-Index: AQHShwyaNRpm4jTNwkW4fHeK7pLqGKFpp3IAgABuRACAASc0AA==
Date: Thu, 16 Feb 2017 12:23:05 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/
authentication-results: spf=none (sender IP is );
x-ms-exchange-messagesentrepresentingtype: 1
x-originating-ip: []
x-microsoft-exchange-diagnostics: 1; CY4PR09MB1463; 7:PNqhs7Oz7bssgbJDv8FflZ5IyyGxCn67rxc6v4oUTehPAkehfhi/AjVPmyirnpII+pE3aw8ahmf9hiSGbjWMdiznZxrje37UOGw7iu/O5QYqpQ28eWj9nZkxpB1XMuHc6PfaEcUQtRSpcB/YJJSpqneKnZjv+8siaLzuJzISCtH1LqQ+6wNL7ucVmmyEiRv2rRG3cWFYDtZif0By6jDyyMr31OwS6OQ5FLuUV3T8BSRX+z7/tuAmPu/F+XVRgrkDEC02R28+NR4eduLeZin3h8lkgkDq424qL8/bbK4hgn0YolyssB8qi8fyZxWiR7TNugX51j7hD5RSY8jfLXq4qg==
x-forefront-antispam-report: SFV:SKI; SCL:-1SFV:NSPM; SFS:(10019020)(7916002)(39840400002)(39410400002)(39860400002)(39450400003)(39850400002)(189002)(199003)(377424004)(377454003)(24454002)(6306002)(6512007)(25786008)(66066001)(83506001)(97736004)(3660700001)(606005)(54896002)(4001350100001)(6246003)(8936002)(105586002)(5660300001)(122556002)(236005)(7906003)(53546003)(6506006)(7736002)(389900003)(39060400002)(6436002)(2900100001)(6486002)(38730400002)(8656002)(68736007)(77096006)(2950100002)(102836003)(4326007)(2906002)(54356999)(93886004)(50986999)(76176999)(229853002)(99286003)(101416001)(189998001)(92566002)(54906002)(81166006)(8676002)(106356001)(3280700002)(106116001)(81156014)(3846002)(86362001)(36756003)(53936002)(6116002); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR09MB1463;; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en;
x-ms-office365-filtering-correlation-id: 44fe5b57-84a4-4403-6e9e-08d456668f4a
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081); SRVR:CY4PR09MB1463;
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-test: UriScan:(65766998875637)(192374486261705);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123558025)(20161123555025)(20161123560025)(20161123564025)(6072148); SRVR:CY4PR09MB1463; BCL:0; PCL:0; RULEID:; SRVR:CY4PR09MB1463;
x-forefront-prvs: 0220D4B98D
received-spf: None ( does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_D4CAF7363040Cqdangnistgov_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Feb 2017 12:23:05.5154 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2ab5d82f-d8fa-4797-a93e-054655c61dec
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR09MB1463
Archived-At: <>
Cc: Atul Luykx <>, IRTF CFRG <>, "" <>
Subject: Re: [Cfrg] [TLS] Closing out tls1.3 "Limits on key usage" PRs (#765/#769)
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Crypto Forum Research Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 16 Feb 2017 12:23:12 -0000

Hi Kenny,

I am glad to see that you enjoyed the discussion more than what you planed for the time on your vacation.  We love crypto and the IETF!

From: "Paterson, Kenny" <<>>
Date: Wednesday, February 15, 2017 at 8:46 AM
To: 'Quynh' <<>>
Cc: Atul Luykx <<>>, Yoav Nir <<>>, IRTF CFRG <<>>, "<>" <<>>
Subject: Re: [TLS] [Cfrg] Closing out tls1.3 "Limits on key usage" PRs (#765/#769)

Hi Quynh,

I'm meant to be on vacation, but I'm finding this on-going discussion fascinating, so I'm chipping in again.

On 15 Feb 2017, at 21:12, Dang, Quynh (Fed) <<>> wrote:

Hi Atul,

I hope you had a happy Valentine!

From: Atul Luykx <<>>
Date: Tuesday, February 14, 2017 at 4:52 PM
To: Yoav Nir <<>>
Cc: 'Quynh' <<>>, IRTF CFRG <<>>, "<>" <<>>
Subject: Re: [TLS] [Cfrg] Closing out tls1.3 "Limits on key usage" PRs (#765/#769)

Why is that 2^48 input blocks rather than 2^34.5 input blocks?
Because he wants to lower the security level.

I respectfully disagree. 2^-32, 2^-33, 2^-57, 2^-60, 2^-112 are practically the same: they are practically zero.

I'm not clear what you mean by "practically" here.

As far as I know, such chance has not happened in history for any targeted search where the chance for hitting the target is 1 in 2^32.

They're clearly not the same as real numbers. And if we are being conservative about security, then the extremes in your list are a long way apart.

And, 2^-32 is an absolute chance in this case meaning that all attackers can’t improve their chance: no matter how much computational power the attacker has.

A sufficiently powerful adversary could carry out an exhaustive key search for GCM's underlying AES key. So I'm not sure what you're claiming here when you speak of "absolute chance".

I described my point not in a best way, sorry. For key recovery, if an attacker can do 2^96 AES operations, his chance of finding the key is 2^-32, but this chance will get improved if the attacker does more computation. On the contrary, the chance for the distinguishing attack won’t change with the proposed data limit.

I don’t understand why the number 2^-60 is your special chosen number for this ?

This is a bit subtle, but I'll try to explain in simple terms.

We can conveniently prove a bound of about this size (actually 2^-57) for INT-CTXT for a wide range of parameters covering both TLS and DTLS (where many verification failures may be permitted). Then, since we're ultimately interested in AE security, we would like to (roughly) match this for IND-CPA security, to get as good a bound as we can for AE security (the security bounds for the two notions sum to give an AE security bound - see page 2 of the "AE bounds" note).

In view of the INT-CTXT bound there's no point pushing the IND-CPA bound much lower than 2^-60 if the ultimate target is AE security. It just hurts the data limits more without significantly improving AE security.

I just checked the paper. There is a small error I think. AES-GCM in TLS 1.3 is a prf. Under a given key, every input block or just one repeated block 2^35 times, their ciphertext blocks are 2^35 random 128-bit blocks assuming the key has 128 bits of entropy. If there is a collision among the ciphertext blocks, it does not mean anything because it does not say anything about the plaintext blocks.

Finally, 2^-60 is not *our* special chosen number. We wrote a note that contained a table of values, and it's worth noting that we did not make a specific recommendation in our note for which row of the table to select.

(Naturally, though, we'd like security to be as high as possible without making rekeying a frequent event. It's a continuing surprise to me that you are pushing for an option that actually reduces security when achieving higher security does not seem to cause any problems for implementors.)

I respectfully disagree. As I explained before, 2^-32, 2^-57 and 2^-60 are all safe choices. If someone wants to rekey sooner (or often) for operational reason or any other reason, that would be just fine. I just hope that we don’t have text which might imply that 2^-32 is not a safe choice.  In our guidelines, we basically indicate that 2^-32 or below is safe.

In your “theory”, 2^-112 would be in “higher” security than 2^-60.

It certainly would, if it were achievable (which it is not for GCM without putting some quite extreme limits on data per key).



I am going to propose another option and I hope that you and all other people will be happy with.

Thank you and Regards,


The original text
recommends switching at 2^{34.5} input blocks, corresponding to a
success probability of 2^{-60}, whereas his text recommends switching at
2^{48} blocks, corresponding to a success probability of 2^{-32}.


On 2017-02-14 11:45, Yoav Nir wrote:
Hi, Quynh
On 14 Feb 2017, at 20:45, Dang, Quynh (Fed) <<>>
Hi Sean and all,
Beside my suggestion at [1],
I have a second suggestion below.
Just replacing this sentence: "
For AES-GCM, up to 2^24.5 full-size records (about 24 million) may
encrypted on a given connection while keeping a safety margin of
approximately 2^-57 for Authenticated Encryption (AE) security.
" in Section 5.5 by this sentence: " For AES-GCM, up to 2^48
(partial or full) input blocks may be encrypted with one key. For
other suggestions and analysis, see the referred paper above."
I like the suggestion, but I’m probably missing something pretty
basic about it.
2^24.5 full-size records is 2^24.5 records of 2^14 bytes each, or
(since an AES block is 16 bytes or 2^4 bytes) 2^24.5 records of 2^10
Why is that 2^48 input blocks rather than 2^34.5 input blocks?
TLS mailing list<>

TLS mailing list<>