Re: [Ace] Summarizing WGLC discussion of draft-ietf-ace-cwt-proof-of-possession

Mike Jones <Michael.Jones@microsoft.com> Tue, 06 November 2018 09:57 UTC

Return-Path: <Michael.Jones@microsoft.com>
X-Original-To: ace@ietfa.amsl.com
Delivered-To: ace@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 21E65130DFF for <ace@ietfa.amsl.com>; Tue, 6 Nov 2018 01:57:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.469
X-Spam-Level:
X-Spam-Status: No, score=-2.469 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.47, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.com
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 DRHiGp4Ky3P8 for <ace@ietfa.amsl.com>; Tue, 6 Nov 2018 01:57:06 -0800 (PST)
Received: from NAM06-BL2-obe.outbound.protection.outlook.com (mail-bl2nam06on0705.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe55::705]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1416B1277C8 for <ace@ietf.org>; Tue, 6 Nov 2018 01:57:05 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YG9g1b95wqpboCJuFLLMrr3qqbZC2QCh6JPI80vHleU=; b=SGA8jIT3wJdyv8bYUQYoNoR3XVPP9sb2PR+Gx2Rrg2IrzRAevMmOGVad24b9yxTeCNQB0nUiYoUCC32ZWazUlnWcN8WrChoOmRoz97NIVcJsVV6H0iN1K9PieXC3cV9LqJNVTQrg3rU0pnRxL93sWGswzuNuwNqP7EdUdE5V4zc=
Received: from DM5PR00MB0296.namprd00.prod.outlook.com (52.132.128.37) by DM5PR00MB0424.namprd00.prod.outlook.com (52.132.129.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1353.0; Tue, 6 Nov 2018 09:57:01 +0000
Received: from DM5PR00MB0296.namprd00.prod.outlook.com ([fe80::fc3c:9d35:6339:17ae]) by DM5PR00MB0296.namprd00.prod.outlook.com ([fe80::fc3c:9d35:6339:17ae%8]) with mapi id 15.20.1354.000; Tue, 6 Nov 2018 09:57:01 +0000
From: Mike Jones <Michael.Jones@microsoft.com>
To: Roman Danyliw <rdd@cert.org>, "ace@ietf.org" <ace@ietf.org>
CC: Jim Schaad <ietf@augustcellars.com>
Thread-Topic: Summarizing WGLC discussion of draft-ietf-ace-cwt-proof-of-possession
Thread-Index: AdQaB+pCJ/tP7Ud0T+GY5Fn6FrAcuBbeY8wQAA01yoA=
Date: Tue, 06 Nov 2018 09:57:01 +0000
Message-ID: <DM5PR00MB0296B8640133B9F9FBDFC641F5CB0@DM5PR00MB0296.namprd00.prod.outlook.com>
References: <359EC4B99E040048A7131E0F4E113AFC014C3FEDA1@marathon> <MW2PR00MB030043BAB5054032AE710B0DF5CB0@MW2PR00MB0300.namprd00.prod.outlook.com>
In-Reply-To: <MW2PR00MB030043BAB5054032AE710B0DF5CB0@MW2PR00MB0300.namprd00.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [31.133.189.203]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM5PR00MB0424; 6:gYIdn1hDwMAaNlFyVMrx1uNkaVzpWWdijykB0/sjLAEim4z8Myt14LUb/cjhAZCotgmL6jacCRrMvGZfqId9VQPIncSO5pWK5LSPnJeJKQxJk+S4VdyNW0Z+8sJbBkvrbEb5kqoaMpnd5/dJHmI4qTs5UCk9ghREjdwuUwSEmoFDbpygX8VWI8GS8iRO83A0I0E2SdvyyDICeeAlnWOB2qZ1NWFWvkldSeUPFrOhBT2tTwM1qu1pGmYjTSVdRGdABpwt3dJeXxY/0iD68bS9fncPHjiCeBGtpZZRLT2wOFVNVup7hJlzJtbQc6RNn850GcqyQ7knK8VLZM7nqFkjKEKUkrg6KK98EAsncMNBenREMCgD0kQH4cSXgtlQ7BJYaXoCIIp1oove8aZUFrf4v0L4/70GDCdfZgVg5Zowe0zBLp5gdDjtQUnLg2xrGQnLGj2MaEmOey+Ye+Ay9V09vg==; 5:zkPu54slwvpWGTuI6Yq2eMA9T9wJ0oogbOniged+dKCkQJkgZiTpqjDHhTHRiDaoUnRjRLUc9XnU+GNfuUuUubHXTbth6sGzQpGbXjgpCck4v0bLkZfLRepc6IUxx+na0kdHcaymPCXaMoY9k0ptRiHAszAtUtgptId72fvBzI8=; 7:tcO9OX/LgUosNqywFJt7Tw0Gb164C2pM8WNUy75L3UMpBGPajF+tiyDDKE3WJttzE4U+ISvrEEH9/GDwEHiTwD+Hxbs9/BBTYtWV7GMJvAzSsee9RASoNrTlZTtDcca545iEF8Y3qiN4gxPKfQCCRw==
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 096bc96f-ce8f-47b4-8e90-08d643ce32b1
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7193020); SRVR:DM5PR00MB0424;
x-ms-traffictypediagnostic: DM5PR00MB0424:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=Michael.Jones@microsoft.com;
x-microsoft-antispam-prvs: <DM5PR00MB0424052F71198882EDC30599F5CB0@DM5PR00MB0424.namprd00.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(2017102700009)(2017102701064)(6040522)(8220035)(2401047)(8121501046)(5005006)(2017102702064)(20171027021009)(20171027022009)(20171027023009)(20171027024009)(20171027025009)(20171027026009)(2017102703076)(3231382)(944501410)(4982022)(52105102)(2018427008)(10201501046)(3002001)(93006095)(93001095)(6055026)(148016)(149066)(150057)(6041310)(20161123560045)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(201708071742011)(7699051)(76991095); SRVR:DM5PR00MB0424; BCL:0; PCL:0; RULEID:; SRVR:DM5PR00MB0424;
x-forefront-prvs: 0848C1A6AA
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(979002)(376002)(346002)(39860400002)(396003)(366004)(136003)(209900001)(51444003)(69234005)(189003)(199004)(51914003)(13464003)(2906002)(68736007)(11346002)(110136005)(3846002)(8990500004)(6116002)(790700001)(76176011)(10290500003)(606006)(446003)(72206003)(25786009)(186003)(478600001)(966005)(7736002)(74316002)(26005)(8936002)(81156014)(8676002)(476003)(86612001)(14454004)(81166006)(86362001)(5660300001)(316002)(486006)(22452003)(33656002)(2900100001)(66066001)(7696005)(256004)(21615005)(2501003)(97736004)(102836004)(10090500001)(14444005)(53546011)(6506007)(6246003)(53936002)(53376002)(229853002)(6436002)(6306002)(54896002)(9686003)(55016002)(236005)(71200400001)(71190400001)(106356001)(105586002)(99286004)(4326008)(6606295002)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR00MB0424; H:DM5PR00MB0296.namprd00.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts)
x-microsoft-antispam-message-info: +UpacPTztSepbZFKgXGFznVTwfMxKNkhHDVcvQytLCelsNgotaP0Uz59AQ7lQsRUu2suCUCj7soglouJzifbDgR3eLAxUtpOdVrF8ulmGugnEVYvwCd7Fh1QiFHW3gAyo0tB4dueEEGuh5iGx8pEFbrBZe9C9UaI1GxxILOU+MhVDUbxqSteMiGuQ5kSb9v7sR9gkkoF7rWL2NotuDTVXVd70PE4q73EJR+w1FPRBQGn0NEm+bTrrsJYzIyknKfUojGFVFEDiSBwS4yhQmeclbhJY/NnnJGn4eVYg27wKjqV0teOh57Kk+35PmfpEx6B/Own3HlxXzfXSg0YYuTrRqgmfJ2lg4dDWrrmURRB6gI=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DM5PR00MB0296B8640133B9F9FBDFC641F5CB0DM5PR00MB0296namp_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 096bc96f-ce8f-47b4-8e90-08d643ce32b1
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Nov 2018 09:57:01.0793 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR00MB0424
Archived-At: <https://mailarchive.ietf.org/arch/msg/ace/RZ8_QrrpA_BGgoM6XjxmMKBjdmg>
Subject: Re: [Ace] Summarizing WGLC discussion of draft-ietf-ace-cwt-proof-of-possession
X-BeenThere: ace@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Authentication and Authorization for Constrained Environments \(ace\)" <ace.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ace>, <mailto:ace-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ace/>
List-Post: <mailto:ace@ietf.org>
List-Help: <mailto:ace-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ace>, <mailto:ace-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 Nov 2018 09:57:10 -0000

