Aries Framework Go
The aries package provides access to clients being managed by the Framework.
- Provides KMS (Key Management System).
- Provides protocol provider factory interface.
- Provides injectable storage. (LevelDB is provided in 0.1.0.)
- Provides DID Resolver. (HTTPS binding is provided in 0.1.0.)
- Provides inbound/outbound dispatcher service. (HTTP transport is provided in 0.1.0.)
Note: these interfaces are preliminary and we plan to update as the pluggable API interfaces become more clear across the community.
The Go framework currently supplies Go native default implementations for all pluggable interfaces, and hence, has no dependency requirements in 0.1.0.
Demonstrations
- BDD tests show the flow of DID Exchange and DID resolution (against Sidetree).
- Run
make bdd-test
in the cloned repository after installing dependencies (see README).
- Run
- OpenAPI (swagger) can be used to perform DID Exchange between agents.
- Run
make run-openapi-demo
in the cloned repository after installing dependencies (see README).
- Run
Aries Protocol RFC Services
- Manages messages and protocol state.
- Send events to controller logic.
- did:peer and resolvable "public" DIDs are supported.
- Not yet implemented: Problem report, Implicit invitation.
Note: RFC 0028: Introduce 1.0 code is incomplete (targeted for 0.1.1).
Controller Bindings
- DID Exchange Protocol 1.0
Data and Document Formats
- RFC 0019 AuthCrypt DIDComm envelope
- Draft JWE DIDComm envelope
- DID document parser.
Note: The verifiable credential code is incomplete but is being actively tested against the W3C test suite as it is developed. (JWT subset targeted for 0.1.1).