Wallet Calls

Wallet Calls

is_new

Checks whether the wallet has just been created and has not yet had a password set.

Calling set_password will transition the wallet to the locked state.

bool graphene::wallet::wallet_api::is_new()const

True if the wallet is new.

is_locked

Checks whether the wallet is locked (is unable to use its private keys).

This state can be changed by calling lock() or unlock()

bool graphene::wallet::wallet_api::is_locked()const

True if the wallet is locked

lock

Locks the wallet immediately.

void graphene::wallet::wallet_api::lock()

unlock

Unlocks the wallet.

The wallet remain unlocked until the lock is called or the program exits.

When used in command line, if typed “unlock” without a password followed, the user will be prompted to input a password without echo.

void graphene::wallet::wallet_api::unlock(
    string password)

set_password

Sets a new password on the wallet.

The wallet must be either ‘new’ or ‘unlocked’ to execute this command.

When used in command line, if typed “set_password” without a password followed, the user will be prompted to input a password without echo.

void graphene::wallet::wallet_api::set_password(
    string password)
  • password: a new password

dump_private_keys

Dumps all private keys owned by the wallet.

The keys are printed in WIF format. You can import these keys into another wallet using import_key()

map<public_key_type, string> graphene::wallet::wallet_api::dump_private_keys()

A map containing the private keys, indexed by their public key

import_key

Imports the private key for an existing account.

The private key must match either an owner key or an active key for the named account.

See also dump_private_keys()

bool graphene::wallet::wallet_api::import_key(
    string account_name_or_id, 
    string wif_key)
  • account_name_or_id: the account owning the key

  • wif_key: the private key in WIF format

import_accounts

Imports accounts from a Peerplays 0.x wallet file. Current wallet file must be unlocked to perform the import.

map<string, bool> graphene::wallet::wallet_api::import_accounts(
    string filename, 
    string password)
  • filename: the Peerplays 0.x wallet file to import

  • password: the password to encrypt the Peerplays 0.x wallet file

import_account_keys

Imports from a Peerplays 0.x wallet file, find keys that were bound to a given account name on the Peerplays 0.x chain, rebind them to an account name on the 2.0 chain. Current wallet file must be unlocked to perform the import.

bool graphene::wallet::wallet_api::import_account_keys(
    string filename, 
    string password, 
    string src_account_name, 
    string dest_account_name)
  • filename: the Peerplays 0.x wallet file to import

  • password: the password to encrypt the Peerplays 0.x wallet file

  • src_account_name: name of the account on Peerplays 0.x chain

  • dest_account_name: name of the account on Peerplays 2.0 chain, can be same or different to src_account_name

import_balance

This call will construct transaction(s) that will claim all balances controlled by wif_keys and deposit them into the given account.

vector<signed_transaction> graphene::wallet::wallet_api::import_balance(
    string account_name_or_id, 
    const vector<string> &wif_keys, 
    bool broadcast)
  • account_name_or_id: name or ID of an account that to claim balances to

  • wif_keys: private WIF keys of balance objects to claim balances from

  • broadcast: true to broadcast the transaction on the network

suggest_brain_key

Suggests a safe brain key to use for creating your account. create_account_with_brain_key() requires you to specify a ‘brain key’, a long passphrase that provides enough entropy to generate cryptographic keys.

This function will suggest a suitably random string that should be easy to write down (and, with effort, memorize).

brain_key_info graphene::wallet::wallet_api::suggest_brain_key()const

A suggested brain_key

get_transaction_id

This method is used to convert a JSON transaction to its transacting ID.

transaction_id_type graphene::wallet::wallet_api::get_transaction_id(
    const signed_transaction &trx)const
  • trx: a JSON transaction

get_private_key

Get the WIF private key corresponding to a public key. The private key must already be in the wallet.

string graphene::wallet::wallet_api::get_private_key(
    public_key_type pubkey)const
  • pubkey: a public key in Base58 format

load_wallet_file

Loads a specified Graphene wallet.

The current wallet is closed before the new wallet is loaded.

Important: This does not change the filename that will be used for future wallet writes, so this may cause you to overwrite your original wallet unless you also call set_wallet_filename()

bool graphene::wallet::wallet_api::load_wallet_file(
    string wallet_filename = "")
  • wallet_filename: the filename of the wallet JSON file to load. If wallet_filename is empty, it reloads the existing wallet file.

normalize_brain_key

Transforms a brain key to reduce the chance of errors when re-entering the key from memory.

This takes a user-supplied brain key and normalizes it into the form used for generating private keys. In particular, this upper-cases all ASCII characters and collapses multiple spaces into one.

string graphene::wallet::wallet_api::normalize_brain_key(
    string s)const
  • s: the brain key as supplied by the user

save_wallet_file

Saves the current wallet to the given filename.

Important: This does not change the wallet filename that will be used for future writes, so think of this function as ‘Save a Copy As…’ instead of ‘Save As…’. Use set_wallet_filename() to make the filename persist.

void graphene::wallet::wallet_api::save_wallet_file(
    string wallet_filename = "")
  • wallet_filename: the filename of the new wallet JSON file to create or overwrite. If wallet_filename is empty, save to the current filename.

Last updated

#888: Peerplays DEX User guide update

Change request updated