Summary: Everyone knows that when you give your assets to someone else, they always keep them safe. If this is true for individuals, it is certainly true for businesses.
Custodians always tell the truth and manage funds properly. They won't have any interest in taking the assets like an exchange operator would. Auditors tell the truth and can't be misled. That's because organizations which are regulated are incapable of lying and don't make mistakes.
First, some background. Here is a summary of how custodians make us more secure:
Previously, we might give Alice our crypto assets to hold. There were risks:
Alice might take the assets and disappear.
Alice might spend the assets and pretend that she still has them (fractional model).
Alice might store the assets insecurely and they'll get stolen.
Alice might give the assets to someone else by mistake or by force.
Alice might lose access to the assets.
But "no worries", Alice has a custodian named Bob. Bob is dressed in a nice suit. He knows some politicians. And he drives a Porsche. "So you have nothing to worry about!". And look at all the benefits we get:
Alice can't take the assets and disappear (unless she asks Bob or never gives them to Bob).
Alice can't spend the assets and pretend that she still has them (fractional model). (Unless she doesn't let Bob know. Surely she would tell Bob.)
Alice can't store the assets insecurely so they get stolen. (After all - she doesn't have any control over the withdrawal process from any of Bob's systems, right?)
Alice can't give the assets to someone else by mistake or by force. (Bob will stop her, right Bob?)
Alice can't lose access to the funds. (She'll always be present, sane, and keep track of all secrets.)
See - all problems are solved! All we have to worry about now is:
Bob might take the assets and disappear.
Bob might spend the assets and pretend that he still has them (fractional model).
Bob might store the assets insecurely and they'll get stolen.
Bob might give the assets to someone else by mistake or by force.
Bob might lose access to the assets.
It's pretty simple. Before we had to trust Alice. Now we only have to trust Alice, Bob, and however they communicate. Just think of how much more secure we are!
"On top of that", Bob assures us, "we're using a special wallet structure". Bob shows Alice a diagram. "We've broken the balance up and store it in lots of smaller wallets. That way", he assures her, "a thief can't take it all at once". And he points to a couple historic cases where large sums were taken "because they were stored in a single wallet... how stupid".
"Very early on, we used to have all the crypto in one wallet", he said, "and then one Christmas a hacker came and took it all. We call him the Grinch. Now we individually wrap each crypto and stick it under a binary search tree. The Grinch has never been back since."
"But besides", Bob continues, "even if someone were to get in, we've got insurance. It covers all thefts and even coercion collusion and misplaced keys, only subject to the policy terms and conditions." And with that, he pulls out a phone-book sized contract and slams it on the desk with a thud. "Yep", he continues, "we're paying top dollar for one of the best policies in the country!"
"Can I read it?' Alice asks. "Sure," Bob says, "just as soon as our legal team is done with it. They're almost through the first chapter." He pauses, then continues. "And can you believe that salesguy Mike - he has the same year Porsche as me. I mean, what are the odds?"
"Do you use multi-sig?", Alice asks. "Absolutely!" Bob replies. "All our engineers are fully trained in multi-sig. Whenever we want to set up a new wallet, we generate 2 separate keys and store them in this system here. Look, it even requires the bio-metric signature of one of our team members to initiate any withdrawal." He demonstrates by pressing his thumb into the display. "We use a third party cloud validation API to match the thumbprint and authorize each withdrawal."
"Wow that's really impressive" Alice says, "but what if we need access for a withdrawal outside of office hours?" "Well that's no issue", Bob says, "just send us an email, call, or text message and we always have someone on staff to help out. Just another part of our strong commitment to all our customers!"
"What about Proof of Reserve?", Alice asks. "Of course", Bob replies, "though rather than publish any blockchain addresses or signed transaction, for privacy we just do a SHA256 refactoring of the inverse hash modulus for each UTXO nonce and combine the smart contract coefficient consensus in our hyperledger lightning node. But it's really simple to use." He pushes a button and a large green checkmark appears on a screen. "See - the algorithm ran through and reserves are proven."
"Wow", Alice says, "you really know your stuff! And that is easy to use! What about fiat balances?" "Yeah, we have an auditor too", Bob replies, "Been using him for a long time so we have quite a special relationship going! We have special books we give him every year and he's very efficient! Checks the fiat, crypto, and everything all at once!"
"We used to have a nice offline multi-sig set up, but I think we'll move it all over to your facility." Alice says. "Awesome", Bob replies, "Thanks so much! This is perfect timing too - my Porsche got a dent on it this morning. We have the paperwork right over here." "Great!", Alice replies.
And with that, Alice gets out her pen and Bob gets the contract. "Don't worry", he says, "you can take your crypto back anytime you like just subject to our cancellation policy. Our annual management fees are also super low and we don't adjust them often".
How many holes have to exist for your funds to get stolen?
Just one.
Why are we taking a highly powerful offline multi-sig setup, which is widely used globally in hundreds of different/lacking regulatory environments with 0 breaches to date, and circumventing it by a demonstrably weak human layer? And paying great expense to do so?
If you go through the list of breaches in the past 2 years to highly credible organizations, and then you go through the list of times that people have lost their crypto from identity theft, hot wallet exploits, extortion, etc... and then you go through this custodian with a fine-tooth comb and truly believe they have value to add far beyond what you could, sticking your funds in a wallet they control exclusively is the absolute worst possible way to take advantage of that security.
If you want to add security, make a stronger multi-sig. Multi-sig with yourself and 6 of these custodians if you have to. Now a hacker has to break into all 6 different facilities and yours as well to take the funds. Otherwise, with one custodian, what you are doing is giving them your cryptocurrency and hoping they're honest, competent, and flawlessly secure. It's no different than storing it on a really secure exchange. Maybe the insurance will cover you. Didn't work for Bitpay in 2015. Didn't work for Yapizon in 2017. Insurance has never paid a claim in the entire history of cryptocurrency. But maybe you'll get lucky. Maybe your exact scenario will buck the trend and be what they're willing to cover. After the deductible and hopefully without a court battle.
And you want to advertise this increase in risk, lapse of judgement, accident waiting to happen, as though it's some kind of benefit to customers? And then some people are writing to the OSC that custodians should be mandatory for all funds on every exchange? On what planet?
Most of the problems in Canada stemmed from one thing - a lack of transparency. If anyone had known what a joke Quadriga was - it wouldn't have grown to lose $400m from hard working Canadians from coast to coast to coast. And Gerald Cotten would be in jail, not wherever he is now (at best, rotting peacefully). EZ-BTC and mister Dave Smilie would have been a tiny little scam to his friends, not a multi-million dollar fraud. Einstein would have got their act together or been shut down BEFORE losing millions and millions more in people's funds generously donated to criminals. MapleChange wouldn't have even been a thing. And maybe we'd know a little more about CoinTrader/NewNote - like how much was lost in there.
So it's great to see those reports from BitBuy and ShakePay. Only thing we don't have is:
ANY CERTAINTY BALANCES WEREN'T EXCLUDED. Quadriga's largest account was $70m. All it takes is excluding a small number of really large accounts - and nobody's the wiser. That's solved with a simple public hash list. The "auditor" hashes the information of each customer in a list that can be shared publicly to let customers validate they were included. Hash is one way encryption - impossible to reverse. Customers can validate, only if they already know their information. Hashing text and searching in a file is very simple and easy and requires no technical knowledge whatsoever.
ANY VISIBILITY WHATSOEVER INTO THE CUSTODIANS. BitBuy put out their report before moving all the funds to their custodian and ShakePay apparently can't even tell us who the custodian is. That's pretty important considering that basically all of the funds are now stored there.
ANY IDEA ABOUT THE OTHER EXCHANGES. In order for this to be effective, it has to be the norm. It needs to be "unusual" not to know - strange and "suspicious". If every exchange had done transparent reports, then Quadriga would have stuck out like a sore thumb. At the moment, we only have transparency from two Canadian exchanges.
Loss of funds via theft from storage is a pretty rare issue in Canada. Only CoinTrader/NewNote, Flexcoin ($600k), and Canadian Bitcoins ($100k). All of them were online and used no multi-sig as far as any records show. We don't actually know much from CoinTrader because there was no visibility. The co-founder of CoinTrader Mitchell moved on to found Netcoins - the "most trusted way to buy and sell crypto" - a site that has no information whatsoever that I could find on the storage practices and a FAQ advising that “[t]rading cryptocurrency is completely safe” and that having your own wallet is “entirely up to you! You can certainly keep cryptocurrency, or fiat, or both, on the app.” Doesn't sound like offline multi-sig to me, and I'm guessing CoinTrader wasn't either.
It's not that complicated or unreasonable to set up a hardware wallet. Multi-sig can be learned in a single course. Something the equivalent complexity of a driver's license test could prevent all the cold storage exploits we've seen to date - even globally. Operators have a key advantage in detecting and preventing fraud - they know their customers far better than any custodian ever would. If exchanges want to use custodians to help protect some funds, they should be added into the multi-sig. For best results mandate: 3of4, 3of5, 3of6, 4of5, 4of6, 4of7, 5of6, or 5of7.
Of course, many exchanges have hot wallets for fast withdrawals. Although it doesn't appear to have happened in Canada, it's fairly common to see these emptied by hackers (KuCoin just last week). Aside from the early days where exchanges were almost fully hot wallets, this has almost universally been covered by the exchange operators with reasonable success. However, most members of the public would prefer to see insurance. It's standard in other investments and in banking in general.
Rather than trying to convince a third party company to provide comprehensive enough insurance, it seems that a much more practical solution would be for multiple exchange operators and regulatory bodies to set up a multi-sig wallet that could be used for an ongoing insurance fund. It could be a 4 of 7 multi-sig held between 5 different exchange operators and 2 regulatory bodies. All Canadian exchanges could pay in premiums at a set rate based on their needed coverage, with a higher price paid for hot wallet coverage (anything not a multi-sig cold wallet). Such a model would be much cheaper to manage and much more reliable to pay out when needed. The kind of coverage you could have under this model is unheard of. You could even create something like the CDIC to protect Canadians who get their trading accounts hacked if they can sufficiently prove the loss is legitimate. And in the case of fraud or gross negligence, the fund can be structured to pay affected users directly (utilizing the last transparent balance report in the worst case), rather than paying to corrupt operators.
None of the above precludes innovation in any way, or adds any unreasonable cost - and these three policies would demonstrably eliminate all the historic cases we've ever seen.
More fun facts (skip if you like):
The inspiration for the first paragraph was an actual quote from a Canadian company providing custodial services to actual clients in response to the OSC consultation paper: "We believe that it will be in the in best interests of investors to prohibit pooled crypto assets or ‘floats’. Most Platforms pool assets, citing reasons of practicality and expense. The recent hack of the world’s largest Platform – Binance – demonstrates the vulnerability of participants’ assets when such concessions are made. In this instance, the Platform’s entire hot wallet of Bitcoins, worth over $40 million, was stolen, facilitated in part by the pooling of client crypto assets." "the maintenance of participants (and Platform) crypto assets across multiple wallets distributes the related risk and responsibility of security - reducing the amount of insurance coverage required and making insurance coverage more readily obtainable". For the record, their reply also said nothing whatsoever about multi-sig or offline storage.
In addition to the fact that the $40m hack represented only one "hot wallet" of Binance, and they actually had the vast majority of assets in other wallets (including mostly cold wallets), multiple real cases have clearly demonstrated that risk is still present with multiple wallets. Bitfinex, VinDAX, Bithumb, Altsbit, BitPoint, Cryptopia, and just recently KuCoin all had multiple wallets breached all at the same time, and many represent a significantly larger impact on customers than the Binance breach which was fully covered by Binance. To represent that simply having multiple separate wallets under the same security scheme is a comprehensive way to reduce risk is just not true.
Insurance has historically never covered a single loss in the cryptocurrency space (at least, not one that I was able to find), and there are notable cases where massive losses were not covered by insurance. Bitpay in 2015 and Yapizon in 2017 both had insurance policies that didn't pay out during the breach. The same insurance that ShakePay is presently using (and announced to much fanfare) according to their CEO himself covers “physical theft of the media where the private keys are held,” which is something that has never happened. As was said with regard to the same policy in 2018 - “I don’t find it surprising that Lloyd’s is in this space,” said Johnson, adding that to his mind the challenge for everybody is figuring out how to structure these policies so that they are actually protective. “You can create an insurance policy that protects no one – you know there are so many caveats to the policy that it’s not super protective.”
The most profitable policy for an insurance company is one with the most expensive premiums that they never have to pay a claim on. They have no inherent incentive to take care of people who lost funds. It's "cheaper" to take the reputational hit, and fight the claim in court. The more money at stake, the harder the "smart" insurance provider will fight to avoid a payout. They're not going to insure things unless they have reasonable certainty to make a profit.
The circumvention of multi-sig was a key factor in the massive Bitfinex hack of over $60m of bitcoin, which today still sits being slowly used and is worth over $3b. While Bitfinex used a qualified custodian Bitgo, which was and still is active and one of the industry leaders of custodians, and they set up a 2 of 3 multi-sig wallet, the entire system was routed through Bitfinex, such that Bitfinex customers could initiate the withdrawals in a "hot" fashion. This feature was also a hit with the hacker, and the multi-sig did nothing to protect anyone.
Bitpay in 2015 was another example of a breach that stole 5,000 bitcoins. This happened not through the exploit of any system in Bitpay, but because the CEO of a company they worked with got their computer hacked and the hackers were able to request multiple purchases, which Bitpay honoured because they came from the customer's computer legitimately. Impersonation is a very common tactic used by fraudsters, and methods get more extreme all the time.
A notable case in Canada was the Canadian Bitcoins exploit, in 2013. Funds were stored on a server in a Rogers Data Center, and the attendee was successfully convinced them to reboot the server "in safe mode" with a simple phone call, thus bypassing the extensive security. While verification methods are improving, so are methods of identity theft. We now have sim swapping and deep fake videos to contend with. Hackers have massive database sets they can utilize.
The very nature of custodians circumvents multi-sig. This is because custodians are ultimately not just having to secure the assets against some sort of physical breach, but against any form of social engineering, modification of orders, fraudulent withdrawal attempts, etc... If the security practices of independent signatories in a multi-sig arrangement are such that the breach risk of one signatory is 1 in 100, the requirement of 3 signatures makes the risk of theft 1 in 1,000,000. Since hackers tend to exploit the weakest link, a comparable custodian has to make the entry and exit points of their platform 10,000 times more secure than one of those exchange operators just to provide equivalent protection. And if the signatories beef up their security by only 10x, the risk is now 1 in 1,000,000,000. The custodian has to be 1,000,000 times more secure. The larger and more complex a system is, the more potential vulnerabilities exist in it, and the less people can understand how the system works when performing upgrades.
By contrast, offline multi-signature solutions have an extremely solid record, and in the entire history of cryptocurrency exchange incidents which I've studied (listed here), there has only been one incident (796 exchange in 2015) involving an offline multi-signature wallet. It happened because the customer's bitcoin address was modified by hackers, and the amount stolen ($230k) was covered by the exchange operators. Such an issue would not be prevented in any way by the use of a custodian, as that custodian has no oversight whatsoever to the exchange platform. It's practical for all exchange operators to test large withdrawal transactions as a general policy, regardless of what model is used, which would prevent that issue.
False promises on the backing of funds played a huge role in the downfall of Quadriga, and it's been exposed over and over again (MyCoin, PlusToken, Bitsane, Bitmarket, EZBTC, IDAX). Even today, customers have extremely limited certainty on whether their funds in exchanges are actually being backed or how they're being backed. The great depression itself was caused by fractional failure. "After the panic of 1929 and during the first 10 months of 1930, 744 U.S. banks failed. (In all, 9,000 banks failed during the 1930s.)" While this issue is not unique to cryptocurrency exchanges, the complexity of the technology and the lack of any regulation or standards makes problems more widespread, and there is no "central bank" to come to the rescue as in the 2008 financial crisis.
In addition to fraudulent operations, the industry is full of cases where operators have suffered breaches and not reported them. Most recently, Einstein was the largest case in Canada, where ongoing breaches and fraud were perpetuated against the platform for multiple years and nobody found out until the platform collapsed completely. While fraud and breaches suck to deal with, they suck even more when not dealt with. It played a role in the largest downfalls of Mt. Gox, Cryptsy, and Bitgrail. In some cases, platforms are alleged to have suffered a hack and keep operating without admitting it at all, such as CoinBene.
It surprises some to learn that a cryptographic solution has already existed since 2013, and gained widespread support in 2014 after Mt. Gox. Proof of Reserves is a full cryptographic proof that allows any customer of an exchange to have complete certainty that their assets are backed by the platform in real time. Platforms only need to publish their wallet addresses, some proof of ownership, and a Merkle tree structure. One-way hashing protects all personal information and the Merkle Tree hides individual balances of other customers. This proposal had the full backing of numerous leaders in the community including Nic Carter, Greg Maxwell, and Zak Wilcox. But what became of that effort? Very little. Exchange operators continue to refuse to give that level of visibility. Despite the fact this information can often be obtained through trivial blockchain analysis, no Canadian platform has ever provided any wallet addresses publicly. As describe by the CEO of Newton "For us to implement some kind of realtime Proof of Reserves solution, which I'm not opposed to, it would have to ... Preserve our users' privacy, as well as our own. Some kind of zero-knowledge proof". Kraken describes here in more detail why they haven't implemented such a scheme.
And yet, Kraken did so on a page called "Proof of Reserves". More recently, both BitBuy and ShakePay have released reports titled "Proof of Reserves and Security Audit". Both reports contain disclaimers against being audits. Both reports trust the customer list provided by the platform, leaving the open possibility that multiple large accounts could have been excluded from the process. By the Pareto principle, an exchange could exclude just 20% of customer accounts and save themselves having to back 80% of the funds. Proof of Reserves is a blockchain validation where customers see the wallets on the blockchain. The report from Kraken is 5 years old, but they leave it described as though it was just done a few weeks ago. And look at what they expect customers to do for validation.
Fraud isn't a problem which is unique to cryptocurrency. Fraud happens all the time. Enron, WorldCom, Nortel, Bear Stearns, Wells Fargo, Moser Baer, Wirecard, Bre-X, Nicola are just some of the cases where frauds became large enough to become a big deal (and there are so many countless others). These all happened on 100% reversible assets despite regulations being in place. In many of these cases, the problems happened due to over-complexity of the financial instruments. For example, Enron had "complex financial statements [which] were confusing to shareholders and analysts", creating "off-balance-sheet vehicles, complex financing structures, and deals so bewildering that few people could understand them". In cryptocurrency, we are often combining complex financial products with complex technologies and verification processes. We are naïve if we think problems like this won't happen. If we want "money of the people" to work, the solutions have to be simple enough that "the people" can understand them, not so confusing that financial professionals and technology experts struggle to use or understand them.
For those who question the extent to which an organization can fool their way into a security consultancy role, HB Gary should be a great example to look at. Prior to going up against real hackers and trying to out anonymous, HB Gary was being actively hired by multiple US governmental agencies and others in the private sector (with glowing testimonials). One should also look at this list of data breaches from the past 2 years. Many of them are large corporations, government entities, and technology companies. These are the ones we know about. Undoubtedly, there are many more that we do not know about.
There are multiple issues with the SOC II model including the prohibitive cost (not even listed), requirement of operating for a year (impossible for new platforms), and lack of any public visibility (SOC II are private reports that aren't shared outside the people in suits).
Securities frameworks are expensive. Sarbanes-Oxley is estimated to cost $5.1 million USD/yr for the average Fortune 500 company in the United States. Since Fortune 500 are the top 500 companies, that means well over $2.55 billion USD (~$3.4 billion CAD) is going to people in suits. Isn't this problem of trust and verification the exact problem that the blockchain is supposed to solve? Aren't we trying to solve the exact use case of blockchain technology? What exactly are we trying to build here?
Thoughts?