WBD369 Audio Transcription

WBD369+-+Nadav+-+Large+Banner.png

Why Altcoins are Technically Flawed with Nadav Kohen

Interview date: Wednesday 7th July

Note: the following is a transcription of my interview with Nadav Kohen. I have reviewed the transcription but if you find any mistakes, please feel free to email me. You can listen to the original recording here.

In this interview, I talk to Suredbits software engineer Nadav Kohen. We discuss why blockchains must scale with second layers, proof-of-stake vs proof of work, and tradeoffs of privacy technology.


“You don’t want to use the blockchain unless there’s actually some kind of dispute; all cooperative transactions in the world can exist off of the blockchain and there’s no reason to actually use a blockchain for them”

— Nadav Kohen

Interview Transcription

Peter McCormack: Hi, Nadav.  Good to see you again. 

Nadav Kohen: Good to see you as well.

Peter McCormack: Are you doing well; are you okay?

Nadav Kohen: Yeah, the rest of the world is no Miami, but it's going all right.

Peter McCormack: Yeah.  I had a good time in Miami; it's a beautiful place.

Nadav Kohen: Yeah.

Peter McCormack: It's really awesome.  Right, we've got some things to go through.  Let me tell you why I want to do this show.  I do one of these about once a year because whenever my friends or family or people reach out to me and they're like, "I want to know about Bitcoin, Pete", and then they ask me about other cryptocurrencies, and I try to steer them away and then they try and convince me about why I'm wrong; I always think I'm never good enough to technically explain it. 

I can explain rationally why I think Bitcoin wins, why that's the most important cryptocurrency for the world, but I can't on a technical level.  And I hear the arguments again and again, but I just feel like I want a show to put in front of them.  I've heard you in some very eloquent debates on Clubhouse talking to other shitcoiners about some of the issues they have, so you felt like the man to get on and talk about this.  So, how do you feel about this?

Nadav Kohen: Well, it's not what I normally consider my field of expertise, but I'll do my best!

Peter McCormack: Well, you nailed it on Clubhouse for me, so I think it's definitely in your armoury.  Okay, so I've got a methodology of how I want to approach this.  So, one of the things that I first explain to people, I did it this morning, explain how Bitcoin works, I just start to talk about the blockchain.  So, can you start off by just explaining to me the problem that a blockchain solves?

Nadav Kohen: So, a blockchain is a relatively new mechanism that we have for distributed and decentralised coordination between a lot of people.  So, picture everyone in the world can come together, use the blockchain and they will all come to the same conclusions about what the state of the blockchain is.  So, it is a consensus mechanism, it's usually what it's called, and for example, that can be used to have this public ledger of who has what in terms of, who has what Bitcoins. 

So, if I wanted to send you a Bitcoin, I would publish a transaction to this ledger and then, over enough time, everyone would agree that I had sent that Bitcoin to you.  But a blockchain as a technology has some fundamental trade-offs.  So, the thing that it solves is this big public coordination that is hard to censor and isn't controlled by any small group of people; but the trade-off is primarily, there are a couple of others, that it's somewhat slow.

So, to get everyone in the world to agree that I sent you this Bitcoin should take 10 to 30 minutes to an hour depending on who you ask for how sure you want to be that this is final, so to speak.  So, it's not instant; we have this time after which we achieve finality.  It's a rough consensus, but that is the problem that a blockchain solves.

Peter McCormack: Can we talk about how it works, because I've talked to you before about how my listener base tends to be a range of people, but I do try and make it approachable for the absolute beginners, and there are always new people coming on board?  So, I'm going to do some pretty basic questions.  You talked about consensus, so what is that?

Nadav Kohen: Yeah, so that's essentially everyone agreeing on what the current state of things is.  So, in theory, that doesn't just mean who has what Bitcoin, you can put some minimal amount of data on a blockchain and everyone will agree on the state of that as well; but generally speaking, because things are slow and also the amount that you can put on a blockchain is somewhat limited, in Bitcoin at least, we try to keep it very minimal and just what the state of Bitcoin is, so to speak.  But, by consensus, I just mean that everyone in the world has the same picture of what Bitcoin is owned by who.

Peter McCormack: So, the consensus is like a set of hard rules that the blockchain has to maintain?

Nadav Kohen: Yeah.  The consensus rules are essentially a set of rules that, if you follow, you'll come to the same conclusions as anyone else who follows those rules as well, given enough time.

Peter McCormack: But if you break one of the rules?

Nadav Kohen: Well, if other people try to break the rules, they will not succeed.  So, that's where all of the crypto part of cryptocurrency comes in, and everyone else will rule against them; if you're breaking the rules for yourself, no one else is going to believe you and you're just going to have a bad view of how things are.

Peter McCormack: Well, we can probably give a picture of this; if we just roughly talk about, well I say "roughly"; you, if you explain how a block is created and added to the blockchain, then that will probably explain where the rules come into play.

Nadav Kohen: Yeah.  So, essentially what happens, say, if I want to send you a Bitcoin is, I'll construct a transaction that points to some Bitcoin I already have on a previous block on the blockchain, and proofs that I own it using cryptography, using digital signatures.  So, I sign it and now this transaction which says, with my signature, that I am spending these coins that already exist on a previous block and I'm sending them to you, I take that transaction and I tell everyone about it, and then they tell everyone else about it; it's this big gossip network where everyone gossips about my transaction until everyone knows about it.

Then, at some point, a block gets created by a miner who is doing a lot of work, and essentially a block is just a list of these transactions.  So, it has my transaction that sends a Bitcoin to you, it has a bunch of other people in the world's transactions in it, and it's just this big list of transactions and it also has a reference to the previous block, hence it's a blockchain because each one references the previous one.

There are a couple of other rules that need to be followed to ensure that this consensus happens, but once a valid block is created, which essentially just means that a miner has expended enough power, all the miners in the world essentially have expended enough power, and tried to just guess a bunch of random numbers until they found one that made the rules valid, then that block is considered valid; they gossip about it to everyone else, who gossips about it to everyone else.  Then, everyone eventually knows about this block.

So, at this point, this transaction is known about and considered to have one confirmation but, in theory, someone else could create another block, a competing one that, say, didn't have this transaction in it yet, that went off of the same previous block.  Then we would have to wait a bit longer to see which of these two potential next blocks gets built on top of itself.  So, then you know everyone who's building blocks chooses one of them and builds their next block on top of that. 

Then eventually, over enough time, once you have a couple of blocks built on top of you, it's essentially impossible to change previous blocks, because it requires all of the work not only to create a new block but also to replace all of the old ones, which would require you essentially, in simple terms, to have 51%, more than half of all the world's mining power going towards Bitcoin, which is something infeasible. 

