diff --git a/go/attest/attest.pb.go b/go/attest/attest.pb.go index 1c50132a..aca968d9 100644 --- a/go/attest/attest.pb.go +++ b/go/attest/attest.pb.go @@ -386,6 +386,52 @@ func (AttestVolumeKeyType) EnumDescriptor() ([]byte, []int) { return file_attest_attest_proto_rawDescGZIP(), []int{6} } +type AttestVolumeKeyVersion int32 + +const ( + AttestVolumeKeyVersion_ATTEST_VOLUME_KEY_VERSION_LEGACY AttestVolumeKeyVersion = 0 // Zero or absent version indicates legacy volume storage key + AttestVolumeKeyVersion_ATTEST_VOLUME_KEY_VERSION_V1 AttestVolumeKeyVersion = 1 // Version 1 uses AES-GCM encryption with TPM-bound key +) + +// Enum value maps for AttestVolumeKeyVersion. +var ( + AttestVolumeKeyVersion_name = map[int32]string{ + 0: "ATTEST_VOLUME_KEY_VERSION_LEGACY", + 1: "ATTEST_VOLUME_KEY_VERSION_V1", + } + AttestVolumeKeyVersion_value = map[string]int32{ + "ATTEST_VOLUME_KEY_VERSION_LEGACY": 0, + "ATTEST_VOLUME_KEY_VERSION_V1": 1, + } +) + +func (x AttestVolumeKeyVersion) Enum() *AttestVolumeKeyVersion { + p := new(AttestVolumeKeyVersion) + *p = x + return p +} + +func (x AttestVolumeKeyVersion) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AttestVolumeKeyVersion) Descriptor() protoreflect.EnumDescriptor { + return file_attest_attest_proto_enumTypes[7].Descriptor() +} + +func (AttestVolumeKeyVersion) Type() protoreflect.EnumType { + return &file_attest_attest_proto_enumTypes[7] +} + +func (x AttestVolumeKeyVersion) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AttestVolumeKeyVersion.Descriptor instead. +func (AttestVolumeKeyVersion) EnumDescriptor() ([]byte, []int) { + return file_attest_attest_proto_rawDescGZIP(), []int{7} +} + type AttestStorageKeysResponseCode int32 const ( @@ -419,11 +465,11 @@ func (x AttestStorageKeysResponseCode) String() string { } func (AttestStorageKeysResponseCode) Descriptor() protoreflect.EnumDescriptor { - return file_attest_attest_proto_enumTypes[7].Descriptor() + return file_attest_attest_proto_enumTypes[8].Descriptor() } func (AttestStorageKeysResponseCode) Type() protoreflect.EnumType { - return &file_attest_attest_proto_enumTypes[7] + return &file_attest_attest_proto_enumTypes[8] } func (x AttestStorageKeysResponseCode) Number() protoreflect.EnumNumber { @@ -432,7 +478,7 @@ func (x AttestStorageKeysResponseCode) Number() protoreflect.EnumNumber { // Deprecated: Use AttestStorageKeysResponseCode.Descriptor instead. func (AttestStorageKeysResponseCode) EnumDescriptor() ([]byte, []int) { - return file_attest_attest_proto_rawDescGZIP(), []int{7} + return file_attest_attest_proto_rawDescGZIP(), []int{8} } //  This is the request payload for POST /api/v2/edgeDevice/id//attest @@ -1070,8 +1116,9 @@ type AttestVolumeKey struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - KeyType AttestVolumeKeyType `protobuf:"varint,1,opt,name=key_type,json=keyType,proto3,enum=org.lfedge.eve.attest.AttestVolumeKeyType" json:"key_type,omitempty"` - Key []byte `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` + KeyType AttestVolumeKeyType `protobuf:"varint,1,opt,name=key_type,json=keyType,proto3,enum=org.lfedge.eve.attest.AttestVolumeKeyType" json:"key_type,omitempty"` + Key []byte `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` + Version AttestVolumeKeyVersion `protobuf:"varint,3,opt,name=version,proto3,enum=org.lfedge.eve.attest.AttestVolumeKeyVersion" json:"version,omitempty"` // Version gives clue about the key format, particularly the encryption scheme used } func (x *AttestVolumeKey) Reset() { @@ -1120,6 +1167,13 @@ func (x *AttestVolumeKey) GetKey() []byte { return nil } +func (x *AttestVolumeKey) GetVersion() AttestVolumeKeyVersion { + if x != nil { + return x.Version + } + return AttestVolumeKeyVersion_ATTEST_VOLUME_KEY_VERSION_LEGACY +} + type ZAttestQuoteResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1539,135 +1593,146 @@ var file_attest_attest_proto_rawDesc = []byte{ 0x73, 0x52, 0x07, 0x67, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x14, 0x74, 0x70, 0x6d, 0x5f, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x74, 0x70, 0x6d, 0x42, 0x69, 0x6e, - 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x22, 0x6a, 0x0a, 0x0f, 0x41, - 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x45, - 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x2a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, - 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, - 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6b, 0x65, - 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0xbf, 0x01, 0x0a, 0x10, 0x5a, 0x41, 0x74, 0x74, - 0x65, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, - 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, - 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, - 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x69, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3a, 0x0a, - 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x72, - 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, - 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, - 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x78, 0x0a, 0x11, 0x41, 0x74, 0x74, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x27, + 0x61, 0x72, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x22, 0xb3, 0x01, 0x0a, 0x0f, + 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x12, + 0x45, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x2a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, + 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, + 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6b, + 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x47, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, + 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, + 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, + 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x22, 0xbf, 0x01, 0x0a, 0x10, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x51, 0x75, 0x6f, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, + 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, + 0x2e, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x43, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3a, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, + 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, - 0x65, 0x79, 0x73, 0x22, 0x69, 0x0a, 0x15, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x08, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, - 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, - 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x43, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x53, - 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, - 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x63, 0x72, 0x5f, 0x69, 0x6e, 0x64, - 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x63, 0x72, 0x49, - 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x49, 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, - 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x65, - 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, - 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, - 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x53, - 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, 0x2d, 0x0a, 0x13, 0x68, 0x61, 0x73, 0x5f, 0x70, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x5f, 0x70, 0x63, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x10, 0x68, 0x61, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, 0x72, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x52, 0x0a, 0x0f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x70, - 0x63, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, - 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, - 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x50, 0x63, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x0d, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x50, 0x63, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x2a, 0x88, 0x01, 0x0a, 0x0e, 0x5a, 0x41, 0x74, - 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x41, - 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, - 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x43, - 0x45, 0x52, 0x54, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, - 0x52, 0x45, 0x51, 0x5f, 0x4e, 0x4f, 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x41, - 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x10, - 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, - 0x51, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4b, 0x45, 0x59, - 0x53, 0x10, 0x04, 0x2a, 0x93, 0x01, 0x0a, 0x0f, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, - 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, - 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x43, 0x45, 0x52, - 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, - 0x53, 0x50, 0x5f, 0x4e, 0x4f, 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x54, - 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x5f, - 0x52, 0x45, 0x53, 0x50, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, - 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x4f, - 0x52, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x04, 0x2a, 0x74, 0x0a, 0x0b, 0x54, 0x70, 0x6d, - 0x48, 0x61, 0x73, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x50, 0x4d, 0x5f, - 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, - 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x53, 0x48, 0x41, 0x31, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x54, - 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x53, 0x48, 0x41, - 0x32, 0x35, 0x36, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, - 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x53, 0x48, 0x41, 0x35, 0x31, 0x32, 0x10, 0x03, 0x2a, - 0x69, 0x0a, 0x0e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x47, 0x50, 0x53, 0x49, 0x6e, 0x70, 0x75, - 0x74, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, - 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, - 0x1c, 0x0a, 0x18, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x49, 0x4e, - 0x50, 0x55, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x1b, 0x0a, - 0x17, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x49, 0x4e, 0x50, 0x55, - 0x54, 0x5f, 0x41, 0x42, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x2a, 0x73, 0x0a, 0x11, 0x41, 0x74, - 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1f, 0x0a, 0x1b, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, - 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, - 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, - 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x56, 0x45, 0x10, 0x01, 0x12, 0x20, 0x0a, - 0x1c, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x52, 0x4d, 0x57, 0x41, 0x52, 0x45, 0x10, 0x02, 0x2a, - 0xdb, 0x01, 0x0a, 0x13, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x5a, 0x5f, 0x41, 0x54, 0x54, - 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, - 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x5a, - 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, - 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, - 0x29, 0x0a, 0x25, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, - 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x43, 0x45, 0x5f, - 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x5a, 0x5f, - 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, - 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x5f, 0x46, 0x4f, 0x55, - 0x4e, 0x44, 0x10, 0x03, 0x12, 0x27, 0x0a, 0x23, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, - 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x51, - 0x55, 0x4f, 0x54, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x2a, 0x59, 0x0a, - 0x13, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, - 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x54, 0x54, 0x45, - 0x53, 0x54, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x56, 0x53, 0x4b, 0x10, 0x01, 0x2a, 0xb4, 0x01, 0x0a, 0x1d, 0x41, 0x74, 0x74, - 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2d, 0x0a, 0x29, 0x41, 0x54, - 0x54, 0x45, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, - 0x53, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, - 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x41, 0x54, 0x54, - 0x45, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, - 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, - 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x35, 0x0a, 0x31, 0x41, 0x54, 0x54, 0x45, - 0x53, 0x54, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x5f, - 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x54, - 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x02, 0x42, - 0x3d, 0x0a, 0x15, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, - 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x5a, 0x24, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x66, 0x2d, 0x65, 0x64, 0x67, 0x65, 0x2f, 0x65, 0x76, 0x65, - 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x79, 0x73, 0x22, 0x78, 0x0a, 0x11, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x3a, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x26, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, + 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, + 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x22, 0x69, 0x0a, + 0x15, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, + 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, + 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, + 0x2e, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, + 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x08, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x53, 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, + 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x70, 0x63, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x63, 0x72, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, + 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0xe2, 0x01, + 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, + 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, + 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0c, 0x65, 0x6e, + 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, + 0x67, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x0c, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x53, 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, + 0x2d, 0x0a, 0x13, 0x68, 0x61, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x70, 0x63, + 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68, 0x61, + 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x52, + 0x0a, 0x0f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x70, 0x63, 0x72, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x66, + 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x2e, + 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, 0x72, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x0d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x63, 0x72, 0x4c, 0x69, + 0x73, 0x74, 0x2a, 0x88, 0x01, 0x0a, 0x0e, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, + 0x52, 0x45, 0x51, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x54, + 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x10, 0x01, 0x12, + 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x4e, 0x4f, + 0x4e, 0x43, 0x45, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, + 0x52, 0x45, 0x51, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x5a, + 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x04, 0x2a, 0x93, 0x01, + 0x0a, 0x0f, 0x5a, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, + 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x54, 0x54, 0x45, 0x53, + 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, + 0x11, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x5f, 0x4e, 0x4f, 0x4e, + 0x43, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, + 0x45, 0x53, 0x50, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x10, 0x03, + 0x12, 0x21, 0x0a, 0x1d, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, + 0x50, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x5f, 0x4b, 0x45, 0x59, + 0x53, 0x10, 0x04, 0x2a, 0x74, 0x0a, 0x0b, 0x54, 0x70, 0x6d, 0x48, 0x61, 0x73, 0x68, 0x41, 0x6c, + 0x67, 0x6f, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, + 0x4c, 0x47, 0x4f, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, + 0x12, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x53, + 0x48, 0x41, 0x31, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, + 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x5f, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x02, 0x12, + 0x18, 0x0a, 0x14, 0x54, 0x50, 0x4d, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, 0x4c, 0x47, 0x4f, + 0x5f, 0x53, 0x48, 0x41, 0x35, 0x31, 0x32, 0x10, 0x03, 0x2a, 0x69, 0x0a, 0x0e, 0x41, 0x74, 0x74, + 0x65, 0x73, 0x74, 0x47, 0x50, 0x53, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x18, 0x41, + 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x54, 0x54, + 0x45, 0x53, 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x50, 0x52, + 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x54, 0x54, 0x45, 0x53, + 0x54, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, 0x41, 0x42, 0x53, 0x45, + 0x4e, 0x54, 0x10, 0x02, 0x2a, 0x73, 0x0a, 0x11, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x54, 0x54, + 0x45, 0x53, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x54, + 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x45, 0x56, 0x45, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x54, 0x54, 0x45, 0x53, + 0x54, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, + 0x49, 0x52, 0x4d, 0x57, 0x41, 0x52, 0x45, 0x10, 0x02, 0x2a, 0xdb, 0x01, 0x0a, 0x13, 0x5a, 0x41, + 0x74, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, + 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, + 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x22, 0x0a, 0x1e, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, + 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, + 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x5a, 0x5f, 0x41, + 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, + 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, + 0x43, 0x48, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, + 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4e, + 0x4f, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x03, 0x12, 0x27, + 0x0a, 0x23, 0x5a, 0x5f, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, + 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x51, 0x55, 0x4f, 0x54, 0x45, 0x5f, 0x46, + 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x04, 0x2a, 0x59, 0x0a, 0x13, 0x41, 0x74, 0x74, 0x65, 0x73, + 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, + 0x0a, 0x1e, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, + 0x4b, 0x45, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x4f, 0x4c, + 0x55, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x53, 0x4b, + 0x10, 0x01, 0x2a, 0x60, 0x0a, 0x16, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x56, 0x6f, 0x6c, 0x75, + 0x6d, 0x65, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x20, + 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x4b, 0x45, + 0x59, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, + 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x56, 0x4f, 0x4c, + 0x55, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, + 0x56, 0x31, 0x10, 0x01, 0x2a, 0xb4, 0x01, 0x0a, 0x1d, 0x41, 0x74, 0x74, 0x65, 0x73, 0x74, 0x53, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2d, 0x0a, 0x29, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, + 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x5f, 0x52, 0x45, + 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, + 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x5f, 0x52, 0x45, 0x53, + 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x10, 0x01, 0x12, 0x35, 0x0a, 0x31, 0x41, 0x54, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x53, + 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x5f, 0x52, 0x45, 0x53, 0x50, + 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x54, 0x4f, 0x4b, 0x45, 0x4e, + 0x5f, 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x10, 0x02, 0x42, 0x3d, 0x0a, 0x15, 0x6f, + 0x72, 0x67, 0x2e, 0x6c, 0x66, 0x65, 0x64, 0x67, 0x65, 0x2e, 0x65, 0x76, 0x65, 0x2e, 0x61, 0x74, + 0x74, 0x65, 0x73, 0x74, 0x5a, 0x24, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x6c, 0x66, 0x2d, 0x65, 0x64, 0x67, 0x65, 0x2f, 0x65, 0x76, 0x65, 0x2d, 0x61, 0x70, 0x69, + 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( @@ -1682,7 +1747,7 @@ func file_attest_attest_proto_rawDescGZIP() []byte { return file_attest_attest_proto_rawDescData } -var file_attest_attest_proto_enumTypes = make([]protoimpl.EnumInfo, 8) +var file_attest_attest_proto_enumTypes = make([]protoimpl.EnumInfo, 9) var file_attest_attest_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_attest_attest_proto_goTypes = []interface{}{ (ZAttestReqType)(0), // 0: org.lfedge.eve.attest.ZAttestReqType @@ -1692,53 +1757,55 @@ var file_attest_attest_proto_goTypes = []interface{}{ (AttestVersionType)(0), // 4: org.lfedge.eve.attest.AttestVersionType (ZAttestResponseCode)(0), // 5: org.lfedge.eve.attest.ZAttestResponseCode (AttestVolumeKeyType)(0), // 6: org.lfedge.eve.attest.AttestVolumeKeyType - (AttestStorageKeysResponseCode)(0), // 7: org.lfedge.eve.attest.AttestStorageKeysResponseCode - (*ZAttestReq)(nil), // 8: org.lfedge.eve.attest.ZAttestReq - (*ZAttestResponse)(nil), // 9: org.lfedge.eve.attest.ZAttestResponse - (*ZAttestNonceResp)(nil), // 10: org.lfedge.eve.attest.ZAttestNonceResp - (*TpmEventDigest)(nil), // 11: org.lfedge.eve.attest.TpmEventDigest - (*TpmEventLogEntry)(nil), // 12: org.lfedge.eve.attest.TpmEventLogEntry - (*AttestGPSCoordinates)(nil), // 13: org.lfedge.eve.attest.AttestGPSCoordinates - (*AttestVersionInfo)(nil), // 14: org.lfedge.eve.attest.AttestVersionInfo - (*TpmPCRValue)(nil), // 15: org.lfedge.eve.attest.TpmPCRValue - (*ZAttestQuote)(nil), // 16: org.lfedge.eve.attest.ZAttestQuote - (*AttestVolumeKey)(nil), // 17: org.lfedge.eve.attest.AttestVolumeKey - (*ZAttestQuoteResp)(nil), // 18: org.lfedge.eve.attest.ZAttestQuoteResp - (*AttestStorageKeys)(nil), // 19: org.lfedge.eve.attest.AttestStorageKeys - (*AttestStorageKeysResp)(nil), // 20: org.lfedge.eve.attest.AttestStorageKeysResp - (*AttestPolicyPcrList)(nil), // 21: org.lfedge.eve.attest.AttestPolicyPcrList - (*AttestVolumeKeyData)(nil), // 22: org.lfedge.eve.attest.AttestVolumeKeyData - (*certs.ZCert)(nil), // 23: org.lfedge.eve.certs.ZCert + (AttestVolumeKeyVersion)(0), // 7: org.lfedge.eve.attest.AttestVolumeKeyVersion + (AttestStorageKeysResponseCode)(0), // 8: org.lfedge.eve.attest.AttestStorageKeysResponseCode + (*ZAttestReq)(nil), // 9: org.lfedge.eve.attest.ZAttestReq + (*ZAttestResponse)(nil), // 10: org.lfedge.eve.attest.ZAttestResponse + (*ZAttestNonceResp)(nil), // 11: org.lfedge.eve.attest.ZAttestNonceResp + (*TpmEventDigest)(nil), // 12: org.lfedge.eve.attest.TpmEventDigest + (*TpmEventLogEntry)(nil), // 13: org.lfedge.eve.attest.TpmEventLogEntry + (*AttestGPSCoordinates)(nil), // 14: org.lfedge.eve.attest.AttestGPSCoordinates + (*AttestVersionInfo)(nil), // 15: org.lfedge.eve.attest.AttestVersionInfo + (*TpmPCRValue)(nil), // 16: org.lfedge.eve.attest.TpmPCRValue + (*ZAttestQuote)(nil), // 17: org.lfedge.eve.attest.ZAttestQuote + (*AttestVolumeKey)(nil), // 18: org.lfedge.eve.attest.AttestVolumeKey + (*ZAttestQuoteResp)(nil), // 19: org.lfedge.eve.attest.ZAttestQuoteResp + (*AttestStorageKeys)(nil), // 20: org.lfedge.eve.attest.AttestStorageKeys + (*AttestStorageKeysResp)(nil), // 21: org.lfedge.eve.attest.AttestStorageKeysResp + (*AttestPolicyPcrList)(nil), // 22: org.lfedge.eve.attest.AttestPolicyPcrList + (*AttestVolumeKeyData)(nil), // 23: org.lfedge.eve.attest.AttestVolumeKeyData + (*certs.ZCert)(nil), // 24: org.lfedge.eve.certs.ZCert } var file_attest_attest_proto_depIdxs = []int32{ 0, // 0: org.lfedge.eve.attest.ZAttestReq.reqType:type_name -> org.lfedge.eve.attest.ZAttestReqType - 16, // 1: org.lfedge.eve.attest.ZAttestReq.quote:type_name -> org.lfedge.eve.attest.ZAttestQuote - 23, // 2: org.lfedge.eve.attest.ZAttestReq.certs:type_name -> org.lfedge.eve.certs.ZCert - 19, // 3: org.lfedge.eve.attest.ZAttestReq.storage_keys:type_name -> org.lfedge.eve.attest.AttestStorageKeys + 17, // 1: org.lfedge.eve.attest.ZAttestReq.quote:type_name -> org.lfedge.eve.attest.ZAttestQuote + 24, // 2: org.lfedge.eve.attest.ZAttestReq.certs:type_name -> org.lfedge.eve.certs.ZCert + 20, // 3: org.lfedge.eve.attest.ZAttestReq.storage_keys:type_name -> org.lfedge.eve.attest.AttestStorageKeys 1, // 4: org.lfedge.eve.attest.ZAttestResponse.respType:type_name -> org.lfedge.eve.attest.ZAttestRespType - 10, // 5: org.lfedge.eve.attest.ZAttestResponse.nonce:type_name -> org.lfedge.eve.attest.ZAttestNonceResp - 18, // 6: org.lfedge.eve.attest.ZAttestResponse.quoteResp:type_name -> org.lfedge.eve.attest.ZAttestQuoteResp - 20, // 7: org.lfedge.eve.attest.ZAttestResponse.storage_keys_resp:type_name -> org.lfedge.eve.attest.AttestStorageKeysResp + 11, // 5: org.lfedge.eve.attest.ZAttestResponse.nonce:type_name -> org.lfedge.eve.attest.ZAttestNonceResp + 19, // 6: org.lfedge.eve.attest.ZAttestResponse.quoteResp:type_name -> org.lfedge.eve.attest.ZAttestQuoteResp + 21, // 7: org.lfedge.eve.attest.ZAttestResponse.storage_keys_resp:type_name -> org.lfedge.eve.attest.AttestStorageKeysResp 2, // 8: org.lfedge.eve.attest.TpmEventDigest.hash_algo:type_name -> org.lfedge.eve.attest.TpmHashAlgo - 11, // 9: org.lfedge.eve.attest.TpmEventLogEntry.digest:type_name -> org.lfedge.eve.attest.TpmEventDigest + 12, // 9: org.lfedge.eve.attest.TpmEventLogEntry.digest:type_name -> org.lfedge.eve.attest.TpmEventDigest 3, // 10: org.lfedge.eve.attest.AttestGPSCoordinates.gps_input:type_name -> org.lfedge.eve.attest.AttestGPSInput 4, // 11: org.lfedge.eve.attest.AttestVersionInfo.version_type:type_name -> org.lfedge.eve.attest.AttestVersionType 2, // 12: org.lfedge.eve.attest.TpmPCRValue.hash_algo:type_name -> org.lfedge.eve.attest.TpmHashAlgo - 15, // 13: org.lfedge.eve.attest.ZAttestQuote.pcr_values:type_name -> org.lfedge.eve.attest.TpmPCRValue - 12, // 14: org.lfedge.eve.attest.ZAttestQuote.event_log:type_name -> org.lfedge.eve.attest.TpmEventLogEntry - 14, // 15: org.lfedge.eve.attest.ZAttestQuote.versions:type_name -> org.lfedge.eve.attest.AttestVersionInfo - 13, // 16: org.lfedge.eve.attest.ZAttestQuote.gps_info:type_name -> org.lfedge.eve.attest.AttestGPSCoordinates + 16, // 13: org.lfedge.eve.attest.ZAttestQuote.pcr_values:type_name -> org.lfedge.eve.attest.TpmPCRValue + 13, // 14: org.lfedge.eve.attest.ZAttestQuote.event_log:type_name -> org.lfedge.eve.attest.TpmEventLogEntry + 15, // 15: org.lfedge.eve.attest.ZAttestQuote.versions:type_name -> org.lfedge.eve.attest.AttestVersionInfo + 14, // 16: org.lfedge.eve.attest.ZAttestQuote.gps_info:type_name -> org.lfedge.eve.attest.AttestGPSCoordinates 6, // 17: org.lfedge.eve.attest.AttestVolumeKey.key_type:type_name -> org.lfedge.eve.attest.AttestVolumeKeyType - 5, // 18: org.lfedge.eve.attest.ZAttestQuoteResp.response:type_name -> org.lfedge.eve.attest.ZAttestResponseCode - 17, // 19: org.lfedge.eve.attest.ZAttestQuoteResp.keys:type_name -> org.lfedge.eve.attest.AttestVolumeKey - 17, // 20: org.lfedge.eve.attest.AttestStorageKeys.keys:type_name -> org.lfedge.eve.attest.AttestVolumeKey - 7, // 21: org.lfedge.eve.attest.AttestStorageKeysResp.response:type_name -> org.lfedge.eve.attest.AttestStorageKeysResponseCode - 21, // 22: org.lfedge.eve.attest.AttestVolumeKeyData.policy_pcr_list:type_name -> org.lfedge.eve.attest.AttestPolicyPcrList - 23, // [23:23] is the sub-list for method output_type - 23, // [23:23] is the sub-list for method input_type - 23, // [23:23] is the sub-list for extension type_name - 23, // [23:23] is the sub-list for extension extendee - 0, // [0:23] is the sub-list for field type_name + 7, // 18: org.lfedge.eve.attest.AttestVolumeKey.version:type_name -> org.lfedge.eve.attest.AttestVolumeKeyVersion + 5, // 19: org.lfedge.eve.attest.ZAttestQuoteResp.response:type_name -> org.lfedge.eve.attest.ZAttestResponseCode + 18, // 20: org.lfedge.eve.attest.ZAttestQuoteResp.keys:type_name -> org.lfedge.eve.attest.AttestVolumeKey + 18, // 21: org.lfedge.eve.attest.AttestStorageKeys.keys:type_name -> org.lfedge.eve.attest.AttestVolumeKey + 8, // 22: org.lfedge.eve.attest.AttestStorageKeysResp.response:type_name -> org.lfedge.eve.attest.AttestStorageKeysResponseCode + 22, // 23: org.lfedge.eve.attest.AttestVolumeKeyData.policy_pcr_list:type_name -> org.lfedge.eve.attest.AttestPolicyPcrList + 24, // [24:24] is the sub-list for method output_type + 24, // [24:24] is the sub-list for method input_type + 24, // [24:24] is the sub-list for extension type_name + 24, // [24:24] is the sub-list for extension extendee + 0, // [0:24] is the sub-list for field type_name } func init() { file_attest_attest_proto_init() } @@ -1933,7 +2000,7 @@ func file_attest_attest_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_attest_attest_proto_rawDesc, - NumEnums: 8, + NumEnums: 9, NumMessages: 15, NumExtensions: 0, NumServices: 0, diff --git a/images/devconfig.svg b/images/devconfig.svg index 64d136e6..4cff910b 100644 --- a/images/devconfig.svg +++ b/images/devconfig.svg @@ -12,6 +12,30 @@ org.lfedge.eve.config + +cluster_c75e6f3a3956 + + +org.lfedge.eve.common + + + + +cluster_087a8b768833 + + +netconfig.proto + + + + +cluster_a1a638239bbb + + +edgeview.proto + + + cluster_ed03ba9919d5 @@ -60,38 +84,6 @@ - -cluster_c75e6f3a3956 - - -org.lfedge.eve.common - - - - -cluster_087a8b768833 - - -netconfig.proto - - - - -cluster_a1a638239bbb - - -edgeview.proto - - - - -cluster_f89bbdbe2429 - - -netinst.proto - - - cluster_0eca8c4caf24 @@ -124,6 +116,14 @@ + +cluster_f89bbdbe2429 + + +netinst.proto + + + cluster_c4848830929a diff --git a/proto/attest/attest.proto b/proto/attest/attest.proto index 73b9cca1..efa9ca99 100644 --- a/proto/attest/attest.proto +++ b/proto/attest/attest.proto @@ -131,9 +131,14 @@ enum AttestVolumeKeyType { ATTEST_VOLUME_KEY_TYPE_VSK = 1; //Volume storage key, for /persist/vault } +enum AttestVolumeKeyVersion { + ATTEST_VOLUME_KEY_VERSION_LEGACY = 0; // Zero or absent version indicates legacy volume storage key + ATTEST_VOLUME_KEY_VERSION_V1 = 1; // Version 1 uses AES-GCM encryption with TPM-bound key +} message AttestVolumeKey { AttestVolumeKeyType key_type = 1; bytes key = 2; + AttestVolumeKeyVersion version = 3; // Version gives clue about the key format, particularly the encryption scheme used } message ZAttestQuoteResp { diff --git a/python/attest/attest_pb2.py b/python/attest/attest_pb2.py index a0029f91..b745ce95 100644 --- a/python/attest/attest_pb2.py +++ b/python/attest/attest_pb2.py @@ -14,7 +14,7 @@ from certs import certs_pb2 as certs_dot_certs__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61ttest/attest.proto\x12\x15org.lfedge.eve.attest\x1a\x11\x63\x65rts/certs.proto\"\xe4\x01\n\nZAttestReq\x12\x36\n\x07reqType\x18\x01 \x01(\x0e\x32%.org.lfedge.eve.attest.ZAttestReqType\x12\x32\n\x05quote\x18\x02 \x01(\x0b\x32#.org.lfedge.eve.attest.ZAttestQuote\x12*\n\x05\x63\x65rts\x18\x03 \x03(\x0b\x32\x1b.org.lfedge.eve.certs.ZCert\x12>\n\x0cstorage_keys\x18\x04 \x01(\x0b\x32(.org.lfedge.eve.attest.AttestStorageKeys\"\x88\x02\n\x0fZAttestResponse\x12\x38\n\x08respType\x18\x01 \x01(\x0e\x32&.org.lfedge.eve.attest.ZAttestRespType\x12\x36\n\x05nonce\x18\x02 \x01(\x0b\x32\'.org.lfedge.eve.attest.ZAttestNonceResp\x12:\n\tquoteResp\x18\x03 \x01(\x0b\x32\'.org.lfedge.eve.attest.ZAttestQuoteResp\x12G\n\x11storage_keys_resp\x18\x04 \x01(\x0b\x32,.org.lfedge.eve.attest.AttestStorageKeysResp\"!\n\x10ZAttestNonceResp\x12\r\n\x05nonce\x18\x01 \x01(\x0c\"W\n\x0eTpmEventDigest\x12\x35\n\thash_algo\x18\x01 \x01(\x0e\x32\".org.lfedge.eve.attest.TpmHashAlgo\x12\x0e\n\x06\x64igest\x18\x02 \x01(\x0c\"\xd0\x01\n\x10TpmEventLogEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\x11\n\tpcr_index\x18\x02 \x01(\r\x12\x12\n\nevent_type\x18\x03 \x01(\r\x12\x35\n\x06\x64igest\x18\x04 \x01(\x0b\x32%.org.lfedge.eve.attest.TpmEventDigest\x12\x19\n\x11\x65vent_data_binary\x18\x05 \x01(\x0c\x12\x19\n\x11\x65vent_data_string\x18\x06 \x01(\t\x12\x19\n\x11\x65vent_binary_size\x18\x07 \x01(\r\"u\n\x14\x41ttestGPSCoordinates\x12\x38\n\tgps_input\x18\x01 \x01(\x0e\x32%.org.lfedge.eve.attest.AttestGPSInput\x12\x10\n\x08latitude\x18\x02 \x01(\x01\x12\x11\n\tlongitude\x18\x03 \x01(\x01\"d\n\x11\x41ttestVersionInfo\x12>\n\x0cversion_type\x18\x01 \x01(\x0e\x32(.org.lfedge.eve.attest.AttestVersionType\x12\x0f\n\x07version\x18\x02 \x01(\t\"b\n\x0bTpmPCRValue\x12\r\n\x05index\x18\x01 \x01(\r\x12\x35\n\thash_algo\x18\x02 \x01(\x0e\x32\".org.lfedge.eve.attest.TpmHashAlgo\x12\r\n\x05value\x18\x03 \x01(\x0c\"\xc6\x02\n\x0cZAttestQuote\x12\x12\n\nattestData\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x36\n\npcr_values\x18\x03 \x03(\x0b\x32\".org.lfedge.eve.attest.TpmPCRValue\x12>\n\tevent_log\x18\x04 \x03(\x0b\x32\'.org.lfedge.eve.attest.TpmEventLogEntryB\x02\x18\x01\x12:\n\x08versions\x18\x05 \x03(\x0b\x32(.org.lfedge.eve.attest.AttestVersionInfo\x12=\n\x08gps_info\x18\x06 \x01(\x0b\x32+.org.lfedge.eve.attest.AttestGPSCoordinates\x12\x1c\n\x14tpm_binary_event_log\x18\x07 \x01(\x0c\"\\\n\x0f\x41ttestVolumeKey\x12<\n\x08key_type\x18\x01 \x01(\x0e\x32*.org.lfedge.eve.attest.AttestVolumeKeyType\x12\x0b\n\x03key\x18\x02 \x01(\x0c\"\x9f\x01\n\x10ZAttestQuoteResp\x12<\n\x08response\x18\x01 \x01(\x0e\x32*.org.lfedge.eve.attest.ZAttestResponseCode\x12\x17\n\x0fintegrity_token\x18\x02 \x01(\x0c\x12\x34\n\x04keys\x18\x03 \x03(\x0b\x32&.org.lfedge.eve.attest.AttestVolumeKey\"b\n\x11\x41ttestStorageKeys\x12\x17\n\x0fintegrity_token\x18\x01 \x01(\x0c\x12\x34\n\x04keys\x18\x02 \x03(\x0b\x32&.org.lfedge.eve.attest.AttestVolumeKey\"_\n\x15\x41ttestStorageKeysResp\x12\x46\n\x08response\x18\x01 \x01(\x0e\x32\x34.org.lfedge.eve.attest.AttestStorageKeysResponseCode\"=\n\x13\x41ttestPolicyPcrList\x12\x13\n\x0bpcr_indices\x18\x01 \x03(\r\x12\x11\n\tpolicy_id\x18\x02 \x01(\r\"\xa5\x01\n\x13\x41ttestVolumeKeyData\x12\x15\n\rencrypted_key\x18\x01 \x01(\x0c\x12\x15\n\rdigest_sha256\x18\x02 \x01(\x0c\x12\x1b\n\x13has_policy_pcr_list\x18\x03 \x01(\x08\x12\x43\n\x0fpolicy_pcr_list\x18\x04 \x01(\x0b\x32*.org.lfedge.eve.attest.AttestPolicyPcrList*\x88\x01\n\x0eZAttestReqType\x12\x13\n\x0f\x41TTEST_REQ_NONE\x10\x00\x12\x13\n\x0f\x41TTEST_REQ_CERT\x10\x01\x12\x14\n\x10\x41TTEST_REQ_NONCE\x10\x02\x12\x14\n\x10\x41TTEST_REQ_QUOTE\x10\x03\x12 \n\x1cZ_ATTEST_REQ_TYPE_STORE_KEYS\x10\x04*\x93\x01\n\x0fZAttestRespType\x12\x14\n\x10\x41TTEST_RESP_NONE\x10\x00\x12\x14\n\x10\x41TTEST_RESP_CERT\x10\x01\x12\x15\n\x11\x41TTEST_RESP_NONCE\x10\x02\x12\x1a\n\x16\x41TTEST_RESP_QUOTE_RESP\x10\x03\x12!\n\x1dZ_ATTEST_RESP_TYPE_STORE_KEYS\x10\x04*t\n\x0bTpmHashAlgo\x12\x19\n\x15TPM_HASH_ALGO_INVALID\x10\x00\x12\x16\n\x12TPM_HASH_ALGO_SHA1\x10\x01\x12\x18\n\x14TPM_HASH_ALGO_SHA256\x10\x02\x12\x18\n\x14TPM_HASH_ALGO_SHA512\x10\x03*i\n\x0e\x41ttestGPSInput\x12\x1c\n\x18\x41TTEST_GPS_INPUT_INVALID\x10\x00\x12\x1c\n\x18\x41TTEST_GPS_INPUT_PRESENT\x10\x01\x12\x1b\n\x17\x41TTEST_GPS_INPUT_ABSENT\x10\x02*s\n\x11\x41ttestVersionType\x12\x1f\n\x1b\x41TTEST_VERSION_TYPE_INVALID\x10\x00\x12\x1b\n\x17\x41TTEST_VERSION_TYPE_EVE\x10\x01\x12 \n\x1c\x41TTEST_VERSION_TYPE_FIRMWARE\x10\x02*\xdb\x01\n\x13ZAttestResponseCode\x12\"\n\x1eZ_ATTEST_RESPONSE_CODE_INVALID\x10\x00\x12\"\n\x1eZ_ATTEST_RESPONSE_CODE_SUCCESS\x10\x01\x12)\n%Z_ATTEST_RESPONSE_CODE_NONCE_MISMATCH\x10\x02\x12(\n$Z_ATTEST_RESPONSE_CODE_NO_CERT_FOUND\x10\x03\x12\'\n#Z_ATTEST_RESPONSE_CODE_QUOTE_FAILED\x10\x04*Y\n\x13\x41ttestVolumeKeyType\x12\"\n\x1e\x41TTEST_VOLUME_KEY_TYPE_INVALID\x10\x00\x12\x1e\n\x1a\x41TTEST_VOLUME_KEY_TYPE_VSK\x10\x01*\xb4\x01\n\x1d\x41ttestStorageKeysResponseCode\x12-\n)ATTEST_STORAGE_KEYS_RESPONSE_CODE_INVALID\x10\x00\x12-\n)ATTEST_STORAGE_KEYS_RESPONSE_CODE_SUCCESS\x10\x01\x12\x35\n1ATTEST_STORAGE_KEYS_RESPONSE_CODE_ITOKEN_MISMATCH\x10\x02\x42=\n\x15org.lfedge.eve.attestZ$github.com/lf-edge/eve-api/go/attestb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61ttest/attest.proto\x12\x15org.lfedge.eve.attest\x1a\x11\x63\x65rts/certs.proto\"\xe4\x01\n\nZAttestReq\x12\x36\n\x07reqType\x18\x01 \x01(\x0e\x32%.org.lfedge.eve.attest.ZAttestReqType\x12\x32\n\x05quote\x18\x02 \x01(\x0b\x32#.org.lfedge.eve.attest.ZAttestQuote\x12*\n\x05\x63\x65rts\x18\x03 \x03(\x0b\x32\x1b.org.lfedge.eve.certs.ZCert\x12>\n\x0cstorage_keys\x18\x04 \x01(\x0b\x32(.org.lfedge.eve.attest.AttestStorageKeys\"\x88\x02\n\x0fZAttestResponse\x12\x38\n\x08respType\x18\x01 \x01(\x0e\x32&.org.lfedge.eve.attest.ZAttestRespType\x12\x36\n\x05nonce\x18\x02 \x01(\x0b\x32\'.org.lfedge.eve.attest.ZAttestNonceResp\x12:\n\tquoteResp\x18\x03 \x01(\x0b\x32\'.org.lfedge.eve.attest.ZAttestQuoteResp\x12G\n\x11storage_keys_resp\x18\x04 \x01(\x0b\x32,.org.lfedge.eve.attest.AttestStorageKeysResp\"!\n\x10ZAttestNonceResp\x12\r\n\x05nonce\x18\x01 \x01(\x0c\"W\n\x0eTpmEventDigest\x12\x35\n\thash_algo\x18\x01 \x01(\x0e\x32\".org.lfedge.eve.attest.TpmHashAlgo\x12\x0e\n\x06\x64igest\x18\x02 \x01(\x0c\"\xd0\x01\n\x10TpmEventLogEntry\x12\r\n\x05index\x18\x01 \x01(\r\x12\x11\n\tpcr_index\x18\x02 \x01(\r\x12\x12\n\nevent_type\x18\x03 \x01(\r\x12\x35\n\x06\x64igest\x18\x04 \x01(\x0b\x32%.org.lfedge.eve.attest.TpmEventDigest\x12\x19\n\x11\x65vent_data_binary\x18\x05 \x01(\x0c\x12\x19\n\x11\x65vent_data_string\x18\x06 \x01(\t\x12\x19\n\x11\x65vent_binary_size\x18\x07 \x01(\r\"u\n\x14\x41ttestGPSCoordinates\x12\x38\n\tgps_input\x18\x01 \x01(\x0e\x32%.org.lfedge.eve.attest.AttestGPSInput\x12\x10\n\x08latitude\x18\x02 \x01(\x01\x12\x11\n\tlongitude\x18\x03 \x01(\x01\"d\n\x11\x41ttestVersionInfo\x12>\n\x0cversion_type\x18\x01 \x01(\x0e\x32(.org.lfedge.eve.attest.AttestVersionType\x12\x0f\n\x07version\x18\x02 \x01(\t\"b\n\x0bTpmPCRValue\x12\r\n\x05index\x18\x01 \x01(\r\x12\x35\n\thash_algo\x18\x02 \x01(\x0e\x32\".org.lfedge.eve.attest.TpmHashAlgo\x12\r\n\x05value\x18\x03 \x01(\x0c\"\xc6\x02\n\x0cZAttestQuote\x12\x12\n\nattestData\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x36\n\npcr_values\x18\x03 \x03(\x0b\x32\".org.lfedge.eve.attest.TpmPCRValue\x12>\n\tevent_log\x18\x04 \x03(\x0b\x32\'.org.lfedge.eve.attest.TpmEventLogEntryB\x02\x18\x01\x12:\n\x08versions\x18\x05 \x03(\x0b\x32(.org.lfedge.eve.attest.AttestVersionInfo\x12=\n\x08gps_info\x18\x06 \x01(\x0b\x32+.org.lfedge.eve.attest.AttestGPSCoordinates\x12\x1c\n\x14tpm_binary_event_log\x18\x07 \x01(\x0c\"\x9c\x01\n\x0f\x41ttestVolumeKey\x12<\n\x08key_type\x18\x01 \x01(\x0e\x32*.org.lfedge.eve.attest.AttestVolumeKeyType\x12\x0b\n\x03key\x18\x02 \x01(\x0c\x12>\n\x07version\x18\x03 \x01(\x0e\x32-.org.lfedge.eve.attest.AttestVolumeKeyVersion\"\x9f\x01\n\x10ZAttestQuoteResp\x12<\n\x08response\x18\x01 \x01(\x0e\x32*.org.lfedge.eve.attest.ZAttestResponseCode\x12\x17\n\x0fintegrity_token\x18\x02 \x01(\x0c\x12\x34\n\x04keys\x18\x03 \x03(\x0b\x32&.org.lfedge.eve.attest.AttestVolumeKey\"b\n\x11\x41ttestStorageKeys\x12\x17\n\x0fintegrity_token\x18\x01 \x01(\x0c\x12\x34\n\x04keys\x18\x02 \x03(\x0b\x32&.org.lfedge.eve.attest.AttestVolumeKey\"_\n\x15\x41ttestStorageKeysResp\x12\x46\n\x08response\x18\x01 \x01(\x0e\x32\x34.org.lfedge.eve.attest.AttestStorageKeysResponseCode\"=\n\x13\x41ttestPolicyPcrList\x12\x13\n\x0bpcr_indices\x18\x01 \x03(\r\x12\x11\n\tpolicy_id\x18\x02 \x01(\r\"\xa5\x01\n\x13\x41ttestVolumeKeyData\x12\x15\n\rencrypted_key\x18\x01 \x01(\x0c\x12\x15\n\rdigest_sha256\x18\x02 \x01(\x0c\x12\x1b\n\x13has_policy_pcr_list\x18\x03 \x01(\x08\x12\x43\n\x0fpolicy_pcr_list\x18\x04 \x01(\x0b\x32*.org.lfedge.eve.attest.AttestPolicyPcrList*\x88\x01\n\x0eZAttestReqType\x12\x13\n\x0f\x41TTEST_REQ_NONE\x10\x00\x12\x13\n\x0f\x41TTEST_REQ_CERT\x10\x01\x12\x14\n\x10\x41TTEST_REQ_NONCE\x10\x02\x12\x14\n\x10\x41TTEST_REQ_QUOTE\x10\x03\x12 \n\x1cZ_ATTEST_REQ_TYPE_STORE_KEYS\x10\x04*\x93\x01\n\x0fZAttestRespType\x12\x14\n\x10\x41TTEST_RESP_NONE\x10\x00\x12\x14\n\x10\x41TTEST_RESP_CERT\x10\x01\x12\x15\n\x11\x41TTEST_RESP_NONCE\x10\x02\x12\x1a\n\x16\x41TTEST_RESP_QUOTE_RESP\x10\x03\x12!\n\x1dZ_ATTEST_RESP_TYPE_STORE_KEYS\x10\x04*t\n\x0bTpmHashAlgo\x12\x19\n\x15TPM_HASH_ALGO_INVALID\x10\x00\x12\x16\n\x12TPM_HASH_ALGO_SHA1\x10\x01\x12\x18\n\x14TPM_HASH_ALGO_SHA256\x10\x02\x12\x18\n\x14TPM_HASH_ALGO_SHA512\x10\x03*i\n\x0e\x41ttestGPSInput\x12\x1c\n\x18\x41TTEST_GPS_INPUT_INVALID\x10\x00\x12\x1c\n\x18\x41TTEST_GPS_INPUT_PRESENT\x10\x01\x12\x1b\n\x17\x41TTEST_GPS_INPUT_ABSENT\x10\x02*s\n\x11\x41ttestVersionType\x12\x1f\n\x1b\x41TTEST_VERSION_TYPE_INVALID\x10\x00\x12\x1b\n\x17\x41TTEST_VERSION_TYPE_EVE\x10\x01\x12 \n\x1c\x41TTEST_VERSION_TYPE_FIRMWARE\x10\x02*\xdb\x01\n\x13ZAttestResponseCode\x12\"\n\x1eZ_ATTEST_RESPONSE_CODE_INVALID\x10\x00\x12\"\n\x1eZ_ATTEST_RESPONSE_CODE_SUCCESS\x10\x01\x12)\n%Z_ATTEST_RESPONSE_CODE_NONCE_MISMATCH\x10\x02\x12(\n$Z_ATTEST_RESPONSE_CODE_NO_CERT_FOUND\x10\x03\x12\'\n#Z_ATTEST_RESPONSE_CODE_QUOTE_FAILED\x10\x04*Y\n\x13\x41ttestVolumeKeyType\x12\"\n\x1e\x41TTEST_VOLUME_KEY_TYPE_INVALID\x10\x00\x12\x1e\n\x1a\x41TTEST_VOLUME_KEY_TYPE_VSK\x10\x01*`\n\x16\x41ttestVolumeKeyVersion\x12$\n ATTEST_VOLUME_KEY_VERSION_LEGACY\x10\x00\x12 \n\x1c\x41TTEST_VOLUME_KEY_VERSION_V1\x10\x01*\xb4\x01\n\x1d\x41ttestStorageKeysResponseCode\x12-\n)ATTEST_STORAGE_KEYS_RESPONSE_CODE_INVALID\x10\x00\x12-\n)ATTEST_STORAGE_KEYS_RESPONSE_CODE_SUCCESS\x10\x01\x12\x35\n1ATTEST_STORAGE_KEYS_RESPONSE_CODE_ITOKEN_MISMATCH\x10\x02\x42=\n\x15org.lfedge.eve.attestZ$github.com/lf-edge/eve-api/go/attestb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -25,22 +25,24 @@ DESCRIPTOR._serialized_options = b'\n\025org.lfedge.eve.attestZ$github.com/lf-edge/eve-api/go/attest' _ZATTESTQUOTE.fields_by_name['event_log']._options = None _ZATTESTQUOTE.fields_by_name['event_log']._serialized_options = b'\030\001' - _globals['_ZATTESTREQTYPE']._serialized_start=2233 - _globals['_ZATTESTREQTYPE']._serialized_end=2369 - _globals['_ZATTESTRESPTYPE']._serialized_start=2372 - _globals['_ZATTESTRESPTYPE']._serialized_end=2519 - _globals['_TPMHASHALGO']._serialized_start=2521 - _globals['_TPMHASHALGO']._serialized_end=2637 - _globals['_ATTESTGPSINPUT']._serialized_start=2639 - _globals['_ATTESTGPSINPUT']._serialized_end=2744 - _globals['_ATTESTVERSIONTYPE']._serialized_start=2746 - _globals['_ATTESTVERSIONTYPE']._serialized_end=2861 - _globals['_ZATTESTRESPONSECODE']._serialized_start=2864 - _globals['_ZATTESTRESPONSECODE']._serialized_end=3083 - _globals['_ATTESTVOLUMEKEYTYPE']._serialized_start=3085 - _globals['_ATTESTVOLUMEKEYTYPE']._serialized_end=3174 - _globals['_ATTESTSTORAGEKEYSRESPONSECODE']._serialized_start=3177 - _globals['_ATTESTSTORAGEKEYSRESPONSECODE']._serialized_end=3357 + _globals['_ZATTESTREQTYPE']._serialized_start=2298 + _globals['_ZATTESTREQTYPE']._serialized_end=2434 + _globals['_ZATTESTRESPTYPE']._serialized_start=2437 + _globals['_ZATTESTRESPTYPE']._serialized_end=2584 + _globals['_TPMHASHALGO']._serialized_start=2586 + _globals['_TPMHASHALGO']._serialized_end=2702 + _globals['_ATTESTGPSINPUT']._serialized_start=2704 + _globals['_ATTESTGPSINPUT']._serialized_end=2809 + _globals['_ATTESTVERSIONTYPE']._serialized_start=2811 + _globals['_ATTESTVERSIONTYPE']._serialized_end=2926 + _globals['_ZATTESTRESPONSECODE']._serialized_start=2929 + _globals['_ZATTESTRESPONSECODE']._serialized_end=3148 + _globals['_ATTESTVOLUMEKEYTYPE']._serialized_start=3150 + _globals['_ATTESTVOLUMEKEYTYPE']._serialized_end=3239 + _globals['_ATTESTVOLUMEKEYVERSION']._serialized_start=3241 + _globals['_ATTESTVOLUMEKEYVERSION']._serialized_end=3337 + _globals['_ATTESTSTORAGEKEYSRESPONSECODE']._serialized_start=3340 + _globals['_ATTESTSTORAGEKEYSRESPONSECODE']._serialized_end=3520 _globals['_ZATTESTREQ']._serialized_start=66 _globals['_ZATTESTREQ']._serialized_end=294 _globals['_ZATTESTRESPONSE']._serialized_start=297 @@ -59,16 +61,16 @@ _globals['_TPMPCRVALUE']._serialized_end=1217 _globals['_ZATTESTQUOTE']._serialized_start=1220 _globals['_ZATTESTQUOTE']._serialized_end=1546 - _globals['_ATTESTVOLUMEKEY']._serialized_start=1548 - _globals['_ATTESTVOLUMEKEY']._serialized_end=1640 - _globals['_ZATTESTQUOTERESP']._serialized_start=1643 - _globals['_ZATTESTQUOTERESP']._serialized_end=1802 - _globals['_ATTESTSTORAGEKEYS']._serialized_start=1804 - _globals['_ATTESTSTORAGEKEYS']._serialized_end=1902 - _globals['_ATTESTSTORAGEKEYSRESP']._serialized_start=1904 - _globals['_ATTESTSTORAGEKEYSRESP']._serialized_end=1999 - _globals['_ATTESTPOLICYPCRLIST']._serialized_start=2001 - _globals['_ATTESTPOLICYPCRLIST']._serialized_end=2062 - _globals['_ATTESTVOLUMEKEYDATA']._serialized_start=2065 - _globals['_ATTESTVOLUMEKEYDATA']._serialized_end=2230 + _globals['_ATTESTVOLUMEKEY']._serialized_start=1549 + _globals['_ATTESTVOLUMEKEY']._serialized_end=1705 + _globals['_ZATTESTQUOTERESP']._serialized_start=1708 + _globals['_ZATTESTQUOTERESP']._serialized_end=1867 + _globals['_ATTESTSTORAGEKEYS']._serialized_start=1869 + _globals['_ATTESTSTORAGEKEYS']._serialized_end=1967 + _globals['_ATTESTSTORAGEKEYSRESP']._serialized_start=1969 + _globals['_ATTESTSTORAGEKEYSRESP']._serialized_end=2064 + _globals['_ATTESTPOLICYPCRLIST']._serialized_start=2066 + _globals['_ATTESTPOLICYPCRLIST']._serialized_end=2127 + _globals['_ATTESTVOLUMEKEYDATA']._serialized_start=2130 + _globals['_ATTESTVOLUMEKEYDATA']._serialized_end=2295 # @@protoc_insertion_point(module_scope)