July 10, 2017

EOS - An Introduction

I've written a new paper:

EOS - An Introduction

Abstract: Current technologies for blockchain fall short of providing what developers and end-users need in order to contract together and to build large scale businesses. We propose EOS, a performance-based and self-governing blockchain that provides an operating system for building large-scale consumer-facing distributed applications. This paper outlines the context, vision and software architecture underlying EOS, which we are building to serve a broad and diverse group of users with smart business.

It's located on my papers page at iang.org/papers/EOS_An_Introduction.pdf and will also be on the eos.io site soon enough.

Not a lot I can say beyond what's in the paper, and also I'm at the EOS booth and it's taken me 4 hours to get this many words down.

Posted by iang at 06:08 AM | Comments (0)

June 29, 2017

SegWit and the dispersal of the transaction

Jimmy Nguyen criticises SegWit on the basis that it breaks the signature of a contract according to US law. This is a reasonable argument to make but it is also not a particularly relevant one. In practice, this only matters in the context of a particularly vicious and time-wasting case. You could argue that all of them are, and lawyers will argue on your dime that you have to get this right. But actually, for the most part, in court, lawyers donít like to argue things that they know they are going to lose. The contract is signed, itís just not signed in a particularly helpful fashion. For the most part, real courts and real judges know how to distinguish intent from technical signatures, so it would only be relevant where the law states that a particular contract must be signed in a particular way, and then weíve got other problems. Yes, I know, UCC and all that, but letís get back to the real world.

But there is another problem, and Nguyenís post has triggered my thinking on it. Letís examine this from the perspective of triple entry. When we (by this I mean to include Todd and Gary) were thinking of the problem, we isolated each transaction as being essentially one atomic element. Think of an entry in accounting terms. Or think of a record in database terms. However you think about it, itís a list of horizontal elements that are standalone.

When we sign it using a private key, we take the signature and append it to the entry. By this means, the entry becomes stronger - it carries its authorisation - but it still retains its standalone property.

So, with the triple entry design in that old paper, we donít actually cut anything out of the entry, we just make it stronger with an appended signature. You can think of it as is a strict superset of the old double entry and even the older single entry if you wanted to go that far. Which makes it compatible which is a nice property, we can extract double entry from triple entry and still use all the old software weíve built over the last 500 years.

And, standalone means that Alice can talk to Bob about her transactions, and Bob can talk to Carol about his transaction without sharing any irrelevant or private information.

Now, Satoshiís design for triple entry broke the atomicity of transactions for consensus purposes. But it is still possible to extract out the entries out of the UTXO, and they remain standalone because they carry their signature. This is especially important for say an SPV client, but itís also important for any external application.

Like this: Iím flying to Shanghai next week on Blockchain Airlines, and Iíve got to submit expenses. I hand the expenses department my Bitcoin entries, sans signatures, and the clerk looks at them and realises they are not signed. See where this is going? Because, compliance, etc, the expenses department must now be a full node. Not SPV. It must now hold the entire blockchain and go searching for that transaction to make sure itís in there - itís real, it was expended. Because, compliance, because audit, because tax, because thatís what they do - check things.

If Bitcoin is triple entry, this is making it a more expensive form of triple entry. We donít need those costs, bearing in mind that these costs are replicated across the world - every user, every transaction, every expenses report, every accountant. For the cost of including a signature, an EC signature at that, the extra bytes gain us a LOT of strength, flexibility and cost savings.

(You could argue that we have to provide external data in the form of the public key. So whoeverís got the public key could also keep the sigs. This is theoretically true but is starting to get messy and I donít want to analyse right now what that means for resource, privacy, efficiency.)

Some might argue that this causes more spread of Bitcoin, more fullnodes and more good - but thatís the broken window fallacy. We donít go around breaking things to cause the economy to boom. A broken window is always a dead loss to society, although we need to constantly remind the government to stop breaking things to fix them. Likewise, we do not improve things by loading up the accounting departments of the world with additional costs. Weíre trying to remove those costs, not load them up, honestly!

Then, but malleability! Yeah, thatís a nuisance. But the goal isnít to fix malleability. The goal is to make the transactions more certain. Segwit hasnít made transactions more certain if it has replaced one uncertainty with another uncertainty.

Today, Iím not going to compare one against the other - perhaps I donít know enough, and perhaps others can do it better. Perhaps it is relatively better if all things are considered, but itís not absolutely better, and for accounting, it looks worse.

Which does rather put the point on ones worldview. SegWit seems to retain the certainty but only as outlined above: when ones worldview is full nodes, Bitcoin is your hammer and your horizon. E.g., if youíre only thinking about validation, then signatures are only needed for validation. Nailed it.

But for everyone else? Everyone else, everyone outside the Bitcoin world is just as likely to simply decline as they are to add a full node capability. ďWe do not accept Bitcoin receipts, thanks very much.Ē

Or, if you insist on Bitcoin, you have to go over to this authority and get a signed attestation by them that the receipt data is indeed valid. Theyíve got a full node. Authenticity as a service. Some will think ďbusiness opportunity!Ē whereas others will think ďhuh? Wasnít avoiding a central authority the sort of thing we were trying to avoid?Ē

I donít know what the size of the market for interop is, although I do know quite a few people who obsess about it and write long unpublished papers (daily reminder - come on guys, publish the damn things!). Personally I would not make that tradeoff. Iím probably biased tho, in the same way that Bitcoiners are biased: I like the idea of triple entries, in the same way that Bitcoiners like UTXO. I like the idea that we can rely on data, in the same way that Bitcoiners like the idea that they can rely on a bunch of miners.

