Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connectionless proof demo #1395

Merged
merged 11 commits into from
Sep 8, 2021
13 changes: 13 additions & 0 deletions demo/AliceGetsAPhone.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ This demo also introduces revocation of credentials.
- [Present the Proof](#present-the-proof)
- [Review the Proof](#review-the-proof)
- [Revoke the Credential and Send Another Proof Request](#revoke-the-credential-and-send-another-proof-request)
- [Send a Connectionless Proof Request](#send-a-connectionless-proof-request)
- [Conclusion](#conclusion)

## Getting Started
Expand Down Expand Up @@ -301,6 +302,18 @@ Once that is done, try sending another proof request and see what happens! Exper
<img src="./collateral/revocation-3-console.png" alt="Revocation">
</details>

## Send a Connectionless Proof Request

A connectionless proof request works the same way as a regular proof request, however it does not require a connection to be established between the Verifier and Holder/Prover.

This is supported in the Faber demo, however note that it will only work when running Faber on the Docker playground service [Play with Docker](https://labs.play-with-docker.com/) (or on [Play with VON](http://play-with-von.vonx.io)). (This is because both the Faber agent *and* controller both need to be exposed to the mobile agent.)

If you have gone through the above steps, you can delete the Faber connection in your mobile agent (however *do not* delete the credential that Faber issued to you).

Then in the faber demo, select option `2a` - Faber will display a QR code which you can scan with your mobile agent. You will see the same proof request displayed in your mobile agent, which you can respond to.

Behind the scenes, the Faber controller delivers the proof request information (linked from the url encoded in the QR code) directly to your mobile agent, without establishing and agent-to-agent connection first. If you are interested in the underlying mechanics, you can review the `faber.py` code in the repository.

## Conclusion

That’s the Faber-Mobile Alice demo. Feel free to play with the Swagger API and experiment further and figure out what an instance of a controller has to do to make things work.
Expand Down
10 changes: 5 additions & 5 deletions demo/AriesOpenAPIDemo.md
Original file line number Diff line number Diff line change
Expand Up @@ -502,8 +502,8 @@ Finally, we need put into the JSON the data values for the `credential_preview`
"value": "Maths"
},
{
"name": "age",
"value": "24"
"name": "birthdate_dateint",
"value": "19640101"
}
```

Expand Down Expand Up @@ -640,9 +640,9 @@ From the Faber browser tab, get ready to execute the **`POST /present-proof/send
},
"requested_predicates": {
"0_age_GE_uuid": {
"name": "age",
"p_type": ">=",
"p_value": 18,
"name": "birthdate_dateint",
"p_type": "<=",
"p_value": 20030101,
"restrictions": [
{
"cred_def_id": "SsX9siFWXJyCAmXnHY514N:3:CL:8:faber.agent.degree_schema"
Expand Down
2 changes: 2 additions & 0 deletions demo/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,8 @@ When ready to test the credentials exchange protocols, go to the Faber prompt, e

You don't need to do anything with Alice's agent - her agent is implemented to automatically receive credentials and respond to proof requests.

Note there is an option "2a" to initiate a connectionless proof - you can execute this option but it woll only work end-to-end when [connecting to Faber from a mobile agent](AliceGetsAPhone.md).

## Additional Options in the Alice/Faber demo

You can enable support for various aca-py features by providing additional command-line arguements when starting up `alice` or `faber`.
Expand Down
Loading