Showing posts with label IOU. Show all posts
Showing posts with label IOU. Show all posts

Tuesday, October 11, 2016

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.

Tuesday, September 27, 2016

Global Reserve Currency - Special Drawing Rights vs Bitcoin

Global Reserve Currency - Special Drawing Rights vs Bitcoin

Earlier this month, the G20 summit was held in China. One of the more interesting topics discussed, was the addition of Chinese yuan to the SDR - Special Drawing Rights. The topic of SDRs is rather important, but it doesn't seem to be discussed all that widely in the crypto community, so I figured I would cover it today.

Special Drawing Rights


Special Drawing Rights, or SDRs, are supplementary foreign exchange reserve assets defined and maintained by the International Monetary Fund (IMF). They were created in 1969. SDRs are allocated to countries by the IMF, and private parties do not hold or use them. The value of SDRs is based on a weighted basket of currencies (currently, 41% USD, 31% EUR, 11% CNY, 8% JPY and 8% GBP, worth about 1.39USD/SDR).

Special Drawing Rights are posed to replace the dollar as the world reserve currency. They serve well as a unit of account (due to lower volatility), can work well in international law (to have an objective measurement of value across multiple countries), and some countries even started pegging their currency to the SDR (due to increased transparency).

While the IMF and SDRs might not be an entirely ideal solution to creating a new, global currency (with US having a veto power and failing to ratify some reforms for example), it might be a step in the right direction.

Where SDRs fall short


While the Special Drawing Rights are an interesting idea, they fall short in a one key area - they appear to be inaccessible for anyone short of a government. This can limit how useful the currency can be for say, creating international settlement, or using it as a measurement of value for corporations or even individuals.

If SDRs were a publicly available and tradable currency, it would be really interesting to see it used for pricing items, wages, etc. to counter currency wars. If your wage is pegged at 3000USD/month, whether USD goes up or down, you're paid the same amount of dollars. But if your wage was instead set at 3000SDR/month, you would receive the same value each month, no matter if it meant you got 2500USD when the dollar is strong, or 3500USD when it was weak. This could give anyone a protection from the government's meddling.

Crypto SDRs


Creating a currency based on a basket of other currencies is also not an entirely new idea in the crypto space either. Paul Grignon (author of Money as Debt) has described his take on the idea as Digital Coin back in 2009. A part of the system, called Perpetual Coin, would initially be issued based on a value of a basket of currencies. Unfortunately, the project never left the conceptual phase, and the website is down now, so it is unlikely we will see it ever implemented...

Other than that, there doesn't appear to be an SDR-pegged cryptocurrency out there. This might perhaps be due to the fact that we already have a better alternative to the Special Drawing Rights - Bitcoin. What it lacks in stable value at times, it more than makes up in terms of being all-inclusive and, at least so far, immune from government influence.

It wouldn't be hard, however, to create an SDR-Coin - it could function like Tether, or perhaps more accurately, like BitUSD since you couldn't exactly withdraw the coin. The main problem for a centralised issuer would be keeping the valuation of the currency stable, especially in periods where the basket of currencies is adjusted. Other than that, once the currency itself is created (and I would almost bet we would see someone make the currency after the article is published - 700+ cryptos is not enough after all), it would be interesting to see it start being used internationally. Perhaps we would finally see what is the real demand for SDRs for corporations and real people, rather than just governments. With any luck, this might just hurry the demise of the USD or "petrodollar" hegemony.

Conclusions


Special Drawing Rights are an interesting take on creating a new global reserve currency. While it is currently only accessible to governments, it could be very useful for corporations and end-users. For the time being, Bitcoin is the most accessible alternative for the rest of us.

Monday, August 15, 2016

Secondary and debt markets for exchanges

Secondary and debt markets for exchanges

As discussed last week, Bitfinex has followed through with their bail-in and gave all of their users a 36% "haircut". While not ideal, with the right approach and conviction, this might be a way for the exchange to eventually right their customers. The idea is not new - I recall discussing something similar a few years ago when another big exchange was not measuring up...

MtGox's secondary market


