mirror of
https://github.com/edgelesssys/constellation.git
synced 2025-08-02 12:06:09 -04:00
Move attestation, atls and oid packages to internal directory
Signed-off-by: Daniel Weiße <dw@edgeless.systems>
This commit is contained in:
parent
b461c40c3a
commit
3467df6b69
70 changed files with 183 additions and 103 deletions
52
internal/attestation/gcp/gcp_test.go
Normal file
52
internal/attestation/gcp/gcp_test.go
Normal file
|
@ -0,0 +1,52 @@
|
|||
//go:build gcp
|
||||
// +build gcp
|
||||
|
||||
package gcp
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
"github.com/edgelesssys/constellation/internal/attestation/vtpm"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestAttestation(t *testing.T) {
|
||||
assert := assert.New(t)
|
||||
require := require.New(t)
|
||||
|
||||
issuer := NewIssuer()
|
||||
validator := NewValidator(map[uint32][]byte{0: PCR0})
|
||||
|
||||
nonce := []byte{2, 3, 4}
|
||||
challenge := []byte("Constellation")
|
||||
|
||||
attDocRaw, err := issuer.Issue(challenge, nonce)
|
||||
assert.NoError(err)
|
||||
|
||||
var attDoc vtpm.AttestationDocument
|
||||
err = json.Unmarshal(attDocRaw, &attDoc)
|
||||
require.NoError(err)
|
||||
assert.Equal(challenge, attDoc.UserData)
|
||||
originalPCR := attDoc.Attestation.Quotes[1].Pcrs.Pcrs[uint32(vtpm.PCRIndexOwnerID)]
|
||||
|
||||
out, err := validator.Validate(attDocRaw, nonce)
|
||||
assert.NoError(err)
|
||||
assert.Equal(challenge, out)
|
||||
|
||||
// Mark node as intialized. We should still be abe to validate
|
||||
assert.NoError(vtpm.MarkNodeAsInitialized(vtpm.OpenVTPM, []byte("Test"), []byte("Nonce")))
|
||||
|
||||
attDocRaw, err = issuer.Issue(challenge, nonce)
|
||||
assert.NoError(err)
|
||||
|
||||
// Make sure the PCR changed
|
||||
err = json.Unmarshal(attDocRaw, &attDoc)
|
||||
require.NoError(err)
|
||||
assert.NotEqual(originalPCR, attDoc.Attestation.Quotes[1].Pcrs.Pcrs[uint32(vtpm.PCRIndexOwnerID)])
|
||||
|
||||
out, err = validator.Validate(attDocRaw, nonce)
|
||||
assert.NoError(err)
|
||||
assert.Equal(challenge, out)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue