/aries-framework-go

Hyperledger Aries Framework Go provides packages for building Agent / DIDComm services.

Primary LanguageGoApache License 2.0Apache-2.0

Release License Godocs

Build Status codecov Go Report Card

Hyperledger AriesFramework Go

Hyperledger Aries Framework Go enables trusted communication and data exchange based on interoperable distributed ledger technologies (DLTs) and peer-to-peer (P2P) interactions. We provide a flexible toolkit to enable the usage of decentralized identifiers (DIDs), DID-to-DID communications, verifiable credential exchange, transaction authorizations, and data communication protocols. From these building blocks, implementors can build agents, mediators and other DIDComm features in a manner that is agnostic to a particular DID network or governance framework.

We aim to provide Go implementations of:

We aim to enable usage of our protocol implementations in a wide variety of edge and cloud environments including servers, browsers, mobile, and devices. API bindings are supplied to enable these environments including:

  • Go
  • REST
  • JavaScript / WebAssembly
  • Android
  • iOS
  • C (future)

We implement demonstrations and test cases, that require a ledger system, using DIF Sidetree protocol as this protocol enables generic decentralized ledger systems to operate as a DID network.

Documentation

Aries Framework Go documentation can be viewed at GoDoc. The project structure is described here.

The project structure for the mobile bindings can be found here.

The packages intended for end developer usage are within the pkg/client folder along with the main agent package (pkg/framework/aries).

The project can also be used as a DIDComm Router/Mediator.

Information about Verifiable Credential Wallet framework based on Universal Wallet can be found here.

Key concepts about the Hyperledger Aries Project can be found here.

Details of the standards followed and specifications implemented by Hyperledger Aries Project can be found here.

Controller Bindings

Testing

Contributing

Found a bug? Ready to submit a PR? Want to submit a proposal for your grand idea? Follow our guidelines for more information to get you started!

License

Hyperledger Aries Framework Go is licensed under the Apache License Version 2.0 (Apache-2.0).

Hyperledger Aries Framework Go documentation is licensed under the Creative Commons Attribution 4.0 International License (CC-BY-4.0).