diff --git a/docs/index.html b/docs/index.html index bfcc859..4624527 100644 --- a/docs/index.html +++ b/docs/index.html @@ -92,6 +92,12 @@ company: "mesur.io", companyURL: "https://mesur.io/", }, + { + name: "Sudesh Shetty", + url: "https://www.linkedin.com/in/sudesh-r-shetty-6bb67b7/", + company: "SecureKey", + companyURL: "https://securekey.com/", + }, ], // name of the WG wg: "Credentials Community Group", @@ -493,7 +499,7 @@
+ A wallet implementation MAY implement a subset of the interfaces defined below. + + For example: +
Transfer
interface.
+ Also, the Query
interface of a verifiable credential wallet might be specific to credential search.Export
, Import
, Lock
, and/or Unlock
interfaces.@@ -1151,11 +1169,25 @@
- This method may not be necessary, for implementations that rely on + This method may not be necessary for implementations that rely on external storage, such as Encrypted Data Vaults.
Only ciphertext wallet contents can be exported.
+ +Produces a serialized exported wallet representation.
+ ++ This method may not be necessary for implementations that rely on + external storage, such as Encrypted Data Vaults. +
+@@ -1165,7 +1197,7 @@
Requires knowledge of the password used to lock the wallet.
- This method may not be necessary, for implementations that rely on + This method may not be necessary for implementations that rely on external storage, such as Encrypted Data Vaults.
Requires knowledge of the password used to lock the wallet.
- This method may not be necessary, for implementations that rely on + This method may not be necessary for implementations that rely on external storage, such as Encrypted Data Vaults.
@@ -1198,6 +1230,13 @@Must support detached signatures.
+ ++ This method may not be necessary for implementations that rely on + other dedicated interface function to perform signing. + + For example, a verifiable credential wallet that adds proofs using `Issue,Prove` interfaces might not implement this interface. +
Must support detached signatures.
+ ++ This method may not be necessary for implementations that rely on + other dedicated interface functions to verify signatures. + + For example, a verifiable credential wallet that can verify credential proofs using `Verify` interface might not implement this interface. +
Takes a Verifiable Credential without a proof
, and an
- options
object, which contains at least a
- verificationMethod
, and proofPurpose
.
+ options
object.
Produces as Verifiable Credential.
+Produces a Verifiable Credential.
+ ++ Here are the options that can be used to produce a verifiable credential. + Refer to proofs-signatures for various proof options: +
+ let credential = {...} // a verifiable credential without proof + let options = { + verificationMethod: "did:example:1234#key-1", + proofPurpose: "assertionMethod", + created: "2017-06-18T21:19:10Z" + controller: "did:example:1234", + domain: "https://www.example.com", + challenge: "0b4e419a-1410-4739-a58d-b37f4db10181", + proofType: "Ed25519Signature2018" + } + let verifiableCredential = wallet.Issue(credential, options) +
Takes an id of a Verifiable Credential, and an
- options
object, which contains at least a
- challenge
.
+ options
object.
Produces as Verifiable Presentation.
+Produces a Verifiable Presentation.
+ ++ Here are the options that can be used to produce a verifiable credentials + Refer to proofs-signatures for various proof options: +
+ let verifiableCredential = {...} // a verifiable credential + let options = { + verificationMethod: "did:example:1234#key-1", + proofPurpose: "assertionMethod", + created: "2017-06-18T21:19:10Z" + controller: "did:example:1234", + domain: "https://www.example.com", + challenge: "0b4e419a-1410-4739-a58d-b37f4db10181", + proofType: "Ed25519Signature2018" + } + let verifiableCredential = wallet.Prove(credential, options) +
Only ciphertext wallet contents can be exported.
+Takes a Query and Type as input, and returns a collection of results based on current wallet contents.
+ +Type input can be wallet implementation specific.
+ +Since all universal wallet data models are JSON object types, here are the query types that can be supported:
++ let search = { + "type": "QueryByFrame", + "query": { + "@context": { + "@vocab": "http://example.org/" + }, + "@type": "Library", + "contains": { + "@type": "Book", + "contains": { + "@type": "Chapter" + } + } + } + } + let results = wallet.Query(search) +-
Produces a serialized exported wallet representation.
++ let search = { + "type": "PresentationExchange", + "query": { + "presentation_definition": { + "id": "32f54163-7166-48f1-93d8-ff217bdb0653", + "locale": "en-US", + "input_descriptors": [{ + "id": "name_input", + "name": "Full Legal Name", + "purpose": "We need your full legal name.", + "schema": [ + { + "uri": "https://name-standards.com/name.json", + "required": true + } + ] + }] + } + } + } + let results = vcWallet.Query(search) +