2016-10-11

Big numbers don't mean big money

Last week we discussed problems with using really big numbers in cryptocurrencies. This week I'd like to talk about misconceptions surrounding cryptocurrencies with big coin supply as well as inflation in cryptocurrencies.

Coin supply is a joke


Both this and the previous article were inspired by the OneLife Mastermind event, during which the people on stage were gushing about how many coins their system will have and can mine.

"The new blockchain will mine 50'000 coins per minute. [...] I think we are mining about 2'000'000'000 coins now."

In their previous event, they've stated

"Biggest coin out there is Ripplecoin [sic], with 100 billion coins[sic]", and OneCoin will increase its number of coins to 120 Billion to be bigger than Ripple.  

Focusing on the amount of coins you are mining or the coin supply is a joke. It's like praising Zimbabwe for producing 100T dollar notes, or the post WW1 Germany for having so much money you can build toy houses with them.

Market cap is deceptive


A lot of people rely on the market cap to determine which coin is the most valuable and worthwhile. Just have a look at CoinMarketCap. At the moment we have Bitcoin leading the market cap of about $10B, followed by Ripple at $1.2B.

Right at position number 2, we have an issue calculating the market cap - Ripple's available supply is listed at 35B XRP, although its total supply is shy of 100B XRP. If we calculated the market cap blindly, we should take the total supply and multiply it by the current price (0.0035 USD/XRP), which would net us $3.6B, rather than $1.2B.

The market cap is a poor metric for a coin with a highly-centralised supply. As Peter Todd jokingly put it - just mine a large amount of coins, sell a few of them at a high price and you've got a huge market cap.

It would be really hard to create some metric that can measure how valuable a cryptocurrency network is - market cap can be inflated, volume can be faked or hidden, you can't ever know how much of the coin supply is held by a handful of people with a million addresses, etc.

Inflation is not growth


In the past I've seen some deceptive advertising for a proof of stake coin that claimed it was a savings currency. They justified it by essentially saying - "buy our coin, then you can stake it and earn X% per year with it". While on surface it might appear so - if I start with 100 coins and at the end of the year I get 110 coins, then I'm 10 coins richer, right?

That works only on paper. If the market cap for the cryptocurrency remained unchanged and everyone got their 10% more coins, then you're right where you started - you own the exact same percentage of the economy as you used to. The inflation ate your earnings.

In economics, there is an important distinction between nominal and real interest rates. If I take a loan at 5% (nominal) interest rate, but the inflation is at 3%, then I effectively only pay a 2% (real) interest rate on the loan. Each year the principal of my loan has lower and lower purchasing power even if the number remains steady. The same is true for proof of stake inflationary coins - you're not earning anything with them, unless the pace of your earnings is faster than the overall inflation of the network.

A coin will only net you revenue if its equivalent of "real GDP" increases:


If you're not ahead, you're losing money


In an inflationary currency, if your supply of coins is growing slower than the average coin supply, you are essentially losing money. Earning 5% interest in a currency with 10% inflation means you are losing 5% on your investment in an ideal economy. In a real-life scenario, the markets would most likely be swayed a lot more by the speculation on the coin and whatever hype it can muster.

This point usually has low impact on most coins, but it seems to be exemplified with OneCoin's splits and tokens, assuming we would treat the coin as a real cryptocurrency and not a scam. In OneCoin, you can buy different packages that each come with a different amount of tokens and splits. If you buy the cheapest package for 110 EURO you get 1000 tokens and one split, but if you decide to spend 27'500 EURO, you get 300'000 tokens and three splits. This means that not only do you get about 20% discount on tokens when buying them in bulk, buy you can also split them more times (which I'm guessing would give you more mining tokens or something, I'm not sure). Because of this, if you're buying anything shy of the top-tier package, you're already falling behind. I guess that's why you can find a lot of "strategies" for buying the tokens everywhere...

Same goes for the doubling event, wherein everyone's coins got doubled (since 100% inflation equates to 100% growth or something...). If you missed that event, your purchases are only worth 50% of what they would've been before that event in proportion to the entire market. You can't ever catch up.

If you're late, you're paying the early adopters


Unless we're talking about cryptocurrencies with a flexible supply denominated in fiat, anyone adopting late is essentially paying the early adopters. In some cases, that's pretty justifiable - when Bitcoin was still fresh and nobody knew if it had staying power, you needed a lot of people to devote their time and energy into developing the infrastructure everyone relies on today.