Peter McCormack: So, one of the ways I explain this to people is to think about it like a skyscraper and every block is like a new floor.  What I always say to people is the transactions that you've created exist within a floor, but we want to wait until five or six new floors are built on top; because the reality of going and taking all these floors down and rebuilding them is very unlikely.  But, if you only have one floor, if your transaction's in the top floor, it's a little bit easier to dismantle that floor.  Do you think that's a fair analogy?

Nadav Kohen: Yeah, that's a good analogy.  Then, once you have 10 floors, or 100 floors even, built on top of you, that's never going to be changed; that's very final.  Yeah.

Peter McCormack: It's a different method of payment people have to get used to.  If I was to pay with my credit card or bank transfer or any form of traditional payments, say PayPal, I always know once I've sent the payment, I'm just rest assured that it's done.  But with this, you have to get through this idea of confirmations, and it's quite tricky for people to understand.  But, as long as you've got six confirmations, which are six new blocks built on top, we think you're pretty safe.

Nadav Kohen: Yeah, that's super safe.  Also, it's probably important to note that when you're using things like PayPal or your credit card, the user experience tells you the transaction has completed successfully, but it actually hasn't and it does take quite a while; they have built big, intricate systems to manage the risk involved and deal with the certain amount of fraud. 

In Bitcoin, at this base layer that we're talking about, there is no such fraud; everything is actually, when we say that it's final, it's actually final and irreversible and there's no way to back-charge your credit card transaction or your PayPal transaction.

Peter McCormack: Well, that's another interesting thing to talk about, which I also explain to people is, I talk to them about when you've got money in the bank, it really is a system of IOUs and the only way you can ever actually have that money is if you withdraw it and you have cash; that is essentially final settlement where you've taken that cash.  But until you have that cash, everything's an IOU and you can't be guaranteed the bank will make the transfers and you can't be guaranteed that you'll always be able to access that money, certainly if you wanted to withdraw a large amount.

One of the things I say to people is, with Bitcoin, once that's been sent to you, that is final settlement; you take possession of that Bitcoin and nobody can take it from you.

Nadav Kohen: That's right, yeah.  We imagine that there will be systems built on top of Bitcoin's settlement layer where you'll have a similar experience to using a PayPal or a credit card, where there's just a different layer built on top that eventually reaches final settlement, but in the meantime gives you something else that, for most people, will be good enough.  But with Bitcoin itself, that's right, it's actually where it ends; the story ends when the confirmations are reached.

Peter McCormack: Okay.  So, you mentioned that, because of the nature of this, to be able to have a global system that every single people can essentially have a copy of the blockchain and all reach consensus and agreement, one of the trade-offs is that it has to be slow. 

So, if I make a payment, if I buy something from a website in America, despite what you said, I have the belief once I've made the payment, the payment's done and it's confirmed.  But for Bitcoin, we have to say, "No, you have to wait for that sixth confirmation; it can take up to an hour".  That's essentially Bitcoin's biggest trade-off compared to traditional payment rails in that getting your head around that time.  We will take about Lightning later, but you can cover why it is slow and why that is necessary as part of the architecture of the blockchain?

Nadav Kohen: Yeah.  So, essentially, there are two pieces to this: the first piece is that the blockchain has to remain relatively small if everyone is going to be having a copy of it.  So, if you imagine anyone can throw anything in there at any time in the entire world, we're talking about everyone having a copy, not literally, but similar in scale to a local copy of Google Drive on their computer; by Google Drive I mean Google Drive servers that stores everyone's data, so that isn't going to be feasible for everyone to be able to run a fully validating node in that case.  Not everyone is going to be able to run all of the consensus rules and make sure that this is a big distributed system without rulers. 

One of the limitations here is that you have to keep things relatively small.  The goal in Bitcoin is that anyone should be able to run a full node, so to speak, on their own personal computer; that is currently how the state of things are.  If we were to increase block size or something so that there can just be more in there which would reduce the time somewhat, that would actually make things worse in a lot of ways; it would go counter to the problem blockchains are trying to solve, which is this big distributed, decentralised system of consensus where there aren't a smaller set of people who are in control of that system.

So, that's one of the more fundamental reasons why things are slow, is because at the end of the day, block space has to be scarce, because the amount of space on a personal computer is somewhat scarce compared to what could be demanded.  So, if block space is scarce, that means that we're going to have some slowdowns with how long it could take to get your transaction confirmed. 

The other piece is just with proof of work, how we are actually making things irreversible, building those floors, is not an instantaneous process; it actually requires energy in the real worlds to be expended.  It's not just a number changing a database, it's actually a bunch of power being run through miners and those miners are then doing a bunch of work in order to create valid blocks, which also takes time.

Peter McCormack: So, this is probably where it's a good place to discuss the trade-offs.  One of the first other cryptocurrencies that people often ask me about is Ethereum, and they don't necessarily talk to me about Ethereum and preferring it because it's faster or cheaper and certainly, at some points this year, it's just not been cheaper; but they tend to talk about it being more flexible, you can do more with it, smart contracts are really important.  

I want to get into some of that, but can we also talk about the trade-off that Ethereum hasn't made with regard to their blockchain and why that is very different to Bitcoin?

Nadav Kohen: Yeah.  So, I think those are actually very similar or linked questions.  So, essentially one of the differentiating things about Ethereum compared to Bitcoin is that the things you do in transactions, the language of things you have to do in transactions, is a lot more expressive.  So, you can do a lot more in a transaction; you can put a lot more data; you can do computations; you can do all sorts of operations on data; and you can do a lot more than just financial activity natively inside of a transaction that goes into an Ethereum block.

On top of that, you have a lot more happening.  So, it's not as slow as Bitcoin which, as I mentioned, has the corollary that you have far fewer people able to run these fully-validating nodes, checking all of the rules, to come to that same consensus without trusting anybody else.  So, the normal flow of things, when you're trying to start doing things with Ethereum, is you go download some kind of Ethereum wallet that in the Bitcoin world, we would call it a light client in the sense that you are essentially, to some degree, trusting someone else to give you the correct view of the Ethereum blockchain.  So, you're not actually doing the validation yourself. 

If you did want to do the validation yourself, it is quite tricky, especially in comparison to Bitcoin, to get the entire Ethereum blockchain downloaded and validating all of those roles.  Some people, on their hardware, are never even able to catch up to the current state, so they're never able to use it and that incentivises a lot of people to run their nodes on more centralised services, like Amazon Web Services or something like this. 

