id.proto
path agntcy/identity/core/v1alpha1/id.proto
package agntcy.identity.core.v1alpha1
Messages
Jwk
JWK represents: - a JSON Web Key (JWK) with the respective fields specific to RSA algorithms. - a Quantum JSON Web Key (QJWK) with the respective fields specific to AKP algorithms.
Name | Type | Description |
---|---|---|
alg | optional string | ALG represents the algorithm intended for use with the key. Example algorithms for Post-Quantum ML-DSA family: "ML-DSA-44", "ML-DSA-65", "ML-DSA-87". Some example algorithms are "RS256", "RS384", "RS512" for RSA algorithms. |
kty | optional string | KTY represents the key type parameter. It specifies the family of quantum algorithms used with the key, such as "AKP" for post quantum algorithms or "RSA" for non quantum algorithms. |
use | optional string | Use represents the intended use of the key. Some example values are "enc" and "sig". |
kid | optional string | KID represents the key ID. It is used to match a specific key. |
pub | optional string | The public key for the AKP kty. |
priv | optional string | The private key for the AKP kty. |
seed | optional string | Seed used to derive keys for ML-DSA alg. |
e | optional string | The exponent for the RSA public key. |
n | optional string | The modulus for the RSA public key. |
d | optional string | The private exponent for the RSA kty. |
p | optional string | The first prime factor for the RSA private key. |
q | optional string | The second prime factor for the RSA private key. |
dp | optional string | The first factor CRT exponent for the RSA private key. |
dq | optional string | The second factor CRT exponent for the RSA private key. |
qi | optional string | The first CRT coefficient for the RSA private key. |
Jwks
JWKS represents a set of JSON Web Keys (JWKs).
Name | Type | Description |
---|---|---|
keys | repeated Jwk | Keys represents the list of JSON Web Keys. |
ResolverMetadata
ResolverMetadata represents a set of data describing the ID including mechanisms such as: - cryptographic public keys - used to authenticate itself and prove association with the ID - service - ways of communicating with the node that published the document A ResolverMetadata can be retrieved by resolving an ID.
Name | Type | Description |
---|---|---|
id | optional string | The ID The metadata below is related as claims to the ID |
verification_method | repeated VerificationMethod | VerificationMethod is a list of cryptographic public keys, which can be used to authenticate or authorize interactions with the entities represented by the ID. |
service | repeated Service | Service is used in ResolverMetadatas to express ways of communicating with the node that published the document. |
assertion_method | repeated string | AssertionMethod is used to specify how the entity represented by the ID is expected to express claims, such as for the purposes of issuing a VCs. |
Service
Service is used in ResolverMetadata to express ways of communicating with the node that published the document.
Name | Type | Description |
---|---|---|
service_endpoint | repeated string | ServiceEndpoint is a network address, such as an HTTP URL, of the node. |
VerificationMethod
VerificationMethod expresses verification methods, such as cryptographic public keys, which can be used to authenticate or authorize interactions with the entities represented by the ID. It is a part of the ResolverMetadata.
Name | Type | Description |
---|---|---|
id | optional string | A unique id of the verification method. |
public_key_jwk | optional Jwk | The public key used for the verification method. |