Skip to content

Commit 4ffcbd9

Browse files
authored
Merge pull request #90 from niscy-eudiw/feature/d22-dcql
DCQL
2 parents d859d78 + ac362c3 commit 4ffcbd9

File tree

113 files changed

+5621
-2071
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

113 files changed

+5621
-2071
lines changed

Package.resolved

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version: 5.8
1+
// swift-tools-version: 6.0
22
// The swift-tools-version declares the minimum version of Swift required to build this package.
33

44
import PackageDescription
@@ -18,7 +18,7 @@ let package = Package(
1818
),
1919
.package(
2020
url: "https://github.com/eu-digital-identity-wallet/eudi-lib-ios-presentation-exchange-swift.git",
21-
.upToNextMajor(from: "0.3.0")
21+
.upToNextMajor(from: "0.4.0")
2222
),
2323
.package(
2424
url: "https://github.com/apple/swift-certificates.git",
@@ -27,7 +27,8 @@ let package = Package(
2727
.package(
2828
url: "https://github.com/apple/swift-asn1.git",
2929
.upToNextMajor(from: "1.0.0")
30-
),.package(
30+
),
31+
.package(
3132
url: "https://github.com/niscy-eudiw/BlueECC.git",
3233
.upToNextMajor(from: "1.2.4")
3334
),

README.md

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,10 @@ requests mentioned aforementioned) and in addition gather from Verifier addition
7575
reference (such as `presentation_definition_uri`, etc)
7676

7777
The object that captures the aforementioned functionality is
78-
[ResolvedSiopOpenId4VPRequestData](https://github.com/eu-digital-identity-wallet/eudi-lib-ios-siop-openid4vp-swift/blob/main/Sources/Entities/Resolved/ResolvedRequestData.swift)
78+
[ResolvedRequestData](https://github.com/eu-digital-identity-wallet/eudi-lib-ios-siop-openid4vp-swift/blob/main/Sources/Entities/Resolved/ResolvedRequestData.swift)
7979

8080

81-
async/await version:
81+
`async/await` version:
8282

8383
```swift
8484
import SiopOpenID4VP
@@ -93,23 +93,6 @@ switch result {
9393
}
9494
```
9595

96-
Combine version:
97-
98-
```swift
99-
import SiopOpenID4VP
100-
101-
let authorizationRequestUri : URL = ...
102-
103-
let sdk = SiopOpenID4VP(walletConfiguration:...)
104-
sdk.authorizationPublisher(for: authorizationRequestUri)
105-
.sink { completion in
106-
...
107-
} receiveValue: { authorizationRequest in
108-
...
109-
}
110-
.store(...)
111-
```
112-
11396
### Holder's consensus, Handling of a valid authorization request
11497

11598
After receiving a valid authorization wallet has to process it. Depending on the type of request this means
@@ -143,7 +126,7 @@ let response = try AuthorizationResponse(
143126
The final step, of processing an authorization request, is to dispatch to the verifier the authorization response.
144127
Depending on the `response_mode` that the verifier included in his authorization request, this is done either
145128
* via a direct post (when `response_mode` is `direct_post` or `direct_post.jwt`), or
146-
* by forming an appropriate `redirect_uri` (when response mode is `fragment` or `fragment.jwt`)
129+
* by forming an appropriate `redirect_uri` (when response mode is `fragment` or `fragment.jwt`) _not supported yet_
147130

148131
Library tackles this dispatching via the Dispatcher class.
149132

@@ -224,6 +207,17 @@ According to OpenId4VP, verifier may pass the `presentation_definition` either
224207

225208
Library supports all these options
226209

210+
## DCQL
211+
212+
The Verifier articulated requirements of the Verifiable Credential(s) that are requested, are provided using
213+
the `dcql_query` parameter that contains a [DCQL Query](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html#section-6-2) JSON object.
214+
215+
According to OpenId4VP, verifier may pass the `dcql_query` either
216+
217+
* [by value](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html#section-5.1-2.6)
218+
* [using scope](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html#section-5.6)
219+
220+
227221
## Client metadata in Authorization Request
228222
According to [OpenId4VP](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html#name-authorization-request) verifier may pass his metadata (client metadata) either
229223
* by value

0 commit comments

Comments
 (0)