[woes] JSON Web Key (JWK) Specification

Mike Jones <Michael.Jones@microsoft.com> Sun, 01 May 2011 07:09 UTC

Return-Path: <Michael.Jones@microsoft.com>
X-Original-To: woes@ietfa.amsl.com
Delivered-To: woes@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0FC30E0655 for <woes@ietfa.amsl.com>; Sun, 1 May 2011 00:09:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.598
X-Spam-Level:
X-Spam-Status: No, score=-10.598 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
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 Z7p7DK4c4QG9 for <woes@ietfa.amsl.com>; Sun, 1 May 2011 00:09:32 -0700 (PDT)
Received: from smtp.microsoft.com (smtp.microsoft.com [131.107.115.214]) by ietfa.amsl.com (Postfix) with ESMTP id 0BCFCE0651 for <woes@ietf.org>; Sun, 1 May 2011 00:09:32 -0700 (PDT)
Received: from TK5EX14MLTC102.redmond.corp.microsoft.com (157.54.79.180) by TK5-EXGWY-E803.partners.extranet.microsoft.com (10.251.56.169) with Microsoft SMTP Server (TLS) id 8.2.176.0; Sun, 1 May 2011 00:09:31 -0700
Received: from TK5EX14MBXC202.redmond.corp.microsoft.com ([169.254.2.132]) by TK5EX14MLTC102.redmond.corp.microsoft.com ([157.54.79.180]) with mapi id 14.01.0289.008; Sun, 1 May 2011 00:09:31 -0700
From: Mike Jones <Michael.Jones@microsoft.com>
To: "woes@ietf.org" <woes@ietf.org>, "openid-specs-ab@lists.openid.net" <openid-specs-ab@lists.openid.net>
Thread-Topic: JSON Web Key (JWK) Specification
Thread-Index: AcwHzrBrjINet9mKQkqS/OkBi5p6CA==
Date: Sun, 01 May 2011 07:09:30 +0000
Message-ID: <4E1F6AAD24975D4BA5B168042967394330CCA6E6@TK5EX14MBXC202.redmond.corp.microsoft.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_4E1F6AAD24975D4BA5B168042967394330CCA6E6TK5EX14MBXC202r_"
MIME-Version: 1.0
Subject: [woes] JSON Web Key (JWK) Specification
X-BeenThere: woes@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Web Object Encryption and Signing \(woes\) BOF discussion list" <woes.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/woes>, <mailto:woes-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/woes>
List-Post: <mailto:woes@ietf.org>
List-Help: <mailto:woes-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/woes>, <mailto:woes-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 01 May 2011 07:09:34 -0000

I've posted the JSON Web Key (JWK) specification<http://self-issued.info/docs/draft-jones-json-web-key.html> for representing public keys as JSON objects based on the decisions made at the last IIW<http://self-issued.info/?p=390>.  The introduction to the spec reads:

A JSON Web Key (JWK) is a JSON data structure that represents a set of public keys as a JSON object. The JWK format is used to represent bare keys; representing certificate chains is an explicit non-goal of this specification. JSON Web Keys are referenced in JSON Web Signatures (JWSs) using the jku (JSON Key URL) header parameter.

An example from the spec is:

{"keyvalues":
  [
    {"algorithm":"ECDSA",
     "curve":"P-256",
     "x":"MKBCTNIcKUSDii11ySs3526iDZ8AiTo7Tu6KPAqv7D4",
     "y":"4Etl6SRW2YiLUrN5vfvVHuhp7x8PxltmWWlbbM4IFyM",
     "keyid":"1"},

    {"algorithm":"RSA",
      "modulus": "0vx7agoebGcQSuuPiLJXZptN9nndrQmbXEps2aiAFbWhM78LhWx4cbbfAAtVT86zwu1RK7aPFFxuhDR1L6tSoc_BJECPebWKRXjBZCiFV4n3oknjhMstn64tZ_2W-5JsGY4Hc5n9yBXArwl93lqt7_RN5w6Cf0h4QyQ5v-65YGjQR0_FDW2QvzqY368QQMicAtaSqzs8KJZgnYb9c7d0zgdAZHzu6qMQvRL5hajrn1n91CbOpbISD08qNLyrdkt-bFTWhAI4vMQFh6WeZu0fM4lFd2NcRwr3XPksINHaQ-G_xBniIqbw0Ls1jF44-csFCur-kEgU8awapJzKnqDKgw",
     "exponent":"AQAB",
     "keyid":"2011-04-29"}
  ]
}

The specification is available at these locations:

*        http://www.ietf.org/internet-drafts/draft-jones-json-web-key-00.txt

*        http://www.ietf.org/internet-drafts/draft-jones-json-web-key-00.xml

*        http://self-issued.info/docs/draft-jones-json-web-key-00.html

*        http://self-issued.info/docs/draft-jones-json-web-key-00.txt

*        http://self-issued.info/docs/draft-jones-json-web-key-00.xml

*        http://self-issued.info/docs/draft-jones-json-web-key.html (will point to new versions as they are posted)

*        http://self-issued.info/docs/draft-jones-json-web-key.txt (will point to new versions as they are posted)

*        http://self-issued.info/docs/draft-jones-json-web-key.xml (will point to new versions as they are posted)

*        http://svn.openid.net/repos/specifications/json_web_key/1.0/ (Subversion repository, with html, txt, and html versions available)

I also updated the description of the JSON Web Signature (JWS)<http://self-issued.info/docs/draft-jones-json-web-signature.html> header parameter "jku" (JSON Key URL) to reference the JWK spec in draft -02<http://self-issued.info/docs/draft-jones-json-web-signature-02.html>.

                                                            -- Mike