An Overview of Bonding


#1

Some people in the chat room have seen the terms “bonding” and “delegation” used around Livepeer discussion, and asked for clarification on what that means and how the process works. Hopefully this clarifies it. Feel free to ask any additional questions…

Bonding

Think of bonding as committing to the network long term. When you bond, your tokens are locked in for at least as long as the UnbondingPeriod, which will likely be a couple months. It’s like putting down a security deposit.

Your responsibility as a bonder is to either vote for yourself as a transcoder or to delegate your vote towards another transcoder who you think will help the network.

In exchange, you earn newly minted token and fees from the network, growing your total ownership in the network. People who do not bond will have easy access to their tokens and liquidity, but their ownership in the network will decrease as new tokens are released that they won’t receive. While people who bond will give up immediate liquidity in exchange for growing their ownership in the network, and helping to make the network high quality and secure.

Stake

Bonded tokens are “at stake” or at risk. Often times bonded tokens are called stake. If you cheat as a transcoder, or you elect transcoders who try to cheat, then you can lose some or all of your stake. Cheating in this case consists of not behaving according to the rules of the protocol, and maliciously trying to steal token out of the system in ways that can be cryptographically proven. If you delegate your stake towards a transcoder who acts in the best interest of the network and plays by the rules, you should not lose any stake.

Unbonding

If you have bonded your token, and you would like to withdraw, then you can do so. From the time you Unbond(), you have to wait the UnbondingPeriod length of time before you can access your token, which may be set at weeks or months.

Q&A

How much token will I earn from bonding?
That depends on how much total bonded stake there is, and what the inflation rate is set at. If the network is going to issue 10% more token this year, and 50% of all the token on the network is bonded, and you bond all year, then you will earn 20% more token. At the beginning of the year 50% of the network was bonded and 50% of the network was bonded. The additional 10% of tokens all went to the portion that was bonded. So at the end of the year the bonded holders now hold 54.5% of the network token. Their network ownership increased in exchange for making the network useful, secure, and high quality.

Why would I delegate my bond towards another transcoder?
You likely don’t want to be a transcoder on the Livepeer network yourself unless you’re running reliable always on hardware, have a lot of bandwidth, and can do the DevOps work to keep the Livepeer processes running around the clock. Instead you should delegate towards other users who have proven that they can do this and create a high quality network. In exchange for doing so, you’ll receive newly minted tokens from the network’s inflation, and you’ll receive a share of the fees the transcoder earns.

Is it ok not to bond?
Yes of course. If you are planning to spend your Livepeer Token to broadcast video in the short term, then you shouldn’t bond. You don’t need to…you’re planning to use the token quickly anyway. If you’re holding token for a long time though without spending it, then your ownership % of the network will decrease if you do not bond however.

Can I bond more stake later?
Yes, you can always add more bond. In addition, the newly minted tokens from inflation will be added to your bonded balance so it will grow over time. The fees that transcoders who you delegate towards pay out to you will be added to your unbonded token balance in the current design?


#2

I should also point out, these concepts are not unique to Livepeer, and they apply to many Proof-of-Stake (PoS) protocols like Tendermint, Casper, and Bitshare/Steem DPOS. Using bonded stake to delegate towards transcoders in Livepeer is analogous to electing Validators in Tendermint, or Witnesses in Steem.