dice

package module
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2021 License: Apache-2.0 Imports: 3 Imported by: 2

README

Features

Implementation of the attestation extension defined in:

https://trustedcomputinggroup.org/wp-content/uploads/TCG_DICE_Attestation_Architecture_r22_02dec2020.pdf

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DiceOID = asn1.ObjectIdentifier{2, 23, 133, 5, 4, 1}

DiceOID is the standard object identifier for the DICE extension

Functions

This section is empty.

Types

type CompositeDeviceID

type CompositeDeviceID struct {
	Version  int
	DeviceID SubjectPublicKeyInfo
	Fwid     FirmwareID
}

CompositeDeviceID combines the firmware id with

type DiceData

type DiceData struct {
	Oid               asn1.ObjectIdentifier
	CompositeDeviceID CompositeDeviceID
}

DiceData is the attestation data encapsulated in the DiceExtension

type DiceExtension

type DiceExtension struct {
	DiceData `asn1:"tag:0,implicit,optional"`
}

DiceExtension is the x509 v3 extension for DICE attestation.

func (*DiceExtension) UnmarshalDER

func (re *DiceExtension) UnmarshalDER(data []byte) ([]byte, error)

UnmarshalDER populates the DiceExtension from the provided DER-encoded data extracted from the certificate extension.

type FirmwareID

type FirmwareID struct {
	HashAlg asn1.ObjectIdentifier
	Fwid    []byte
}

FirmwareID contains the digest that is result of applying the specified hash algorithm over the object being measured.

type SubjectPublicKeyInfo

type SubjectPublicKeyInfo struct {
	Algorithm        pkix.AlgorithmIdentifier
	SubjectPublicKey asn1.BitString
}

This structure is defined in pkix package but is not exported, so re-definding here.

Jump to

Keyboard shortcuts

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