MtGox, the poster child of why one shouldn't trust exchanges with one's BTC, has officially shut down in 2014. However, months before that you could already see some red flags popping up that something was going wrong. MtGox started having some fiat withdrawal problems, and as a result, its market was off by 10+% and ripe for arbitrage. Some people could make a tidy profit churning money around, provided they could get their fiat out of the exchange.

A few months later, the situation got worse - MtGox has officially halted both its bitcoin and fiat withdrawals altogether. However, probably due to some interesting code optimisation, someone figured out that if you withdraw bitcoins straight into a deposit address of another MtGox account, the funds would be transferred without creating a transaction on the blockchain. It looked like that functionality was governed by the "MOVE" API call, rather than "SEND". This tiny functionality was enough for someone to build an entire secondary market for MtGox before the whole exchange went under.

While I can't find any reference to what the site was (EDIT: the website was Bitcoin Builder, as pointed out by /u/samurai321), as the news of MtGox collapse has probably buried it in the sands of time, I remember it being a simple BTC-MtGoxBTC exchange. One could deposit actual bitcoins and trade them for bitcoins owed by MtGox that were moved to the secondary market's address. It allowed some people to get rid of their coins frozen at the exchange and cash out to the safety of the wallets their own, while letting others speculate on whether or not MtGox would be going under. I remember seeing the price reaching a level of 30+% discount on the market, which is fairly comparable to the current Bitfinex scenario...

Decentralised secondary markets


After MtGox collapsed, I haven't seen a similar secondary market pop up anywhere. The closest thing that comes to mind is being able to trade Bitstamp's IOUs on Ripple, which might be an ideal approach for trading exchanges' debt (at least provided the exchange doesn't run into new hacks). If Bitstamp was to go under, you could still trade about 1.5M USD and 2k BTC of its issue on the decentralised exchange nearly indefinitely. Figuring out its USD-USD and BTC-BTC exchange rate against an operating pool could be a clear gaige of confidence in the platform - if there were talks of the exchange recovering, the price might get closer to parity, or go away from it in the opposite case.

At the same time, such a secondary market might be used for something more morally muddy...

Buying one's own debt


Say Bitfinex's tokens were tradable during the hack. Before everyone knew how much was lost percentage-wise, the market would be wild with speculation - you probably could buy bitcoins at 50+% discount, perhaps even at 90% discount if the fear would set in. Now, if Bitfinex was aware of such a situation and knew how much deposits they could actually cover, they could try buying up their own debt for pennies on the dollar before the haircut was to take place. This could allow them to buy off some of their debt at a discount, reducing their obligations to their customers and therefore creating a theoretical profit.

Such a scenario would be highly unethical and I would guess highly illegal, but I wouldn't be surprised to see something like this happen sooner or later in the Bitcoin world. Instead, let's imagine some more ethical approach Bitfinex could act on their current situation...

Slow debt repayment


I'm not sure how Bitfinex structured their token program as I don't use the exchange. However, a good approach to eventually righting everyone would be for them to convert everyone's BTC balance into those tokens. At any time, the users would be able to cash the tokens in and get actual coins, minus the haircut. With each token converted, their obligations would decrease.

The tokens would also be tradable on the exchange itself for actual coins, creating a market for the debt. Anyone wishing to speculate would be able to trade the coins for a value between the haircut discount and 1BTC. The price would have upper and lower bounds, but could fluctuate in between.

If Bitfinex was diligent and set on repaying the debt by eventually buying up all of the tokens, they could publicly declare their strategy of doing so - perhaps a portion of their monthly income would go directly into purchasing the tokens from the market at the spot rate. With every purchase, the amount of tokens in circulation would decrease, thus the ratio of their bitcoins earmarked for buying back the tokens to the actual amount of tokens would increase, making the haircut smaller and smaller. Gradually, the gap between the value of the tokens and the real coins would shrink so much they could convert the tokens themselves straight into coins at a 1:1 ratio and remove them entirely.

In the end, the amount of coins you would get back would rely only on how quickly you need them - you could get them today for 36% off, perhaps get them for 30% off in a year, or get a full amount in a decade. The market would decide what the future value of the tokens would be, and with each month (and perhaps with each trade if some fees were to be maintained for this market), the debt would be slowly repaid.

