Askar is a secure (encrypted at rest) storage and a key management service suitable for use with Hyperledger Aries agents and other digital trust agents. Askar is a replacement implementation (with lessons learned!) of the indy-wallet part of the Hyperledger Indy SDK. Askar has been demonstrated to be more performant and stable than the Indy SDK when under comparable load.
Askar has a pluggable storage interface that currently supports SQLite and
PostgreSQL databases. For details about the storage scheme used in Askar, please
see this storage overview in the docs
folder.
Askar is implemented in Rust, with a C-compatible foreign function interface. This repository contains an additional Askar wrapper for Python. Wrappers for Javascript and React Native are located in the askar-wrapper-javascript repository. These wrappers are used by the ACA-Py and Credo frameworks respectively. Other wrappers are welcome.
The name Askar (from the Arabic askar, meaning "guard" or "soldier") is used because of the "guard" reference, and because it is an alternate name for the star Hamal in the constellation of Aries, the 50th brightest star in our sky.
As noted above, Askar is a re-implementation (with lessons learned!) of the indy-wallet part of the Hyperledger Indy SDK. As such, a number of the concept documents written about indy-wallet apply similarly to Askar. These are linked here:
To Do: These documents should be copied to this repository and updated specifically for the Askar implementation.
If you have an implementation of Aries that is currently based on the Hyperledger Indy SDK, there are migration tools built into Askar. The use of these tools is demonstrated in the ACA-Py migration tool that can be found in the acapy-tools repository.
The initial implementation of askar
was developed by the Digital Trust
team within the Province of British Columbia, and inspired by the wallet design
within Hyperledger Indy SDK. To learn more about BC's Digital Trust Team, and
what's happening with decentralized identity in British Columbia, please go to
Digital Trust website.
Pull requests are welcome! Please read our contributions guide and submit your PRs. We enforce developer certificate of origin (DCO) commit signing. See guidance here.
We also welcome issues submitted about problems you encounter in using askar
.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.