Peter McCormack: Well, let's talk about that; let's dig into that because I've run a Bitcoin node here, I've downloaded Bitcoin Core.  It took less than two days and I had the entire blockchain, and my node constantly keeps up to date; it's always downloading new blocks and I'm always keeping up with the blockchain.  I did it all on a, what are these square Macs called, I don't even know what it's called?  What's the little square Mac unit; Mac Mini?  I did it all on the Mac Mini and it's all running and it's perfectly fine.  The Bitcoin blockchain's, what, about getting closer to 400 gigabytes now?

Nadav Kohen: That's about right, yeah.

Peter McCormack: But, if I wanted to do the same with Ethereum, do you know how much data I'd have to -- we're talking terabytes, aren't we?

Nadav Kohen: Yeah, we're talking terabytes.  I don't know the exact number right now, and there are also these distinctions between, are you in archival node or are you just a fully-validating node or all these things?  In Bitcoin, everyone runs the equivalent in archival node, so to speak; you ran all the data and validated it, or at least that's the default for what you run.  So, yeah, we're talking a lot more.

Also, there's a lot more computation that has to happen on that data as you were validating it whereas, in Bitcoin, it's mostly just checking digital signatures and not running other kinds of computation.  So, yeah, I would expect you to be able to do it on your Mac Mini.

Peter McCormack: Well, I tracked Eric Wall once on Twitter trying to create an Ethereum full node and he was struggling.  But you did talk about data centres, so are we to assume the majority, if not most, if not all, full archival Ethereum nodes are running out of data centres?

Nadav Kohen: Certainly the majority.

Peter McCormack: Do we know how many there are?

Nadav Kohen: So, it's hard to get good numbers on these things because it is, at the end of the day, you could run a node and not tell anyone about it, kind of thing.

Peter McCormack: Of course.

Nadav Kohen: But the estimates I've seen out there are that there's something on the order of 1,000; yeah, I think that's about right, fully-validating Ethereum nodes, and I would assume a very large percentage of those are running on some kind of cloud computing service.  It is very hard for people, especially everyday people.  I talk to people who are software engineers at small start-ups or companies that have trouble getting an up-to-date Ethereum node running, let alone someone on their personal computer trying to do this thing.

Peter McCormack: But that's not essentially a death nail for Ethereum.

Nadav Kohen: Sure.

Peter McCormack: If we're trying to be balanced and objective and fair, it just means there are different trade-offs.

Nadav Kohen: Certainly, yeah.  So, that brings us to what do you get for the centralisation that's inherent?  What you get is that you can do a lot more natively on the actual blockchain.  But, I guess, at the end of the day, the reason I don't think that this trade-off is worth it is because you can do most of those things off chain so to speak.  The only thing you need a blockchain for is the thing for which blockchains are good at, which is this final, distributed, uncensorable settlement.

Most of the time, because it's so easy to do so much on Ethereum, they have a language modelled after like JavaScript, which is one of the most widely-used programming languages out there; it's very easy to just write a bunch of smart contracts and put them on the blockchain and then it works.  But it's also super expensive to use, because everyone's trying to do all of this stuff on the blockchain itself.

Even if you make block space a little less scarce, it still is scarce, and if everyone is trying to use the blockchain so heavily at the same time, it just doesn’t scale very well.  We can see all of these scaling troubles of trying to do everything on chain already on Ethereum, and Ethereum certainly does not have worldwide adoption in the way that someone might hope that such a system would do in the future.

So, even in Ethereum, they understand at this point that how you scale these things is with Layer 2s and going off chain and doing things off chain.  Then I think the more you look into how you scale these systems, the more you see that, at the end of the day, you don't really need a very, very completely expressive base layer and that that's not actually a trade-off really worth making.

Peter McCormack: Another thing that I find concerning about Ethereum is that, if we looked at Bitcoin, my biggest worry, concern for myself ever, is a mistake I make that leaves me to do something stupid with my Bitcoin or to get hacked.  So, I've set myself up a multisig solution, distributed my keys and I feel pretty safe and comfortable with that.  The only times I tend to hear about people losing their Bitcoin is from their own personal mistakes and trade-off decisions they've made in holding their Bitcoin or trusting someone else; so, they've got hacked by a scammer, they've given away their private keys, or they've messed their security up. 

But something I've noticed with Ethereum is that people can lose money because of a bad smart contract or a hacked smart contract, things that get locked up.  They could have the best security in the world, they could really put a lot of decent practices in, but there are things that are out of their hands which can lead to them losing some of their Ethereum or tokens.

Nadav Kohen: Yeah.  So, because everyone writes very extensive smart contracts and at the end of the day, those contracts, that code, its execution determines who has what, if someone has a bug in their code, as always happens when you're working with large codebases at scale, then you end up with people losing money or funds being allocated to places that the users aren't expecting.  So, a great website to scroll through that I found recently is called the rekt.news and it describes all of the "hacks", though Ethereum is not being hacked; there are contracts on there that have been poorly written that can be exploited by people, which is normally reported as a hack. 

So, it's not that someone's breaking cryptography or something like this and stealing funds from users.  If you viewed the Ethereum blockchain from a super purist position of like, "Code is law", as they used to say, then this just normal operation; it's a bunch of people unexpectedly losing their funds, because that's what was in the code, because there were bugs in the code, or at least unexpected features in the code.

Peter McCormack: That rekt.news is interesting.  I just had a quick look and there are 16 events in May alone; pretty much every two days, there's been an event.

Nadav Kohen: Yeah, and each of these things, it's just millions and millions and millions of dollars' worth of coins being stolen left and right all the time.  Yeah, that's certainly another trade-off of having an expressive base language, especially expressive base language census, such as Solidity which is, as far as programming language theory goes, the most secure thing to write super money-sensitive code in.  I would not use a language like JavaScript to handle my money, just as a programmer.  But, yeah, so there's that added design decision in Bitcoin. 

Not only is it restrictive to keep things small, we could have other ways of keeping things small, it's also super-restrictive because we don't want there to be footguns, which is what we call these -- you could picture a shoe that has a gun pointing at your foot and it's like, "Why would you design such a shoe?  Someone's obviously going to, at some point, pull that trigger and shoot themselves in the foot".  So, we try to avoid all footguns and make it super minimal so that you really have to work hard to mess up, so to speak.

Peter McCormack: So, I got asked a question today on Twitter of what a maxi is and I tried to think about whether I am or not, because sometimes I know I act like one, I can be a bit toxic, a bit dismissive of other cryptocurrencies but, to be honest, I did reply honestly, I said, "Look, my work is Bitcoin and that's what I focus on, but I can see a time where I would potentially use Monero because I'm not particularly competent technically; trying to create a private transaction on Bitcoin and no trace of what I've done, that would be very difficult to me; I would probably mess it up.  But I know, with Monero, I feel a little bit more comfortable creating such a transaction.  So, I can see scenarios where I would use Monero; I don't hold it, but I can see that".

