Re: [sidr] Questions about draft-huston-rpki-validation-01

"Sriram, Kotikalapudi" <kotikalapudi.sriram@nist.gov> Wed, 12 March 2014 20:17 UTC

Return-Path: <kotikalapudi.sriram@nist.gov>
X-Original-To: sidr@ietfa.amsl.com
Delivered-To: sidr@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 37B081A0496 for <sidr@ietfa.amsl.com>; Wed, 12 Mar 2014 13:17:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001] autolearn=ham
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 EI_CT2T7r4mL for <sidr@ietfa.amsl.com>; Wed, 12 Mar 2014 13:17:21 -0700 (PDT)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn14138.inbound.protection.outlook.com [207.46.163.138]) by ietfa.amsl.com (Postfix) with ESMTP id 9035B1A068F for <sidr@ietf.org>; Wed, 12 Mar 2014 13:17:20 -0700 (PDT)
Received: from BLUPR09MB053.namprd09.prod.outlook.com (10.255.211.146) by BLUPR09MB006.namprd09.prod.outlook.com (10.255.211.149) with Microsoft SMTP Server (TLS) id 15.0.898.11; Wed, 12 Mar 2014 20:17:13 +0000
Received: from BLUPR09MB053.namprd09.prod.outlook.com ([169.254.14.70]) by BLUPR09MB053.namprd09.prod.outlook.com ([169.254.14.70]) with mapi id 15.00.0893.001; Wed, 12 Mar 2014 20:17:12 +0000
From: "Sriram, Kotikalapudi" <kotikalapudi.sriram@nist.gov>
To: Geoff Huston <gih@apnic.net>
Thread-Topic: Questions about draft-huston-rpki-validation-01
Thread-Index: Ac89eRhd+ibZbQZWQW6u2RB/Km153QAQRwSAABsPsLA=
Date: Wed, 12 Mar 2014 20:17:11 +0000
Message-ID: <519729f8a8c549ec98496c22fc6025a6@BLUPR09MB053.namprd09.prod.outlook.com>
References: <aa922cfa32d64b01ad85a472faa9356b@BLUPR09MB053.namprd09.prod.outlook.com> <F69C5324-C865-46FB-9B49-940B47F29ADD@apnic.net>
In-Reply-To: <F69C5324-C865-46FB-9B49-940B47F29ADD@apnic.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [129.6.140.100]
x-forefront-prvs: 01480965DA
x-forefront-antispam-report: SFV:NSPM; SFS:(10009001)(6009001)(428001)(189002)(199002)(76576001)(77982001)(77096001)(66066001)(46102001)(59766001)(74876001)(76796001)(76786001)(69226001)(79102001)(561944002)(74706001)(20776003)(65816001)(63696002)(80022001)(54316002)(51856001)(87266001)(2656002)(53806001)(54356001)(56776001)(49866001)(47976001)(50986001)(74316001)(47736001)(33646001)(95416001)(4396001)(76482001)(94316002)(90146001)(85852003)(87936001)(92566001)(86362001)(93516002)(93136001)(83072002)(94946001)(56816005)(74502001)(74662001)(81816001)(85306002)(97186001)(95666003)(97336001)(31966008)(47446002)(81542001)(81342001)(80976001)(74366001)(83322001)(81686001)(24736002); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR09MB006; H:BLUPR09MB053.namprd09.prod.outlook.com; FPR:7F05B15E.9DF617ED.B2CF7F47.8AEA914E.2037B; PTR:InfoNoRecords; MX:1; A:1; LANG:en;
received-spf: None (: nist.gov does not designate permitted sender hosts)
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: nist.gov
Archived-At: http://mailarchive.ietf.org/arch/msg/sidr/3iHQn11go8nsP3EBA8F8iSoH6ns
Cc: George Michaelson <ggm@apnic.net>, sidr wg list <sidr@ietf.org>
Subject: Re: [sidr] Questions about draft-huston-rpki-validation-01
X-BeenThere: sidr@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Secure Interdomain Routing <sidr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sidr>, <mailto:sidr-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sidr/>
List-Post: <mailto:sidr@ietf.org>
List-Help: <mailto:sidr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sidr>, <mailto:sidr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 12 Mar 2014 20:17:27 -0000

