Re: [Anima] Pinning of raw public keys in Constrained Vouchers

Michael Richardson <mcr+ietf@sandelman.ca> Sun, 02 June 2019 20:47 UTC

Return-Path: <mcr+ietf@sandelman.ca>
X-Original-To: anima@ietfa.amsl.com
Delivered-To: anima@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AC0B11200F9 for <anima@ietfa.amsl.com>; Sun, 2 Jun 2019 13:47:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.441
X-Spam-Level:
X-Spam-Status: No, score=-0.441 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_SOFTFAIL=0.665] autolearn=no autolearn_force=no
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 4yFpIyJdEGvB for <anima@ietfa.amsl.com>; Sun, 2 Jun 2019 13:47:13 -0700 (PDT)
Received: from tuna.sandelman.ca (unknown [209.87.249.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 09DA412008C for <anima@ietf.org>; Sun, 2 Jun 2019 13:47:12 -0700 (PDT)
Received: from sandelman.ca (obiwan.sandelman.ca [209.87.249.21]) by tuna.sandelman.ca (Postfix) with ESMTP id 17E693808A for <anima@ietf.org>; Sun, 2 Jun 2019 16:46:00 -0400 (EDT)
Received: from [IPv6:::1] (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id 0E731560 for <anima@ietf.org>; Sun, 2 Jun 2019 16:47:10 -0400 (EDT)
To: anima@ietf.org
References: <31898.1558925443@localhost> <00ce01d5143f$db431740$91c945c0$@augustcellars.com>
From: Michael Richardson <mcr+ietf@sandelman.ca>
Message-ID: <13ef9ed1-b3c4-006d-8634-4b912cc81470@sandelman.ca>
Date: Sun, 02 Jun 2019 16:47:10 -0400
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
MIME-Version: 1.0
In-Reply-To: <00ce01d5143f$db431740$91c945c0$@augustcellars.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/NY9S8CnOssCoLSNIZl3ODgpTiQo>
Subject: Re: [Anima] Pinning of raw public keys in Constrained Vouchers
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 02 Jun 2019 20:47:15 -0000

On 2019-05-26 11:54 p.m., Jim Schaad wrote:
>> Couldn't we send a hash of identity in (2) and (3), and to do this we need
>> a
>> new element in the constrained voucher.  This I've given the mouthful name
>> of:  proximity-registrar-sha256-of-subject-public-key-info
>> and: pinned-sha256-of-subject-public-key-info
>> (knowing that the YANG->SID process will turn this into a small integer).

> Fixing on a single hash function would probably be frowned upon by the IESG.
> The lack of algorithm flexibility would be an issue.

I've been thinking about this a bit.
Algorithm flexibility involves two things:
1) ability to encode other algorithms.  This is easy, write some new 
YANG.  That involves more than a simple IANA action, but is equivalent 
to a more complex action, i.e. "Specification Required". Ultimately, it 
involves allocating a SID, which could be a rather simple IANA action.

2) deciding how/when to use the new algorithm.

The voucher-request travels from the pledge to the MASA, with the 
Registrar examining, (auditing, encapsulating, signing), but not needing 
to understand everything.  So a new algorithm goes by without a lot of 
trouble.  The pledge creates the hash from the AKE.

The voucher travels from MASA to the pledge, and the Registrar again 
just observes.
The pledge can be programmed to use whatever algorithms the MASA 
supported at the time the pledge is manufactured.

So I feel satisfied that we can be agile.
The manufacturer simply writes new software and installs it.  Except for 
allocating a SID, it can be done unilaterally.