I also said, "The thing about Ethereum is I don’t like it, I don't understand it, there are a lot of things that I'm not particularly a fan of, but at the same time, large parts of the Bitcoin ecosystem benefit from stablecoins".  There are people who use stablecoins to trade in and out of Bitcoin, and stablecoins do benefit people around the world who want to hold a digital asset, but they don't want to hold Bitcoin because of volatility.

So, I questioned myself saying, "Well, am I being a hypocrite because I support the idea of stablecoins but I don't like Ethereum?" you can put TRON in that bracket as well.  So, I don’t care if people want to use Ethereum; it's their choice.  I'm not happy with the trade-offs and I don't really use stablecoins anyway, but one of the things I wanted to ask you about is that there appears to be some concerns with Ethereum long term: one, the bloated blockchain; and secondly, the move to something which is called proof of stake, which is a different consensus mechanism from proof of work, which is Bitcoin. 

I know I've put a lot out there in this last, I don’t want to call it a rant, but this last point I've been making; I guess what I'm asking you is, I'm not asking you to validate whether Ethereum is useful or not just because stablecoins are, but what are the long-term risks that Ethereum faces because of their trade-offs; and how much concern is there around the move to proof of stake?

Nadav Kohen: Yeah.  So, I guess, first off, you're totally right that bloated blockchain is a big problem, especially seeing as -- earlier I forgot to contextualise the numbers; the 400-ish almost gigabytes of the Bitcoin blockchain, that's over a decade's worth of blockchain. 

With Ethereum, we're actually talking on much less time and much, much, much more data.  So, as time goes on, Ethereum is being used a lot more right now than its first couple of blocks when it was first created, so we should expect it to grow even more, even faster to some extent.  So, certainly that is going to be an issue; if it's already an issue right now, you shouldn't expect there to be a very large distributed network of fully-validating nodes, and you'd run into all the issues that come with centralisation when trying to…

The problem blockchains are supposed to solve is that they're supposed to give you this big distributed decentralised network, which isn't necessarily a good in itself, but it does mean that a government can't come in and censor your transaction easily or all sorts of other games that can be played with more centralised systems.  Control does not exist in some small groups of people's hands, and that isn't necessarily the case if you keep on making it harder and harder for people to actually check the rules.

Peter McCormack: Actually, I've got just a question on that because one of the things I'm aware of with Bitcoin is that it is censorship resistant.  If I want to send Bitcoin to you, it will get to you.  I think the closest we've got to censorship of the Bitcoin blockchain is OFAC-sanctioned addresses, which aren't actually censoring the addresses, they're just scaring people into sending transactions to them. 

But, specifically on Ethereum, one of the things I'm aware of is, with some of the stablecoins, if you look in the terms and conditions, they actually say they can blacklist addresses.  So, why is it possible for them to actually blacklist addresses in Ethereum when you can't do that on Bitcoin?

Nadav Kohen: Yeah.  So actually, one dirty secret of the smart contracting world is that, I guess I don't know exactly how to qualify this, but there are plenty of smart contracts out there which have upgrade mechanisms meaning that, if a bug is found, they're going to want to swap off to some other fixed contract. 

One way of doing this is just a certain number of people need to sign-off; essentially, it's some version of having admin keys for the smart contract.  So, you can imagine there being some mechanism by which some relatively small group of people can decide that some addresses just aren't allowed to use this contract, which would essentially censor that activity.

So, aside from Ethereum as a whole, which is what we've been talking about, individual projects and contracts on Ethereum themselves can very easily be fully centralised, and it is, which begs the question, "Why would they be using Ethereum for this?"  You're making this trade-off where you're getting slower, bloatier, harder-to-use database and you're getting nothing in return, because you're just centralised at the end of the day, you're not using this decentralisation very much.

So, I do think that there is a lot of marketing that happens that is maybe another piece of the trade-off, that's what they actually get from this and it's not actually necessarily always technological innovation that is happening behind a lot of projects.

Peter McCormack: Yeah.  So, if you have those centralised keys, you might as well just build this on a traditional database, which would probably be cheaper, faster, more efficient.

Nadav Kohen: Yeah.  You can even have a distributed database but just between the people who would have admin keys or something like this.  You don't need everyone in the world to be validating your database if it's just a private project.

Peter McCormack: So, let's talk about proof of stake then, and we should probably talk about what proof of work is that Bitcoin uses and why that's important and why that is, what we believe as bitcoiners, the fairest way to run the consensus.

Nadav Kohen: Yeah.  So essentially, how proof of work works is a valid block, let's start there, is one which follows all of the template rules, it's a list of transactions, it references a previous block, it has been written down correctly so to speak; but then there's this one extra rule, which is that the hash of the block has to satisfy a certain constraint.

Now, a hash, you can think of it as just this magic cryptographic function that takes in some data as input and spits out a random number; that's how we model hash functions.  So, you can think of this as just a pseudo random number associated with a piece of data, and a block is only valid if its hash is very small as a number.  So, there's one spot on the block that is just a number, and it doesn't have any rules associated with it; it's called the "nonce", which is a one-time use number. 

All that you do with the nonce is, if you're a miner and you're building one of these blocks, you write down all the transactions and you reference the previous block and you do all the things you need to do.  Then, you start just guessing numbers to put in for this nonce, and then you run this hash function, which spits out a seemingly random number and then, if the number isn't small enough, which it usually isn't, then you try a different number and guess again, and you'll get a completely different random number.  You just keep doing this over and over and over again, and this is what is taking up the energy; you're computing a bunch of these hash functions. 

Computing a single hash function takes milliseconds or less; it's very, very fast.  But, because of how small the outcome needs to be compared to what it could be, and there's a uniformed distribution, it's as equal that you get any number and there are way more big numbers than very, very, very small numbers, and so this is the work that it takes.

Miners have to do this over and over and over and over again everywhere in the world.  On average, over the entire world, you get one block that's cracked every ten minutes.  When we actually adjust how small the hash needs to be to keep that property, we get about one block every ten minutes.  No matter how much energy is being thrown at the Bitcoin Network, we should be getting about one block every ten minutes. 

But what's really nice is, once you have one of these valid blocks, someone found a nonce that works, then validating that the nonce works takes a millisecond; you just hash the data once as opposed to some penta-something.  There's some crazy number of hashes that are actually computed before you find the correct block.

