In the cryptocurrency universe, Proof of Stake (PoS) is an alternative to the Proof of Work (PoW) consensus mechanism.
While PoW guarantees that each network participant has performed a certain amount of work in order to receive a reward, Proof of Stake requires participants to prove that they are willing to guarantee the integrity of the blockchain by risking (or locking) a certain amount of cryptocurrency as proof of their good intentions.
Participants thus "stake" a certain amount of value (coins) in order to get the chance to verify a block of transactions.
The staking process usually works using a delegation mechanism.
PoS coin holders use wallet software which has the capacity to submit a special kind of contract onto the network - a delegation contract.
A user who signs a delegation contract in favor of some other user is giving that target user the right to vote on his behalf.
The more coins are delegated to a user, the higher his chances of solving blocks. When blocks are solved the reward is then split among all stakeholders proportionally to the amount they staked.
Note that coins are not sent anywhere, only a delegation contract is.
If the user decides to sell or move his coins, he is free to. The delegate thus does not control the coins at all.
Since a transfer TX is never sent, the coins are always safely stored at the user's source address. There is very little risk in staking coins, which makes PoS a very attractive system for investors.
Most Proof of Stake implementations use a lottery-like system to choose the next block leader who'll have a chance to solve a block.
The way lottery "tickets" work is implementation-specific, but it usually involves a probability distribution which gives bigger stakes a bigger chance of solving a block to earn its reward.
Supposed there exist 1 million coins of a given cryptocurrency. Someone who holds 10 thousand coins would theoretically have 1% chance of solving a block if the system used a uniform probability distribution.
Currently, systems use more complex probability distributions for various reasons. Decred, for example, uses the Poisson distribution.
Some systems, like Cardano ADA for example, include a decentralization protection mechanism in order to avoid letting one party dominate the staking process. Cardano uses the concept of "pool saturation" to limit the probability of one pool even if it receives a significant share of coins in the system. Adding more coins to a single staking pool will not increase its probability beyond a saturation point. Stakeholders therefore have an incentive to delegate their coins to smaller pools, promoting decentralization.
The chosen block leader will receive a block reward if they correctly solve the block
In practice, PoS works a lot like a trust fund where money is committed during a certain period, in exchange for a return in the form of interest rates.
PoS is seen as an alternative to PoW because it uses less energy to mint coins and it feels a lot more familiar to traditional investmestors who usually buy bonds and treasuries.
Cryptos using PoS include Decred DCR, Tezos XTZ, Cardano ADA, Dash, NEO, PIVX, OkCash, NAV Coin, Stratis and others.
PoS systems are susceptible to so called sybil attacks.
In this kind of attack, a user will attempt to generate many identities in order to increase his odds of being chosen a block leader.
Since the various PoS implementations differ in how they choose leaders, sybil attacks are specific to a given cryptocurrency.
The Cardano ADA test network (launched November 2019), for instance, did not implement one of its sybil protection mechanisms in its first version - the so called "pledge" amount.
Adversarial staking pools then registered several smaller pools to attempt to to subvert the saturation mechanism (described above). Instead of having just one larger pool, the operators had many small pools, thus multiplying their saturation limit several times over. The pledge amount was a deposit amount which raised the odds of a pool being chosen to solve a given block. The pledge mechanism then raised the price of a sybil attack. This mechanism will be implemented in the final version of Cardano before it goes live.
The most traditional protection against sybil attacks is to charge a large fee for staking pool registration.
Those who wish to register a staking operation must then either lock or pay a large amount.
This limits the amount of nodes or pools that any given participant can register on the network.
Tezos XTZ, for instance, requires "bakers" (the name given to Tezos' "staking pools") to hold at least 8000 XTZ coins in order to run a baking operation. At current prices, this amounts to approximately U$ 24,000. If anyone were to try and perpetrate a sybil attack against Tezos, they'd have to lock up at least U$ 24,000 per baking node, making it very expensive to create the thousands of nodes necessary to execute an attack.