mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-03 01:41:44 +00:00
(no commit message provided)
This commit is contained in:
committed by
Prad Nukala (aider)
parent
24db9de0ad
commit
2923b8866b
@@ -0,0 +1,4 @@
|
||||
syntax = "proto3";
|
||||
package did.v1;
|
||||
|
||||
option go_package = "github.com/onsonr/hway/x/did/types";
|
||||
+55
-18
@@ -3,6 +3,7 @@ package did.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "did/v1/genesis.proto";
|
||||
import "did/v1/types.proto";
|
||||
|
||||
option go_package = "github.com/onsonr/hway/x/did/types";
|
||||
|
||||
@@ -13,14 +14,29 @@ service Query {
|
||||
option (google.api.http).get = "/did/params";
|
||||
}
|
||||
|
||||
// Resolve queries the DID document by its id.
|
||||
rpc ResolveIdentifier(QueryResolveRequest) returns (QueryResolveResponse) {
|
||||
option (google.api.http).get = "/did/resolve/{id}";
|
||||
// Accounts returns associated wallet accounts with the DID.
|
||||
rpc Accounts(QueryAccountsRequest) returns (QueryAccountsResponse) {
|
||||
option (google.api.http).get = "/did/{did}/accounts";
|
||||
}
|
||||
|
||||
// Credentials returns associated credentials with the DID and Service Origin.
|
||||
rpc Credentials(QueryCredentialsRequest) returns (QueryCredentialsResponse) {
|
||||
option (google.api.http).get = "/did/{did}/{origin}/credentials";
|
||||
}
|
||||
|
||||
// Identities returns associated identity with the DID.
|
||||
rpc Identities(QueryIdentitiesRequest) returns (QueryIdentitiesResponse) {
|
||||
option (google.api.http).get = "/did/{did}/identities";
|
||||
}
|
||||
|
||||
// Resolve queries the DID document by its id.
|
||||
rpc Resolve(QueryResolveRequest) returns (QueryResolveResponse) {
|
||||
option (google.api.http).get = "/did/resolve/{did}";
|
||||
}
|
||||
|
||||
// LoginOptions queries the PublicKeyCredentialAttestationOptions for starting a login flow.
|
||||
rpc WitnessCredential(QueryWitnessCredentialRequest) returns (QueryWitnessCredentialResponse) {
|
||||
option (google.api.http).get = "/did/assertion/{id}/witness";
|
||||
// Service returns associated ServiceInfo for a given Origin
|
||||
rpc Service(QueryServiceRequest) returns (QueryServiceResponse) {
|
||||
option (google.api.http).get = "/did/service/{origin}";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,35 +49,56 @@ message QueryParamsResponse {
|
||||
Params params = 1;
|
||||
}
|
||||
|
||||
// QueryExistsRequest is the request type for the Query/Exists RPC method.
|
||||
message QueryExistsRequest {
|
||||
string kind = 1;
|
||||
string value = 2;
|
||||
// QueryAccountsRequest is the request type for the Query/Exists RPC method.
|
||||
message QueryAccountsRequest {
|
||||
string did = 1;
|
||||
}
|
||||
|
||||
// QueryExistsResponse is the response type for the Query/Exists RPC method.
|
||||
message QueryExistsResponse {
|
||||
// QueryAccountsResponse is the response type for the Query/Exists RPC method.
|
||||
message QueryAccountsResponse {
|
||||
bool exists = 1;
|
||||
}
|
||||
|
||||
// QueryCredentialsRequest is the request type for the Query/Exists RPC method.
|
||||
message QueryCredentialsRequest {
|
||||
string did = 1;
|
||||
string origin = 2;
|
||||
}
|
||||
|
||||
// QueryCredentialsResponse is the response type for the Query/Exists RPC method.
|
||||
message QueryCredentialsResponse {
|
||||
map<string, bytes> credentials = 1;
|
||||
}
|
||||
|
||||
// QueryIdentitiesRequest is the request type for the Query/Exists RPC method.
|
||||
message QueryIdentitiesRequest {
|
||||
string did = 1;
|
||||
}
|
||||
|
||||
// QueryIdentitiesResponse is the response type for the Query/Exists RPC method.
|
||||
message QueryIdentitiesResponse {
|
||||
bool exists = 1;
|
||||
repeated VerificationMethod verificationMethod = 2;
|
||||
}
|
||||
|
||||
// QueryResolveRequest is the request type for the Query/Resolve RPC method.
|
||||
message QueryResolveRequest {
|
||||
string id = 1;
|
||||
string did = 1;
|
||||
}
|
||||
|
||||
// QueryResolveResponse is the response type for the Query/Resolve RPC method.
|
||||
message QueryResolveResponse {
|
||||
// document is the DID document
|
||||
string document = 1;
|
||||
Document document = 1;
|
||||
}
|
||||
|
||||
// QueryLoginOptionsRequest is the request type for the Query/LoginOptions RPC method.
|
||||
message QueryWitnessCredentialRequest {
|
||||
string id = 1;
|
||||
// QueryServiceRequest is the request type for the Query/LoginOptions RPC method.
|
||||
message QueryServiceRequest {
|
||||
string origin = 1;
|
||||
}
|
||||
|
||||
// QueryLoginOptionsResponse is the response type for the Query/LoginOptions RPC method.
|
||||
message QueryWitnessCredentialResponse {
|
||||
message QueryServiceResponse {
|
||||
// options is the PublicKeyCredentialAttestationOptions
|
||||
string options = 1;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ message Aliases {
|
||||
option (cosmos.orm.v1.table) = {
|
||||
id: 1
|
||||
primary_key: {fields: "id"}
|
||||
index: { id: 1, fields: "handle", unique: true }
|
||||
index: { id: 1, fields: "subject", unique: true }
|
||||
};
|
||||
|
||||
// The unique identifier of the alias
|
||||
@@ -21,8 +21,8 @@ message Aliases {
|
||||
// Origin is the Alias provider
|
||||
string origin = 2;
|
||||
|
||||
// Handle is the user defined alias
|
||||
string handle = 3;
|
||||
// Subject is the user defined alias
|
||||
string subject = 3;
|
||||
|
||||
// Controller of the alias
|
||||
string controller = 4;
|
||||
|
||||
@@ -9,9 +9,19 @@ import "cosmos_proto/cosmos.proto";
|
||||
|
||||
option go_package = "github.com/onsonr/hway/x/did/types";
|
||||
|
||||
// Credential defines a WebAuthn credential
|
||||
message Credential {
|
||||
string id = 1;
|
||||
string credential_type = 2;
|
||||
bytes credential_id = 3;
|
||||
repeated string transport = 4;
|
||||
string attestation_type = 5;
|
||||
string display_name = 6;
|
||||
string controller = 7;
|
||||
}
|
||||
|
||||
// BaseDocument defines a DID document
|
||||
message BaseDocument {
|
||||
// Document defines a DID document
|
||||
message Document {
|
||||
string id = 1;
|
||||
repeated VerificationMethod verification_methods = 2;
|
||||
repeated string authentication = 4;
|
||||
@@ -20,6 +30,23 @@ message BaseDocument {
|
||||
repeated string capability_invocation = 8;
|
||||
}
|
||||
|
||||
// Identity defines an associated profile for a did subject
|
||||
message Identity {
|
||||
string id = 1;
|
||||
string subject = 2;
|
||||
string controller = 3;
|
||||
repeated Credential credentials = 4;
|
||||
repeated VerificationMethod verification_methods = 5;
|
||||
}
|
||||
|
||||
// PubKey defines a public key for a did
|
||||
message PubKey {
|
||||
string id = 1;
|
||||
bytes key = 2;
|
||||
string key_type = 3;
|
||||
string controller = 4;
|
||||
}
|
||||
|
||||
// VerificationMethod defines a verification method
|
||||
message VerificationMethod {
|
||||
string id = 1;
|
||||
|
||||
Reference in New Issue
Block a user