Then, the reason that this gives you nice security and immutability as we call it, which just means things don't change, so irreversibility, like we were talking about with the skyscraper analogy, is that once you've built that block, that took the entire world some very large amount of energy expenditure and work essentially to compute; now, say, you've got a couple of more blocks built on top of it.  Now the consensus rules, the rules you follow if you want to get to the same conclusion as everyone else, is you follow the chain that has the most work done on it.

So, in simple terms, you can generally think of this as follow the longest blockchain.  So, if someone else wants to reverse this transaction and not include it in the blockchain, they would have to go back three, six blocks or something, go to the first block right before your transaction was included; then they'd have to build off that their own block, they'd have to expend about as much energy as the entire world did in order to find a correct nonce that gives you a valid block, and then they'd have to do that again six times.  By the time they'll able to do that, they have to do it many more times probably because more blocks have been added during this.

So essentially, if you model this in simple terms, the only way that this works is if you have more energy yourself than the rest of the world combined.  If you are able to do more hashes than the rest of the world combined, eventually you'll catch up, otherwise you probably won't.  So, that is where the security of Bitcoin comes from.  So, the energy expended, if you could put a number on that, which many people have put many approximate numbers on that, that is equal or proportional to the security of the Bitcoin Network.

Proof of stake, which is something that Ethereum will be going to, but currently Ethereum still uses proof of work, there are lots of other blockchains though that already use proof of stake, is a separate system that avoids work entirely and essentially just tries to play this, I'll call it loosely a game, in order to decide which blocks are valid and the ordering of things and all of these consensus issues. 

Generally how it works, as the name describes, is if you hold the coin for this blockchain, you can stake that coin to be entered into this lottery or vote depending on -- proof of stake itself is not one thing like proof of work is, it's actually somewhat broad and there's delegated proof of stake and this other kind of proof of stake and each blockchain has its own variation. 

Many documentation sites that I've found failed to actually talk about it in terms of an adversarial model, like when you find documentation about proof of work, you'll hear about 51% attacks, because that's how you model the security.  It's like, "What would it take to attack this system?"  Whereas, most documentation out there does not talk about how you attack proof of stake, so it's a less well-understood security model if you will.

Peter McCormack: But you must have thought about it.

Nadav Kohen: Yeah, I've spent some time.  But actually, what I found is that one of the best places to find critique of proof of stake, that's actually looking at it critically in an adversarial model, is look at a different proof of stakes project that discusses why they took those trade-offs.  So, you can find some other blockchain's documentation about why they followed different rules than Ethereum, and they'll critique the Ethereum proof of stake rules and then you'll go somewhere else and they'll critique their rules.  So, that's a fun titbit.

But essentially, at the end of the day, what you're doing is you have this game played between stakeholders, so people who actually hold the token where, by some mechanism, one person is chosen to create the next block and put it out there.  If they don't follow the rules, then there is some other game played where, in theory, what should happen is that their stake should be either burnt or given to someone else or, in some way, they should be punished for cheating. 

The problem here is that, at the end of the day, if you actually do look at it adversarially, you're looking at this pseudo government structure where you have maybe some checks and balances, but usually it's a pretty straightforward thing, but where everyone is anonymous and you literally buy your votes; votes are literally just mined. 

So, you take all the worst things about government and amplify them and get rid of a lot of the cheques and balances, the judicial system and all of the rest of it, and it's just some small group of people who aren't elected but rather buy their votes, get to decide what happens if you view if from a cynical model where you're like, "What would it take to actually attack this system?" as opposed to what most documentation shows which is, "What's the happy path; how does it work when no one's attacking the system?" which is a very different story.

An additional problem with this is that you're then rewarded for your activity in staking.  So, you have this self-perpetuating system where, in Bitcoin, you have to actually expend real world resources in order to get this block reward and, generally speaking, most miners' activity, the amounts that they make, they work at pretty thin margins whereas, in a proof of stake model, it really is like, in some sense --

Peter McCormack: 100% margin.

Nadav Kohen: Yeah.  Assuming that you don't get your stake destroyed or something like this, the people who have more money get more money, so to speak, which is familiar.

Peter McCormack: Yeah.  Well, you say familiar, because it feels a little bit like the system we're already living in.  People often talk about the Cantillon Effect with regard to the fiat money system, and it feels like proof of stake is a repeat of this.

Nadav Kohen: Yeah, it certainly has some undesirable properties.  And then the other thing is, it tries, especially with its name and how it's presented, to borrow the brand power of proof of work, but in reality, it is like a very different system.  I like to think of it more as a trust model than as this big, distributed consensus model.  You could think of Bitcoin mining as a trust model, but there are just so many parties involved and the barrier to entry is low enough in terms of, if you have a competitive advantage, you'll be a fine miner. 

It's also something that you have to, in Bitcoin, upkeep; you can't pass it down to your children, whereas you could imagine someone who has a lot of stake passing it down to their children who then don't necessarily have any -- it starts out as the people who actually care about the system are the people holding the stake, but no one's to say their children will care about this system and won't just abuse all of the power that they get from that, so that's another consideration.  But -- I lost my train of thought on what I was going to say, I'm sorry.

Peter McCormack: That's fine. 

Nadav Kohen: Right, I was just going to say proof of stake very much is closer to trusting a much more not really governmental game, as opposed to Bitcoin, which is more just this very simple well-understood, very distributed game, but I guess I do personally view proof of stake much closer to just a trust model that, in theory, you could model on a Bitcoin blockchain if you're willing to trust that 200 of 399 people; so, the majority of these 399 people are going to act correctly.  Then, you might as well just use a very, very large multisig on Bitcoin and use them there, instead of having this entire separate system that has all these games that they can play and be rewarded for cheating.

Peter McCormack: Yeah.  One of the things about Ethereum that I've struggled to see in the same way as maybe some Bitcoin maxis is when they refer to Ethereum as a scam, because in some ways, Ethereum is better than what we have as a current centralised banking financial infrastructure.  There are certainly some things which are just better than it; it's less centralised, there are certain things about it which are -- I would say, whilst it may be not be trustless, it's still fairly permissionless.

Nadav Kohen: Yeah.  I've been talking a lot about how, in theory, you can do all of these kinds of things in Layer 2s in Bitcoin.  This is all very cutting-edge research that people are building these things out today; things like Lightning already exist, but the next version of Lightning is going to have even more stuff you can do.  As we move forward, it's more that we know how to do these things but that doesn't mean that, if you want to make a start-up and you want to do something with Bitcoin, it could be significantly harder to do today than if you used something like Ethereum or some other blockchain. 