In the end, this is an optimistic scenario assuming the exchange could earn back millions of dollars worth of coins before the company would go under. Similarly, if you believe the value of bitcoins will go up, the debt may never be repaid - the value of the coins left to be repaid could be going up as the number of the coins would be going down thanks to the increasing price.

One way or the other, it would be a really interesting case study if Bitfinex was to implement something like this...

Related links:


Monday, January 11, 2016

Full Proof of Solvency - pondering Tether

Full Proof of Solvency - pondering Tether

Tether (currently in beta) is a fiat gateway allowing its users to transact in USD IOUs on Omni and internally in Tether's shared wallet. One of the core features the platform advertises is its 100% backing of the issued assets, coupled with frequent solvency reports. This used to be a big issue in the Bitcoin world a few years back, when MtGox, once biggest Bitcoin exchange in the world, became insolvent and shut down. After that incident, a few exchanges (1, 2, 3) started looking into creating proof of solvency to bolster consumer confidence in their platforms. Today I would like to talk about what constitutes a full proof of solvency, how Tether approaches it in a multi-platform system, as well as some potential pitfalls one might face while designing proof of solvency.

Proof of Solvency


A quick recap of what is a Proof of Solvency. In simple terms, its a way for exchanges and other companies holding their customer funds to prove their liabilities to their customers never exceed their cash and crypto reserves. It stands in stark contrast to fractional reserve banking, where by definition, there isn't enough cash or precious metals to cover all of the outstanding deposits. Historically, this is an important concept for Bitcoin - the Genesis Block created by Satoshi quotes a newspaper headline talking about a bank bailout.

Since we're dealing with cryptocurrencies, the modus operandi is always "trust but verify" - claiming that you have a certain amount of money but not having a strong, verifiable and falsifiable proof usually raises red flags.

Proof of Solvency can be broken down into two parts - Proof of Liabilities, wherein the company proves how much they owe their customers, and Proof of Reserves, where they prove how much liquid fiat and crypto they have to cover those deposits.

Proof of Reserves


Proof of Reserves is usually quite tricky for the Bitcoin exchanges as it often involves interacting with "the old financial world" - banks and their banking system. To prove they are solvent, an exchange would publish statements from their banks indicating how much money they have in a segregated account. As banks usually don't focus on creating cryptographically authenticated documents or balances, this is usually the hardest part of the proof to verify outside of a full audit.

However, when we get into the cryptographic world, things get a lot easier. An exchange needs only to state which addresses they own, what is their current balance, and sign the message with those stated addresses. This proves they have access to those addresses, and anyone can go onto the blockchain and verify how much money is really in them at all times.

The last part can also be very important - being able to verify the reserve balance at all times, or at least very frequently, is a lot more reassuring than one-off statements. After all, one could borrow the money for a day to create the proof, therefore misleading everyone.

In the Bitcoin world, one might try to similarly falsify the reserves by asking someone else with deep pockets to sign the proof of reserves statements, creating a false belief that those coins form the reserves. However, this problem can be mitigated with Voting Pools.

All in all, Proof of Reserves is fairly straightforward, at least when it comes to cryptocurrencies. Banks still need to catch up.

Proof of Liabilities


Proof of Liabilities can be tricky for the Bitcoin companies as it often touches on their customer records and databases.

If we're dealing with cryptographic IOUs, things are fairly simple - one only needs to point to the issuing address, count the total number of outstanding liabilities, and sign the statement. Anyone can verify it in real time, just like in the Proof of Reserves for cryptocurrencies.

When it comes to shared wallets and private databases, as is usually the case for many exchanges, the things get a bit more complicated. The companies usually don't want to reveal the balances of every individual account, and the dumps could get quite sizeable (back in 2011, MtGox's database leak was said to contain 61'016 user accounts).

There are a few ways of compressing the data, but the most popular one appears to be creating a merkle tree consisting of account IDs and balances. A single account-balance pair would be a tree leaf. One would then combine the two balances together and pair that with a hash combination of the IDs to form a node higher up the tree. This would continue until we would get one hash and one balance at the very end.

