# aries-vcx **Repository Path**: hyperledger/aries-vcx ## Basic Information - **Project Name**: aries-vcx - **Description**: Implementation of Aries protocols in Rust with wrappers for NodeJS, Java, Android and iOS. - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-07-27 - **Last Updated**: 2025-08-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # VCX ![CI build](https://github.com/openwallet-foundation/vcx/workflows/CI/badge.svg) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![Join the chat at https://discord.com/channels/1022962884864643214/1344319756324311123](https://img.shields.io/badge/Chat%20on-Discord-blue)](https://discord.com/channels/1022962884864643214/1344319756324311123) The repository contains Rust crates to build - [Aries](https://github.com/decentralized-identity/aries-rfcs) based applications (mobile, server, anything, ...), - [DIDComm](https://didcomm.org/) related components. ## Aries implementation - [`aries_vcx`](aries/aries_vcx) - Library implementing DIDComm protocols, with focus on verifiable credential issuance and verification. - [`messages`](aries/messages) - Library for building and parsing Aries (DIDComm v1) messages. - [`aries_vcx_anoncreds`](aries/aries_vcx_anoncreds) - Interfaces for interaction with credentials. - [`aries_vcx_ledger`](aries/aries_vcx_ledger) - Interfaces for interaction with ledgers. - [`aries_vcx_wallet`](aries/aries_vcx_wallet) - Interfaces for interaction with wallets. - [`agents`](aries/agents) - Aries agents built on top of `aries_vcx`. ## DID Core implementation - [`did_doc`](did_core/did_doc) - Building and parsing [DID Documents](https://w3c.github.io/did-core/) - [`did_parser`](did_core/did_parser_nom) - Building and parsing [DIDs](https://w3c.github.io/did-core/) ## DID Method implementations - [`did_peer`](did_core/did_methods/did_peer) - https://identity.foundation/peer-did-method-spec/ - [`did_sov`](did_core/did_methods/did_resolver_sov) - https://sovrin-foundation.github.io/sovrin/spec/did-method-spec-template.html - [`did_cheqd`](did_core/did_methods/did_cheqd) - https://docs.cheqd.io/product/architecture/adr-list/adr-001-cheqd-did-method - [`did_web`](did_core/did_methods/did_resolver_web) - https://w3c-ccg.github.io/did-method-web/ - [`did_key`](did_core/did_methods/did_key) - https://w3c-ccg.github.io/did-method-key/ - [`did_jwk`](did_core/did_methods/did_jwk) - https://github.com/quartzjer/did-jwk/blob/main/spec.md # Contact Do you have a question ❓Are you considering using our components? πŸš€ We'll be excited to hear from you. πŸ‘‹ There's 2 best way to reach us: - Leave us message on `vcx` [discord](https://discord.com/channels/1022962884864643214/1344319756324311123) channel. - Join our Zoom community calls. Biweekly Tuesdays @ 11:00 pm UTC via Zoom, find more details on [wiki](https://lf-openwallet-foundation.atlassian.net/wiki/spaces/VCX1/pages/119767052/VCX+Community+Calls) ## Versioning & releases - Crates are not yet published on crates.io. You can consume crates as github-type Cargo dependency. - All releases have currently major version `0` - We bump minor version on releases containing new features, significant refactors or breaking changes. - We bump patch version if release only contains fixes or smaller refactoring. - See [releases](https://github.com/openwallet-foundation/vcx/releases) page. - MSRV 1.81 - Crates are known to be stable with atleast Rust version 1.81 # Contributions Contributions are very welcome! If you have questions or issues, please let us know on [Discord](https://discord.com/channels/1022962884864643214/1344319756324311123) or at our [bi-weekly community call](https://lf-openwallet-foundation.atlassian.net/wiki/spaces/VCX1/pages/119767052/VCX+Community+Calls). ## Install Install Rust: https://www.rust-lang.org/tools/install We recommend using rustup, as VCX is currently targeting Rust v1.84.1 (this maintains consistency between local and CI environments). Anoncreds and Indy require the use of openssl and zmq. These may be vendored by consuming applications, but for development installation is required. > [!NOTE] > For those familiar with the Indy SDK dependencies (which is no longer in use as it has been replaced by [anoncreds-rs](https://github.com/openwallet-foundation/askar), [indy-vdr](https://github.com/hyperledger/indy-vdr/tree/main), and [aries-askar](https://github.com/openwallet-foundation/askar)) note that: > - Openssl requirements are no longer restricted to the out of support 1.1 version. > - Libsodium is no longer required (as it's been replaced by [anoncreds-clsignatures](https://github.com/hyperledger/anoncreds-clsignatures-rs)) ### Linux / MacOS: - ZMQ: https://zeromq.org/download/ - Openssl: https://docs.rs/openssl/latest/openssl/#automatic ### Windows If you get a VCX development environment running in Windows, we'd love a contribution documenting that process here! ## Formatting / Linting For contributions, please run `clippy` and format prior to creating a PR. This can be done via `just`: ``` cargo install just just clippy just fmt ``` ## Signed Commits We enforce [developer certificate of origin](https://developercertificate.org/) (DCO) commit signing β€” [guidance](https://github.com/apps/dco) on this is available. See this [guide](https://hackmd.io/@James-Ebert/HyYOcRAXo) for signing previously unsigned commits.