I guess I tend, personally, just because I'm more on the research side of things, to think on the super long scope where I can see where things on Bitcoin are going, and I'm not worried about there being some kind of lack of functionality.  But I totally understand that, today, it's a lot more work because we haven't yet built out all of this to do things on Bitcoin as opposed to someone else or somewhere else.

I actually like to use the skyscraper analogy for this as well, a different one, where I think of, if Bitcoin were trying to construct the super long term for the entire world to use system and we want to build the skyscraper, so we've got to go down super deep into the ground to build this foundation and it's going to take a very, very long time.  We're still starting to come out of that underground section and start to build some floors on top; but in the meantime, other people have built little four-storey buildings that you already live in and you can go be in there.  But there's no way that you can take that thing, that foundation and build a skyscraper on top of it and have it be safe; that's not how it's going to happen.

So, from a long-term view, which I think is probably the view to take if you're thinking about long-term things I guess, if you're looking to put your wealth into something or use something for your country or something like this, you want to take that thing with the super deep, deep foundation.  Even though maybe it can't do everything today, it can do some bare minimum financial transactions and some other interesting things on it today.

In the future, we're going to have this giant skyscraper and, if you had settled for the four-storey building, you're just stuck with that and that's not going to scale.  The entire city can't live in a four-storey building; you need a much, much larger building for that.

Peter McCormack: Well, that's quite interesting because Ethereum 2.0 is in the works and it looks like Bitcoin's nailed it in its first iteration and there isn't a requirement for a massive re-architecture.  Now, look, I know you'll say there are versions and their reversions and upgrades; they are upgrades, but Ethereum 2.0's essentially a re-architecture of the system.

Nadav Kohen: That's right.  Yeah, all of Bitcoin's upgrades to date have been backwards compatible.

Peter McCormack: Yeah, and what I tend to think about is, going back to what I was saying previously with Ethereum, in many ways Ethereum is better from the centralised banking system we have now, but I just see it in terms of money, purely in terms of money and a way of storing wealth, I see it as significantly inferior to Bitcoin.  But there are also certain things about Bitcoin which I think are still inferior to using pounds and dollars, mainly volatility, acceptance, etc, etc.  Bitcoin hasn't solved everything just yet.  As a long-term saving account, which is hedging against the debate on the currency, I think it's great. 

So, I just don't see a use for Ethereum for me, but I've struggled to call it a scam, because some people have found use cases.  It's not for me; I've got no interest in it.  I think calling it a scam actually, if you call everything a scam, it loses meaning for what a real scam is, like a one-coin or any kind of full-on scam that's existed. 

I tend to say there are scams, there are silly ideas and then there's Bitcoin; that tends to be my thing.  I know that some maxi's going to be like, "You're a fucking idiot", etc, but it's just that's the way I logically think through it, because if it's solving a problem for somebody, if they want to use it, then fine; somebody can transfer wealth through Ethereum and they can spend it.  I might not like it, but it is serving a purpose, but nothing you've said has made me want to own Ethereum or use it.

We could talk about lots of other different blockchains.  We could talk about Polkadot and Chainlink, etc, but I think generally you'll be repeating yourself, and there are a couple of other things I do want to talk to you about instead.

So, one of the things that Bitcoin solves is a mass-distributed network, but traditionally it's not been great for small, fast transactions, yet we do now have what is called the Lightning Network.  I was using that in El Salvador; I was buying cups of coffee.  This is really Bitcoin expanding to that point where it can be a transactional system, because it has this transactional layer.  So, do you want to explain how, you don't have to go into too much detail, what the Lightning Network is and what this adds to Bitcoin?

Nadav Kohen: Sure.  So, the Lightning Network, one way of thinking about it, there are many, is the problem that the blockchain solves is that it lets you reach this global distributed consensus without any centralised rule between peers that don't necessarily have to trust one another.  We have this nice Don't Trust, Verify ethos where you don't have to trust the person who you're paying to act correctly or the person who's paying you; you can just verify all of that.

One of the key insights behind the Lightning Network is you don't need to use the full power of the blockchain, this super, mega consensus-building machine, to buy a cup of coffee.  It's like you wouldn't go to the grocery shop in a tank and be like, "Sell me groceries!"  No, they want to sell you groceries.  Most financial activity that people experience day to day is consensual and good for both parties and something that people don't need violence or blockchains to enforce.

So, what the Lightning Network lets you do is it lets you avoid using the blockchain unless there's actually a dispute of some kind.  So, it essentially uses the blockchain as a settlement layer, and only as a settlement layer, and then all of your other transaction activity is just happening without going on the blockchain, and it's only peer-to-peer and it's not the entire world that needs to know about it.  It's very fast because you don't have to go on a blockchain, but it's still fully enforced by the blockchain in the sense that, if ever there is a dispute between people, they can just actually go on the blockchain and have the rules of the blockchain settle their dispute.

So, in some sense, it's this trustless cooperation mechanism.  So, it's trustless because you're still backed with the Bitcoin blockchain, but it is a cooperation mechanism which allows you to avoid actually using the blockchain and having all of those downsides.  It's a very specific cooperation mechanism that uses a bunch of interesting cryptography and other things like this to allow you to take these off-chain transactions, just very quick, less than two seconds, scan a QR code, hit send, it's done, kind of user experience. 

In 99.9% of all of the cases that you'll see in the world, that's the end of the story.  Then, only in cases where someone is misbehaving do you actually have to use the power of the blockchain to punish them.  I've described it this way because this describes a lot of Layer 2 very broadly.  It’s not just the Lightning Network; other things built on top of Bitcoin will have these properties that you don't want to use the blockchain unless there's actually some kind of dispute. 

All cooperative transactions in the world can exist off of a blockchain and there's no reason to actually use a blockchain for them.  Lightning is the first iteration of this; it's primarily focused just on transactions, not on fancy contracts, which is the stuff I'm working on, which will be going on Lightning in the future.  But, these days, you can use Lightning to send Bitcoin around without actually having to use the Bitcoin blockchain directly.

Peter McCormack: So we can buy coffee!

Nadav Kohen: You can buy coffee! 

Peter McCormack: I want to know a little bit more about what you're working on in a moment.  Just the last thing I wanted to touch on before we get on to that is, I do want to talk a little bit about Monero; have you spent time looking at that enough for me to ask a couple of questions?

Nadav Kohen: Depends on the question!

Peter McCormack: Well, look, I've always struggled to dislike Monero.  I think it has this interesting origin story, like Bitcoin; we don’t really know who created it.  I have used it in the past, and the reality is, as I said earlier in the call, if there are certain transactions I would want to do back when I first used Bitcoin properly was to get cannabis oil for my mum for treatment, so if I wanted to do that now, I would be nervous using Bitcoin, because I now know that I'm probably KYCed on all my coins and can be tracked.  If I do mix them, then maybe there are certain places that won't accept…

