Definitions
The definitions on this page explain the main terminology used in describing Ripple.
Party:
- Entity that deals with Ripple credit:
- Something or someone using Ripple to send, receive, and route payments.
Parties can be individuals, groups of individuals such as a circle of friends, agricultural or other co-ops, businesses, governments, banks, etc.
User:
- Ripple account-holder:
- The direct owner of a Ripple account.
Users authenticate themselves to a Ripple client via username/password, or some other authentication scheme. A user can be a party itself, or a representative of the party, or a software application that can authenticate itself. A user engages with a Ripple account directly, while a party engages with Ripple credit. A party might have many users, while a user might have many parties. The Ripple server doesn't work in terms of users or parties, only nodes.
Node:
- Ripple credit transaction point:
- A node is Ripple's internal representation of a user's account.
A node has credit relationships (lines of credit) with other nodes. A node can be a payment endpoint, either a payer or a recipient. A node can be a payment intermediary, receiving value from one node and passing it along to another in a credit exchange as part of a payment chain.
Credit relationship:
- Agreement between two nodes:
A credit relationship exists between two nodes, say node A and node B. It describes a line of credit that node A has with node B, or the reciprocal line of credit that node B has with node A. It has a specific unit of value, such as the US Dollar, Euro, ounce of gold, or gigajoule. A credit relationship consists of accounts for both nodes, each containing the following data:
- Balance: the amount of debt owed by one node to the other.
- Maximum balance: a limit on debt that can be owed by the other node.
- Minimum balance: a limit on debt that can be owed to the other node.
Two nodes connected by a credit relationship are called neighbors. Two nodes may have more than one credit relationship connecting them to each other, for instance to allow for credit relationships in more than one currency. The term is introduced and explained in this video from min.0:18 to min.1:30.
Credit Network:
- Also referred to as Trust Network or Ripple Network:
- Nodes and Credit relationships form a Credit Network. The term Credit Network is not limited to description of Ripple project. An equivalent definition is given in the article "A Little Trust Goes a Long Way" Pranav etc..:
A credit network G = (V, E) is a directed graph with n nodes and m edges. Nodes represent entities or agents. Edges represent pairwise credit limits between agents.
Credit exchange:
- Transaction between two nodes:
- A credit exchange is a payment flow through credit relationships.
It can be a link in a longer payment chain. Suppose a payer A wants to pay a recipient E, where the two parties are connected by nodes B, C, and D. Credit exchanges would Ripple through these credit relationships. When routing in the same currency, node B can charge a transaction fee, or can be altruistic and choose not to charge a fee. When routing between two different currencies, node B can charge an exchange rate between the currencies. In either case, node-specific exchange rates are used for the above conversion functions. So node B has an exchange rate table stored for routing payments between all of its neighbors.
Ripple client: Software to manage Ripple credit data.
- Software that manages accounts that involve lines of credit between parties, and uses the Ripple server to route payments.
- Software that authenticates itself to a Ripple server via username/password, digital certificate, SSH public key, or similar.
A bank could "Ripple-enable" its online banking web interface to permit account-holders to send Ripple payments as an alternative payment mechanism, alongside the standard online checking functionality. The bank's software is a Ripple client, and has some means of authenticating itself to its Ripple server(s). The bank with "Ripple parallel to online checking" scenario described above is only one possibility among many. Online accounting software for direct payments, Inter-LETS payments, online currency conversions, and other scenarios also work. Potential Ripple clients.
Ripple server:
- Software to operate on Ripple credit data.
- Software that transacts Ripple credit data.
- Software that authenticates Ripple clients, allowing them to manage credit data.
The Ripple protocol allows for a number of servers to operate independently of each other, and communicate with each other when clients with different servers need to interact.