Managing your accounts

Last updated: January 2026

If you lose the password used to encrypt an account, you permanently lose access to that account. There is no password recovery mechanism.

This guide explains how to manage Abey accounts using the gabey CLI, including creating, listing, importing, updating, unlocking accounts, and checking balances.


Overview

Account management is handled via the account command:

gabey account <command> [options] [arguments]

Supported account operations include:

  • Creating new accounts

  • Listing existing accounts

  • Importing private keys

  • Updating account formats and passwords

  • Unlocking accounts for transactions

Accounts are stored in the keystore directory, which must be backed up regularly.


Keystore and Security

  • Account keys are stored in:

    <DATADIR>/keystore
  • Keystore files are encrypted

  • Files are portable across:

    • Nodes

    • Operating systems

    • Abey client implementations

Backing up the keystore directory is sufficient to restore accounts only if the password is known.

For data directory details, see:

  • https://github.com/abeyfoundation/go-abey/wiki/Backup-&-restore


Account File Format

Modern keystore files use the format:

  • Accounts are listed lexicographically

  • Due to timestamp-based filenames, this corresponds to creation order

  • Copying keys between nodes may change account ordering

Do not rely on account index ordering in scripts.


Account Commands

Command
Description

list

List existing accounts

new

Create a new account

import

Import a private key

update

Update account password or format

Use gabey account <command> --help for command-specific options.


Creating Accounts

Interactive Account Creation

You will be prompted for a password:


Non-Interactive Account Creation (Advanced)

This is intended for testing only. Never store plaintext passwords insecurely.


Create via Console


Importing a Private Key

  • <keyfile> must contain a raw, unencrypted EC private key (hex)

  • The imported account is stored encrypted

  • You will be prompted for a password

Non-interactive import:

Import is not required when moving encrypted keystore files between nodes.


Updating an Existing Account

Update password or migrate account format:

Examples:

  • Prompts for old and new passwords

  • Old key formats are removed after update


Listing Accounts

Example output:

Using RPC


Unlocking Accounts

Command-Line Unlock (Session Only)

  • Accepts addresses or indexes

  • Multiple accounts allowed

  • Password file must contain one password per line


Console Unlock (Temporary)

Avoid passing passwords directly in console history.


Checking Account Balances

Coinbase Balance


All Account Balances

Run with:


Best Practices

  • Back up the keystore directory regularly

  • Never share passwords or keystore files

  • Avoid plaintext password files

  • Prefer IPC for account operations

  • Test scripts on non-production nodes

Last updated