Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions agent/agent.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@ This can be a temporary suspension or a permanent suspension. As the name alread
you can also go from `suspended` to `active`.

The statuslist itself is a Verifiable Credential as well, which is issued and signed by the issuer of the Verifier VCs.
The statuslist credentail contains a bitstring. This bitstring is at least 150.000 bits long and whenever a credential
The statuslist credential contains a bitstring. This bitstring is at least 150.000 bits long and whenever a credential
is being issued a random position in this bitstring will be used. This position will end up in the issued credential as
a `statusListIndex` property of the `credentialStatus` object in the VC. The issuer will keep track of the statuslist
id/url, the id of the issued VC, as well as the random statusListIndex. The value in the bitstring is either "0",
Expand Down Expand Up @@ -474,7 +474,7 @@ The `correlationId` value is used as an internal 2nd business key. You can use t
property for most calls, in which case the API will not look at the URL. It will always serve/manage the statuslist with
the given `correlationId`. This is handy if you want to assign your own identifier, which you will use to manage the
list. A `correlationId` is mandatory when creating the status list and it needs to be unique!
The `statusPorpose` property is used to distinguish the type of the statuslist. It cannot be changes afterwards!. It
The `statusPurpose` property is used to distinguish the type of the statuslist. It cannot be changes afterwards!. It
either is `revocation` or `suspension`. See above for more details on the difference between the two.

Other optional properties:
Expand Down Expand Up @@ -876,4 +876,4 @@ DB_ENCRYPTION_KEY=29739248cad1bd1a0fc4d9b75cd4d2990de535baf5caadfdf8d8f86664aa83

# Build & Installation

See [README](../../README.md) at the top level project
See [README](../../README.md) at the top level project
2 changes: 1 addition & 1 deletion agent/demo-agent-instances.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ This document works based on the agents and code available in the [web wallet re
wallet however can be used standalone as well. More info about the agent can be found [here](./agent.md)

- A standalone agent, to be used without the [web wallet](https://github.com/Sphereon-Opensource/web-wallet), only enabling REST APIs
- The web wallet agent, enabling certain features needed for the web wallet to run. This includes some additional services and depencies.
- The web wallet agent, enabling certain features needed for the web wallet to run. This includes some additional services and dependencies.


- The Sphereon **Standalone Agent**: This agent running on port 5010 by default, runs without a web-wallet, and
Expand Down
31 changes: 17 additions & 14 deletions agent/demo-agent-setup.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ Example OID4VCI metadata can be found [here](https://github.com/Sphereon-Opensou
| | `credential_issuer` | The Credential Issuer's identifier. |
| | `credential_endpoint` | URL of the Credential Issuer's Credential Endpoint. This URL MUST use the https scheme and MAY contain port, path and query parameter components. |
| | `display` | (optional) An array of objects, where each object contains display properties of a Credential Issuer for a certain language. Below is a non-exhaustive list of valid parameters that MAY be included: name (optional) string and locale (optional) string |
| | `credentials_supported` | A JSON array containing a list of JSON objects, each of them representing metadata about a separate credential type that the Credential Issuer can issue. The JSON objects in the array MUST conform to the structure of the [OID4VCI spec](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html#credential-metadata-object). |
| | `credential_supplier_config` | Configuration settings for the provider of the credentials. |
| | `credential_configurations_supported` | A JSON array containing a list of JSON objects, each of them representing metadata about a separate credential type that the Credential Issuer can issue. The JSON objects in the array MUST conform to the structure of the [OID4VCI spec](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html#credential-metadata-object). |
| | `credential_supplier_config` | Configuration settings for the provider of the credentials. |

#### 3. oid4vci_options

Expand All @@ -75,22 +75,23 @@ This is the directory where custom OID4VCI options are maintained. An example ca
Here, you will store configuration files related to OpenID for Verifiable Presentations (OID4VP). Be aware that any configuration file in this directory represents an individual
Relying Party instance. Also be aware that a single Relying Party can host multiple Presentation definitions at the same time.

| Variable | Sub-Variable | Description |
|----------------|---------------------|---------------------------------------------------------------------------------------------------------|
| `definitionId` | | Unique identifier associated with a specific credential definition. |
| `rpOpts` | | Configuration options for the Relying Party (RP). |
| | `responseMode` | (optional) Specifies the method that the RP uses to receive the response from the OpenID Provider. |
| | `supportedVersions` | (optional) Lists the versions supported by the RP. |
| | `sessionManager` | (optional) An instance of IRPSessionManager from Sphereon's SIOP-OID4VP library managing session state. |
| | `expiresIn` | (optional) Defines the duration after which the RP's request or session should expire. |
| | `eventEmitter` | (optional) An object used to handle events, enabling asynchronous event-driven programming. |
| | `didOpts` | Options related to the Decentralized Identifier (DID) of the verifier. |
| Variable | Sub-Variable | Description |
|-----------|---------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
| `queryId` | | Unique identifier associated with a specific DCQL definition. |
| `rpOpts` | | Configuration options for the Relying Party (RP). |
| | `responseMode` | (optional) Specifies the method that the RP uses to receive the response from the OpenID Provider. |
| | `supportedVersions` | (optional) Lists the versions supported by the RP. |
| | `sessionManager` | (optional) An instance of IRPSessionManager from Sphereon's SIOP-OID4VP library managing session state. |
| | `expiresIn` | (optional) Defines the duration after which the RP's request or session should expire. |
| | `eventEmitter` | (optional) An object used to handle events, enabling asynchronous event-driven programming. |
| | `didOpts` | Options related to the Decentralized Identifier (DID) of the verifier. |
| | `clientMetadataOpts`| Defines how the Wallet can determine Credential formats, proof types and algorithms supported by the Verifier to be used in a protocol exchange. |

#### 5. presentation_definitions
#### 5. dcql_definitions

The content of this directory is essential for defining how the agent understands and processes presentation requests. This is only applied if your demo application is asking the
user for their VerifiableCredential(s) from the wallet. For an in-depth explanation of presentation_definition, refer to
the [Presentation Exchange Documentation](https://identity.foundation/presentation-exchange/). To understand its role in the context of
the [Digital Credentials Query Language (DCQL) Documentation](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html#name-digital-credentials-query-l). To understand its role in the context of
the [OID4VP specification](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html), please consult the provided link.

#### 6. templates
Expand Down Expand Up @@ -137,6 +138,8 @@ Your `.env.local` file should contain the following variables with values tailor
| `OID4VCI_ENABLED` | Boolean to activate OpenID for Verifiable Credentials Issuance (OID4VCI). |
| `CONF_PATH` | Path to the agent’s configuration files, detailed above. |
| `UNIVERSAL_RESOLVER_RESOLVE_URL` | Endpoint URL for the universal resolver service for resolving DIDs. |
| `STATUS_LIST_TYPE` | Status list type of the configured status list. Either `StatusList2021`, `OAuthStatusList` or `BitstringStatusList` |


**Note**: If you intend to access the agent through a mobile device, ensure that you do not use `localhost` or `127.0.0.1`. Instead, use a local IP address that is reachable from
your mobile device within the same network.
Expand Down
Loading