There's a lot I don't understand, and I'm very nervous that I would still be tracked, even if I thought I did everything right.  I feel a little bit more confident using Monero.  So, despite what others think, I could see a use case where I'd want to use it.  Also, whenever I talk about Monero or the Monero shills or Monero fans, whatever you want to call them, they will jump down my neck and go, "Well, Bitcoin isn't fungible; Monero is fungible", etc. 

So, firstly I want to ask, can you just explain what fungibility is, why Bitcoin doesn't have it and why Monero does?  Then, my second question is, are there any critical flaws with Monero that I'm not aware of?

Nadav Kohen: Sure.  So, fungibility is the idea that, if I have one Bitcoin here and one Bitcoin here, if I swapped those and now I had that other Bitcoin instead of this one, then I would be in the same place that I started.  So, you can think of cash as fungible; if I have $1 billi in my hand and you have $1 bill in your hand and we swap, neither of our lives have really changed, so to speak.

So, the claim that Bitcoin is not fungible comes from this idea that different transaction outputs, which as we discussed earlier, really what it means to have Bitcoin is that someone has sent it you previously and you have not yet spent it, so that's an unspent transaction output; so that's the fast version of what's a UTXO.  But essentially, the idea is that, if you then had a different UTXO, the thing about Bitcoin is you can go audit the entire history of each coin and they would have two different histories. 

The worry is, "What if someone does blacklist an address and then that gets sent somewhere else?" and, "Somewhere in the history of this coin, there's a blacklisted address", and, "Somewhere in the history of this coin, there isn't", or something like this.  So, the claim that Bitcoin isn't fungible comes from this notion that Bitcoin is not particularly private about coin history and things like this.

I don't know that most people would agree with that, even today, but I think most people would agree that we are moving towards that not being an issue in Bitcoin at the very least, if it isn't already an issue.  Things like Taproot, which Taproot is the recently locked in upgrade for Bitcoin, really improved things like fungibility.  The notion that you can create bad coins by blacklisting addresses is becoming less and less actually enforceable and practical; it's a dubious claim. 

You can execute things with the new Bitcoin upgrade, like CoinSwaps, where you can untraceably swap coins from one place to another, and also there are things like CoinJoins and using Lightning and other things like this which are off chain, essentially to make it impossible to actually enforce a ban on a person in the real world. 

So, I think that it's a much more nuanced conversation in any direction, whether you're talking about Monero or Bitcoin, and it's disingenuous to just go with the one-liner; there's a little bit more to it.  But certainly, I think you will find that among bitcoiners, if any other coin had an even slightly soft spot within them, Monero would probably be that coin that they're like, "Okay, whatever, Monero can exist" if they're a Bitcoin maximalist or something like this.

I think the key things to consider are the following: so, I think the use case, so to speak, especially today, this is another thing where I think in the future, the ability to use Bitcoin privately will be much easier than it is today.  There will be tools that just work out of the box for, if you want to specifically use Bitcoin privately.  There are trade-offs and some people might not want to use those tools, but people who do want to won't have to be software engineers with a PhD in how to analyse privacy on a blockchain to know if they're doing it correctly; I'm exaggerating a little bit but not by too much.

Peter McCormack: I understand.

Nadav Kohen: So, essentially, I think in the future, maybe I'll re-evaluate, but in the meantime, as I said, if you want to do certain kinds of things on Bitcoin today, there are use cases for other things.  The first thing to note is it doesn't mean you should necessarily go put all of your savings in this thing, because if it's being used only because people want to use it for private transactions, that doesn't bode well as a store of value necessarily, but maybe it's fine as a medium of exchange for in and out scenarios, at least to some extent.  So, that's one thing to keep in mind.

Another thing to keep in mind is that its goal is privacy.  A key difference between Monero and Bitcoin is Bitcoin wants to be this world currency that works for everyone and that you can store your value in, and because of that, we've made some design decisions, such as the one I mentioned previously that all Bitcoin upgrades are backwards compatible.  We're not going to go pull the rug under and be like, "You have to update otherwise you don't have money!" kind of system. 

In some sense, people talk about, "We're not allowed to go and invalidate Satoshi's coins; that would be bad!"  Those will have to be spendable in the future.  Monero, on the other hand, and a lot of blockchains that are out there that don’t have the same goals as Bitcoin, they take this other trade-off where, we call it hard forking, but essentially it's just a non-backwards compatible upgrade to the network; so, it's an upgrade where everyone has to change. 

So, one of the tenets in Monero is that everyone has to use the same feature set.  So, when they upgrade their privacy features, everyone has to use the new one; they can't partition, like some users using Version A, some users using Version B, because that's bad for privacy.  So then, that's one of the bigger trade-offs, I would say, to consider is that you have to upgrade all the time, and it's not the kind of thing that you can easily just put something in it and then walk away for a couple of decades and then come back to it; that might not be super trivial.  So, that's one thing to consider, whereas Bitcoin takes this opposite approach.

Then the second thing to consider may be on a longer timescale which, again, maybe this is not actually an issue today, but in the future, the hope is that there will be potentially many more people using the privacy tools that are easily available to people on Bitcoin than the total number of people using a project like Monero.  I'm saying this could happen, I'm not saying that this will happen.

Peter McCormack: Yeah, it's makes sense.

Nadav Kohen: The goal of forcing everybody to update is so that you have as big an anonymity set as possible.  But in Bitcoin, we keep all of our old versions and all these things like this, but if we actually get this giant mass adoption that Bitcoin is built for, you might actually have a larger anonymity set over here on Bitcoin than you would using this other tech.  But I, personally, haven't made up my mind on whether or not that is how it will play out, or maybe Monero will always be around for certain kinds of use cases.  I don't picture it being a store of wealth, but I don’t think anyone would be like, "That's not what it's built for" anyway, so it's not a problem.

Peter McCormack: Well, l'm there with Bitcoin as my store of wealth.  There's nothing that's come along that remotely challenges my thesis, and I imagine, for quite a long time, perhaps even the rest of my life, I'll be using Bitcoin as a store of wealth because I'd be surprised if something comes along which is a superior technology for that.

Nadav Kohen: That would be a nice surprise!

Peter McCormack: Yeah.  It's a lot about what Dan Held talks about, where it's the immaculate conception of Bitcoin, which is something that's really hard to beat.  So, I'm pretty much there with Bitcoin and with something like Monero, like I say, I would still use it as a medium of exchange for certain things if felt like I had a private transaction to do.  The thing is, I don’t; that doesn't really come up for me. 

