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.
1
bool graphene::wallet::wallet_api::is_new()const
Copied!
Return
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()
1
bool graphene::wallet::wallet_api::is_locked()const
Copied!
Return
True if the wallet is locked

lock

Locks the wallet immediately.
1
void graphene::wallet::wallet_api::lock()
Copied!

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.
1
void graphene::wallet::wallet_api::unlock(
2
string password)
Copied!
Parameters

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.
1
void graphene::wallet::wallet_api::set_password(
2
string password)
Copied!
Parameters
  • 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()
1
map<public_key_type, string> graphene::wallet::wallet_api::dump_private_keys()
Copied!
Return
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()
1
bool graphene::wallet::wallet_api::import_key(
2
string account_name_or_id,
3
string wif_key)
Copied!
Parameters
Return
  • account_name_or_id: the account owning the key
  • wif_key: the private key in WIF format
true if the key was imported

import_accounts

Imports accounts from a BitShares 0.x wallet file. Current wallet file must be unlocked to perform the import.
1
map<string, bool> graphene::wallet::wallet_api::import_accounts(
2
string filename,
3
string password)
Copied!
Parameters
Return
  • filename: the BitShares 0.x wallet file to import
  • password: the password to encrypt the BitShares 0.x wallet file
A map containing the accounts found and whether imported.

import_account_keys

Imports from a BitShares 0.x wallet file, find keys that were bound to a given account name on the BitShares 0.x chain, rebind them to an account name on the 2.0 chain. Current wallet file must be unlocked to perform the import.
1
bool graphene::wallet::wallet_api::import_account_keys(
2
string filename,
3
string password,
4
string src_account_name,
5
string dest_account_name)
Copied!
First Tab
Return
  • filename: the BitShares 0.x wallet file to import
  • password: the password to encrypt the BitShares 0.x wallet file
  • src_account_name: name of the account on BitShares 0.x chain
  • dest_account_name: name of the account on BitShares 2.0 chain, can be same or different to src_account_name
Whether the import has succeeded

import_balance

This call will construct transaction(s) that will claim all balances controlled by wif_keys and deposit them into the given account.
1
vector<signed_transaction> graphene::wallet::wallet_api::import_balance(
2
string account_name_or_id,
3
const vector<string> &wif_keys,
4
bool broadcast)
Copied!
Parameters
  • 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).
1
brain_key_info graphene::wallet::wallet_api::suggest_brain_key()const
Copied!
Return
A suggested brain_key

get_transaction_id

This method is used to convert a JSON transaction to its transacting ID.
1
transaction_id_type graphene::wallet::wallet_api::get_transaction_id(
2
const signed_transaction &trx)const
Copied!
Parameters
Return
  • trx: a JSON transaction
The ID (hash) of the transaction.

get_private_key

Get the WIF private key corresponding to a public key. The private key must already be in the wallet.
1
string graphene::wallet::wallet_api::get_private_key(
2
public_key_type pubkey)const
Copied!
Parameters
Return
  • pubkey: a public key in Base58 format
The WIF private key

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()
1
bool graphene::wallet::wallet_api::load_wallet_file(
2
string wallet_filename = "")
Copied!
Parameters
Return
  • wallet_filename: the filename of the wallet JSON file to load. If wallet_filename is empty, it reloads the existing wallet file.
True if the specified wallet is loaded.

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.
1
string graphene::wallet::wallet_api::normalize_brain_key(
2
string s)const
Copied!
Parameters
Return
  • s: the brain key as supplied by the user
The brain key in its normalized form.

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.
1
void graphene::wallet::wallet_api::save_wallet_file(
2
string wallet_filename = "")
Copied!
Parameters
  • wallet_filename: the filename of the new wallet JSON file to create or overwrite. If wallet_filename is empty, save to the current filename.