This merkle tree would be hard to fully verify without access to the full account list, but it would also be combined with another interesting trick - every user would be able to request an SPV-like balance branch connecting their account to the merkle root of the tree. If the exchange would fail to provide the branch, the balances would not add up, there would be some negative balances or the branch would not match the latest published root - one would have a cryptographic evidence of foul-play. Now if we only had something like this for the banks...

All in all, Proof of Liabilities is a bit harder than Proof of Reserves, unless we're dealing with pure cryptos once more. Combined with Proof of Reserves, we create a Full Proof of Solvency - the company in question is completely liquid, at least for the time being. Now, lets take a look at how Tether does this...

Tether


A good chunk of this discussion is based on a few conversations I had with the company last year. Since the product is in beta and some time has passed since I spoke with them last, this description might not be indicative of the final product if and when it launches. I bring this example up mainly because it raises some insights into a few important design choices for gateway design.

Tether at the moment is a gateway focused on issuing USD-backed IOUs. Those IOUs can be transferred both on the Omni network, as well as from inside of the Tether shared wallet. In the future, it would be possible to see Tether issuing similar assets on other Crypto 2.0 networks, such as Ripple or Ethereum.

We can see their outstanding balances on their transparency page. Here we come to the first design question - what does this number represent? Is it the balance on Omni, in the shared wallet, a sum of both or something else?

In case of Tether, the number corresponds to the assets issued on Omni. Their shared wallet balance is then a subset of that amount, and as I understand, balances on any other network like Ethereum would also have their own separate balances on the Omni network.

Since we're dealing with multiple networks, the Full Proof of Solvency would be dependent on all of them. In case of Tether, we would start with Proof of Reserves to figure out how much the company has in deposits. The number would be compared with Proof of Liabilities from the Omni network. If that passes, our job is still not done. Now we would use the Omni balance of the shared wallet as a PoR to compare against the PoL of that wallet, and use similar methods for any other connected networks.

The Proofs are valid top-down. If any part is invalid, anything relying on those Proofs are also invalid (which might be more relevant for bigger constructs, like exchanges relying on Tether).

Another interesting issue to consider would be the transaction lag when moving between the different networks. As Tether's top-level settlement network is Omni, which in turn is sitting on Bitcoin, the transactions that move assets between network would have to go over one of the slowest cryptocurrency network (at least in comparison to things like Ethereum or Ripple), which might not be ideal. Since Tether as a company already needs to provide Proofs for all of the network as well as its own wallet, it would make the most sense to make the fastest element be the top level, which in this case would be the wallet.

Conclusions


Full Proof of Solvency is an interesting concept that came out of the Bitcoin world in reaction to shoddy business practices of using fractional reserves at an exchange. It can be tricky to implement when dealing with non-cryptocurrency systems, but becomes trivial on publicly auditable blockchains. It would be interesting to see something similar implemented in a traditional bank...

Monday, October 26, 2015

The Money Protocols - Bitcoin, blockchain and others

The Money Protocols - Bitcoin, blockchain and others

I was recently sent a link to an article discussing the development of "the money protocol". The idea has been around for awhile - we have standardized protocols for communicating between computers in form of TCP/IP and others, so it would similarly make sense to develop protocols for moving money around on the Internet just like now we move information around it. However, we will likely have more one new protocol created from Bitcoin and related technologies...

Accounting for all payments


In an ideal world, we would have everyone using the same currency on the same network. However, there are many reasons why this probably won't happen. Instead of hoping everyone will start using Bitcoin in the near future, we should assume that we will be dealing with many different currencies, both cryptographic, fiat and otherwise. We will need a protocol that can handle:

  • Native cryptographic currencies like Bitcoin
  • IOUs, assets and debt, like what we see on Ripple
  • Financial derivatives, like BitUSD on BitShares
  • Private currencies on permissioned blockchains
  • Legacy banking systems
  • Credit, debit and gift cards
  • Other currencies created / tracked by private companies (perhaps shares, digital commodities, etc.)

Moreover, the protocol would also need to cover:

  • Sending payments across networks (bank->Bitcoin, altcoin to sidechain, etc.)
  • Finding an optimal payment path between the start and end of the payment
  • Atomically trading between multiple currencies at the same time
  • Locking in / confirming trades and money transfers
  • Providing digital receipts for the payment

