Users have to indicate they trust the Ripple gateway where their deposit is held. Creating a manual trust line lets the Ripple network know that a user is comfortable with the counterparty risk of the gateway. Users must also put a numerical limit on the trust and a limit must be created for each currency deposited at the gateway. When users allow several gateways using the same currency, an advanced option can allow “rippling,” enabling the user’s balance to ripple (switch) between gateways. Although the user’s total balance does not change, providing inter-gateway liquidity earn users a small transit fee.
Any organization or person that provides the facility for users to deposit money into and withdraw money from Ripple’s fund pool is called a gateway. Gateways accept currency from users and records balances in the distributed ledger. Gateways also convert ledger balances against deposits when withdrawals are made. Although gateways act similar to banks, they share a global ledger – Ripple’s protocol. Based on the degree and type of interactions users have with a gateway, it may have know your customer (KYC) or anti-money laundering (AML) policies that need identification, addresses, nationality, etc. to be verified to thwart criminal activity. Popular gateways include Kraken, Bitstamp, Ripple Fox, Gatehub, Mr. Ripple, Tokyo JPY, The Rock Trading and RippleChina.
Common shared ledger
Ripple uses a shared ledger. This is basically a distributed database containing all the information on Ripple accounts. An independent server network constantly compares transaction records to provide validation. Servers can be owned by anyone, including market makers and banks. Although the Ripple protocol is free, it is continuously developed and promoted by Ripple Labs, while they also confirm financial transactions via distributed servers on the network. Ripple Labs also assists banks to integrate with Ripple’s network. New ledgers are created every few seconds, while the last ledger closed contains a comprehensive record of all Ripple accounts as established by the server network. A transaction can be introduced to the network by any server and is a proposed change to the ledger. The servers try to come to a consensus regarding sets of transactions to write to the ledger, thereby creating the new last closed ledger.
The process to reach consensus is distributed, and its goal is for all servers to write the same transaction to the open ledger. Each server receives transactions from the other servers on the network all the time, and a server decides which transaction has to be applied based on whether a transaction was sent by a specified node contained in the UNL (unique node list). When the majority of peers agree on a transaction, it is considered validated. If consensus is not reached by the supermajority, the process is repeated by the nodes. Every attempt at consensus increases agreement, until a supermajority is eventually reached. This process results in disputed transactions being discarded from a proposal while transactions that are widely accepted are included. While it is possible for users to create their own UNLs and fully control which nodes should be trusted, most people simply use default UNLs supplied by their customer.
Currency values vary significantly depending on the creditworthiness of a gateway. The International Ripple Business Association (IRBA) is a non-profit trade association that provides unified disclosure standards and procedures for gateways. An increasing number of businesses meet or exceed the IRBA standards.
Global payment system
With Ripple, businesses and users can do transactions across currencies in between 3 and 5 seconds. All transactions and accounts are algorithmically verified and cryptographically secure. Only an account holder can authorize payments and no intermediaries or third parties are needed to process payments. Ripple instantly validates balances and accounts for sending payments and provides payment notification within seconds. Payments cannot be reversed, and chargebacks are not possible. XRP can’t be seized or frozen.
Identity verification is required before an account on Ripple can be opened. Route-finding Algorithms are used to search for the fastest, most cost effective route between currencies. This could be a simple route with one hop from for example EUR to USD, or the path could contain it multiple hops, e.g. from EUR to XRP to CAD to USD. Route finding is meant to find the best conversion costs for users.
Gateways for Ripple allow deposits to be made in several crypto and fiat currencies, as well as a few commodities like gold, silver and platinum.
The Stellar Foundation, a rival company, experienced a network crash in 2014. The head of Stanford University’s secure computing group and the company’s chief scientist, David Mazieres, was asked to conduct a review of Stellar’s consensus system. Mazieres found that the Stellar system was not likely to be safe when using more than one node for validations. He argued that if consensus was not reached, parts of the network would disagree over accepted transactions, creating a ledger fork. The Stellar Foundation then officially stated that the consensus process had an innate weaknesses, something Ripple denies vehemently. David Schwartz, Ripple Labs’ chief cryptographer disputes the findings by Mazieres and blames the failure on Stellar implementing the consensus system incorrectly. Schwartz believes fault tolerance and safety is provided by the protocol if the validators are correctly configured. After examining the information provided by Stellar, Ripple Labs concluded that the Ripple network was not under threat.
Payment information on the ledger is not public, although transaction information is. This makes it very difficult to link transaction information to a specific company or user.
This bridge links Ripple to the bitcoin ecosystems and enables payments to be made to bitcoin users from Ripple accounts without having to acquire bitcoin. Merchants accepting bitcoins can also accept any other currency. A Ripple user might for example prefer to use USD rather than bitcoins, while a merchant may prefer bitcoin payments. The Bitcoin Bridge will allow Ripple users to send bitcoins to the merchant without using an exchange or acquiring bitcoins.
The protocol has been built to make things easy for the developer community, and features an API for the payment network. The API is based on the popular REST API standard. One early extension developed by third-party developers was to Magento, an e-commerce platform. This allows Magento to read Ripple’s public ledger to create an invoice. Ripple Wallet payment options have also been developed for the retail industry.
Users on Ripple can easily act as market makers, simply by offering arbitrage services such as providing currency conversions between gateways, rippling and market liquidity. Currency trading desks and hedge funds can also be market makers. Ripple’s website explains that market makers can enable payments between users without a direct trust relationships by connecting to multiple gateways and holding balances in multiple currencies, thus allowing for exchanges across gateways.
The route finding algorithms will create a market that is nearly frictionless providing there are enough market makers. This will enable users to pay one another seamlessly through the network using different currencies, while not having to assume any unwarranted foreign exchange risk.
Ripple can also be used for converting or trading currencies by sending money in a specific currency, while the recipient may accept it in a different currency. A user can for example pay with EUR, while the recipient chooses to receive it in another currency, e.g. USD, or even XRP or bitcoins.