Re: [Rats] draft-birkholz-rats-network-device-subscription-00

"Panwei (William)" <> Thu, 13 August 2020 03:52 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id D55FC3A1635 for <>; Wed, 12 Aug 2020 20:52:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id uP6oStRj0stI for <>; Wed, 12 Aug 2020 20:52:26 -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 9ADED3A1634 for <>; Wed, 12 Aug 2020 20:52:25 -0700 (PDT)
Received: from (unknown []) by Forcepoint Email with ESMTP id 85C5D1F259BDE4C9F53D; Thu, 13 Aug 2020 04:52:22 +0100 (IST)
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1913.5; Thu, 13 Aug 2020 04:52:21 +0100
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Thu, 13 Aug 2020 11:52:19 +0800
Received: from ([]) by ([]) with mapi id 15.01.1913.007; Thu, 13 Aug 2020 11:52:19 +0800
From: "Panwei (William)" <>
To: "Eric Voit (evoit)" <>, Dave Thaler <>, Dave Thaler <>, "" <>
CC: "Birkholz, Henk" <>
Thread-Topic: draft-birkholz-rats-network-device-subscription-00
Thread-Index: AdZKRjugUmuktT1iTCKR70EUNGNj/gaoi4kQAAPEPuAC/lbRQAABxp6gAAcrZWA=
Date: Thu, 13 Aug 2020 03:52:19 +0000
Message-ID: <>
References: <> <> <> <> <>
In-Reply-To: <>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
x-originating-ip: []
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <>
Subject: Re: [Rats] draft-birkholz-rats-network-device-subscription-00
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Remote ATtestation procedureS <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 13 Aug 2020 03:52:28 -0000

Hi Eric,
Hi Dave,

I think Dave's question is that how the YANG module reflects the different time points in Figure 1, e.g., time(VG), time(EG), time(NS), and time(RG, RA).
My feeling is that time(VG), time(EG), and time(NS) don't need to be reflected. For the routers and switches, the time(VG) is usually when the devices boot, and it can be much earlier than the Evidence generation and appraisal, so usually the Verifier doesn't care about it. When the Verifier wants to establish the subscription, it generates a nonce and sends the subscription request to the Attester at the time(NS). The Attester doesn't need to know the time(NS), it just generates the Evidence according to the 'values' and nonce, and theoretically it should send back the Evidence to the Verifier immediately after generation. The Verifier can appraise the Evidence's freshness based on the nonce and the time interval between sending the subscription and receiving the Evidence, so there is usually no need for the Verifier to know the exact time(EG).
The time(RG, RA) may need to be reflected in the Attestation Result, but neither CHARRA nor this subscription draft includes this scope. I think draft-voit-rats-trustworthy-path-routing should consider this because it defines the Attestation Result YANG module.
After subscription, when a new event happens (e.g., the PCRs extends with a new value), the Attester will generate a new Evidence and send it to the Verifier. Usually the time(VG'), time(EG') and time(RG') are very close. But the "marshalling-period" leaf defined in this draft do give the Attester an opportunity to fold multiple 'values' into one Evidence to reduce the amount of notifications when multiple events happen in short succession. It reflects the max time interval between the first time(VG') and the time(EG') to the Verifier.
So for now, I think current CHARRA and RATS subscription YANG modules don't need to explicitly reflect the exact time of these time points.

Regards & Thanks!
Wei Pan

> From: Eric Voit (evoit) Thursday, August 13, 2020 6:58 AM
> > The topic being discussed here is about *timing* (and windows of how
> long
> > things can be out of date for,
> > etc.)   I expect that most other YANG drafts/RFCs do not cover that topic,
> > whereas Figure 1 of
> > draft-birkholz-rats-network-device-subscription specifically *does*.
> That's
> > what brings it in scope and why I believe it must be mentioned, even if
> it's by
> > reference to another document where the topic is covered.
> There are a YANG nodes relevant to such timings.  For YANG datastores the
> best place to start is:
> s/
> and look through definitions like:
>        +--ro subscription-capabilities
>           +--ro max-nodes-per-update?               uint32
>           +--ro periodic-notifications-supported?   notification-support
>           +--ro (update-period)?
>           |  +--:(minimum-update-period)
>           |  |  +--ro minimum-update-period?        uint32
>           |  +--:(supported-update-period)
>           |     +--ro supported-update-period*      uint32
>           +--ro on-change-supported?
> notification-support
>           |       {yp:on-change}?
>           +--ro minimum-dampening-period?           uint32
>           |       {yp:on-change}?
>           +--ro supported-excluded-change-type*     union
>                   {yp:on-change}?
> However it is important to note that these capabilities above are for
> reporting on changes YANG datastore nodes.  This is not the same thing as
> the placement of YANG notifications into event streams.  Therefore for this
> event subscription draft, look to the definition of the "marshalling-period"
> leaf.   This leaf attempts to define the problem from the perspective of the
> maximum amount of time from when an event extends a PCR to when the
> notification leaves the Attester.
> Eric
> > Dave