All of those would need to be included in the same "money protocol". Once we figure out how to convey the information of who is sending the money, who is the receiver, which type of money is being spent and received (more on how this could look), we can finally start to connect different networks together. Whether it would be through W3C's Web Payments Community Group, something like Interledger or some other forms of bridges, we could finally be able to easily send money around (hopefully).

What's left?


When dealing with crypto as they say, money is the least interesting application. We also have smart contracts, proof of existence, etc. A lot of those applications of crypto will probably also warrant their own protocol - they don't exactly fall under "money protocol". I do believe the following will eventually become their own protocol on par with TCP/IP:

Proof of existence. As we all know, the Bitcoin blockchain is the most secure, inalterable record of history currently available due to the amount of computing effort put into it. Anything embedded in the blockchain can be forever referenced as the latest date some file could've been created. This functionality, perhaps expanded with protocols like Factom, can be a useful protocol for creating timestamped receipts and other applications.

Smart contracts / smart oracles / proof of execution. With Ethereum being released, we can expect to see more use of smart contracts for business applications. Smart oracles, such as the ones proposed by Codius. would compliment them to interface between the crypto and the real world. All in all, we could bundle those up into "proof of execution" - a protocol dictating what code needs to be run, at what time and by how many independent parties (some of them in form of computers, some in form of autonomous contracts), as well as what was the result of the execution. This could enable, for example, to build autonomous financial derivatives or contracts ("code is law").

Conclusions


It is very likely in the future we will see a "money protocol" similar to TCP/IP for money. It will have to encompass more than a single currency and network however. We are also likely to see more blockchain-based protocols emerge from the non-monetary applications of crypto.

Monday, May 25, 2015

BitUSD vs USD IOUs

Last Thursday at Decentral Vancouver we were discussing BitShares and BitUSD with Max Wright (I recommend his BitShares 101 series of videos for anyone that wishes to understand how BitShares works). During that hangout, we were comparing BitUSD to USD-denominated IOUs (BitShares calls them User Issued Assets, Ripple - IOUs). The topic is very interesting, so I would like to share my thoughts on it with you.

While we will be talking about BitUSD and USD IOUs, those currencies should only be viewed as a representative of their respective categories. There are many other currencies similar to them, but to keep things simple, we will be using them in this post.

This blog post can be seen as an expansion on "The rise of fiat-denominated cryptos". Other related posts - "Inert versus volatile currencies - pondering an attack on BitUSD", "Thoughts on Delegated Proof of Stake and Bitshares".

What is BitUSD?

BitUSD is a "market pegged asset" on the BitShares Crypto 2.0 platform. It is created as a derivative of the native bitshares currency. As such, it is a "counterparty-less fiat-denominated crypto". Its value is kept at around 1 USD by an open, decentralized market. BitUSDs are created as a derivative with a collateral of three times the current BitUSD value in bitshares.

What are USD IOUs?


An IOU in the sense used in Ripple is a representation of debt from a gateway to its users. It is created when users deposit funds into the Ripple system through the gateway, and extinguished when the funds are withdrawn. USD-denominated IOUs are pegged to the value of 1 USD each by the promise of the gateway to accept them at face value and exchange them for 1USD in cash, wire transfer or similar.

Who is the counterparty?


The first big difference between BitUSD and USD IOU lies in who is the counterparty that guarantees the value of the currency.

With USD IOUs, the matter is simple - the gateway that issues the IOU is the party that guarantees its value. The deposits might be guaranteed by third parties, for example by deposit insurance or perhaps even gateway's competitors in a Voting Pool-esque system, but in most cases at the present that is not the case. If a gateway is operational, like in case of BitStamp, the IOUs will hold value. If the gateway goes out of business, like in case of WeExchange, the IOUs will drop in value.

As for BitUSD, some argue that there is no counterparty, while others say the whole BitUSD derivatives system is the counterparty. The latter is probably more true - if the market becomes destabilized, either through malicious forcing of margin calls or by sudden drop in the value of the BitShares currency, the system as a whole might default. However, if the BitUSD market is working properly, there should be a lot of parties involved in it, and thus there won't be a centralized point of failure in the system.

The flexibility of currency supply


