Re: [jose] #14: Support longer wrapped keys than OAEP allows
Richard Barnes <rlb@ipv.sx> Tue, 19 March 2013 13:55 UTC
Return-Path: <rlb@ipv.sx>
X-Original-To: jose@ietfa.amsl.com
Delivered-To: jose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6E7C921F8B51 for <jose@ietfa.amsl.com>; Tue, 19 Mar 2013 06:55:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.309
X-Spam-Level:
X-Spam-Status: No, score=-2.309 tagged_above=-999 required=5 tests=[AWL=0.667, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ARlOuIMwv8qx for <jose@ietfa.amsl.com>; Tue, 19 Mar 2013 06:55:31 -0700 (PDT)
Received: from mail-oa0-f53.google.com (mail-oa0-f53.google.com [209.85.219.53]) by ietfa.amsl.com (Postfix) with ESMTP id 34EBF21F8BF8 for <jose@ietf.org>; Tue, 19 Mar 2013 06:55:29 -0700 (PDT)
Received: by mail-oa0-f53.google.com with SMTP id m1so470638oag.26 for <jose@ietf.org>; Tue, 19 Mar 2013 06:55:28 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:x-originating-ip:in-reply-to:references :date:message-id:subject:from:to:cc:content-type:x-gm-message-state; bh=TWDWMxi3Gh5ERQYeHl1JoNV/BBGE0riPTDO5Kb6sygs=; b=ayiouV3lu+ktYvp50p3VNHhYGvQLM+0Ouo0m6RD1k4/tpBOF2CTbnQkaLVcRrIUJjE Fli6MXxbflSe7cgadVnS1hUekq5ynQuxZge7ixUZrW+ecz9VvwVBPP1bkDhitaiZseKW ZAKKwIb7OZzLs6eZhaRI/B9FVb/epOzDqo+GMID9W71xCYHt0bpoHhyoDLoCIfF5hRJ/ aJsu1Cdafwn4bge8VSpREg7vjbderKRMOF++06kroBtPEehzkU1W8tnpt+Th0iT6BY2W 2CNshRgWHlitOtCxS0UKcpGTmfCPgTRq8h+PPznuPkuIUDO7pe+b5MZEmsRKruG9OGzM tYQQ==
MIME-Version: 1.0
X-Received: by 10.182.59.20 with SMTP id v20mr1314025obq.80.1363701327972; Tue, 19 Mar 2013 06:55:27 -0700 (PDT)
Received: by 10.60.40.233 with HTTP; Tue, 19 Mar 2013 06:55:27 -0700 (PDT)
X-Originating-IP: [192.1.255.184]
In-Reply-To: <4E1F6AAD24975D4BA5B16804296739436755CB51@TK5EX14MBXC283.redmond.corp.microsoft.com>
References: <4E1F6AAD24975D4BA5B16804296739436755CB51@TK5EX14MBXC283.redmond.corp.microsoft.com>
Date: Tue, 19 Mar 2013 09:55:27 -0400
Message-ID: <CAL02cgRnSZpvVVsruFTAzq2wrN4TPTjF2zSwu=a06KYvQ9+OvA@mail.gmail.com>
From: Richard Barnes <rlb@ipv.sx>
To: Mike Jones <Michael.Jones@microsoft.com>
Content-Type: multipart/alternative; boundary="14dae93a0db13bef4c04d8477513"
X-Gm-Message-State: ALoCoQmcoKGXRLncBZGlZSouZXYgj2WAA2SPqha1ZjYUTWKxKxUn3Xr74kZrFd9wXy+BEpIy3uPr
Cc: Jim Schaad <ietf@augustcellars.com>, James H Manger <James.H.Manger@team.telstra.com>, "jose@ietf.org" <jose@ietf.org>
Subject: Re: [jose] #14: Support longer wrapped keys than OAEP allows
X-BeenThere: jose@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Javascript Object Signing and Encryption <jose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jose>, <mailto:jose-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/jose>
List-Post: <mailto:jose@ietf.org>
List-Help: <mailto:jose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jose>, <mailto:jose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 19 Mar 2013 13:55:33 -0000
I agree that it's a fair question to ask. As I'm writing this key wrapping document (as requested in Orlando), I'm trying to develop a comparison of the costs of various wrapping schemes. It would be interesting to get feedback on the group as to how you would measure cost in this case? For example: -- Which algorithms can/cannot be supported -- How large the encrypted object is -- How many encryption formats a JOSE library has to support On the latter point, the request to use GCM for key wrapping has gotten me thinking that perhaps we should just make JWE self-similar, by using a JWE to wrap the key for a JWE*. That would reduce the number of encryption code paths from two (JWE, key wrapping) to one (JWE). Again, I'll try to make a concrete proposal in the forthcoming document. --Richard On Mon, Mar 18, 2013 at 11:23 PM, Mike Jones <Michael.Jones@microsoft.com>wrote: > Since you message appears to take it as given that “there should be only > one way of encrypting keys”, I’ll point out that I don’t think that it’s > reasonable to assume that. JOSE is first and foremost an engineering > exercise, where the cost/benefit generality/complexity tradeoffs matter, > and the goal is a ubiquitously implemented crypto format for the Web that > solves the problems that people actually have, rather than a mathematical > exercise, where the goal is completeness and generality. Complexity is the > enemy of adoption. > > So it’s fair game to ask “What are the costs and benefits of having only > one way to encrypt keys”, versus taking that as a given. > > I happen to personally believe that encrypting a bare symmetric > ephemeral Content Master Key is sufficiently different than encrypting a > key that may be public, private, or symmetric and may have additional > attributes, that it’s at least worth asking the engineering question > whether special-casing the encryption of this bare symmetric ephemeral key > results in engineering benefits. > > Encrypting a key with attributes for storage or dissemination is not the > same kind of operation as wrapping an ephemeral symmetric key to be used > for block encryption. I’m personally fine with this being done > differently. The engineering benefit if we do it differently in the way > that Matt’s draft proposed, at least as I see it, is that we have to invent > nothing new. We already have a great format for encrypting arbitrary data, > and keys with attributes are a whole lot like arbitrary data. > > I respect that some with disagree with my personal view, but I’d also ask > you to respect that the engineering tradeoffs may favor having two ways to > do things that on the surface may seem similar, but are actually fairly > different in nature. > > Best wishes, > -- Mike > > *From:* Richard Barnes > *Sent:* March 18, 2013 7:36 PM > *To:* Jim Schaad > *CC:* Manger, James H, jose@ietf.org > > *Subject:* Re: [jose] #14: Support longer wrapped keys than OAEP allows > > Well, I got to 788 by doing math incorrectly*. > > Mike was correct on the other thread that 768 is the right number. > However, that's still too big for a 1024-bit RSA key and SHA1, since 768 + > 320 = 1088 > 1024. > > Regardless, there is clearly an issue here when wrapping a JWK, which is > much larger, possibly containing an RSA key itself. So if we accept the > goal that there should be one way of encrypting keys, then we'll need to > deal with getting around the OAEP size limitations. > > --Richard > > * This is why my degree is in mathematics, and not accounting. > > > On Mon, Mar 18, 2013 at 8:40 PM, Jim Schaad <ietf@augustcellars.com>wrote: > >> Think in terms of encrypting a JWK directly not an intermediate key. >> >> > -----Original Message----- >> > From: jose-bounces@ietf.org [mailto:jose-bounces@ietf.org] On Behalf Of >> > Manger, James H >> > Sent: Monday, March 18, 2013 5:17 PM >> > To: rlb@ipv.sx; jose@ietf.org >> > Subject: Re: [jose] #14: Support longer wrapped keys than OAEP allows >> > >> > Richard, >> > >> > How do you get a 788-bit key length? >> > >> > draft-mcgrew-aead-aes-cbc-hmac-sha2 defines 5 combinations of AES- >> > 128/192/256 and SHA-1/256/384/512. The total key lengths range from 256 >> > bits to 512 bits. >> > >> > Keys for two of the algorithms (AEAD_AES_128_CBC_HMAC_SHA_256 and >> > AEAD_AES_128_CBC_HMAC_SHA1) fit within OAEP with a 1024-bit RSA key. >> > >> > Keys for all of the algorithms fit within OAEP with a 2048-bit RSA key. >> JWA >> > already says RSA key sizes MUST be at least 2048 bits. >> > >> > This already looks sufficient. >> > >> > -- >> > James Manger >> > >> > >> > > From: jose-bounces@ietf.org [mailto:jose-bounces@ietf.org] On Behalf >> > > Of Richard Barnes >> > > Sent: Tuesday, 19 March 2013 10:25 AM >> > > Subject: [jose] WebCrypto feedback on key wrapping >> > > >> > > 2. Mark Watson (Netflix) noted that if we use RSA directly to encrypt >> wrapped >> > key objects, then we would need something other than OAEP in order to >> carry >> > arbitrary-length payloads. I agreed, and suggested that something like >> RSA- >> > KEM would be necessary. Ryan Sleevi (Google) and Vijay observed that >> KEM >> is >> > troublesome due to the lack of support by native crypto libraries. >> > > >> > > Point number 2 likely applies for some scenarios of JWE, especially if >> we >> > adopt the McGrew approach. For example, if using HMAC-SHA1 and AES with >> > a 256-bit key, the total key length is 788 bits, which is too long to be >> encrypted >> > with OAEP under a 1,024-bit RSA key. I'm not sure how to resolve it. >> The >> best >> > idea I've got is to allow wrapped keys to nest, so that you can wrap a >> key >> inside >> > of another wrapped key. >> > > >> > > --Richard >> > >> > >> > >> ---------- >> > >> Sent: Tuesday, 19 March 2013 10:23 AM >> > >> Subject: [jose] #14: Support longer wrapped keys than OAEP allows >> > >> >> > >> #14: Support longer wrapped keys than OAEP allows >> > >> >> > >> The use of RSA-OAEP for key wrapping imposes a limit on the length >> > >> of the key package being wrapped. With SHA1, this length is N-320, >> > >> where N is the length of the RSA modulus. Especially with larger >> > >> hash functions, and especially for wrapping private keys, the size >> > >> of key packages will be larger than this bound. We should >> > >> incorporate a mechanism to accommodate these situations. >> > >> >> > >> >> > >> Ticket URL: <http://trac.tools.ietf.org/wg/jose/trac/ticket/14> >> > _______________________________________________ >> > jose mailing list >> > jose@ietf.org >> > https://www.ietf.org/mailman/listinfo/jose >> >> >
- [jose] #14: Support longer wrapped keys than OAEP… jose issue tracker
- Re: [jose] #14: Support longer wrapped keys than … jose issue tracker
- Re: [jose] #14: Support longer wrapped keys than … Manger, James H
- Re: [jose] #14: Support longer wrapped keys than … Jim Schaad
- Re: [jose] #14: Support longer wrapped keys than … Richard Barnes
- Re: [jose] #14: Support longer wrapped keys than … Manger, James H
- Re: [jose] #14: Support longer wrapped keys than … Mike Jones
- Re: [jose] #14: Support longer wrapped keys than … Richard Barnes
- Re: [jose] #14: Support longer wrapped keys than … Matt Miller (mamille2)
- Re: [jose] #14: Support longer wrapped keys than … Jim Schaad
- Re: [jose] #14: Support longer wrapped keys than … Mike Jones
- Re: [jose] #14: Support longer wrapped keys than … Axel Nennker
- Re: [jose] #14: Support longer wrapped keys than … Axel Nennker
- Re: [jose] #14: Support longer wrapped keys than … jose issue tracker
- Re: [jose] #14: Support longer wrapped keys than … jose issue tracker
- Re: [jose] #14: Support longer wrapped keys than … jose issue tracker