Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 76 additions & 9 deletions repo-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Compilation of documentation for various Veraison projects into a reader-friendl
Veraison community files. Look here for introductory presentations to the project and CCC membership materials.

[veraison.github.io](https://github.com/veraison/veraison.github.io)
Currently a placeholder for veraison-project.org.
Veraison project web site.

## Client Libraries
Veraison services expose REST APIs. This set of libraries provides convenient code abstractions for the API model, to be used in client verification and provisioning applications.
Expand All @@ -45,12 +45,19 @@ Rust implementation of the Arm Confidential Computing Architecture (CCA) Attesta

[parsec](https://github.com/veraison/parsec): Library support for handling the Parsec Key Attestation formats used in the attested TLS PoC.

[ccaguest](https://github.com/veraison/ccaguest)
A feature-rich tool for exploring CCA attestation.

[rust-regl](https://github.com/veraison/rust-regl)
Evidence generation library in Rust.

## Demos and Integration Examples

[enact-demo](https://github.com/veraison/enact-demo): EnactTrust TPM/Veraison interop demo and related docs

[keybroker-demo](https://github.com/veraison/keybroker-demo): A simple key broker protocol demonstration

[cca-coserv-demo](https://github.com/veraison/cca-coserv-demo): CoSERV & Arm CCA end-to-end demo

## CLI tools
CLI tools for illustrative interactions with attestation tokens or a Veraison service. Used for demos & integration testing.
Expand All @@ -70,13 +77,28 @@ Test case generator for CoRIM-related testing and validation
[cca-realm-measurements](https://github.com/veraison/cca-realm-measurements)
A tool to calculate Realm Initial Measurements and Realm Extended Measurements for Arm CCA

[cocli](https://github.com/veraison/cocli)
CLI tool to manipulate CoRIM and CoMIDs

[corim-tool](https://github.com/veraison/corim-tool)
A CLI for working with CoRIMs based on corim-rs.

[cover](https://github.com/veraison/cover)
CoRIM Verifier

[go-gen-ref](https://github.com/veraison/go-gen-ref)
Tool to generate reference values for the SEV-SNP scheme

## Standards driven work
The Veraison Project supports Attestation related working groups in standards bodies, in particular IETF & TCG. This set of repos provide test bed implementations for some of the standards work, as related to Veraison services.

#### EAT
[eat](https://github.com/veraison/eat)
Golang library for manipulating Entity Attestation Tokens (draft-ietf-rats-eat).

[da](https://github.com/veraison/da)
Golang implementation of draft-poirier-rats-eat-da.

#### EAR
These libraries provide functions for working with EAR (EAT Attestation Results), an EAT/JWT serialisation of the Attestation Result for Secure Interactions (AR4SI) information model - see draft-fv-rats-ear

Expand All @@ -91,13 +113,17 @@ These libraries provide functions for working with EAR (EAT Attestation Results)

[ratsd](https://github.com/veraison/ratsd): A RATS conceptual message collection daemon

[coserv-rs](https://github.com/veraison/coserv-rs): Rust implementation of CoSERV data types and API bindings

#### Verifier Provisioning
These libraries provide support for the standard information models used to convey data to a Verifier.

[corim](https://github.com/veraison/corim): manipulation of Concise Reference Integrity Manifest (CoRIM) and Concise Module Identifier (CoMID) tags. Also includes cocli CLI tool, that assists users creating CoRIM & CoMID tags.
[corim](https://github.com/veraison/corim): manipulation of Concise Reference Integrity Manifest (CoRIM) and Concise Module Identifier (CoMID) tags.

[corim-rs](https://github.com/veraison/corim-rs): Rust implementation of CoRIM and CoMID manipulation library

[corim-store](https://github.com/veraison/corim-store): An endorsement store based on CoRIM, implemented on top of a relational DBMS.

[swid](https://github.com/veraison/swid) : SWID and CoSWID manipulation library

#### COSE
Expand All @@ -110,7 +136,7 @@ flowchart TD
VR("Veraison Roles")
style VR fill:#f9f,stroke:#333,stroke-width:4px
LG["<b>Logical Group</b> \n <i>Repository name</i>"]
subgraph Daigram[<b>Daigram Convention</b>]
subgraph Diagram[<b>Diagram Convention</b>]

VR -->| Direct Usage | LG
VR -.-> | Possible Usage | LG
Expand All @@ -121,7 +147,7 @@ end

```mermaid
flowchart TD
subgraph Veraison["<b>Core Structure </b?"]
subgraph Veraison["<b>Core Structure </b>"]
style Veraison stroke:#333,stroke-width:4px

SP("Supply Chain")
Expand All @@ -133,28 +159,40 @@ style ATT fill:#f9f,stroke:#333,stroke-width:4px
COCLI["<b>Endorsement Manipulation CLI Tool</b>
<i>cocli</i>"]

GEN-CORIM["<b>Endorsement creation from Evidence CLI Tool</b>
GENCORIM["<b>Endorsement creation from Evidence CLI Tool</b>
<i>gen-corim</i>"]

GENREF["<b>Reference Value Generation Tool</b>
<i>go-gen-ref</i>"]

VPF["<b>Verifier Provisioning Formats</b>
<i>corim</i>
<i>corim-rs</i>
<i>coswid</i>"]
<i>swid</i>
<i>coserv-rs</i>"]
COCLI ---> VPF
GENCORIM ---> VPF
GENREF ---> VPF

CL["<b>Common Libraries</b>
<i>go-cose</i>"]

VPF ---> CL

ESTORE["<b>Endorsement Stores</b>
<i>corim-store</i>
"]
ESTORE ---> VPF

EF["<b>Evidence Formats</b>
<i>dice</i>
<i>eat</i>
<i>psatoken</i>
<i>ccatoken</i>
<i>rust-ccatoken</i>
<i>enacttrust-tpm</i>
<i>parsec (tpm, cca)</i>"]
<i>parsec (tpm)</i>
<i>rust-regl</i>
<i>da</i>"]
EF ---> CL

SD["<b>Core Verifier repositories</b>
Expand Down Expand Up @@ -183,10 +221,13 @@ Verifier ---> AR


Verifier ---> VPF
Verifier ---> ESTORE
Verifier ---> CL
Verifier ---> EF

SP ---> COCLI
SP ---> GENCORIM
SP ---> GENREF

API["<b>API CLIENT LIBRARIES</b>
<i>apiclient</i>
Expand All @@ -197,12 +238,24 @@ SP -.-> API
EVCLI["<b>Evidence Manipulation CLI Tool</b> \n <i>evcli</i> "]
EVCLI ---> API

CCATOOLS["<b>CCA Tools</b>
<i>ccaguest</i>
<i>cca-realm-measurements</i>"]
CCATOOLS ---> EF

CORIMTOOLS["<b>CoRIM CLI Tools</b>
<i>corim-tool</i>
<i>cover</i>"]
CORIMTOOLS ---> VPF

CMW["<b>CONCEPTUAL MESSAGE WRAPPER</b>
<i>cmw</i>
<i>rust-cmw</i>"]
<i>rust-cmw</i>
<i>coserv-rs</i>"]

ATT --->EF
ATT -.-> EVCLI
ATT -.-> CCATOOLS
EVCLI ---> EF
API ---> CMW
Verifier ---> CMW
Expand All @@ -222,10 +275,24 @@ end
```mermaid
flowchart TD
VA["
<i>.github</i>
<i>community</i>
<i>veraison</i>
<i>veraison.github.io</i>"]
subgraph Veraison["<b>Administrative Repositories</b>"]
VA
end

```

```mermaid
flowchart TD
VD["
<i>cca-coserv-demo</i>
<i>enact-demo</i>
<i>keybroker-demo</i>"]
subgraph Veraison["<b>Demos and Integration Examples</b>"]
VD
end

```