Due to how the currency is created, there is a difference in the flexibility of the currency supply for BitUSD and USD IOUs.

USD IOUs can be created by the gateways at a whim. If they decide they need a few million dollars more, they can create those funds in seconds. There is no limit to how much funds can be created - if someone approached SnapSwap for example with a sum of 1 billion dollars that they wanted to use on the Ripple system, they would be glad to have that business.

Similarly, when the funds are withdrawn, the underlying IOUs are extinguished and the market cap is reduced. The IOUs exist only when they are useful, and can be created and destroyed to adjust to the market.

USD market cap in Ripple

BitUSDs can be created by the market agreeing to enter into a derivatives contract. Provided there are people on both sides of the contract, the market can be expanded as needed. However, there might not be enough counterparties to secure a large expansion of the market cap, and the BitShares market cap itself might not be enough to handle the expansion either (for every BitUSD created, the system requires a collateral of 3USD worth of bitshares).


BitUSD market cap


At its peak, BitUSD had a market cap of 1.2M USD. Today, at the BitShares market cap of $15M, you could have at most about 5M BitUSD in the market. In order to handle more more BitUSD, the value of BitShares would have to increase.

When it comes to extinguishing BitUSD, the derivatives contract has to reach its maturity as well, meaning that for some time there might be more BitUSD in the market than are needed, driving their price down temporarily.

Exchange rate and convertibility


Both BitUSD and USD IOUs are aiming to become a stable currency tracking the value of a dollar as closely as possible.

For BitUSD, it is hard to find an objective resource on how closely it keeps its value. You can look at CoinMarketCap's BitUSD markets, currently reporting a price of $1.14-$1.21 per BitUSD. If you look at BTER's charts, you see the exchange rate of 0.94 BitUSD/USD (so about 1.06 USD / BitUSD). Moreover, BitUSD is convertible to BTS or BTC only on those markets, meaning one also has to convert those currencies into USD before they can withdraw.

For USD IOUs, the matter is simpler - unless a gateway goes out of business as described above, the "exchange rate" for an IOU is usually stable. SnapSwap for example charges a deposit / withdrawal fee of 0.99% with a cap of $5, and an in-Ripple transfer fee of 0.2%. The IOUs are convertible directly into the underlying currency, so they don't suffer from market fluctuation.

Fees


As with any distributed network, there are some fees one needs to pay in order to use the system and its underlying currencies to prevent network spam among other things.

For BitUSD, it looks like the only fees incurred directly by the people transacting in the currency are BitShares transaction fees. When it comes to creating the currency, it is mainly a free market. There are some interest rates expected by people entering the contracts to create those currencies, which are currently around 5%, and there are some penalties for the system executing a margin call (currently around 10%), but for people using the currency directly, those don't really come into effect.

For Ripple-based IOUs, there are likewise transaction fees dictated by the network. Beyond that, any gateway can set their own transfer fees and demurrage fees for using their currencies. The latter is rarely used, and the former is usually around 0.2% of the transfer amount. This creates incentive for gateways to make their IOUs as attractive as possible to use.

Funds' security


Security of one's funds is an important part of a successful currency.

Securing BitUSD largely falls into the hands of the users. Pretty much like Bitcoin - you are your own bank. You can make your BitUSD in your wallet as secure as you wish, but you have to go through the effort. Your funds cannot be seized, frozen, or taken away provided your private key doesn't get compromised. On the flip side, if you lose your private key or someone steals your money, you have no direct recourse. Due to the TITAN technology, it might be very hard or even impossible to track the stolen funds.

Security of USD IOUs are largely up to the gateway. It stored your deposits in a bank or a vault, while giving you an IOU to transact in. You are responsible for securing those IOUs in your wallet, similarly to BitUSD or Bitcoin.

If the gateway's private keys get compromised, an attacker can print any mount of IOUs and spend it on the network, possibly getting some other IOUs or XRP until the market is dry. However, the gateway can create a new account and re-issue the IOUs to the holders of the old IOUs in the same state the accounts were in before the attack took place.

The gateway also has the power to whitelist or blacklist accounts that can use their IOUs. This means that even if you hold the IOUs legitimately, your account might be frozen, able to only withdraw the IOUs into the gateway (not transfer them to anyone else). This can be used for both the good (following regulation, freezing stolen funds), and for bad reasons (shutting down arbitrary accounts).

