#key-store #private-key #tool #unified #interface #multi-chain #local

bin+lib oz-keystore

A multi-chain keystore library that provides a unified interface for managing private keys

1 unstable release

new 0.1.0 Jan 20, 2025

#632 in Development tools

Custom license

29KB
260 lines

Keystore

A multi-chain keystore library that provides a unified interface for managing private keys.

Warning: this is an experimental project under development.

Features

  • Multiple Key Sources

    • Local keystore management (JSON keystore files)
    • HashiCorp Vault integration (both local on-prem vaults and cloud)
  • Chain Support

    • Ethereum (EVM) compatible chains
    • Stellar/Soroban
  • Key Operations

    • Generate new keys
    • Load existing keys
    • Secure key storage and retrieval

Examples

Check the examples/ directory for complete usage examples:

  • keystore-to-alloy-wallet: Convert keystore to EVM wallet
  • local-keystore-to-stellar-wallet: Convert keystore to Stellar wallet

Getting started with Hashicorp

  1. Create a Hashicorp account
  2. Create new organization
  3. Go to secrets app and create a new app.
  4. Create new static secret, the value must be a valid ed25519 secret key, you can generate a random key using https://cyphr.me/ed25519_tool/ed.html

Setup

Create .env file with following entries

HASHICORP_CLIENT_ID=L5...Xa
HASHICORP_CLIENT_SECRET=Q9...2P
HASHICORP_ORG_ID=1b345678-b123-a123-c123-1b345678 # in org settings
HASHICORP_PROJECT_ID=1b345678-b123-a123-c123-1b345678 # in project settings
HASHICORP_APP_NAME=your_app_name

Dependencies

~9–21MB
~266K SLoC