Colin G Platt On Peer-to-Peer
Last week I went out with for a beer and pizza with Colin G Platt of Blockchain Insider fame after we did a podcast interview about my book The Basics of Bitcoins and Blockchains at the 11FS office in Devonshire Square in London. Quite appropriately we settled down at the The Bell, a pub in east London and sometime home of the Ethereum London meetups, and talked about how peer-to-peer cryptocurrency payments are.
Here’s a summary of our conversation. Obviously it is heavily edited and we’re not as witty or eloquent as this in real life (well I’m not anyway).
Colin: So… I read your post. Bitcoin transactions aren’t peer-to-peer eh? I beg to differ. I think they kinda are.
Antony: Well you see, I’m not talking about the network architecture; the nodes themselves are peers and share data with each other without a central coordinator. That’s definitely peer-to-peer.
Colin: I’m not talking about the nodes. We agree on that bit. I’m talking about the transactions.
Antony: Ok so let’s talk about transactions – the tokens themselves. What is a token? In the physical world when I hand you a fiver from the Bank of England, that’s a peer-to-peer transaction. That goes from my hand to your hand.
Colin: Quite, and there is no one who can censor that.
Antony: We’ll leave censorship resistance for another time, but let’s focus on peer-to-peer for now. But that’s not what happens with Bitcoin or Ethereum or any of those cloud based accounting systems.
Colin: Yes, I think I know this bit from your blog post.
Antony: What happens with those is I create an instruction in my wallet then send it to 10,000 bookkeepers to validate it. They forward it to the 10 or so miners who write it to a block, and then the 10,000 bookkeepers store it in their ledgers. Every bookkeeper debits my address and credits your address-
Colin: Wince emoji-
Antony: and that’s not peer-to-peer at all! You, as the recipient, weren’t involved in that process at all. You didn’t even need to exist! How can that be peer-to-peer?
Colin: What was it for?
Antony: What was what for?
Colin: Why did you pay me lots of Bitcoins?
Antony: It doesn’t matter. I paid you Bitcoins for, I dunno, shilling my book?
Colin: So the transaction was done between you and me, peer-to-peer. The business, the deal-
Antony: Yes, but that’s not the payment-
Colin: So let me introduce you to the three parts of *moving* money: (1) The transaction (2) The payment message (3) The settlement.
Antony: Go on… And keep it simple with examples please.
Colin: Ok, you’re at a restaurant and finish your meal. You’ve created an obligation to pay-
Colin: Shut up about Corda for one minute, would you?! You’ve created an obligation to pay. That’s the transaction – the business that sets up the debt. Is that peer-to-peer?
Antony: Yes. Me and the restaurant.
Colin: Is it peer-to-peer irrespective of how the restaurant lets you pay?
Colin: Even if you pay in Bitcoins.
Antony: Eye roll emoji. YES. That’s got nothing to do with the payment, that’s the business transaction.
Colin: Ok great, so we have the transaction, payment, and settlement… The transaction is peer-to-peer. Let’s now think about the payment. How would you like to pay, sir?
Antony: Everyone in London seems to tap their cards now. It’s nuts. Think of the personal data they’re giving away with each tap. Think of the personal privacy implications! Then Visa fails for a while like it did a few months ago and everyone doesn’t know how to pay. That’s why I like cash. No bank is going to monetise my data while-
Colin: Focus, Antony.
Antony: Ok the payment – I guess it’s physical cash, debit card, credit card, bitcoins, whatever.
Colin: And when is the payment done?
Antony: Well it’s obvious isn’t it. It’s when the cash goes into their till, or when their card machine says “Approved” or after 6 blocks on the blockchain-
Colin: Or 5.
Antony: Or 1.
Colin: Or uncomfirmed.
Both: Hahaha yeah whatever.
Colin: So that’s the payment. But is it settled?
Antony: Well with physical cash, the payment and the settlement is the same. With a debit card where the money is in the restaurant’s bank account instantly, it’s also settled, or at least within a few seconds. Credit card I guess settles a few days later or whatever based on how good the restaurant was negotiating with their bank. Bitcoin in theory never really settles so it’s a bit of a hot potato, but in practice 6 confirmations should be ok, probably shorter for a coffee and longer for a house or a lambo.
Colin: So you could define settlement as “When the recipient can re-spend it“.
Antony: I guess so… Like I remember when you deposited a cheque and your bank account would update your balance and show you that you had it coming, but it would only be available to take out of a cash machine a few days later. I guess it has settled when your bank lets you take it out of the machine.
Colin: Finally, we’re there. We’ve talked about the transaction, the payment, and the settlement.
Antony: Yes, that was good. I haven’t really thought about it like that before. What about a cheque in the post? I hate cheques.
Colin: I hate cheques too. I guess in that case the payment isn’t a point in time, it’s more the full process from writing the cheque, telling me you’ve written it, putting it in the post, me receiving it, and me walking down to the bank and depositing it. That’s the payment. The settlement is when my account is credited and I can spend the money.
Antony: Ok fine. There are so many issues with cheques but let’s move on. So what?
Colin: Which bit of the transaction, payment, and settlement is not peer-to-peer in Bitcoin?
Antony: The transaction, as you define it, is peer-to-peer. I guess, the way you define it, it always is. I mean, all deals are done bilaterally. When do you ever *not* do a deal directly bilaterally?
Colin: I thought you worked in financial services. Trading on exchange, in a central limit order book? Clearing? Novations? Give-ups?
Antony: Oh yeah, of course, when you trade on an exchange you do a deal with someone anonymous and then pay yet another party, the clearer.
Colin: Or in crypto-
Antony: Yeah well in crypto the exchange is also the clearer because people trust that the guys running the exchanges won’t run off with the money…
Both: Hahaha when will they learn? / I know right?
Antony: So, the transaction that creates the obligation to pay is bilateral, but the Bitcoin payment – that’s not peer-to-peer. We talked about the payment as the handing over of cash from me to you or the tapping of a debit or credit card. In Bitcoin I guess the payment is, hmm. What is it?
Colin: It’s when you create and sign the Bitcoin tx and you publish it to the network and when the recipient see it has been sent to the network. An unconfirmed transaction – in the mempools but not yet in a block.
Antony: Yes, but whose mempool?
Colin: I suppose it’s the one that the recipient is looking at. So it’s a bit vague, and depends on their level of sophistication.
Antony: And when it has been mined in a block that has been accepted by the node that the recipient is looking at, I guess that’s the settlement? The settlement is defined by the recipient… depending on how many blocks they want to wait.
Antony: So Bitcoin’s settlement isn’t just probabilistic, it’s probabilistic AND defined by the recipient. Mind. Blown.
Colin: Galaxy brain gif.
Antony: Ok where were we? Oh, the settlement. Which we defined in Bitcoin as the movement of a block from the miner to the node that the recipient is watching,
Colin: Yes, well, one block or 6 or whatever. Antony, tell me, is the movement of blocks peer-to-peer?
Antony: Yes of course, we covered that. It’s a peer-to-peer network with no central server.
Colin: So the business transaction is peer-to-peer, the payment is not because you push it to the network, and the settlement is peer-to-peer. So “Bitcoin is not peer-to-peer” is nonsense.
Antony: Well the settlement isn’t peer-to-peer – it’s not me to you. It’s peer-to-peer between the miner and the node being watched by the wallet. But, that’s not what I was trying to get at. I was trying to say that nothing moves between the sender of a bitcoin and the recipient, so it’s not a peer-to-peer token like physical cash. In fact Corda is the most tokenny blockchain because in Corda the data that represents the item of value, the money, the asset, whatever, physically moves from my hard drive to your hard drive. So in that respect it’s more like a token, unlike the public blockchains which are cloud bookkeeping services.
Colin: Stop shilling Corda solutions. I have to do enough of that on the show. Now, back to your earlier comment I wince emoji’d at – you said that the miners and nodes “essentially debit and credit bitcoin accounts in the cloud“.
Antony: Yes, in the “tokens vs account balances” debate, Bitcoin and Ethereum are more like account balances (ie addresses) being debited and credited by loads of computers almost simultaneously instead of by, say one single bank HSBC or wallet like Paypal or Uber wallets or whatever. They are not tokens!
Colin: But it’s not a debit and credit.
Antony: Yes it is! Minus one bitcoin against my address, plus one bitcoin against your address. Debit, credit. Number go down, number go up.
Colin: Tell me, bitcoins are different to money right? They are no one’s liability yet they are an asset to the holder.
Antony: Yes, Bitcoin is different to electronic money. Electronic money is all recorded as an obligation from the issuer (could be a bank, a wallet, or a central bank) ie it’s a liability of the issuer-
Colin: Yes I know that-
Antony: Bitcoin is more like physical gold. It’s no one’s liability. That’s why it’s more like a commodity than like fiat money.
Colin: So clever cloggs, if it’s not anyone’s liability and it doesn’t sit on anyone’s balance sheets except mine and yours, whose liabilities are debited and credited when you send me a bitcoin?
Antony: Err, ok, point taken. No one’s. But I still like to think of Bitcoin’s blockchain as a big accounting ledger in the sky – a transactional one, with the nodes as bookkeepers and the miners as recorders. We can agree on that?
Colin: Yes as long as you don’t use the words debit and credit.
Antony: Number go down, number go up.
Colin: Number go down, number go up.