// Copyright Tharsis Labs Ltd.(Evmos) // SPDX-License-Identifier:ENCL-1.0(https://github.com/evmos/evmos/blob/main/LICENSE) syntax = "proto3"; package did.v1; import "cosmos/auth/v1beta1/auth.proto"; import "cosmos_proto/cosmos.proto"; import "gogoproto/gogo.proto"; import "did/v1/genesis.proto"; option go_package = "github.com/onsonr/hway/x/did/types"; // EthAccount implements the authtypes.AccountI interface and embeds an // authtypes.BaseAccount type. It is compatible with the auth AccountKeeper. message EthAccount { option (gogoproto.goproto_getters) = false; option (gogoproto.goproto_stringer) = false; option (gogoproto.equal) = false; option (cosmos_proto.implements_interface) = "github.com/cosmos/cosmos-sdk/x/auth/types.cosmos.auth.v1beta1.AccountI"; // base_account is an authtypes.BaseAccount cosmos.auth.v1beta1.BaseAccount base_account = 1 [(gogoproto.embed) = true, (gogoproto.moretags) = "yaml:\"base_account\""]; // code_hash is the hash calculated from the code contents string code_hash = 2 [(gogoproto.moretags) = "yaml:\"code_hash\""]; // controller is the address of the controller string controller = 3 [(gogoproto.moretags) = "yaml:\"controller\""]; } // DIDDocument defines a DID document message DIDDocument { string id = 1; repeated VerificationMethod verification_methods = 2; repeated string authentication = 4; repeated string assertion_method = 5; repeated string capability_delegation = 7; repeated string capability_invocation = 8; } // VerificationMethod defines a verification method message VerificationMethod { string id = 1; string controller = 2; PublicKey public_key = 3; }