import "steammessages_base.proto";
import "steammessages_unified_base.steamclient.proto";

option cc_generic_services = true;

enum EKeyEscrowUsage {
	k_EKeyEscrowUsageStreamingDevice = 0;
}

message CKeyEscrow_Request {
	optional bytes rsa_oaep_sha_ticket = 1;
	optional bytes password = 2;
	optional .EKeyEscrowUsage usage = 3 [default = k_EKeyEscrowUsageStreamingDevice];
	optional string device_name = 4;
}

message CKeyEscrow_Ticket {
	optional bytes password = 1;
	optional uint64 identifier = 2;
	optional bytes payload = 3;
	optional uint32 timestamp = 4;
	optional .EKeyEscrowUsage usage = 5 [default = k_EKeyEscrowUsageStreamingDevice];
	optional string device_name = 6;
	optional string device_model = 7;
	optional string device_serial = 8;
	optional uint32 device_provisioning_id = 9;
}

message CKeyEscrow_Response {
	optional .CKeyEscrow_Ticket ticket = 1;
}

service Secrets {
	rpc KeyEscrow (.CKeyEscrow_Request) returns (.CKeyEscrow_Response);
}