FYI - I wrote about this new version at http://self-issued.info/?p=1933 and as @selfissued<https://twitter.com/selfissued>.

                                                       -- Mike

From: Ace <ace-bounces@ietf.org> On Behalf Of Mike Jones
Sent: Tuesday, November 6, 2018 3:43 PM
To: Roman Danyliw <rdd@cert.org>; ace@ietf.org
Cc: Jim Schaad <ietf@augustcellars.com>
Subject: Re: [Ace] Summarizing WGLC discussion of draft-ietf-ace-cwt-proof-of-possession


Thanks for the useful summary, Roman.  Replies are inline below prefixed by "Mike>".  I've just published draft -04<https://tools.ietf.org/html/draft-ietf-ace-cwt-proof-of-possession-04>, which contains the small number of changes described below.  I believe that this completes resolution of the WGLC feedback.



-----Original Message-----
From: Ace <ace-bounces@ietf.org<mailto:ace-bounces@ietf.org>> On Behalf Of Roman Danyliw
Sent: Friday, July 13, 2018 12:56 AM
To: ace@ietf.org<mailto:ace@ietf.org>
Subject: [Ace] Summarizing WGLC discussion of draft-ietf-ace-cwt-proof-of-possession



Hello!



This email is intended to summarize the outcome of the WGLC on draft-ietf-ace-cwt-proof-of-possession-02 to date.  This call was started on May 8 [1] and discussion occurred around two reviews of this -02 draft:



** Jim Schaad [Schaad], per https://www.ietf.org/mail-archive/web/ace/current/msg02747.html

** Roman Danyliw [Danyliw], per https://www.ietf.org/mail-archive/web/ace/current/msg02793.html



After discussion on the mailing list, -03 of the draft was produced.



Synthesizing the robust mailing list discussion, I see the following previously identified issues as still needing closure.  The nature of the resolution varies.  Given the volume of the discussion threads, I may have missed a response or failed to line up a text change in -03 to an issue.  Please correct the status of any given point of feedback below.



==[ -03 contains changes, but ML discussion doesn't indicate closure ]== The following feedback was made about the -02 draft; changes to the relevant text was made in -03; but follow-up discussions on the mailing list doesn't indicate closure of the issue.  If the originator of the feedback (it looks like only Jim for this section) feels the issue is closed, please speak up.



[Schaad #6]  Under what circumstances would a 'sub' claim be present and it is not the presenter?  I can see that a holder of the key may be implicitly (or anonymously)  named, but putting something in the subject field which is not identifying the presenter is something that I would reject without a good presentation of why in the  document.



Mike> The draft is written as it is to both provide non-normative guidance for expected simple use cases, while also allowing flexibility for more complicated use cases.  In particular, in some profiles, the subject of the CWT and the presenter of the CWT for proof-of-possession purposes may be different parties.  The party presenting the CWT to the recipient would be in possession of the CWT because it communicated with the issuer but the subject can be different than the presenter.  That's why the subject language is written as a suggestion to profile writers, rather than normatively.  I'll note that this also aligned with the treatment in RFC 7800, which this draft mirrors, by design.



[Schaad #7]  I would disagree with the claim that if the 'sub' claim is missing then it would normally be the issuer.  For the world of IoT, I would expect that the subject would not be present because there is no need to identify the subject to the recipient.  I.e. it is an anonymous subject.



Mike> As with the previous issue, this section of the draft provides non-normative guidance for expected simple use cases, while not precluding profiling specifications from using the standard CWT claims in the manner that makes sense for their application.  The "iss" language here also intentionally parallels the RFC 7800 treatment of this claim.



[Schaad #8]  It is not clear to me that either of the sub and iss claims would normally be present.  They might be present but neither is needed.  The subject can be anonymous and the issuer is identified by the key used to validate the security on the CWT.



Mike> Your points above align with the design in the draft.  That's why both "iss" and "sub" are optional.  Their usage is profile-dependent, as it is in RFC 7800 (and CWT and JWT).



[Schaad #9]  In section 3.1 the first two sentences appear to be contradictory.  Members are used to identify the POP key.  Other things than a POP key can be used than a POP key.  If they are used to identify the POP key- why would they not deal with the POP key?  I think that you should do a separation and define the 'cnf' file which can hold any number of confirmation methods and then have a section on defining some POP cnf method field holders.



Mike> The apparently contradictory language in draft -02 was reworded in draft -03 to address this comment.  In particular, it now explicitly states that the "cnf" claim is used to carry confirmation methods, some of which identify proof-of-possession keys.  This aligns both with RFC 7800 and the SAML 2.0 SubjectConfirmation element design (both by intentionally, since there's no need to reinvent the wheel when an existing design already works well).



[Schaad #10]  In section 3.1 P1 - I am not sure why you have something here about confirming the authenticity of the token as oppose to confirming the identity of the presenter.  Why would that type of information be placed here where it is not useful.]



Mike> The referenced text was reworked between draft -02 and -03.



==[ change was proposed, but not made ]== The draft editors proposed a changes on the mailing list to address the issue but it did not appear in the -03 draft.



See the inline text of https://www.ietf.org/mail-archive/web/ace/current/msg02788.html for the proposed changes for [Schaad #12, 13, 16, 21].



[Schaad #12] I am unclear why there should be a restriction on the number of POP keys that can be in a 'cnf' object.  If there are multiple keys, then any or all of them are of equal value in doing the confirmation.  Just like there can be multiple confirmation methods and an application could choose to use any one of them.



Mike> This was discussed in the working group meeting at IETF 102 in Montreal and on the list.  The consensus appeared to be to stay with the existing design, which describes how to represent multiple PoP keys in the fourth paragraph of https://tools.ietf.org/html/draft-ietf-ace-cwt-proof-of-possession-03#section-3.1 (which again, is the same mechanism defined in RFC 7800).



[Schaad #13]  Not sure which section this belongs in, but the use of an COSE_Encrypt0 would be one way to combat tracking of identities based on the key value being used.  Different encrypted values could be sent to different servers and they would not necessarily know about use w/o internal collusion between them.  Similar effect by using an encrypted CWT.  Potentially requires use of TLS1.3 to protect the RPKs.  YMMV



Mike> The Privacy Considerations section talks about a common PoP key being a potential correlation handle and thus recommends that different PoP keys be used for different parties.  Encrypting a common key could prevent observers unable to decrypt the messages from learning that they key is shared but would not prevent correlation by parties that cooperate to compare their PoP keys.  So it's not clear to me that the suggestion above solves enough of the correlation problem that it's worth including in the draft.  If you disagree, please suggest text for an additional Privacy Considerations paragraph.



[Schaad #16] Section 4 - Are audience restrictions not done in CWT?  -- same issues as [Danyliw #12]



Mike> All claims in CWTs (and JWTs) are optional, including the "aud" (audience) claim.  Particular profiles can suggest and require particular claims, as this profile does.  I have deleted the unnecessary middle sentence, which [Danyliw #12] correctly pointed out broke up the logical flow of the exposition.  Thanks for pointing this out.



[Schaad #21] Section 6.2.2 - the value type is not an array for COSE_Encrypt or COSE_Encyrpt0, these are the values.  As written I could put in an array which is not one of those two structures and be valid.   Ditto for COSE_Key, although w/ slightly less justification.



Mike> Thanks.  I updated these value type declarations to use the actual required COSE_* types.



See the inline text of https://www.ietf.org/mail-archive/web/ace/current/msg02802.html  for the proposed change for [Danyliw #7].



[Danyliw #7] Page 6, Section 3.3, The sentence "The COSE_Key could, for instance, be encrypted using a COSE_Encrypt0 representation using the AES-CCM-16-64-128 algorithm" seems out of place..  What is this text explaining relative to the examples?



Mike> Thanks.  I deleted the confusing and unnecessary sentence.



==[ face to face discussion required ]== Certain issues were deemed sufficiently complex to required face-to-face discussion at IETF 102.



[Schaad #14]  I have real problems w/ the use of a KID for POP identification.  It may identify the wrong key or, if used for granting access, may have problems w/ identity collisions.  These need to be spelt out someplace to help people tracking down questions of why can't I verify w/ this CWT, I know it's right. -- See https://www.ietf.org/mail-archive/web/ace/current/msg02853.html for more detailed discussion -- related issue to [Danyliw #8].



Mike> The paragraph sentence of the Operational Considerations section at https://tools.ietf.org/html/draft-ietf-ace-cwt-proof-of-possession-03#section-6 was added in draft -03 to address exactly this issue, after extensive discussion and wordsmithing on the mailing list.



Regards,

Roman



[1] https://www.ietf.org/mail-archive/web/ace/current/msg02744.html





_______________________________________________

Ace mailing list

Ace@ietf.org<mailto:Ace@ietf.org>

https://www.ietf.org/mailman/listinfo/ace



                                                       Thanks again,

                                                       -- Mike