However, if you look at something like OneCoin that relies heavily on hype and even pays you in a pyramid-like structure for referrals, you have to be really weary when buying into it.

This is why a lot of people in the crypto world despise premining and fast maturing coins - a few people hold a lot of coins and they get to reap the bulk of the money from anyone buying into the network. When the jig is up, they can cash out and it's the late adopters that get to hold the bags.

If OneCoin was an honest coin, I can see some people getting rich if and when the coin starts getting publicly traded and people can start dumping their coins. As it is now, it is likely that everyone with the coins will be holding the bags while the people behind the coin will be the one with the money.

Conclusions


Coin supply does not matter, market caps can be deceiving, nominal growth does not matter - only real growth, don't buy into scams.

2016-10-03

Problems with big numbers in crypto - how Bitcoin dodged a bullet

Recently, the infamous OneCoin made news once more in the Bitcoin circles after their OneLife mastermind stream. One of the more interesting things mentioned was the previously announced blockchain reset, coin doubling and increase in coin generation speed. This is supposed to mean that OneCoin is getting more valuable, but once again, that's not how blockchain works - big numbers don't mean big money. But let's start from the beginning.

Bitcoin coin cap


As everyone knows by now, Bitcoin has a coin cap of around 21'000'000 coins. Each coin can be broken down into 100'000'000 satoshis, and that number can be further sub-divided in the future should the need arise. So for practical needs, Bitcoin has a final supply, and a nigh-infinite divisibility, as opposed to fiat currencies that are often nigh-infinite in supply, but finitely divisible.

The hidden genius of Bitcoin is very subtle when it comes to its coin cap and its precision that a lot of coin developers often miss entirely.

Sure, Bitcoin might not have a mathematically beautiful block reward (say, a power of 2 that halves every four years so that we can get a beautifully round number in the end), but it's still easy for programmers to work with. In financial computer science, precision is everything. A balance of $3.50 would not be represented in a database as a floating point number - those are imprecise. It would be an integer number, like 350 cents, or 35'000 hundredth of a cent if you need to get more precise. This makes sure that you can add, subtract and multiply those numbers all day long and you will always be right down to a penny.

Same goes for Bitcoin. Every transaction specifies exactly how many satoshis to transfer and to whom. The number is encoded in a 64 bit unsigned integer, meaning it can precisely express numbers between 0 and 2^64 (18'446'744'073'709'551'615). Even if you take all of the bitcoins that will ever exist and subdivide them into satoshis, you will get a number smaller than 2^51, meaning no matter how many coins you move back and forth, you will never lose precision or overflow the system. Moreover, the numbers can also be represented precisely with double-precision floating points (which has a precision of 2^52 for a fraction).

Other coins and their supply


Other coins have often toyed with different block reward schedules and thus different amount of coins.

Ripple is perhaps the most popular coin with a high coin supply, capping off at 100B XRP even. Their coins subdivide into 6 decimal places rather than 8 - this gives them an upper bound of under 2^57 units (if they instead went for 8 decimal places, they would be under 2^64 and wouldn't fit into signed integers). So they are fine in that regard, but they start to run into a problem when trying to express the units as floating points - they are only precise up to 2^52, or about 15 significant digits.

Same story with Dogecoin - currently sitting at 106B units with 8 decimal place precision, which is enough to start breaking the JSON API developers use. Bytecoin, sitting at 181B coins barely fits into 64 bit integers and FedoraCoin, the coin with the highest listed coin supply on CoinMarketCap breaks that limit with 438B coin supply, needing at least 66 bits to be fully represented.

OneCoin


So where does OneCoin sit in all of this? Lets assume they are like Bitcoin with 8 decimal places (and not just some made-up numbers in a spreadsheet...). They currently boast having 2B coins and mining 2.19B coins per month, giving us less than 2^58 - too big for doubles, but still manageable for ints. In about 85 months of mining, their coin supply will reach 185B and cross over 2^64. That is a long after they plan on "going public with their coin" in Q2 2018, whatever that would mean.

Conclusions


When designing a cryptocurrency, there are many hidden pitfals one has to keep in mind and try to avoid. One might be tempted to create a currency with large numbers to give off an illusion of value where there is none. However, for practical reasons, you want to keep the numbers in your system within a reasonable range so the developers working with your coin won't have to deal with numbers too big to represent.

OneCoin might still be in the clear, at least as clear as Dogecoin is, but one more "blockchain restart" coupled with increased mining speed and they will be soon crossing the computer science boundary, at least assuming the system is legitimate to begin with.

Next up - why big numbers don't mean big money...