Geoff,

About my Question (3), let us discuss this a bit more carefully with an example.

There is this ROA: {10.0.0.0/24, AS64499} that we wish to validate.
It is signed with Certificate 3, which has the following certificate path to the TA: 
Certificate 1: It lists {10.0.0.0/12, AS64501, AS64505, AS64509}  (TA certificate)
Certificate 2: It lists {10.0.0.0/22, AS64501, AS64505, AS64511}
Certificate 3: It lists {10.0.0.0/20, AS64501, AS64505}
Note: Certificate 1 is the TA certificate.

It is clear that following the current (RFC 3779) method, 
Certificates 2 and 3 are invalid, and it follows that the ROA is invalid.

Now, there are two methods that we may enumerate for a modified (or alternate) 
validation proposal:

Method A (more conservative but less robust relative to Method B below): 

Step 1: Ask what certificate is used to sign the RAO? Answer: Certificate 3.
 
Step 2: Do the resources in Certificate 3 subsume the prefix in the ROA?  Answer: YES, 
because "the INR of interest" 10.0.0.0/24 in the ROA is subsumed by 
an INR 10.0.0.0/20 in Certificate 3. OK, now proceed to validate Certificate 3. 
Note that "the INR of interest" in Certificate 3 is 10.0.0.0/20.
    
Step 3: Ask if the resources in Certificate 2 subsume "the INR of interest" in Certificate 3? 
Answer: NO, because "the INR of interest" 10.0.0.0/20 in Certificate 3 is NOT subsumed 
by an INR in the parent Certificate 2.  
(Note: The parent Certificate 2 has a more specific prefix 10.0.0.0/22.)

Step 4: Since the certificate chain "validation" failed at Step 3, declare the ROA 
being considered as "Invalid" for the prefix-origin pair {10.0.0.0/24, AS64499} .

Method B (less conservative but more robust relative to Method A above):

Step 1: Ask what certificate is used to sign the RAO? Answer: Certificate 3.
 
Step 2: Set "the given INR" as 10.0.0.0/24. That is the INR in the ROA for which 
validation is being sought. 
[Note: "The given INR" remains a constant in the steps that follow.  
We just *stay focused on this given INR* for the rest of the validation process below. 
This is the main difference compared to method A.]
   
Step 3: Do the resources in Certificate 3 subsume the "the given INR" 10.0.0.0/24? 
Answer: YES, because the given INR 1.0.0.0/24 is subsumed by an INR 10.0.0.0/20 in Certificate 3. 

Step 4: Do the resources in Certificate 2 subsume the "the given INR" 10.0.0.0/24? 
Answer: YES, because the given INR 1.0.0.0/24 is subsumed by an INR 10.0.0.0/22 in Certificate 2.

Step 5: Do the resources in Certificate 1 subsume the "the given INR" 10.0.0.0/24? 
Answer: YES, because the given INR 10.0.0.0/24 is subsumed by an INR 10.0.0.0/12 in Certificate 1.

Step 6: Since the certificate chain "validation" passed at each step above 
for "the given INR" 10.0.0.0/24, declare the ROA being considered 
as "Valid" for the prefix-origin pair {10.0.0.0/24, AS64499} .  

So Method A produces an "Invalid" result for the ROA, 
whereas Method B yields a "Valid" result.
I hope the difference between Methods A and B is clear. 
In Method A, "the INR of interest" at level x must be subsumed by an INR at level x+1. 
But in Method B, only "the given INR" (e.g., a prefix in a ROA or an ASN in a router certificate) 
is the steady focus, and what is required is that "the given INR" must be subsumed 
by resources listed in the certificate at each level (1, 2, 3, ..., n).

The description on your Slide #18 falls short of describing precisely 
either Method A or Method B. From your Slide #14, it seems evident that you are 
proposing Method B; am I right? 
(In terms of language and clarity, the notion of calling a certificate "valid" 
is misleading when in fact all that is being checked is merely 
whether a given INR is subsumed in it.)  

Sriram