mirror of
https://github.com/ultravioletrs/cocos.git
synced 2026-08-07 07:14:50 +00:00
13f7e97d82
CI / checkproto (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (agent) (push) Has been cancelled
CI / test (cli) (push) Has been cancelled
CI / test (cmd) (push) Has been cancelled
CI / test (internal) (push) Has been cancelled
CI / test (manager, true) (push) Has been cancelled
CI / test (pkg) (push) Has been cancelled
CI / upload-coverage (push) Has been cancelled
* feat: add FetchKbsToken RPC support, update protobuf generation, and include additional binaries in CI workflow. Signed-off-by: Sammy Oina <sammyoina@gmail.com> * chore: update protoc version and add GetKbsToken mock method with updated kbsHTTPGet signature Signed-off-by: Sammy Oina <sammyoina@gmail.com> * test: inject mock attestation client into agentService for resource and KBS tests Signed-off-by: Sammy Oina <sammyoina@gmail.com> * test: update key derivation in tests to use Concat KDF instead of HKDF Signed-off-by: Sammy Oina <sammyoina@gmail.com> --------- Signed-off-by: Sammy Oina <sammyoina@gmail.com>
38 lines
1.1 KiB
Go
38 lines
1.1 KiB
Go
// Copyright (c) Ultraviolet
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package attestation
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
cocosai "github.com/ultravioletrs/cocos"
|
|
)
|
|
|
|
var _ Provider = (*EmptyProvider)(nil)
|
|
|
|
type EmptyProvider struct{}
|
|
|
|
func (e *EmptyProvider) Attestation(teeNonce []byte, vTpmNonce []byte) ([]byte, error) {
|
|
// For Sample/Empty provider, we treat the teeNonce as reportData
|
|
return e.TeeAttestation(teeNonce)
|
|
}
|
|
|
|
func (e *EmptyProvider) TeeAttestation(teeNonce []byte) ([]byte, error) {
|
|
// EmptyProvider should not be used for attestation
|
|
// The CC Attestation Agent's sample attester should be used instead
|
|
return nil, fmt.Errorf("EmptyProvider should not be used - configure USE_CC_ATTESTATION_AGENT=true to use the CC Attestation Agent's sample attester")
|
|
}
|
|
|
|
func (e *EmptyProvider) VTpmAttestation(vTpmNonce []byte) ([]byte, error) {
|
|
return cocosai.EmbeddedAttestation, nil
|
|
}
|
|
|
|
func (e *EmptyProvider) AzureAttestationToken(nonce []byte) ([]byte, error) {
|
|
return nil, nil
|
|
}
|
|
|
|
func (e *EmptyProvider) KbsToken() ([]byte, error) {
|
|
return nil, fmt.Errorf("KbsToken not supported on EmptyProvider")
|
|
}
|