variant

package
v2.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 3, 2023 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Overview

Package variant defines Attestation variants for different CSPs.

Each variant defines an OID, a string representation, and a function to compare it to other OIDs.

The OID is used in attested TLS to distinguish the attestation documents. OIDs beginning with 1.3.9900 are reserved and can be used without registration.

* The 1.3.9900.1 branch is reserved for placeholder values and testing.

* The 1.3.9900.2 branch is reserved for AWS.

* The 1.3.9900.3 branch is reserved for GCP.

* The 1.3.9900.4 branch is reserved for Azure.

* The 1.3.9900.5 branch is reserved for QEMU.

Deprecated OIDs should never be reused for different purposes. Instead, new OIDs should be added in the appropriate branch at the next available index.

String representation should be lowercase and contain only letters, numbers, and hyphens. They should be prefixed with the branch name, e.g. all variants in the 1.3.9900.2 (AWS) branch should start with "aws-". Each variant should have a unique string representation.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSNitroTPM

type AWSNitroTPM struct{}

AWSNitroTPM holds the AWS nitro TPM OID.

func (AWSNitroTPM) Equal

func (AWSNitroTPM) Equal(other Getter) bool

Equal returns true if the other variant is also AWSNitroTPM.

func (AWSNitroTPM) OID

OID returns the struct's object identifier.

func (AWSNitroTPM) String

func (AWSNitroTPM) String() string

String returns the string representation of the OID.

type AzureSEVSNP

type AzureSEVSNP struct{}

AzureSEVSNP holds the OID for Azure SNP CVMs.

func (AzureSEVSNP) Equal

func (AzureSEVSNP) Equal(other Getter) bool

Equal returns true if the other variant is also AzureSEVSNP.

func (AzureSEVSNP) OID

OID returns the struct's object identifier.

func (AzureSEVSNP) String

func (AzureSEVSNP) String() string

String returns the string representation of the OID.

type AzureTrustedLaunch

type AzureTrustedLaunch struct{}

AzureTrustedLaunch holds the OID for Azure TrustedLaunch VMs.

func (AzureTrustedLaunch) Equal

func (AzureTrustedLaunch) Equal(other Getter) bool

Equal returns true if the other variant is also AzureTrustedLaunch.

func (AzureTrustedLaunch) OID

OID returns the struct's object identifier.

func (AzureTrustedLaunch) String

func (AzureTrustedLaunch) String() string

String returns the string representation of the OID.

type Dummy

type Dummy struct{}

Dummy OID for testing.

func (Dummy) Equal

func (Dummy) Equal(other Getter) bool

Equal returns true if the other variant is also a Dummy.

func (Dummy) OID

func (Dummy) OID() asn1.ObjectIdentifier

OID returns the struct's object identifier.

func (Dummy) String

func (Dummy) String() string

String returns the string representation of the OID.

type GCPSEVES

type GCPSEVES struct{}

GCPSEVES holds the GCP SEV-ES OID.

func (GCPSEVES) Equal

func (GCPSEVES) Equal(other Getter) bool

Equal returns true if the other variant is also GCPSEVES.

func (GCPSEVES) OID

OID returns the struct's object identifier.

func (GCPSEVES) String

func (GCPSEVES) String() string

String returns the string representation of the OID.

type Getter

type Getter interface {
	OID() asn1.ObjectIdentifier
}

Getter returns an ASN.1 Object Identifier.

type QEMUVTPM

type QEMUVTPM struct{}

QEMUVTPM holds the QEMUVTPM OID.

func (QEMUVTPM) Equal

func (QEMUVTPM) Equal(other Getter) bool

Equal returns true if the other variant is also QEMUVTPM.

func (QEMUVTPM) OID

OID returns the struct's object identifier.

func (QEMUVTPM) String

func (QEMUVTPM) String() string

String returns the string representation of the OID.

type Variant

type Variant interface {
	Getter
	String() string
	Equal(other Getter) bool
}

Variant describes an attestation variant.

func FromString

func FromString(oid string) (Variant, error)

FromString returns the OID for the given string.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL