Subject: [Rats] Where are known-good references values in architecture?

From: Laurence Lundblade <[email-masked]>
Date: Thu, 2 Apr 2020 12:04:56 -0700

In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02 only mentions known-good references values as something the verifier processes. The definitions of Endorsements and Appraisal Policy don’t seem to include reference values.

Or is it just something the verifier “knows”?

Seems like reference values could be things like the expected hashes of some files, but could also be things like which versions of SW have a vulnerability, or which versions of HW are certified.

Seems an important to say where they come from as they are of critical importance.

LL

                 ************   ************    *****************
                 * Endorser *   * Verifier *    * Relying Party *
                 ************   *  Owner   *    *  Owner        *
                       |        ************    *****************
                       |              |                 |
           Endorsements|              |                 |
                       |              |Appraisal        |
                       |              |Policy for       |
                       |              |Evidence         | Appraisal
                       |              |                 | Policy for
                       |              |                 | Attestation
                       |              |                 |  Result
                       v              v                 |
                     .-----------------.                |
              .----->|     Verifier    |------.         |
              |      '-----------------'      |         |
              |                               |         |
              |                    Attestation|         |
              |                    Results    |         |
              | Evidence                      |         |
              |                               |         |
              |                               v         v
        .----------.                      .-----------------.
        | Attester |                      | Relying Party   |
        '----------'                      '-----------------'

                       Figure 1: Conceptual Data Flow

---

From: Guy Fedorkow <[email-masked]>
Date: Thu, 2 Apr 2020 19:08:31 +0000

Hi Laurence,
  There's material on known-good values in the RIV draft, under the name Reference Integrity Measurements
/guy

Juniper Business Use Only
From: RATS <[email-masked]> On Behalf Of Laurence Lundblade
Sent: Thursday, April 2, 2020 3:05 PM
To: [email-masked]
Subject: [Rats] Where are known-good references values in architecture?

[External Email. Be cautious of content]

In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02<https://urldefense.com/v3/__https:/tools.ietf.org/html/draft-ietf-rats-architecture-02__;!!NEt6yMaO-gk!QaIwlYZYXdfbC8eogbfPXjde6vweh7Am9GyNjn0IqdxqdZiw5WfyGxHC8KrkFF74uio$> only mentions known-good references values as something the verifier processes. The definitions of Endorsements and Appraisal Policy don't seem to include reference values.

Or is it just something the verifier "knows"?

LL

                       |              |                 |

           Endorsements|              |                 |

                       |              |Appraisal        |

                       |              |Policy for       |

                       |              |Evidence         | Appraisal

                       |              |                 | Policy for

                       |              |                 | Attestation

                       |              |                 |  Result

                       v              v                 |

                     .-----------------.                |

              |                               |         |

              |                    Attestation|         |

              |                    Results    |         |

              | Evidence                      |         |

              |                               |         |

              |                               v         v

---

From: Dave Thaler <[email-masked]>
Date: Thu, 2 Apr 2020 19:10:31 +0000

They can be included in an endorsement, or they can be part of the appraisal policy for evidence.
I know of both cases in real deployments.

From: RATS <[email-masked]> On Behalf Of Laurence Lundblade
Sent: Thursday, April 2, 2020 12:05 PM
To: [email-masked]
Subject: [Rats] Where are known-good references values in architecture?

In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf.org%2Fhtml%2Fdraft-ietf-rats-architecture-02&data=02%7C01%7Cdthaler%40microsoft.com%7C14e2c632ddae418abfc108d7d738c0ac%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637214511062590601&sdata=rCyMv1oj7Gow8oVVI%2Fokt5IBrgrGJFUlh7ZOM7xMU9E%3D&reserved=0> only mentions known-good references values as something the verifier processes. The definitions of Endorsements and Appraisal Policy don’t seem to include reference values.

