syntax = "proto3"; package did.v1; import "cosmos/orm/v1/orm.proto"; import "did/v1/genesis.proto"; option go_package = "github.com/onsonr/sonr/x/did/types"; // Alias represents a DID alias message Alias { option (cosmos.orm.v1.table) = { id: 1 primary_key: {fields: "id"} index: { id: 1 fields: "subject,origin" unique: true } }; // The unique identifier of the alias string id = 1; // The alias of the DID string subject = 2; // Origin of the alias string origin = 3; } // Controller represents a Sonr DWN Vault message Controller { option (cosmos.orm.v1.table) = { id: 2 primary_key: { fields: "number" auto_increment: true } index: { id: 1 fields: "sonr_address" unique: true } index: { id: 2 fields: "eth_address" unique: true } index: { id: 3 fields: "btc_address" unique: true } index: { id: 4 fields: "did" unique: true } }; // The unique identifier of the controller uint64 number = 1; // The unique identifier of the controller string did = 2; // The DID of the controller string sonr_address = 3; // The DID of the controller string eth_address = 4; // The DID of the controller string btc_address = 5; // PubKey is the verification method bytes public_key = 6; // Val Keyshare string ks_val = 7; // The Status of the claims for the controller bool claimed = 8; } // Verification reprsents a method of verifying membership in a DID message Verification { option (cosmos.orm.v1.table) = { id: 4 primary_key: {fields: "did"} index: { id: 1 fields: "issuer,subject" unique: true } index: { id: 2 fields: "controller,did_method,issuer" unique: true } index: { id: 3 fields: "verification_type,subject,issuer" unique: true } }; // The unique identifier of the verification string did = 1; // The controller of the verification string controller = 2; // The DIDNamespace of the verification string did_method = 3; // The value of the linked identifier string issuer = 4; // The subject of the verification string subject = 5; // The public key of the verification PubKey public_key = 6; // The Verification Type (Authentication, Assertion, CapabilityDelegation, // CapabilityInvocation) string verification_type = 7; }