syntax = "proto3"; package tpm; message VerifySignatureRequest{ bytes signature = 1; bytes publicKey = 2; bytes msg = 3; } message VerifySignatureResponse{ bool result = 1; } message Ed25519SignRequest{ bytes msg = 1; bytes key = 2; } message Ed25519SignResponse{ bytes sig = 1; } message Sr25519SignRequest{ bytes msg = 1; bytes key = 2; } message Sr25519SignResponse{ bytes sig = 1; } message RsaDecryptRequest{ bytes private_key_pkcs1 = 1; bytes msg = 2; } message RsaDecryptResponse{ bytes result = 1; string error = 2; } message RsaEncryptRequest{ bytes public_key_pkcs1 = 1; bytes msg = 2; } message RsaEncryptResponse{ bytes result = 1; } message GetPcrRequest{ } message GetPcrResponse{ Pcrs pcrs = 1; } message RsaKeyPairPemPcsk1{ string publicKey = 1; string privateKey = 2; } message SignedPcrsBytes{ Pcrs pcrs = 1; bytes sig = 2; } message TeaNodeProfileV1{ SignedPcrsBytes pcrValues = 1; string manifest = 3; // required string actorsProvidersHashList = 4; } message TeaNodeProfileV2{ SignedPcrsBytes pcrValues = 1; string manifest = 3; // required string actorsProvidersHashList = 4; string mode = 4; } message Pcrs{ repeated bytes pcrs = 1; } message RebuildOtherPeerPcrBytesRequest{ bytes ephemeralId = 1; string manifest = 3; } message ResponseError{ string error = 1; } message GetEd25519KeyPairRequest{ } message GetEd25519KeyPairResponse{ bytes keypair = 1; } message GetEphemeralIdKeyPairSigRequest{ } message GetEphemeralIdKeyPairSigResponse{ bytes pubkey = 1; bytes prikey = 2; bytes sig = 3; } message GetTeaIdRequest{ } message GetTeaIdResponse{ bytes teaId = 1; } message GetSignedPcrRequest{ } message GetSignedPcrResponse{ Pcrs pcrs = 1; bytes sig = 2; } message ExtendPcrRequest{ bytes newPcr = 1; } message ExtendPcrResponse{ bool result = 1; } message TpmMessage{ oneof msg{ ResponseError ResponseError = 1; RsaEncryptRequest RasEncryptRequest = 2; RsaEncryptResponse RsaEncryptResponse = 3; ExtendPcrRequest ExtendPcrRequest = 4; ExtendPcrResponse ExtendPcrResponse = 5; VerifySignatureRequest VerifySignatureRequest = 6; VerifySignatureResponse VerifySignatureResponse = 7; Ed25519SignRequest Ed25519SignRequest = 8; Ed25519SignResponse Ed25519SignResponse = 9; Sr25519SignRequest Sr25519SignRequest = 10; Sr25519SignResponse Sr25519SignResponse = 11; RsaDecryptRequest RsaDecryptRequest = 12; RsaDecryptResponse RsaDecryptResponse = 13; GetEd25519KeyPairRequest GetEd25519KeyPairRequest = 14; GetEd25519KeyPairResponse GetEd25519KeyPairResponse = 15; GetEphemeralIdKeyPairSigRequest GetEphemeralIdKeyPairSigRequest = 16; GetEphemeralIdKeyPairSigResponse GetEphemeralIdKeyPairSigResponse = 17; GetTeaIdRequest GetTeaIdRequest = 18; GetTeaIdResponse GetTeaIdResponse = 19; GetSignedPcrRequest GetSignedPcrRequest = 20; GetSignedPcrResponse GetSignedPcrResponse = 21; } }