LL

                       |              |                 |

           Endorsements|              |                 |

                       |              |Appraisal        |

                       |              |Policy for       |

                       |              |Evidence         | Appraisal

                       |              |                 | Policy for

                       |              |                 | Attestation

                       |              |                 |  Result

                       v              v                 |

                     .-----------------.                |

              |                               |         |

              |                    Attestation|         |

              |                    Results    |         |

              | Evidence                      |         |

              |                               |         |

              |                               v         v

---

From: Dave Thaler <[email-masked]>
Date: Thu, 2 Apr 2020 19:11:36 +0000

FYI, "known-good reference values" are just an example, or part of what might be used in appraisal.
I've pointed out in earlier threads on this list why "known good values" is pretty primitive and not
flexible enough for many real world scenarios.

From: RATS <[email-masked]> On Behalf Of Guy Fedorkow
Sent: Thursday, April 2, 2020 12:09 PM
To: Laurence Lundblade <[email-masked]>; [email-masked]
Subject: Re: [Rats] Where are known-good references values in architecture?

Hi Laurence,

Juniper Business Use Only
From: RATS <[email-masked]<mailto:[email-masked]>> On Behalf Of Laurence Lundblade
Sent: Thursday, April 2, 2020 3:05 PM
To: [email-masked]<mailto:[email-masked]>
Subject: [Rats] Where are known-good references values in architecture?

In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.com%2Fv3%2F__https%3A%2Ftools.ietf.org%2Fhtml%2Fdraft-ietf-rats-architecture-02__%3B!!NEt6yMaO-gk!QaIwlYZYXdfbC8eogbfPXjde6vweh7Am9GyNjn0IqdxqdZiw5WfyGxHC8KrkFF74uio%24&data=02%7C01%7Cdthaler%40microsoft.com%7Ccc3751aea1fc4c27a6ad08d7d73943a0%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637214513263587993&sdata=hhZujZaqJEyfPPZeDUn1wNqJMMBXny6ph7h%2FbUo%2BAPM%3D&reserved=0> only mentions known-good references values as something the verifier processes.. The definitions of Endorsements and Appraisal Policy don't seem to include reference values.

LL

                       |              |                 |

           Endorsements|              |                 |

                       |              |Appraisal        |

                       |              |Policy for       |

                       |              |Evidence         | Appraisal

                       |              |                 | Policy for

                       |              |                 | Attestation

                       |              |                 |  Result

                       v              v                 |

                     .-----------------.                |

              |                               |         |

              |                    Attestation|         |

              |                    Results    |         |

              | Evidence                      |         |

              |                               |         |

              |                               v         v

---

From: Guy Fedorkow <[email-masked]>
Date: Thu, 2 Apr 2020 19:22:03 +0000

Dave,
  You're right, the simple term "known good values" hides a very complex trip through policies and software release strategies, even in what looks like a constrained environment like TPM attestation.
  I think NIST has proposed helpful extensions to the ISO SWID standard that takes a start at the problem.
/guy

Juniper Business Use Only
From: Dave Thaler <dthaler=[email-masked]>
Sent: Thursday, April 2, 2020 3:12 PM
To: Guy Fedorkow <[email-masked]>; Laurence Lundblade <[email-masked]>; [email-masked]
Subject: RE: [Rats] Where are known-good references values in architecture?

From: RATS <[email-masked]<mailto:[email-masked]>> On Behalf Of Guy Fedorkow
Sent: Thursday, April 2, 2020 12:09 PM
To: Laurence Lundblade <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[email-masked]>
Subject: Re: [Rats] Where are known-good references values in architecture?

Hi Laurence,

In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02<https://urldefense.com/v3/__https:/nam06.safelinks.protection.outlook.com/?url=https*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2Ftools.ietf.org*2Fhtml*2Fdraft-ietf-rats-architecture-02__*3B!!NEt6yMaO-gk!QaIwlYZYXdfbC8eogbfPXjde6vweh7Am9GyNjn0IqdxqdZiw5WfyGxHC8KrkFF74uio*24&data=02*7C01*7Cdthaler*40microsoft.com*7Ccc3751aea1fc4c27a6ad08d7d73943a0*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637214513263587993&sdata=hhZujZaqJEyfPPZeDUn1wNqJMMBXny6ph7h*2FbUo*2BAPM*3D&reserved=0__;JSUlJSUlJSUlJSUlJSUlJSUlJSUlJQ!!NEt6yMaO-gk!XcCBLIOfqVXjrCG6sBzdttAyzeFBhoEJJM6_taw-RoF5OUBvOJJBdd1h6mfc6DAhhA0$> only mentions known-good references values as something the verifier processes... The definitions of Endorsements and Appraisal Policy don't seem to include reference values.

