5 stable releases

2.0.0 Jun 4, 2025
1.1.0 May 16, 2025
1.0.2 May 15, 2025
1.0.1 Feb 16, 2025

#1625 in Cryptography

Download history

331 downloads per month

MIT/Apache

67KB
1.5K SLoC

High level client helpers for interacting with the keystore server.

This library wraps the gRPC API exposed by the ais_keystore binary and provides convenience functions for performing common actions. All functions are asynchronous and return errors using the dusa_collection_utils crate types.


Artisan Keystore

This project provides a simple gRPC based keystore service and a Rust library for interacting with it. Keys are stored on disk in encrypted form and can be accessed or rotated via the API.

Features

  • AES-256-GCM encryption for stored keys
  • gRPC service implementing add, retrieve, migrate and generate operations
  • Periodic key status updates and automatic archiving

Building

cargo build --release

Running the Server

The server binary is ais_keystore. Simply run:

cargo run --bin ais_keystore

It will listen on 0.0.0.0:9802 by default and maintain its persistent store at /opt/keystore.

Library Usage

The accompanying library ais_keystore_lib exposes convenience async functions for interacting with the server from other Rust projects.

Dependencies

~22–44MB
~596K SLoC