Difference between revisions of "Mobile Driver's License Presentation"
From MgmtWiki
(→Security) |
(→Request) |
||
| Line 46: | Line 46: | ||
==Request== | ==Request== | ||
{| class="wikitable" style="text-align: center;" | {| class="wikitable" style="text-align: center;" | ||
| − | !data|mDL|DIF!Comments | + | !scope="row"|data |
| + | |mDL | ||
| + | |DIF | ||
| + | !Comments | ||
|- | |- | ||
!scope="row" |Device request | !scope="row" |Device request | ||
| Line 65: | Line 68: | ||
|etc.. | |etc.. | ||
|} | |} | ||
| + | |||
| + | DIF Example | ||
| + | </pre> | ||
| + | { | ||
| + | "id": "drivers_license_information", | ||
| + | "name": "Verify Valid License", | ||
| + | "purpose": "We need to know you have a license valid through December.", | ||
| + | "metadata": { | ||
| + | "client_id": "4fb540be-3a7f-0b47-bb37-3821bd766ed4", | ||
| + | "redirect_uri": "https://yourwatchful.gov/verify" | ||
| + | }, | ||
| + | "schema": [ | ||
| + | { | ||
| + | "uri": "https://yourwatchful.gov/drivers-license-schema.json", | ||
| + | "required": true | ||
| + | } | ||
| + | ], | ||
| + | "constraints": { | ||
| + | "fields": [ | ||
| + | { | ||
| + | "path": ["$.expirationDate"], | ||
| + | "filter": { | ||
| + | "type": "string", | ||
| + | "format": "date-time", | ||
| + | "min": "2020-12-31T23:59:59.000Z" | ||
| + | } | ||
| + | } | ||
| + | ] | ||
| + | } | ||
| + | } | ||
| + | </pre> | ||
==Response== | ==Response== | ||
Revision as of 13:07, 15 January 2021
Contents
Full Title or Meme
Mobile Driver's License Presentation maps ISO 18013-5 wallet presentation to DIF Presentation Exchange.
Context
- The DIF Presentation Exchange is looking for test cases. This is such a test case (ie a use case with teeth).
- This use case looks at the wallet as the source of Presentation Statements, which is not necessarily the full scope of the DIF WG.
Actors
- Holder = The entity that submits proofs to a Verifier to satisfy the requirements described in a Presentation Definition (may or may not be the subject)
- mDL holder = individual to whom an mDL is issued = legitimate holder of the driving privileges reflected on an mDL = subject of the mDL
- Device = smartphone or similar with a trusted wallet (in the ISO docs this is conflated with the doc that resides on the device (aka mdoc)
- Verifier = The entity that defines what proofs they require from a Holder (via a Presentation Definition) in order to proceed with an interaction.
- mDL verifier = entity using an mDL reader to verify an mDL
- Issuing Authority = trusted signer of data elements
- Trust Authority = TBD source of certs
Transaction
- The holder and verifier establish a session
- The verifier asks for mDL data
- mDL send data by value or by reference
- The verifier may or may not request other data
- Transport can be by various NFC or QR code.
- Format is CBOR - represented here as json.
Security
| data | mDL | DIF | Comments |
|---|---|---|---|
| Encryption | Encrypting with authentication of the mdoc requests and mdoc responses protects mdoc data from eavesdropping and alteration. | 1 byte (CBOR data item header) | etc... |
| session keys | standard ephemeral key ECDH to establish session keys | Additional information | etc... |
| Reader <-> Trust authority | 3 Bits | etc.. | ||
| Reader <-> Holder|n/a|assurances as to the provenance, identity, or status of a Presentation Definition from digital signatures may be required|etc.. |
Request
| data | mDL | DIF | Comments | |
|---|---|---|---|---|
| Device request | The point of this piece is the assurance that the device is trustworthy | Presentation Request | etc... | |
| version|tstr | Additional information | Payload length (optional) | Data payload (optional) | etc... |
| Security | 3 Bits | 5 Bits | etc.. |
DIF Example </pre> {
"id": "drivers_license_information",
"name": "Verify Valid License",
"purpose": "We need to know you have a license valid through December.",
"metadata": {
"client_id": "4fb540be-3a7f-0b47-bb37-3821bd766ed4",
"redirect_uri": "https://yourwatchful.gov/verify"
},
"schema": [
{
"uri": "https://yourwatchful.gov/drivers-license-schema.json",
"required": true
}
],
"constraints": {
"fields": [
{
"path": ["$.expirationDate"],
"filter": {
"type": "string",
"format": "date-time",
"min": "2020-12-31T23:59:59.000Z"
}
}
]
}
} </pre>
Response
Reference
- GitHub issues of the Presentation Exchange.