Some people say, "Well, you should care about every transaction being private", and I'm like, "I understand but just the trade-off of buying the coins, sending them, selling if I need, it's just a bit too much for me; I just can't be bothered".  That's why, even now, sometimes I still use PayPal because it's just easier than using Bitcoin.  Sometimes I still use my bank.

I've accepted these trade-offs, but there is, I know, certain scenarios where I may use Monero.  I understand there'll be certain scenarios where someone may request Monero from me, and I'm okay with that.  I'm absolutely fine with that, but it's good to know those trade-offs.

Awesome.  Well, listen, I think we've covered enough on this stuff; I've got more on my list, but this I think covers the main things I wanted people to get an understanding of.  But I would love to hear about what you're working on, especially with smart contracts on Lightning.  I probably won't understand anything you're talking about but it sounds interesting.

Nadav Kohen: Sure.  So, the big project I'm working on has a big, scary name which is Discreet Log Contracts; we'll call them DLCs because none of those words are too important for anything I'm talking about.  But essentially, they are a way of having what are called oracle contracts on Bitcoin.  An oracle, you can think of it as an entity which attests to something that happens in the real world and brings it into the digital world. 

So, they're a trusted entity, at least somewhat trusted, not necessarily like, "I trust you with all of my wealth!" but more like, "I trust that two of these three oracles will tell the truth and, if they don't, I guess I lose the small amount of money I put in this bet with my friend", or something like this.  But essentially, what DLCs let you do is they let you enter into fully peer-to-peer, no third party involved in actual setup or execution contracts; who gets what Bitcoin just depends on something that happens in the real world. 

So, you can imagine there are plenty of people we were testing things out with in Miami who were making small bets on the Logan Paul v Mayweather fight and we had some oracles that were attesting to that event.  People can pick an oracle, find someone who wants to take the other side of the bet with them, set up one of these Discreet Log Contracts, or DLCs, with that person and then when the thing happens in the real world, that executes the actual contract on Bitcoin.

The goals for DLCs are, we want to use the blockchain as little as possible, so all the contract logic, all that stuff, that's all off-chain, fun cryptography stuff I do; and the only thing you see on chain is Bitcoin moving from one place to another.  So, it's only for the transfer of value that we're using it for, and because of that, we're going to move these things onto Lightning in the future because Lightning also lets you do this transfer of value. 

At a high level, you can picture using DLCs for things like prediction markets, things like some financial derivatives markets.  A lot of people these days talk about DeFi; this is like Bitcoin DeFi in some sense.  I know that some people really don't like it when I call it that, but I'm calling it that anyway.  But essentially, in my mind, the reason I'm interested in DLCs is because I just think of it as one of those foundational building blocks in this skyscraper for most interesting contracts that move Bitcoin around are going to have to do with things in the real world, so we're going to want some way of bringing those in.  So, it's just this building block of allowing real-world events to affect where Bitcoin goes on the Bitcoin blockchain. 

None of this requires new blockchains; it's just some fancy, cleverly-constructed cryptography mixed with some other hard work that goes into it, and hopefully some day that goes onto Lightning along with lots of other things that you can do with Bitcoin off chain that just uses Bitcoin as a settlement layer.

Peter McCormack: Right.  So, are they good to go; can you play with them; are they in development; what are you testing?

Nadav Kohen: I would say that they're in alpha testing right now.  I wouldn't recommend non-technical people to go play with them; but if you are technical, then they are out there and you can play with them.  It's actually not just Suredbits, the company that I work at, it's not just us, it's this big open-source project.  We've got developers all over the world who contribute to this open-source project. 

We're trying to follow in Lightning's footsteps for building out specification and multiple implementations and all of this kind of thing.  It's something that is out there and we're hoping to have a more stable version of it out there some time hopefully this year; I don't know if I should make that promise, but it's relatively soon that we will have this out there, packaged in an app that you can actually go play with, even if you're not a technical user.

There are also people already building things on top of DLCs.  So, the best example that comes to mind is there's a company called Atomic.Finance and they have an app that I think is currently in beta, so it's on a test flight on IOS, that some people are already playing around with; it's just like an app on your phone that lets you do covered call options, so these relatively low-risk yield things that you can do, or yield strategies if you will, that you can just on your phone do some things, and then what's happening in the background is it builds a bunch of DLCs for you. 

So, our goal is to actually have this be a building block that people who are building apps on top of this, like with Lightning, you don't need to know all of this complex stuff about how we use cryptography to settle things on chain and stuff like that; that's my work, and everyone else can just build on top of that, and not just my work but also this big open-source community.

Peter McCormack: Well, it sounds amazing and, listen, I appreciate you coming on the show and explaining all this stuff and dumbing it down and making it easy for people to understand.  You killed it.

Nadav Kohen: I hope I brought it down low enough.  I have a tendency to say words like "discreet" and "log" and "contract"!

Peter McCormack: Well, I have a tendency to not really understand a lot!  So, if I don’t get it, I just make you explain it easier!  You did a great job and I think it's going to be really useful to people, so appreciate you coming on and doing this.  If people want to follow you or follow your work, where can they do that?

Nadav Kohen: Yeah, so I believe I'm @nadav_kohen on Twitter I think; let me double-check that.  I'm also on Clubhouse, as you know, a fair bit explaining things to people there, and I've got my Twitter handle correct.  I'm @nkohen most other places.  I don't know why I'd be sharing my GitHub here, but there are also --

Peter McCormack: I think maybe some people are listening who want got to GitHub.

Nadav Kohen: Yeah, I have written quite a bit in the Suredbits blogs about a lot of these things.  I try to have some higher-level posts and some more technical posts.  So, if you want summaries of what Discreet Log Contracts are or how Lightning works, we have a Lightning 101 series, or how various other things in Bitcoin work, Taproot, the upgrade or all sorts of stuff.  We have semi-technical but some of the posts in there are just summaries and stuff.  Blog at www.suredbits.com/gblog; I have written a lot!  So, if you want to follow my work, I usually write about it.

Peter McCormack: All right.  Well, listen, I will share that all out in the show notes.  I appreciate you coming on again; that's twice now and I won't be afraid to come and ask you again.

Nadav Kohen: It's been fun.

Peter McCormack: I really appreciate it.  Next time I'm in Miami, which I think is going to be October, early October for the Human Rights Foundation's Freedom Forum; let's hang out, man, let's catch up.

Nadav Kohen: Yeah, if I'm there, I'll hit you up.

Peter McCormack: All right.  Nice one.  Well, listen, talk care, Nadav.  Thanks for coming on and speak to you soon.

Nadav Kohen: Thanks for having me.