This website is no longer actively supported. Please see the Ripple Developer Center for up-to-date documentation and other resources.

Accounts

From Ripple Wiki
Jump to: navigation, search

Overview

A ripple Account is an entry in the Ledger. People typically have one account that stores their Ripple credits, IOUs and the trust paths granted to and from other accounts. Each account has an address and a private key. Anyone that knows an account's private key can authorize transactions from that account.

A ripple account:

  • has an address similar to rpvfJ4mR6QQAeogpXEKnuyGBx8mYCSnYZi.
    • Encodings
    • Addresses have built in checksums. It is extremely unlikely for a typo to be considered a valid address.
  • holds a balance of XRP
  • may hold IOUs issued by other accounts
  • may extend trust to other accounts
  • may place offers currency exchange

Account balances, trust limits, and payments are public information. No one will know who each account is associated with except to the extent that they can uncover such information based on the account's transactions, behavior, correlations with other accounts and entities via databases, etc.

Each ripple account has an address which others can use to:

  • send funds to the account
  • extend trust to the account

Accounts are never deleted.

See also:

Validating Addresses

An address can be validated with the RPC account_info. This function can determine if the address is legal and if it currently exists in the ledger.

In ripple-lib, use UInt160.is_valid(x) to validate an address.

A Ripple address may be verified with Bitcoin address code, if the Bitcoin alphabet/dictionary is replaced the the Ripple one:

Special Accounts

ACCOUNT_ZERO
rrrrrrrrrrrrrrrrrrrrrhoLvTp
ACCOUNT_ONE
rrrrrrrrrrrrrrrrrrrrBZbvji
The root account
rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh

ACCOUNT_ZERO

ACCOUNT_ZERO has the address rrrrrrrrrrrrrrrrrrrrrhoLvTp, also known as ADDRESS_ZERO, and is used as XRP's issuer. Additionally, in paths this account specifies that a path node refers to an order book. In decimal, this account has an address of 0.

ACCOUNT_ONE

ACCOUNT_ONE has the address rrrrrrrrrrrrrrrrrrrrBZbvji, also known as ADDRESS_ONE, and is used as a neutral account, most significantly in Ripple state entries. In decimal, this account has an address of 1.

The root account

Account rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh is the root account. This account starts with all the XRP when the genesis ledger is created. This address is derived from the secret pass phrase "masterpassphrase" and is often used as a generic account in examples.

Deriving the seed and account id for the root account:

# rippled -q wallet_propose masterpassphrase
{
   "result" : {
      "account_id" : "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
      "master_seed" : "snoPBrXtMeMyMHUVTgbuqAfg1SUTb",
      "master_seed_hex" : "DEDCE9CE67B451D852FD4E846FCDE31C",
      "status" : "success"
   }
}

Black Hole Addresses

Addresses for which no one has the private key are effectively black holes: XRP sent to those address are effectively lost forever.

Typically, these addresses will be easily recognizable as being astronomically hard to have been generated with a corresponding private key. For example, these address will often begin with many 'r's.

An alternative way of destroying XRP is to simply spend it as a transaction fee. The AccountSet transaction can be used as a no-op transaction for just destroying XRP.