If one's wallet gets compromised, they can take legal action with the gateway to hope to gain back one's money. The gateway can blacklist the account the funds were transferred to, and reimburse the account that lost the IOUs. This probably would only happen if there was a proper police report filed for the stolen funds, but at least there is some way to recover the funds.

All in all, BitUSD allows one to control the funds more directly, but also makes them responsible for their money. With USD IOUs, the gateway has significantly more say in the matter.

Anonymity and privacy


With BitUSD and BitShares in general, the TITAN technology allows the users of those currencies to remain anonymous and their balances secret.

The Ripple system is a lot less anonymous. While it uses addresses similar to Bitcoin, users of the system generally reuse the same address all the time. Moreover, since Ripple Labs is focusing on bringing more KYC onto the system and the general requirements of gateways to perform KYC on their customers, there is a lot of potential to link one's identity to that Ripple address and all the transaction history associated with it. As it stands, Ripple and the IOUs on it offer little to no anonymity or privacy.

Regulatory compliance


A long-term success of a system cannot be guaranteed if it goes against the laws of the land. While a decentralized system cannot be shut down per-se, it can certainly be hindered if its developers or users are persecuted.

As mentioned in the previous section, Ripple gateways are generally focused on being KYC compliant in their issuance of USD IOUs and similar. As such, they might be more appealing to customers that require to perform KYC on the people they are dealing with, such as currency exchangers, market makers and so on. With the recent Ripple Labs fines, we might see the Ripple system being pushed more to being regulatory compliant, for the better or worse.

BitUSD and BitShares at the moment don't appear to be dealing with regulatory compliance. Exchanges that convert BTS or BitUSD of course can perform their own KYC and other thigns required of them, but with the high anonymity of the system, the distributed exchange on BitShares might not be able to comply. Whether people creating BitUSD through the derivatives contracts or people trading those currencies for anything else on the system would fall under say, FinCEN regulations and be required to register as a money transmitter - that's still up to debate.

Universality


The more universally accepted the currency is, the better.

BitUSD is by definition derived from BitShares and thus is only usable on that platform. Anyone wishing to send BitUSD to another platform would either have to go through a gateway (a singular entity or perhaps a voting pool of gateways), or perhaps in the future through some cross-chains connected to BitShares.

USD IOUs from a given gateway can be put on any system that allows for creation of IOUs (currently - Ripple, Stellar, BitShares, Omni). In this fashion, say, SnapSwap USD IOUs can be more universally accepted than BitUSD, allowing users to easily convert from one network to another.

IOUs also tie nicely to the idea of bridges - easy way to send money from a system into another system (both Ripple and BitShares support the idea of bridges). For example, you can use BTC2Ripple to send BTC IOUs directly from a Ripple account into a Bitcoin account, and Ripple Union allows you to send Interacs into the Canadian banking network.

Flexibility


This one deals with how easy it is for a given system to adapt and start supporting new currencies.

BitShares' market pegged assets are hard-coded into the system. Currently, it looks like the system supports BitUSD, BitCNY, BitEUR, BitGold, BitSilver and BitBTC. If one wanted to create BitCAD, it would require the code to be changed. The currencies in the system are uniform and fungible.

When it comes to IOU-based systems like Ripple, one can easily create new currencies at a whim. There are gateways for about 14 different currencies (BRL, BTC, CAD, CNY, EUR, GBP, JPY, KRW, MXN, SGD, STR, USD, XAG, XAU), and there is nothing stopping people from creating one's own currency (like DYM, a currency backed by silver dimes). Moreover, since every gateway is different from the next (a USD from SnapSwap is not the same as USD from MtGox), every currency offered by every gateway is its own currency, distinct from everything else on the system.

Conclusions


BitUSD and USD IOUs are very different currencies tackling the same problem. BitUSD aims to create a system for transfer of value independent from the current banking world, while IOU-based systems like Ripple work best in conjunction with the banking world. Each have their own use cases, and ignoring the current maturities and adoption of their respective systems, they both stand a chance of carving out their own niche.