Re: [jose] Platform Support for JWA Crypto Algorithms

Mike Jones <Michael.Jones@microsoft.com> Wed, 31 October 2012 21:22 UTC

Return-Path: <Michael.Jones@microsoft.com>
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 AE1E621F84F2 for <jose@ietfa.amsl.com>; Wed, 31 Oct 2012 14:22:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.598
X-Spam-Level:
X-Spam-Status: No, score=-2.598 tagged_above=-999 required=5 tests=[AWL=-0.000, BAYES_00=-2.599, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ph3UOkKQ07UQ for <jose@ietfa.amsl.com>; Wed, 31 Oct 2012 14:22:49 -0700 (PDT)
Received: from NA01-BY2-obe.outbound.protection.outlook.com (na01-by2-obe.ptr.protection.outlook.com [207.46.100.32]) by ietfa.amsl.com (Postfix) with ESMTP id 0D5A021F845E for <jose@ietf.org>; Wed, 31 Oct 2012 14:22:48 -0700 (PDT)
Received: from BY2FFO11FD004.protection.gbl (10.1.15.200) by BY2FFO11HUB025.protection.gbl (10.1.14.111) with Microsoft SMTP Server (TLS) id 15.0.545.8; Wed, 31 Oct 2012 21:22:45 +0000
Received: from TK5EX14HUBC101.redmond.corp.microsoft.com (131.107.125.37) by BY2FFO11FD004.mail.protection.outlook.com (10.1.14.158) with Microsoft SMTP Server (TLS) id 15.0.545.8 via Frontend Transport; Wed, 31 Oct 2012 21:22:44 +0000
Received: from TK5EX14MBXC285.redmond.corp.microsoft.com ([169.254.3.15]) by TK5EX14HUBC101.redmond.corp.microsoft.com ([157.54.7.153]) with mapi id 14.02.0318.003; Wed, 31 Oct 2012 21:22:08 +0000
From: Mike Jones <Michael.Jones@microsoft.com>
To: Axel Nennker <ignisvulpis@gmail.com>, Wan-Teh Chang <wtc@google.com>
Thread-Topic: [jose] Platform Support for JWA Crypto Algorithms
Thread-Index: Ac21npPqwtcuERVxRaibRdRS35KObwANGVoQAAd5tsAACDLiIAAGrwcAAFc3J4AACOjGgAAAFHHQ
Date: Wed, 31 Oct 2012 21:22:07 +0000
Message-ID: <4E1F6AAD24975D4BA5B168042967394366885038@TK5EX14MBXC285.redmond.corp.microsoft.com>
References: <4E1F6AAD24975D4BA5B168042967394366880D09@TK5EX14MBXC285.redmond.corp.microsoft.com> <CE8995AB5D178F44A2154F5C9A97CAF40252198DCF55@HE111541.emea1.cds.t-internal.com> <4E1F6AAD24975D4BA5B16804296739436688123A@TK5EX14MBXC285.redmond.corp.microsoft.com> <CE8995AB5D178F44A2154F5C9A97CAF40252199B9114@HE111541.emea1.cds.t-internal.com> <CACvaWvZaBgsBsMMLY0CXr4nAPgYkC9GqJr1Y5y9gQH_d4OWcJA@mail.gmail.com> <CALTJjxF80RCv-b=GGJo6VQnUY8JSP6QP4AAE0FrU0DwORktbjw@mail.gmail.com> <CAHcDwFyq+44A_NgPXKttZmeZz18vrXMw_FLWAa+1Bq61dXGnDA@mail.gmail.com>
In-Reply-To: <CAHcDwFyq+44A_NgPXKttZmeZz18vrXMw_FLWAa+1Bq61dXGnDA@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [157.54.51.33]
Content-Type: multipart/alternative; boundary="_000_4E1F6AAD24975D4BA5B168042967394366885038TK5EX14MBXC285r_"
MIME-Version: 1.0
X-Forefront-Antispam-Report: CIP:131.107.125.37; CTRY:US; IPV:CAL; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(24454001)(479174001)(377454001)(51704002)(46102001)(50986001)(16406001)(33656001)(5343655001)(47736001)(47976001)(51856001)(49866001)(53806001)(31966008)(54316001)(44976002)(15202345001)(47446002)(5343635001)(74502001)(512954001)(74662001)(4396001)(54356001)(550254004); DIR:OUT; LANG:en;
X-OriginatorOrg: microsoft.onmicrosoft.com
X-Forefront-PRVS: 06515DA04B
Cc: "public-webcrypto@w3.org" <public-webcrypto@w3.org>, Ryan Sleevi <sleevi@google.com>, "jose@ietf.org" <jose@ietf.org>, "Axel.Nennker@telekom.de" <Axel.Nennker@telekom.de>
Subject: Re: [jose] Platform Support for JWA Crypto Algorithms
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: Wed, 31 Oct 2012 21:22:50 -0000

I agree that this would be useful, but the other factor that's critical is ability to implement when your developer platform doesn't have native support.  As demonstrated in the appendices, it's trivial to implement Concat with only SHA-256 and SHA-512.  So direct platform support for Concat is actually a non-issue for interoperability, as anyone can build it themselves with a few string concat operations and a single hash.

If other KDFs aren't built-in to all platforms, the key criteria for considering them is that the primitives needed to build them must be (just as they already are for Concat).

                                                                           -- Mike

From: jose-bounces@ietf.org [mailto:jose-bounces@ietf.org] On Behalf Of Axel Nennker
Sent: Wednesday, October 31, 2012 2:16 PM
To: Wan-Teh Chang
Cc: Mike Jones; public-webcrypto@w3.org; Ryan Sleevi; jose@ietf.org; Axel.Nennker@telekom.de
Subject: Re: [jose] Platform Support for JWA Crypto Algorithms

I think we need a table with the same platform as in Mike's table that started this discussion with KDFs that actually have implementations.
Specification in RFCs or blessing by NIST does not count. Implementations rule.
Usage

Param Name

Param Val

Description

.NET

Windows native

OS X

iOS

Java JCA

BouncyCastle

Android

PHP

PHPSecLib

Python

M2Crypto

PyCrypto

Ruby

OpenSSL

node.js

NSS


JWE

kdf

CS256

Concat Key Derivation Function (KDF)

NO

Win7





NO

NO

NO

NO

NO

NO

NO

NO



NO

NO

NO

JWE

kdf

CS384

Concat Key Derivation Function (KDF)

NO

Win7





NO

NO

NO

NO

NO

NO

NO

NO



NO

NO

NO

JWE

kdf

CS512

Concat Key Derivation Function (KDF)

NO

Win7





NO

NO

NO

NO

NO

NO

NO

NO



NO

NO

NO



Axel

2012/10/31 Wan-Teh Chang <wtc@google.com<mailto:wtc@google.com>>
On Mon, Oct 29, 2012 at 4:23 PM, Ryan Sleevi <sleevi@google.com<mailto:sleevi@google.com>> wrote:
>
> However, as an NSS developer, I do not see your presented argument as a
> reason not to use Concat-KDF, and Concat-KDF would be more preferable, as a
> NIST-blessed KDF, since NSS cares especially for NIST-blessed algorithms.

I think HKDF (hash-based key derivation function) is also worth considering.
It is specified in RFC 5869 and is also blessed by NIST in SP 800-56C.

Wan-Teh
_______________________________________________
jose mailing list
jose@ietf.org<mailto:jose@ietf.org>
https://www.ietf.org/mailman/listinfo/jose