Stellar Consensus Protocol
One of Stellar’s innovations in the cryptocurrency space is a novel consensus protocol, Stellar Consensus Protocol (SCP), modeled as a federated Byzantine agreement. Standard Byzantine agreement solutions are centralized; however, SCP proposes a way to enable distributed agreement.
Distributed consensus itself is not an innovation, but most cryptocurrency protocols rely on all nodes trusting other nodes that solve hash puzzles (proof of work) or that have used the currency in the past (proof of stake). In SCP, each node selects a set of nodes that it trusts and defines conditions under which it agrees with statements the nodes make.
The node doesn’t need to listen to the entire network; rather, it defines a ‘quorum slice’ – a subset of nodes within the network that it trusts. When enough nodes in this quorum slice agree on a statement, the node itself will agree. Each node is free to define its own quorum slice. In aggregate, this system creates an interlocking set of agreement dependencies that allow the network to reach consensus very quickly.
This is an oversimplification, and the protocol has many features to make it resilient to attack and error. However, one feature is worth mentioning. Nodes can gain greater influence over the network the more quorum slices they are in, but no node is entitled to participation in any quorum slice. This allows nodes to build reputation regardless of how many resources they have, unlike proof of work (processing power) or proof of stake (amount of stake).
Stellar does not have a mining protocol. Founders believe that the promise of Stellar will entice users to serve as nodes even without potential mining rewards. Instead, Stellar intends to distribute all 100 billion lumens over the course of a couple years. 50% are dedicated to a direct signup program via facebook. 25% are set aside for grants to nonprofit organizations, to be distributed within 10 years. 19% are set aside for holders of bitcoin. 1% are set aside for Ripple holders. Ripple holders can also choose to donate up to 1.5 million XRP to charities and receive an equal amount of lumens in return. Finally, 5% are set up for operational costs.
Community based emission distribution
The lumens supply grows at 1% a year. New lumens are generated on a weekly basis and distributed through a combination of voting and proof-of-stake: holders of lumens nominate other addresses to receive new coins, with votes weighted according to how many lumens the nominee has, and the network will allocate to all accounts with at least .05% of the weighted vote. This is supposed to encourage users to vote to distribute new lumens to worthy projects and charitable causes using the network.
History and Launch
on July 17, 2014, Stellar officially launched and gave away over 1.5 billion STRs. The distribution method was criticized for a lack of security, as users only needed a facebook account. An Observer Article wrote, “The Stellar-Facebook giveaway was tailor-made for spammers, hackers, and using services like Amazon’s Mechanical Turk, which allows requesters, for pennies, to get people around the world to set up phony accounts, manipulate web traffic and spam social media metrics”. Right after the STR giveaway started, Everett Forth detailed on Medium, as well as on Stellar’s own message boards, how he accumulated 2 million STRs in less than 24 hours. Another user, “msafkakamsm” received over 5,000 payments of 75.9 STRs each in less than six hours and even posted a YouTube video (set to music) showing how he did it. The user posting the video, according to others on the message board, was selling his method to other users.”
In December 2014, Stellar experienced a fork, caused by two nodes not agreeing on a common ledger. Developers spent several hours correcting the fork and realigning the ledger. In a blog post, Stellar claimed the vulnerability came from underlying Ripple code, but Ripple countered that its network was not vulnerable to that error. This was prior to the implementation of the new Stellar Consensus Protocol.
Consensus: Stellar Consensus Protocol
Hash Algorithm: SHA-256
Block creation time: 2-5 seconds
Launch condition: Full pre-mine
Total Supply: 100 Billion
Inflation Rate: 1% per year