Skip to content

Latest commit

 

History

History
54 lines (37 loc) · 3.29 KB

README.md

File metadata and controls

54 lines (37 loc) · 3.29 KB

aries_vcx crate

Provides basic tools to build didcomm/aries enabled application in Rust. This can include native mobile apps, or webservers for VC issuance/verification, didcomm mediator service etc.

What this crate can do for you

  • Create encrypted wallet.
  • Read/write from/to Indy ledger.
  • Establish didcomm connections and exchange messages.
  • Create and process Aries messages to drive Aries protocols (especially for VC issuance and presentation).

What does crate does NOT DO for you

  • Provide message outbounds - aries_vcx helps you to create correct response & encrypt it, but you have to take care of sending it to the right place.
  • Automatic inbound processing - you have to take care of receiving messages and passing them to aries_vcx for processing. You need to keep track of your ongoing aries "conversations" and match incoming messages (typically based on message thread id).

Getting started

To use aries_vcx in your project, you need to add GitHub dependency to your Cargo.toml, and best define a version through a tag:

aries-vcx = { tag = "0.65.0", git = "https://github.com/hyperledger/aries-vcx" }

It's also advisable to follow these instructions to check your environment is properly configured.

Projects built with aries-vcx

  • mediator - Message mediator web service, useful for mobile device to receive messages while the device is offline.
  • unifii_aries_vcx - Mobile wrapper to autogenerate Swift and Kotlin wrappers. Also comes with sample native mobile app.
  • aries-vcx-agent - Sample agent framework adding persistence and message matching on top of aries_vcx. Used for cross-compatibility testing with other aries implementations.

Implemented Aries protocols

State machines guidelines

Please follow these guidelines when implementing new state machines.

Architecture

AriesVCX architecture diagram