Re: [Sidrops] feedback on draft-michaelson-rpki-rta

Job Snijders <job@sobornost.net> Tue, 12 January 2021 18:46 UTC

Return-Path: <job@sobornost.net>
X-Original-To: sidrops@ietfa.amsl.com
Delivered-To: sidrops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8B0853A1022 for <sidrops@ietfa.amsl.com>; Tue, 12 Jan 2021 10:46:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=ham 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 B8qG3yAf0WSu for <sidrops@ietfa.amsl.com>; Tue, 12 Jan 2021 10:46:28 -0800 (PST)
Received: from outbound.soverin.net (outbound.soverin.net [IPv6:2a01:4f8:fff0:2d:8::215]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DDF1A3A0FEA for <sidrops@ietf.org>; Tue, 12 Jan 2021 10:46:26 -0800 (PST)
Received: from smtp.freedom.nl (unknown [10.10.3.36]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by outbound.soverin.net (Postfix) with ESMTPS id 88A12600E9 for <sidrops@ietf.org>; Tue, 12 Jan 2021 18:46:23 +0000 (UTC)
Received: from smtp.freedom.nl (smtp.freedom.nl [116.202.65.211]) by soverin.net
Received: from localhost (bench.sobornost.net [local]) by bench.sobornost.net (OpenSMTPD) with ESMTPA id bf80d078; Tue, 12 Jan 2021 19:17:05 +0000 (UTC)
Date: Tue, 12 Jan 2021 19:17:05 +0000
From: Job Snijders <job@sobornost.net>
To: sidrops@ietf.org
Message-ID: <X/31sdsc/ZzGDsjf@bench.sobornost.net>
References: <X+d3+e5Rj/Q7Dchv@bench.sobornost.net> <20201229101412.GA56136@diehard.n-r-g.com> <X+scpsd6kDQ72nLa@bench.sobornost.net> <49a8e314-7b3f-0e8d-6e20-7d055fb1a076@verizon.net> <20201229151639.GD56136@diehard.n-r-g.com> <X+tR06kF3aPZ4+18@bench.sobornost.net> <20201230144836.ytg4u2gobkv4uzqn@benm-laptop> <3BA339C3-EADC-449E-B5B2-7A4880E16EDA@nlnetlabs.nl> <20210112145800.nocjbd4millmbx4i@benm-laptop>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20210112145800.nocjbd4millmbx4i@benm-laptop>
X-Clacks-Overhead: GNU Terry Pratchett
Archived-At: <https://mailarchive.ietf.org/arch/msg/sidrops/eyP36qK1OK5_d6NMckHuNiv3KAc>
Subject: Re: [Sidrops] feedback on draft-michaelson-rpki-rta
X-BeenThere: sidrops@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: A list for the SIDR Operations WG <sidrops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sidrops>, <mailto:sidrops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sidrops/>
List-Post: <mailto:sidrops@ietf.org>
List-Help: <mailto:sidrops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sidrops>, <mailto:sidrops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 12 Jan 2021 18:46:35 -0000

On Tue, Jan 12, 2021 at 04:58:00PM +0200, Ben Maddison wrote:
> > If N == 1 then this does not increase the complexity. If N > 1 then
> > there may be some fragility, because any of the paths can fail, but
> > it is reasonable to state that if multiple signatures are required
> > then it is a requirement that the RTA MUST be considered invalid if
> > the validation of any signature or EE certificate fails.
> 
> It arguably also adds flexibility, in that the consequences of having
> an incomplete set can be application-specific. In some cases, a
> partial set may be useful, in others it may render all the RTAs
> useless.
> 
> When I started writing this email, I was mostly agnostic other than
> insofar as this may speed-up or delay implementation.
> 
> Having thought about it, I actually think the multiple RTAs pattern is
> better than the multiple signer pattern.

1/
We should be cognizant Relying Parties might not have all applicable
Trust Anchors in common with each other. Lacking a single common Trust
Anchors will invalidate the entire multiple-SignerInfo RTA.
Troubleshooting such cases in a multiple-SignerInfo will be harder
compared to each RTA object containing a single SignerInfo (and thus is
bound to a single Trust Anchor).

2/
The complexity of Multiple-SignerInfo in a Multiple-Trust Anchors
context is further compounded when one takes into consideration any
additional variances resulting from different X509 Certificate Policies
(RFC 6487 & RFC 8360) on different validation paths towards a single
multiple-SignerInfo RTA. 

3/
I think SIDROPS needs to take a hard look at whether significant
increases of complexity are a wise move at this phase of global RPKI
deployment. 'Mixing' of Trust Anchor trees at this 'pre-validation
stage' is a big unknown for the working group, it has not been done
before. Contrary to Martin's comment "The work of dealing with resources
under multiple parents has to be done." ... that's just not true,
this is not work that *has* to be done, it is entirely avoidable.

Given how much problems some validator implementers had in 2020 (and
still have!) to just get manifest & CRL basics right, makes me very
skeptical about the group's ability to now suddenly perform at a much
more advanced level.

4/
Last but not least: if we follow a single-SignerInfo model, all the
RIRs/NIRs should be able to fairly easy to implement a web tool for:

    'copy+paste attested object's hash here -> click which resource should sign -> download resulting RTA'.

Implementing single-SignerInfo RTA at the RIR-hosted CA level can
be straight forward, as such hosted services only needs to concern
themselves with a single Trust Anchor (themselves) and there won't be
passing around of RTAs for co-signing. The RIR-hosted portal also
doesn't need to see the actual digital object being attested, just the
hash. I fear multiple-signerinfo RTA would see lack of adoption in that
part of the ecosystem, and "just use krill" is not the answer.

Summary:

* multiple people have indicated immediate use-cases for single SignerInfo
* multiple people have voiced concerns about multiple-signerInfo
* I've expressed a willingness to facilitate a single SignerInfo
  implementation, but I'm not willing to implement or support multiple
  SignerInfo.

I hope the authors reconsider so we can get down to the business of
deploying RTA! :-)

Kind regards,

Job