syntax = "proto3"; package did.v1; import "cosmos/msg/v1/msg.proto"; import "did/v1/genesis.proto"; import "gogoproto/gogo.proto"; import "cosmos_proto/cosmos.proto"; option go_package = "github.com/onsonr/hway/x/did/types"; // Msg defines the Msg service. service Msg { option (cosmos.msg.v1.service) = true; // UpdateParams defines a governance operation for updating the parameters. // // Since: cosmos-sdk 0.47 rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse); // InitializeController initializes a controller with the given assertions, keyshares, and verifications. rpc InitializeController(MsgInitializeController) returns (MsgInitializeControllerResponse); // AuthenticateController asserts the given controller is the owner of the given address. rpc AuthenticateController(MsgAuthenticateController) returns (MsgAuthenticateControllerResponse); } // MsgUpdateParams is the Msg/UpdateParams request type. // // Since: cosmos-sdk 0.47 message MsgUpdateParams { option (cosmos.msg.v1.signer) = "authority"; // authority is the address of the governance account. string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // params defines the parameters to update. // // NOTE: All parameters must be supplied. Params params = 2 [(gogoproto.nullable) = false]; } // MsgUpdateParamsResponse defines the response structure for executing a // MsgUpdateParams message. // // Since: cosmos-sdk 0.47 message MsgUpdateParamsResponse {} // MsgInitializeController is the message type for the InitializeController RPC. message MsgInitializeController { option (cosmos.msg.v1.signer) = "authority"; // authority is the address of the governance account. string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // Assertions is the list of assertions to initialize the controller with. repeated bytes assertions = 2; // Keyshares is the list of keyshares to initialize the controller with. repeated bytes keyshares = 3; // Verifications is the list of verifications to initialize the controller with. repeated bytes verifications = 4; } // MsgInitializeControllerResponse is the response type for the InitializeController RPC. message MsgInitializeControllerResponse { // Controller is the address of the initialized controller. string controller = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; } // MsgAuthenticate is the message type for the Authenticate RPC. message MsgAuthenticateController { option (cosmos.msg.v1.signer) = "authority"; // authority is the address of the governance account. string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // Controller is the address of the controller to authenticate. string controller = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // Address is the address to authenticate. string address = 3 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // Origin is the origin of the request in wildcard form. string origin = 4; } // MsgAuthenticateControllerResponse is the response type for the Authenticate RPC. message MsgAuthenticateControllerResponse {}