Skip to content

Commit

Permalink
Define fields for all verifiable presentation requests.
Browse files Browse the repository at this point in the history
  • Loading branch information
msporny committed Oct 8, 2024
1 parent 41ae0e4 commit 063ce6c
Showing 1 changed file with 37 additions and 6 deletions.
43 changes: 37 additions & 6 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -265,13 +265,48 @@ <h2>Query and Response Types</h2>

<p>
The <dfn>query type</dfn> serves as the main extension point mechanism for
requests for data in the presentation. This document defines several common query
types.
requests for data in the presentation. While this document defines several
common query types, all query objects are of the following form:
</p>

<dl>
<dt>query</dt>
<dd>
A REQUIRED property that specifies the information requested by the
[=verifier=]. The value MUST be one or more [=maps=] where each [=map=] MUST
define a `type` property with an associated [=string=] value.
</dd>
<dt><dfn class="export">challenge</dfn></dt>
<dd>
An OPTIONAL, unique [=string=] that is provided by a [=verifier=] to a
[=holder=] during a specific [=presentation request=]. The [=holder=] includes
the data in a [=verifiable presentation=] to the [=verifier=] to protect against
<a data-cite="?VC-DATA-MODEL-2.0#replay-attack">replay attacks</a>.
</dd>
<dt><dfn class="export">domain</dfn></dt>
<dd>
An OPTIONAL [=string=] that is provided by a [=verifier=] to a [=holder=] during
a [=presentation request=]. The [=holder=] checks to ensure that the data is
associated with the domain, such as a website domain, that they are interacting
with, and if it is, includes the data in a [=verifiable presentation=]. A domain
is used to ensure that the [=holder=] limits their [=verifiable presentation=]
to a specific [=verifier=] in order to protect against
<a data-cite="?VC-DATA-MODEL-2.0#replay-attack">replay attacks</a>.
</dd>

</dl>

<section>
<h3>Query By Example</h3>

<p>
The "query by example" credential query format is designed to enable developers
to easily request the [=claims=] in one or more [=verifiable credentials=] that
they need to perform a particular business process. The query can also
specify one or more [=issuers=] that is trusted by the [=verifier=] as well as
properties that prevent replay attacks such as a [=challenge=] and [=domain=].
</p>

<pre class="example nohighlight" title="A Query By Example query">
{
"query": [
Expand Down Expand Up @@ -304,10 +339,6 @@ <h3>Query By Example</h3>
"required": true,
"issuer": "urn:some:required:issuer"
}
],
// (Optional)
"issuerQuery": [
//
]
}
]
Expand Down

0 comments on commit 063ce6c

Please sign in to comment.