LL

                       |              |                 |

           Endorsements|              |                 |

                       |              |Appraisal        |

                       |              |Policy for       |

                       |              |Evidence         | Appraisal

                       |              |                 | Policy for

                       |              |                 | Attestation

                       |              |                 |  Result

                       v              v                 |

                     .-----------------.                |

              |                               |         |

              |                    Attestation|         |

              |                    Results    |         |

              | Evidence                      |         |

              |                               |         |

              |                               v         v

---

From: Laurence Lundblade <[email-masked]>
Date: Thu, 2 Apr 2020 12:43:36 -0700

OK. That works (and was settled very quickly). Thx. :-)

I filed an issue <https://github.com/ietf-rats-wg/architecture/issues/78> requesting the architecture document describe this.

LL

> On Apr 2, 2020, at 12:22 PM, Guy Fedorkow <[email-masked]> wrote:
> 
> Dave,
>   You’re right, the simple term “known good values” hides a very complex trip through policies and software release strategies, even in what looks like a constrained environment like TPM attestation.
> From: Dave Thaler <dthaler=[email-masked] <mailto:dthaler=[email-masked]>> 
> To: Guy Fedorkow <[email-masked] <mailto:[email-masked]>>; Laurence Lundblade <[email-masked] <mailto:[email-masked]>>; [email-masked] <mailto:[email-masked]>
> FYI, “known-good reference values” are just an example, or part of what might be used in appraisal.
> I’ve pointed out in earlier threads on this list why “known good values” is pretty primitive and not
> From: RATS <[email-masked] <mailto:[email-masked]>> On Behalf Of Guy Fedorkow
> To: Laurence Lundblade <[email-masked] <mailto:[email-masked]>>; [email-masked] <mailto:[email-masked]>
>   There’s material on known-good values in the RIV draft, under the name Reference Integrity Measurements
> /guy
>  
>  
>  
> From: RATS <[email-masked] <mailto:[email-masked]>> On Behalf Of Laurence Lundblade
> To: [email-masked] <mailto:[email-masked]>
> In the architecture diagram below, where do the known-good reference values go into the verifier?  https://tools.ietf.org/html/draft-ietf-rats-architecture-02 <https://urldefense.com/v3/__https:/nam06.safelinks.protection.outlook.com/?url=https*3A*2F*2Furldefense.com*2Fv3*2F__https*3A*2Ftools.ietf.org*2Fhtml*2Fdraft-ietf-rats-architecture-02__*3B!!NEt6yMaO-gk!QaIwlYZYXdfbC8eogbfPXjde6vweh7Am9GyNjn0IqdxqdZiw5WfyGxHC8KrkFF74uio*24&data=02*7C01*7Cdthaler*40microsoft.com*7Ccc3751aea1fc4c27a6ad08d7d73943a0*7C72f988bf86f141af91ab2d7cd011db47*7C1*7C0*7C637214513263587993&sdata=hhZujZaqJEyfPPZeDUn1wNqJMMBXny6ph7h*2FbUo*2BAPM*3D&reserved=0__;JSUlJSUlJSUlJSUlJSUlJSUlJSUlJQ!!NEt6yMaO-gk!XcCBLIOfqVXjrCG6sBzdttAyzeFBhoEJJM6_taw-RoF5OUBvOJJBdd1h6mfc6DAhhA0$> only mentions known-good references values as something the verifier processes... The definitions of Endorsements and Appraisal Policy don’t seem to include reference values.
>