Re: [Ace] Key IDs ... RE: WGLC on draft-ietf-ace-cwt-proof-of-possession-02

Ludwig Seitz <> Tue, 03 July 2018 09:32 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 2E0A6130E36 for <>; Tue, 3 Jul 2018 02:32:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id bDdphYU12Zia for <>; Tue, 3 Jul 2018 02:32:05 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id DEF22131208 for <>; Tue, 3 Jul 2018 02:32:04 -0700 (PDT)
Received: from 1faHfE-000T2i-VU by with emc1-ok (Exim 4.90_1) (envelope-from <>) id 1faHfF-000T3k-TC for; Tue, 03 Jul 2018 02:32:01 -0700
Received: by emcmailer; Tue, 03 Jul 2018 02:32:01 -0700
Received: from [] ( by with esmtps (TLSv1.2:ECDHE-RSA-AES128-SHA256:128) (Exim 4.90_1) (envelope-from <>) id 1faHfE-000T2i-VU for; Tue, 03 Jul 2018 02:32:00 -0700
Received: from [] ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Tue, 3 Jul 2018 11:32:00 +0200
To: 'ace' <>
References: <> <> <> <> <027401d40b93$6b73b470$425b1d50$> <> <00e701d40d6e$c09b3db0$41d1b910$> <> <013301d40de7$39660220$ac320660$> <> <027e01d40f6e$01e326b0$05a97410$>
From: Ludwig Seitz <>
Message-ID: <>
Date: Tue, 3 Jul 2018 11:31:49 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0
MIME-Version: 1.0
In-Reply-To: <027e01d40f6e$01e326b0$05a97410$>
Content-Type: text/plain; charset="utf-8"; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: []
X-ClientProxiedBy: ( To (
X-Proto: esmtps
X-TLS: TLSv1.2:ECDHE-RSA-AES128-SHA256:128
X-PolicySMART: 14510320
X-Virus-Status: Scanned by VirusSMART (c)
X-Virus-Status: Scanned by VirusSMART (s)
Archived-At: <>
Subject: Re: [Ace] Key IDs ... RE: WGLC on draft-ietf-ace-cwt-proof-of-possession-02
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: "Authentication and Authorization for Constrained Environments \(ace\)" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 03 Jul 2018 09:32:09 -0000

I've finally had the time to think about that Key ID issue for ACE.

Here is what I got:

The case Jim is worried about is the following:

* Client A has key K1 with KID = "A"
* RS also has key K1 with KID = "A"
* Client A has the right to token T1 on RS
* Client B has the right to token T2 on RS

1. Client A gets T1 from AS bound via the cnf claim to KID="A"

2. Client A transfers T1 to RS

3. Client A performs the proof-of-possession with key K1 and gets access 
to RS according to T1

4. Malicious Client B learns of the KID = "A" for T1 (but not of K1).

5. Client B chooses K2 and assigns it KID = "A"

6. Client B gets 2 from AS bound via the cnf claim to KID="A"

7. Client B transfers T2 to RS

8. ?

9. Client B performs the proof-of-possession for K2 and gets access to 
both T1 and T2

Now I'm claiming there is no step 8 that makes step 9 work, unless B can 
get RS to accept a new key (K2) with a duplicate KID.

Thus I'd say, we need to Security Considerations about handling key Ids 
at the recipient of a CWT containing a cnf claim. Something along the 
lines of:

"If a recipient receives a CWT with the a confirmation claim, the 
recipient MUST make sure that keys that may be contained in that claim 
do not have a key identifier that duplicates one of a different key that 
the recipient already recognizes."

Or shorter:

"Recipients MUST make sure that they do not accept identical key 
identifiers for different keys"


Ludwig Seitz, PhD
Security Lab, RISE SICS
Phone +46(0)70-349 92 51