Now, one last caveat. I know that SegWit in all its forms is a political food fight. Or a war, depending your use of the language. Iím not into that - I keep away from it because to my mind war and food fights are a dead loss to society. I have no position one way or the other. The above is an accounting and contractual argument, albeit with political consequences. Iím interested to hear arguments that address the accounting issues here, and not at all interested in arguments based on ďomg youíre a bad person and youíre taking money from my portfolio.Ē

Iíve little hope of that, but I thought Iíd ask :-)

Posted by iang at 05:36 AM | Comments (0)

June 21, 2017

9 years after the crisis - British bankers charged with fraud!

The horrible question I asked in my Audit cycle was, why has no auditor, even by accident, spotted a dodgy bank? When we know that in the crisis, pretty much all were. It's a mystery, and the only answers just deepen the mystery - what good an audit if we have no idea if it's representative of a sound bank?

What does it even mean to say "a sound bank"? Folks, today, we're about to find out.

An ancillary question was, why have no bankers gone to jail? Well, Iceland answered the call and jailed a lot of bankers. But no other country. So, in some sense that excludes Iceland, no bankers committed crimes, but the banks were all insolvent, and nobody spotted it?

It's not clear to me, and I smell a rat.

And now, yesterday, the UK's Serious Fraud Office has announced charges against Barlays. For a related crime - what amounts to using fraud to boost their equity in the post-crash turmoil. OK, so I think that's what it is, and as criminal charges have been laid, we the public are somewhat left in the dark, and even the charges have to make their way through court.

So maybe it's something else or maybe it's nothing.

However, unusually, one man thinks he knows what it is, and has written extensively about it. Prof Werner, a noted anti-establishment economist, taught the fraud:

Prof Werner's account retweeted these, so that's good enough to accept that they are real slides. It's for the courts to figure out the facts, but note the careful use of the phrase in the slides - Fact.

Then, to add more colour, another poster said:

And conveniently copied the relevant sections from Prof Warner's 1996 paper "A lost century in economics: Three theories of banking and the conclusive evidence":

That paper is more formerly, Richard A. Werner, "A lost century in economics: Three theories of banking and the conclusive evidence", International Review of Financial Analysis Volume 46, July 2016, Pages 361-379. Which is to say, it's a serious paper, and will be presented as such in court.

But this is no isolated case. The next two paras from the paper are even better:

According to analysts at Italian bank Mediobanca, such bank loans to new bank share investors were a "fairly common practice... during the crisis", whereby Credit Suisse may have been unusual in disclosing this and obtaining regulatory approval. Either way, banks in this way created their own capital out of nothing, thus making nonsense of capital adequacy regulations.

What can we conclude from this, other than that prosecution by the public has moved from the editor's letters page to twitter?

A lot. To review: The SFO has charged Barclays with a crime. The clear accusation is that they paid for their own equity. A company that pays for its own equity cannot be sound, a priori. A fundamental tenet of the corporate system is that the shareholders are separate from the company, and violating that violates the very meaning and essence of shareholdings.

So, in banking, Barclays and Credit Suisse may be doing well, but as corporations they are no longer sound. The hypothetical extreme of this would be that Barclays could simply purchase its entire own stock, and then what? Ridiculous! Only on the blockchain could you imagine such a ridiculous thing!

But back to serious. How could they purchase their own stock in the first place? Prof Wagner also states this is a violation of Section 678 of the Act as above, and "Prohibition of assistance for acquisition of shares in public company" sounds like a pretty clear violation to me.

Several things are interesting to me. Firstly, if an ordinary company could do this, in theory, then it would have limits: it would have to spend cash on doing that, and it only has so much cash, and typically, it would run out. So there is a natural control for ordinary corporations.

But banks don't have that control. Why not? Because according to the "new theory of banking" banks can write loans against nothing. In the good old days, under what is now euphimistically called the financial intermediation theory of banking, banks could only intermediate: they could write loans by moving deposits loaned to them to others. No more.

So there are no controls on the bank doing this other than Section 678. So what happened to allow Barclays to circumvent the law? We don't know but I'm going to make a suggestion: the regulators allowed it. Adding to Credit Suisse, my evidence for this is the extraordinary claim made by auditors that the regulators refused them to allow the write-down of Greek Debt, and thus exacerbated the crisis.

Remember, I asked, why didn't the auditors ring the bell? The alarm bells of society were silenced, and in the end, the only evidence we've seen was that it was the regulators.

Back to Prof Werner.

We learn from this that under the right circumstances it is possible even for an individual bank to show almost any amount of capital to regulators. It is even more easily possible for the whole banking system collectively to do likewise, without directly contravening the Companies Act. Since during boom times an increasing amount of money is created by banks (hence the boom), some of that can be siphoned off by banks to bolster their capital by issuing new equity. The regulators seem unaware of this fact, as their descriptions of banking reveal them to be adherents of the erroneous financial intermediation theory of banking.

Read that carefully. What Prof Werner is stating is that Section 678 isn't important. What's important is that even if you ban it, the financial system is sufficiently complicated that you can't stop it. E.g., "It is even more easily possible for the whole banking system collectively to do likewise, without directly contravening the Companies Act."

Systems engineers will tell you that unless there are negative feedback controls on the system, the system blows up. By allowing the banks to lend from nothing, that negative feedback control is removed. The system will blow up. Hence 2008. And as nothing has been fixed, no new negative feedback control has been added, the future is clear: the financial system must blow up again.

The financial system isn't sound. So the final conclusion of this is that the SFO isn't trying Barclays. It's trying the financial system - all the banks and all the regulators are in the dock, named or not.

Posted by iang at 12:16 PM | Comments (0)