-
Notifications
You must be signed in to change notification settings - Fork 83
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update readme.md files, update architecture diagram (#719)
* Update readme.md files, update architecture diagram Signed-off-by: Patrik Stas <patrik.stas@absa.africa> * Tweak readmes Signed-off-by: Patrik Stas <patrik.stas@absa.africa> * Update readmes, delete unnecessary docs Signed-off-by: Patrik Stas <patrik.stas@absa.africa> * Address review Signed-off-by: Patrik Stas <patrik.stas@absa.africa> Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
- Loading branch information
1 parent
e82b6e5
commit 8948316
Showing
14 changed files
with
187 additions
and
212 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
## Maintainers | ||
|
||
### Active Maintainers | ||
| name | Github | Discord | | ||
|----------------|------------------------------------------------|----------------| | ||
| Patrik Stas | [@Patrik-Stas](https://github.com/Patrik-Stas) | Patrik Stas#7722 | | ||
| Miroslav Kovar | [@mirgee](https://github.com/mirgee) | mirgee#3763 | | ||
| Artem Minorov | [@left-arm](https://github.com/left-arm) | | | ||
| name | Github | Discord | | ||
|-----------------|------------------------------------------------|------------------| | ||
| Patrik Stas | [@Patrik-Stas](https://github.com/Patrik-Stas) | Patrik Stas#7722 | | ||
| Miroslav Kovar | [@mirgee](https://github.com/mirgee) | mirgee#3763 | | ||
| George Mulhearn | [@gmulhearn](https://github.com/gmulhearn) | gmulhearn#0356 | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# Roadmap 2023 | ||
|
||
### Modularization | ||
This is one of the main themes for 2023. We'll start by publishing smaller sub-crates on crates.io, | ||
such as crates encompassing aries messages, ddo resolver or diddoc. We hope this would attract | ||
more users and contributors who might be interested in smaller parts of the codebase if not the | ||
entire aries-vcx crate. | ||
|
||
### Credx libs support | ||
We are currently at point where [credx](https://github.com/hyperledger/indy-shared-rs/) libs can | ||
be used with holder, prover and verifier, but missing support for issuer on top of credx. | ||
Once that is done, we'll move step further to | ||
[anoncreds-rs](https://github.com/hyperledger/anoncreds-rs) and | ||
[Aries Askar](https://github.com/hyperledger/aries-askar) wallet. | ||
|
||
### Ledger agnosticity | ||
Following up the spin-off Hyperledger Anoncreds as separate project, we expect issuer's anchoring | ||
their DIDs, CredDefs etc. on ledgers other than Indy. We'll be following developments in this | ||
area and start enabling support for non-indy credentials, although this is arguably much | ||
wider community effort. The first action step forward will be implementing DDO resolver | ||
interface and support for an additional method other than did:sov | ||
|
||
### Community engagement | ||
In second half of 2022 we've started to put much more focus on community - increased discord | ||
presence, decreased time to review PRs, started weekly community calls - it didn't take long | ||
till we could observe increase in contributors and discord activity. We would like to | ||
maintaining this culture and activities, but also further become more inviting to new | ||
contributors by improving documentation, lowering barriers starting an aries-vcx | ||
project off the ground. | ||
|
||
### And more | ||
widening aries protocol support (didexchange, newer version of issuance and presentation protocols); | ||
increasing AATH coverage, enhancing code quality, testing speed, coverage; exploring didcomm 2.0; | ||
starting of new projects on top of aries-vcx (pickup protocol compliant mediator, | ||
cli tools) - are also on the list. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
# Aries-vcx | ||
Crate implementing Hyperledger Aries protocols and building blocks for building Aries agents for | ||
both mobile (typically in role of holder, prover) and server use-cases (issuer and verifier). | ||
|
||
# Getting started | ||
Aries-vcx is library, not a framework. We strive to be not too opinionated and simply provide building block for whatever | ||
you want to build. | ||
|
||
Generally, the crate allows you to | ||
- create encrypted wallet, | ||
- read/write from/to Indy ledger, | ||
- establish didcomm connections and exchange messages, | ||
- create and process Aries messages to drive Aries protocols. | ||
|
||
Have look at [aries-vcx-agent](../agents/rust/aries-vcx-agent) for inspiration how aries-vcx can be used. | ||
|
||
# Message mediation | ||
If you are building mobile agent, you will generally require mediator service, which will receive | ||
messages on device's behalf - sort of like a mail server. | ||
|
||
It's possible to opt into integrated message mediator using `MediatedConnection` `impl`, which | ||
speaks the language of [vcxagency-node](https://github.com/AbsaOSS/vcxagencynode) mediator service. | ||
|
||
# Verify on your machine | ||
### Stage 1 - unit tests | ||
- First we need to get unit tests working on your machine. These don't require any external services to run. | ||
``` | ||
cargo test --features "general_test" -- --test-threads=1 | ||
``` | ||
If you run into an errors | ||
- On OSX, try to install following packages with: | ||
```sh | ||
brew install zmq | ||
brew install pkg-config | ||
``` | ||
- On ubuntu, you will likely need following packages: | ||
```sh | ||
sudo apt-get update -y | ||
sudo apt-get install -y libsodium-dev libssl-dev libzmq3-dev | ||
``` | ||
|
||
### Stage 2 - integration tests | ||
Next up you will need integration tests running. These tests must pointed again some Indy ledger. | ||
You'll get best result by running a pool of Indy nodes on your machine. You can start a pool of 4 nodes | ||
in docker container like this | ||
```sh | ||
docker run --name indylocalhost -p 9701-9708:9701-9708 -d pstas/indypool-localhost:1.15.0-localhost | ||
``` | ||
If you are running on arm64, you can specify option `--platform linux/amd64`, as the image above was | ||
originally built for `x86_64` architecture. | ||
|
||
Now you should be ready to run integration tests: | ||
``` | ||
cargo test --features "pool_tests" -- --test-threads=1 | ||
``` | ||
|
||
## Implemented Aries protocols | ||
* ✅ Connection Protocol 1.0: [`https://didcomm.org/connections/1.0/*`](https://github.com/hyperledger/aries-rfcs/tree/master/features/0160-connection-protocol) | ||
* ✅ Out of Band 1.0: [`https://didcomm.org/out-of-band/1.1/*`](https://github.com/hyperledger/aries-rfcs/blob/main/features/0434-outofband) | ||
* ✅ Basic Message 1.0: [`https://didcomm.org/basicmessage/1.0/*`](https://github.com/hyperledger/aries-rfcs/tree/master/features/0095-basic-message) | ||
* ✅ Credential Issuance 1.0 [`https://didcomm.org/issue-credential/1.0/*`](https://github.com/hyperledger/aries-rfcs/blob/master/features/0036-issue-credential) | ||
* ✅ Credential Presentation 1.0: [`https://didcomm.org/present-proof/1.0/*`](https://github.com/hyperledger/aries-rfcs/tree/master/features/0037-present-proof) | ||
* ✅ Trust Ping 1.0: [`https://didcomm.org/trust_ping/1.0/*`](https://github.com/hyperledger/aries-rfcs/blob/master/features/0048-trust-ping/README.md) | ||
* ✅ Discover Features 1.0: [`https://didcomm.org/discover-features/1.0/*`](https://github.com/hyperledger/aries-rfcs/tree/master/features/0031-discover-features) | ||
* ✅ Revocation notification 2.0: [`https://didcomm.org/revocation_notification/2.0/*`](https://github.com/hyperledger/aries-rfcs/tree/master/features/0031-discover-features) | ||
|
||
## Architecture | ||
|
||
<img alt="AriesVCX architecture diagram" src="../docs/architecture/ariesvcx_architecture_040123.png"/> |
Oops, something went wrong.