Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Thomas Voegtlin: Blocksize, Bitcoin Unlimited, ASICBoost and Activating SegWit

Episode Date: April 18, 2017

Years into the great Bitcoin scaling debate no solution is in reach. Neither bigger blocks nor Segregated Witness have anywhere near consensus support. With the conflict escalating, a Bitcoin fork has... become a real possibility.Electrum Developer Thomas Voegtlin joined us to discuss the state of the Bitcoin scaling debate. We discussed Bitcoin Unlimited, ASICBoost, SegWit activation without miner support and how a Bitcoin fork could play out. Possible outcomes include that Bitcoin Unlimited gains a majority of hashing power and starts mining bigger blocks. In the event of a fork, a proof-of-work change could be done to defend the minority chain from miner attacks. And lately a proposal was brought forward to activate SegWit without the support of the hashing power.Topics discussed in this episode:ASICBoost and its potential role in the conflictHow a Bitcoin fork could happenHow to split coins in case of a forkHow UASF could be used to activate SegWit without miner supportRequirements for UASF to be safeHow Electrum would handle a forkEpisode links:Electrum Bitcoin WalletASICBoost – Hacker NoonBitcoin's New Controversy: The AsicBoost Allegations Explained - CoinDeskTimo Hanke on ASICBoost and SegWit Non-ActivationFrom AsicBoost to UASF: Greg Maxwell on Bitcoin's Path Forward - CoinDesk[bitcoin-dev] Thomas Voegtlin: Soft Fork Threshold Signaling ProposalUASF Working Group[bitcoin-dev] Greg Maxwell: I do not support the BIP 148 UASFThomas Voegtlin: Electrum, SPV Wallets And Bitcoin Aliases — EpicenterThis episode is hosted by Brian Fabian Crain and Sébastien Couture. Show notes and listening options: epicenter.tv/179

Transcript
Discussion (0)
Starting point is 00:00:00 This is Epicenter. Episode 179 with guest Thomas Vaklin. This episode of Epicenter is brought you by Jax. Jax is the user-friendly wallet that works across all your devices and handles both Bitcoin and Ether. Go to J-A-A-WX.I.O and embrace the future of cryptocurrency wallets. Hi, welcome to Epicenter, the show which talks about the technologies, projects, and startups driving decentralization and the global blockchain revolution. My name is Sebastian Gujar. And my name is Brian Favent Crane. we heard today with Thomas Verklin.
Starting point is 00:01:04 He has been on the podcast before. A long time ago, we was just checking episode 69, so almost two years ago. And Thomas is the developer of one of the most popular and widely used Bitcoin wallets. Actually, we at Epicenter used it as well, called Electrum, which is a well-known SPV wallet, Descoop wallet, two-factor authentication, all kinds of stuff. And yeah, so he's here today. So we can speak a bit about what's going on in Bitcoin, what's going on with Bitcoin Unlimited, user-activated softwork, scaling, all of those things.
Starting point is 00:01:42 We haven't been covering it so much. So we're going to try to cover it a little bit more in the coming future. Because certainly lots has been going on, lots of very interesting stuff, but also complicated stuff. And it changes so quickly. It's really hard to keep track of, you know, what exactly is the status. So, yeah, thanks so much. Thomas. Yeah, well, thank you for having me. So taking a step back, right? We have, it's actually hard to remember sometimes. Like, when did this whole controversy start about scaling Bitcoin,
Starting point is 00:02:16 about the block size? So can you maybe from your perspective, give a little bit of background about what has been going on, you know, how do we get here? And what's the situation today? I think it's It's always been there kind of, but it was not so important at the beginning because the blobs were not full. And I think also an important moment was the publication about the Lightning Network paper. When this was published, I was really convinced that this was the way to go. Before that paper, I didn't have a very strong opinion because both. sides have good arguments actually. But yeah, well, lightning was really a breakthrough in, at least on the theoretical point of view, because it hasn't been used on the Bitcoin network for the
Starting point is 00:03:16 moment. But this was the moment where I got really convinced that we have to use segregated business as a scaling solution. Well, I mean, sacred was was developed after the the definition of lightning. But it's one of the reasons why I think segregated witness is the best option. So you mean that, you know, there was different views about how to scale Bitcoin with some people saying off, you know, on chain, we just need to increase the blocks. It happens on there versus other people being more. It has to be layers and then with lightning, it became clear to you. On chain scaling is the problem with that. is that you never know when to stop.
Starting point is 00:04:03 You don't know what is the right size of blocks. The bigger the blocks are the bigger you have a danger of centralization. And it's very difficult to quantify this. Yeah, the problem with bigger blocks is that they take longer time to propagate in the Bitcoin network and to validate. And it means that miners who are not well connected have an increased risk of mining blocks that eventually will be off-front because someone else in the meantime has mined another block. And in addition to that, of course, since you have bigger blocks, you need more resources in order to validate them.
Starting point is 00:04:42 Yeah, this whole idea of scaling on-chain has never really been a solution. In addition, if we can scale off-chain, we probably have already big enough blocks. If we were using the Lightning Network, I don't know what would be the block requirement. for the number of people who use Bitcoin currently, I doubt that one megabytes is too small. So that's a great point, right, that maybe we can dive in a little bit. So I think there's no discussion that at some point bigger blocks create a centralization problem, right? And that, you know, massive blocks, you know, would create a problem. I think everybody's in agreement about that.
Starting point is 00:05:26 I think where there's disagreement on or where there's a question is. I suppose, you know, what's the right size of block? Is it one megabyte? Is it, I don't know, two, four, eight? Is it something bigger? Some people, I think, have even said something smaller. How should we determine that number? I think the question is, do we want a hard fork or not?
Starting point is 00:05:48 Because increasing the block size is a hard fork. And if we can avoid this by using another scaling method, that is probably superior because it can handle much more transactions, orders of magnitude more, then there is no point trying to determine the block size for the moment. We don't know what they, I mean, what is the right block size depends on how you use the blockchain. But if you use the blockchain using lightning, then the white block size is probably not something that is the same as if you don't use it. And we cannot measure that for the moment because we don't know the usage of
Starting point is 00:06:30 like you. We don't know how many people would use it and how many channels would need to be open with the current user base. So two things on this. I think everybody basically agrees that even on lightning or maybe you have a different point of view here that bigger blocks will be needed and that, you know, opening and closing channels also requires making transactions. And the other thing is it's not ready yet. So why not increase it in the meantime, while lightning developed and then you know when it's there you will see okay I need to make three parts to my answer first the claim that we need more we need bigger blocks even with lightning is only I mean it has been made in the context of every
Starting point is 00:07:22 human on earth using Bitcoin which is clearly not the case today we don't even know if it's going to happen so instead of solving a problem that never that might never happen. Let's just try to solve the problem that we have now and we will see later if we need to increase the block size. Again, Segwit is a soft fork. It's less risky than risking a split-of-the-block chain. So it's potentially much more powerful and less risky. You know, whether bigger blocks wouldn't be needed even with lightning and lightning isn't ready but the blocks are full today. right?
Starting point is 00:08:03 I think it is ready. It's not really in a graphical user interface. But if we activate Segbit now, we will already gain some space. So it will relieve the space issue that we have for the moment scaling on chain. And I'm sure that lightning solutions for end users will appear soon. In your opinion, why are some people opposed to Segwit? What might be the reasons why? Because it all seems like a good idea.
Starting point is 00:08:36 It's an easy solution. It offers some scaling. It solves known issues like transaction liability. Why would anybody not want this? Well, there are different categories of users who want different things. Let's set aside the miners and the ASIC boost issue for the moment. And let's talk about developers and users. some people want to have scaling on-chain
Starting point is 00:09:04 because this is how Bitcoin used to work. We used to have a few years ago almost three transactions, I mean with zero fees. And Bitcoin was working in a very different regime as it's working today and as it will work in the future. Because with fees that are almost zero, you also need to find an incentive for miners to mine
Starting point is 00:09:26 since the block reward is supported. to go towards zero, miners have to make money out of peace. This is how Bitcoin was designed. Other blockchains have been designed differently. For example, with Ethereum, you have inflation forever, which is also a reasonable choice. But that's not the choice that was made in the design of Bitcoin. So I think that the people who want bigger blocks
Starting point is 00:09:55 are actually extremely nostalgic. of the, I mean, they are conservative in the sense that they want to go back to the past way of functioning of Bitcoin. But it's not clear for me that this is a sustainable thing because it would require some inflation. It would require rewarding the miners for mining blocs, in my opinion. Yeah. And so this is a category of users.
Starting point is 00:10:25 Now if, yeah, I said we leave aside miners for the moment. third category would be developers. And of course, if you want to propose a fork of Bitcoin with bigger blocks, it might also because you want to be part of the leading team. So that might be another reason. So moving to the topic of scalability and mining perhaps bigger blocks, one topic that has been very present in this whole debate recently, even if you only follow this debate from a distance is Bitcoin Unlimited. Of course, we've had Roger Verr on the show to talk about that as well as Peter Ryzen. Yeah, Peter Ryzen.
Starting point is 00:11:13 And the two Andrews who are the main... That's right. So, you know, if listeners want to learn more about Bitcoin Unlimited, they can go back and listen to those episodes. So it's currently, like Bitcoin and Unlimited had seemed to gain quite a bit of traction in the beginning. And it's still very much a topic, a topic of conversation in the community, it seems like. It's currently at about 40% of the mining power if we look at, if we look at the support. What do you think of Bitcoin Unlimited, Tomah? Yeah, well, I don't think it's a good idea.
Starting point is 00:11:49 It's really a big change. It's a change in the structure of power of Bitcoin. And it's a very risky hard forge. But I also think it's not a topic anymore because a lot of people have been, with this ASIC book scandal, sort of, a lot of people have changed their mind on this. there is still a large fraction of the hushing power that is signaling for Bitcoin Unlimited. But we are in a situation where miners have a lot of power and they seem to want more. Do you think that these 40% of Myers that are backing Bitcoin Limited,
Starting point is 00:12:40 do you think that this is sort of the threshold that it's not going to go any further? then because it requires saving 5% in order to to be adopted. Is that a probability? It will be up to the miners to decide when they start. Yeah, exactly. The fork can be triggered at any time and that's the point of Bitcoin Unlimited. It's the miners who decide to change the rules whenever they want and they can do it. The only requirement is that they get they are followed by other miners.
Starting point is 00:13:16 So this emergent consensus works by trying to fork and see if other people follow you. And if they don't, you get off-hand. That's how it works. You mentioned this brief as well, you know, that they want more power. I think if you look at this whole debate, I think on every side actually, we are... Yeah, yeah. There has been the claim that miners are trying to fire the... core development team with the BU and to replace them with other developers.
Starting point is 00:13:54 And on the other side, what seems to be the nuclear trigger is a change of proof of work. This threat has been also agitated by Luke Dashir. I don't know about that. Could you talk about this threat of a change of proof of work? I don't exactly remember what he said, but the idea is that, okay, we can't have for Bitcoin and use something different, a different proof of work than Shathe 56, which would make the mine, the material bought by the miners, absolutely. Well, I think it came from there. Like, so let's say you'd have a hard fork and, you know,
Starting point is 00:14:33 Bitcoin unlimited is that whatever, 50, 60% or something and, and there's a hard fork. And then there's some minority that stays on, on a different chain, you know, they say, okay, you know, we stay with one mega lot blocks. Of course, what the situation you have, then, is that the minority chain is potentially vulnerable to miners on the majority of chain saying, okay, we're going to attack that chain by mining empty blocks or orphaning blocks or something like that. So then I think the sort of proposal was made by some that, you know, if there is a hard fork, they could potentially change the proof of work so that the minority chain wouldn't be vulnerable anymore to attacks from miners.
Starting point is 00:15:17 Yes, indeed. But in both cases, we are talking about a situation of a very big disruption. If there is a split of the blockchain. Absolutely. I mean, massive, probably, I mean, in that case, right, you probably actually end up with three bitcoins, right? Because you might have a Bitcoin unlimited chain. You might have a minority chain with still the same proof of work. And then you might have some that then change your proof of work. work, right? So yeah, of course. Honestly, I don't think that the miners who currently signal for Bitcoin Unlimited really want that. They are signaling their opposition to Segwit. So why are they opposed to Segwit? Yeah, well, there is this theory that it's because it's not
Starting point is 00:16:11 compatible with ASIC boost. So Greg Maxwell made this, uh, this statement on the mailing list a few days ago. So apparently the main chip producer, Bitmain, has incorporated in the chips, the technique and optimization that is called ASIC boost that allows to mine more efficiently. And this is not compatible with segregated people. So if they have done that, if they are, I mean, They have acknowledged that they have ASIC boosting the chips.
Starting point is 00:16:50 There is no question about that. But they always, they keep saying that they never use it on the main network. It was only on testing. If you want to have a competitive advantage over other miners by doing that, it only works, of course, if you don't tell the other miners that you are using this optimization on the chip because they are selling those chips to other miners. So it means that we are talking about the situation where miners, buy a chip and they are not using the complete seat of features of that chip.
Starting point is 00:17:23 Only the producer keeps this feature for himself. Yeah, I mean, this is a complicated topic, right? And it's just, I was reading a fair bit about that and there was articles by, you know, several mining manufacturers, the ex-guy Sam Cole was running K&C minor, the guy who's running Sponduli's tech. He also had a discussion with Adam back about it. Also, Timahunke, and they sort of all seem to say, yeah, I mean, it's not such a massive thing. You know, maybe there would be improvements of 15% or something like that.
Starting point is 00:18:01 But 50% is already the margin that they, yeah, 15. I mean, it's your margin. Yeah, I don't know. I mean, there are arguments for most of the people who are actually working in was that this is unlikely to be a significant advantage. Okay, I am not a miner and I'm not able to put numbers on the economic advantage that they can gain from it. However, this Sampchall, this blog post by Sampkull did not convince me at all. He's debunking arguments that have not been made by Craig Maxwell.
Starting point is 00:18:41 He's talking about how you can reduce the number of gates on the chip and how you can gain power efficiency. But the claim of Greg is only about the power efficiency. If you want to save on the number of gates of the chips, you cannot produce a chip that you can sell to other miners without telling them. This is not possible. And so Greg did not make the claim. And yeah, well, he also has a whole paragraph about preprocessing on the chip, which is not relevant for the discussion.
Starting point is 00:19:20 Let's take a short break to talk about Jax. Jaxx is your wallet, your complete user interface to cover all your blockchain needs. I've been using it and I've been loving it. And Jack supports a lot of different cryptocurrencies. I suppose Bitcoin, Ether, Litecoin, Ethereum Classic, Zcash, Augurap, and they're adding many more, keep responding to users' needs. Now with Jacks, a nice thing is that you can manage all of those coins within a single wallet and you are in control of your own private keys, they're not on their server, and there's a single 12-word seed that you can use to back up your wallet, all your coins, and sync them across
Starting point is 00:19:56 different devices. Talking about devices, they're on pretty much any device that you can think of. You can get it on PC, Mac, Linux, you can get it on smartphones like Android and Apple and iPhone, you can get it on tablets or even browser extensions for Chrome and Firefox. And on top of that, in Jax, you can actually exchange different cryptocurrencies for each other because they've integrated a shape shift. And more partnerships and integrations are coming down the line in 2017 that are going to make Jax even better. So Jax is really making blockchain and cryptocurrency accessible for the masses, easy to use
Starting point is 00:20:33 for the masses. Make sure to get your own Jax wallet. at Jax.I.O. Or you can get it from any of their app stores you are using. We'd like to thank Jax for their support of Epicenter. So just coming back to the Bitcoin Unlimited topic. Okay, so we can understand quite simply why, what interests are at odds here with regards to segregated witness and ASIC boost
Starting point is 00:20:57 because they're simply incompatible and, you know, miners have an interest in mining blocks more efficiently. Where does segregated witness and Bitcoin Unlimited collide in terms of, are they incompatible? Why are these two proposals seem to, why do these two proposals seem to be opposed? You mean Segwit and Isikpost? No, Segwit and Bitcoin Unlimited.
Starting point is 00:21:27 The team of developers that are behind Bitcoin Unlimited actually did not create a patch of the project, but they forked it a long time ago. And the version of Bitcoin that they maintain is now completely different. They have diverged, which is not a good idea. I mean, if you want to, well, it's a good idea to fork the project if you actually want to replace the developers, if you want to fire them. But if you want to do something constructive and to keep gaining and benefiting from their development,
Starting point is 00:22:00 you should not do that. They should have created a patch on your own. or new branch that they would rebase from time to time. So, I mean, that's why it's not compatible. Okay. So it has nothing to do with technical incompatibility. It's what you're saying is... Well, I think it has to do with the choice made by these developers.
Starting point is 00:22:23 Yeah, I mean, we were having this discussion, Brian and I early before the show. And what he pointed out is that a lot of this is just comes down to power. I mean, who's going to get their patches? out, who's going to get their version out? And it seems like this here is one example of that where you have these two opposing camps that are trying to gain power and achieve some sort of power. Yeah, but the Bitcoin Unlimited Camp is just, I don't know how many people, but it's very small. I mean, it's not really a big team of people.
Starting point is 00:23:00 At least I'm talking about the developers. We talked a bit about ASIC boost, and I'm personally, I don't really, I'm not sure I buy that this is really what's going on here, and that there isn't, you know, some deeper issues or some deeper conflicts that are at the heart of this and that are preventing there, you know, from any kind of conflict being reached. Can you see other reasons why we have this division in the community and why there is this disagreement and unwillingness from both sides? There might be the idea that if you have larger blocks, you can earn more on transaction fees because you have more transactions. On the other hand, if you have the lightning network, miners might actually make less, transaction piece because they do not get any fee on whatever goes on the Lightning Network. They would only make money on the transactions that are opening and closing a channel. So this might also be a reason, but today it's impossible to put numbers on that.
Starting point is 00:24:13 It's not possible to quantify this. It's probably a fear of these miners. Yeah, it's interesting that you make this point because, I mean, we've had various discussions about block size even a long time ago. And back then, the argument was always, we need to have a block size limit and full blocks in order for miners to make more money from fees. And it's interesting how this is like turned around now and, you know, sort of telling miners, oh, they want bigger blocks to make more money from fees, which was exactly the opposite argument.
Starting point is 00:24:51 Yeah, that's why I'm saying it's impossible. really quantify this and I'm not convinced by this argument. I'm just saying that it might be one of the reasons why they fear that. But talking about ASIC boost, if the main chip manufacturer is opposed to Segwit and he sells you your chip, he can also pressure you not to signal for Segbit. So it might be as simple as that. So now let's talk about the topic of a fork. I think we have kind of broached on it a little bit, but I would love to dive in deeper.
Starting point is 00:25:33 First of all, how could a fork play out with Bitcoin Unlimited and then also what has now come up as a topic, the idea of a user-activated soft fork. So first of all, let's just assume, yeah, Bitcoin Unlimited got to 60%. Yeah. They start mining bigger blocks. You know, what happens then, for example, for me as a user or for the Bitcoin core developer, how does this play out this scenario? Okay, so USF is a soft fork and Bitcoin Unlimited is a hard fork. The distinction
Starting point is 00:26:14 between them is that with a soft fork, you are making the rules more strict, the rules of the consensus. So something that used to be allowed is no longer allowed. With a hard fork, you are relaxing the rules. This is the traditional distinction. But it's not a complete picture because you have two different types of hard forks, actually. You can have a strict relaxing of the rules, and you can have also a change of the rules where some of the rules are relaxed and other are new. And this would also be a hard fork.
Starting point is 00:26:54 Bitcoin Unlimited is not of that type. It's a strict relaxing of the rules. And this makes it reversible. It means that if their branch, if there is a split of the blockchain and their branch has less proof of work, it gets off-bant, which is not a good design. Because then it will be forever threatened to be, of plants. Yeah. So what you mean is like we have, we have a fork that is it is a reversible.
Starting point is 00:27:30 Yeah. Yeah. So we have a fork now we have Bitcoin unlimited and we have some Bitcoin core or something we can call them, right? And and even if maybe 60% of the hashing power is on Bitcoin unlimited, if later they switch to the other chain and that one ends up becoming longer, then you would have to the Bitcoin unlimited nodes, I mean, unless they do some sort of upgrade to change that. Yeah, yeah, unless they do some sort of upgrade. But still, so let's say, you know, we had this with Ethereum and Ethereum Classic that there was a split, there was two coins. Is there a similar scenario? For example, how would you, if I as a user, there's this fork and I want to sell one of my, one of my coins and
Starting point is 00:28:16 let's say I hold it with Electrum, what do I do? Yeah, you need to split your coins before you sell them. So splitting them means to protect them against replay so that when you do a transaction on one of the blockchains, the transaction cannot be played on the other blockchain. And in order to do that, the safest way to do it is to mix your bitcoins with newly mined coins that exist only on one of the chains. But of course, it's also a bit slow.
Starting point is 00:28:52 So this is why I suggested that you could also achieve the same goal using replace by fee. Because BU turns out to not support RBF. But it's not 100% guaranteed to work. Yeah. I mean, there are miners can mine AirBF. Yes. So just to run through that, let's say I have a Bitcoin in a particular others. And now there's a split.
Starting point is 00:29:16 And I want to, I want to make sure. sure that I spend it on the Bitcoin core chain, but not on the Bitcoin Unlimited chain. And then what I could do is, yeah. So what you what you would do is you would duplicate your electron wallet to have two separate directories. It's it's cleaner that way. And then you send the bitcoins to yourself using the the Bitcoin core wallet. And for this, you you use an RBF transaction. And then you bump the fee of this RBAF transaction.
Starting point is 00:29:58 And if everything works well, the fee, I mean, the transaction will be on the other version of the chain, but not when you bump the fee because it's non-standard for them. It's not guaranteed to work. So you would need to wait until transactions are confirmed on both chains and to verify that the transaction ID is different. I'm saying it's not guaranteed to work because their miners can always mine the second transaction if they do not follow their own rules. Couldn't you make a transaction that in the inputs also includes newly minted coins from after the fork? Is that essentially? Yeah, that's just slower because you need to wait until these coins are major so they need to be 100 blocks old and then you need to find a miner that
Starting point is 00:30:53 sells them to you so if you want to trade them very quickly it's it can be a problem if you if you really want to use the coins very soon and just just to explain this replaced by fiefing you mentioned again a bit more so yeah so I have my coin now I have have it in these two electron wallets, right? I'm sending this transaction to myself, right, in both networks. But I mark it replaced by fee, which is that like a sort of a flag on a transaction? Or how is that transaction different from a regular transaction? Yeah, it differs because there is a special flag on the input. Okay. And this RBF transaction actually is accepted on both networks. What is not accepted is the action of bumping the fee.
Starting point is 00:31:47 So that means that both transactions are actually valid on both networks. And this is why I'm saying is not 100% safe. In order to be safe, you, you need to check after the fact that the transaction IDs are different on both networks. Right. So basically, I'll be saying, okay, I'm going to send on both chains, I'm going to send, you know, from my address A, I'm going to send it to B, right? I'm remarking this to replace by fee. And then on the core chain, I'm going to replace that transaction, sending it to C. No, no.
Starting point is 00:32:21 You still send to yourself, but you just increase the fee. You bump the fee. So you create a first version of the transaction that is from yourself to yourself with a low fee. And then what you can do actually is bump the fee right away. And in theory, this transaction would not be propagated. and on the BU network. If that doesn't work, what you can also do is wait until it's confirmed on BU because BU has bigger blocks, so it will be faster.
Starting point is 00:32:52 And then once it's confirmed on BU and unconfirmed on Bitcoin, you can burn the fee. That's another solution. Yeah. But of course, it won't work if by chance your transaction is confirmed instantly on both. But if you see that playing out, right? Let's say we have this fork. we have people on both chains. I mean, realistically, a fork would mean a tremendous amount of volatility, right?
Starting point is 00:33:17 People would be trading on both ends. They would constantly be watching, okay, which side is getting stronger, which side is getting more support, what are others doing? And, you know, to say, okay, I'm going to sell one or sell the other. I mean, even when with Ethereum and Ethereum Classic, and I think this would be a much, much bigger event. It's also not clear whether exchanges are ready for that. I mean, no exchange has really made a statement that they are ready for trading both coins.
Starting point is 00:33:49 This is not so easy. It's not just exchange, but also payment processors. And there are some legal issues associated with that. What is the definition of a Bitcoin if there is a fork? Because there are terms of use refer to Bitcoin, but they did not probably, they did not. plan for this. Of course the incentive and exchange is extremely strong to support both coins. I mean we saw that in Ethereum. Oh yeah. It's just going to it might not be instant. It might take a few days until they can support both. What's interesting is
Starting point is 00:34:28 that this incentive of exchanges to support both coins in some ways you might be at odds with the health of the ecosystem because if you have you know coins that are significant that have significantly less support. Let's say there's like three forks and one of these coins has significantly less support and is insecure. You know, you're sort of as an exchange, you have an incentive to support that coin, but you're only further sort of, you know, dividing. As an exchange, you're only encouraging this sort of division in the community for your own.
Starting point is 00:35:11 I don't agree. I think if there is a split of the blockchain, the feedback through the price is the only way users have a word in this debate. Otherwise, the control is only with the miners. Oh, I see. And if one of the blockchains does not have enough hashing power and is constantly off-fant by miners from the other camp, then users have no... way to exert any feedback. So you're saying then the market is sort of a signaling mechanisms to signaling signaling mechanism, sorry. Yeah, of course definitely. Yeah. The value of the real value of the chain. Well, that's the idea behind the user activated software. Okay, so let's move on to that topic then. Let's go into the user activated software. So this is a
Starting point is 00:36:09 topic that has come up in the last few weeks, I think. So can you explain what the user activated soft fork is as opposed to the minor activated soft work and in what context are we seeing this come up now within the broader scaling debate? Yes, of course. Just to finish on BU and the hard thought, in both cases, if there are two chains that are living for an extended period of time, then the coins will be traded and the markets will be the feedback. But in the user activated soft fork, the idea is that you trigger a softwork regardless of the consensus that has been reached among minors. So there is a date that has been set by the proponents of USF, which is the first of August. And so on this date, the nodes that do
Starting point is 00:37:08 support UASF are going to require that all the new blocks signal for segwit. Okay, so UASF, if we just sort of explain at a high level, right now as it stands for these for Segwit and Bitcoin Unlimited, the way that we get approval is through miners signaling in their blocks which version they're supporting. Here we're giving that choice to users so full notes, presumably. And they would sort of signal by voting with their software what version they want to be activated on this sunset date, which is August 1st. And at that time, miners would need to start mining blocks compatible with that proposal. Otherwise, they would simply be invalidated.
Starting point is 00:38:04 Yes. the idea of a user-activated soft fork is not new. Actually, setting a date or blockade in order to activate a fork has already been done in the past. But the situation is new because there is no consensus. So this is why I'm saying that we are in a new situation where a soft work is proposed, I mean, it is, the user activated software is proposed as a way to bypass the lack of consensus. And this is new. And so the idea behind it is that there is a consensus within the economy. So the economy supports Segbit and if the miners do not want to activate it. Who is the economy? Yeah, that's a good question. Who is the economy? In the end, the
Starting point is 00:39:04 This kind of feedback can only come from markets and we cannot predict in France if it's going to work or not. So there's not enough minor support and so therefore we're turning to the community or the economy to make that decision. Is that sort of the idea? Well, the idea is that if there is a soft fork, either it will be with more than 50% or less. If it's with more than 50% then the other chain is off-fam. If they start with less than 50%, the idea is that by having this feedback from the market, the coin on this side of the fork would have more value
Starting point is 00:39:48 than the side that did not do the soft fork. And therefore, eventually, this branch of the fork, the soft-working branch would have more value. Therefore, it would have more proof of work and the other branch would be of fund. So then the idea is also that miners should take this into account and switch as soon as possible because if they acknowledge that most economic actors wants this soft-pop to take place, they should collect it. So right now, user-activated soft fork is mostly focused,
Starting point is 00:40:30 on implementing said wit. Is this something that, is this a mechanism that we could use for other proposals in the future? I don't know, like some other BIP? Yes, of course. It's so strict a sense. It has already been used in the past. It's never been used in a situation where there is no consensus. So we are talking about a situation where there is a risk of splitting the blockchain by doing that. Okay. Again, when you say there's no consensus, Are you saying that?
Starting point is 00:41:01 There's no consensus among minors, yeah. Okay. So the way I'm seeing this is that the people backing Segwit can't get consensus from minors, and so therefore they're turning to the economy to try to get consensus. So it's like, you know, it's like a kid asking his dad for something, and that's like, you know, and so it goes to see his mom. Yeah, you can put it like that. But the claim, I mean, the belief is that,
Starting point is 00:41:29 the economy will value this coin more because it has more utility. Sure. I mean, that may be true. That may not be true. Who knows, right? But I must say I find the terms being used a bit deceptive. Because like, I mean, user activated is, I mean, it's not really user activated, right? Yes, it is. It's not minor activated. It's activated by people who are running a node. Which are not most users, right? The vast majority of it. If you have big coin holders don't run notes. That's true.
Starting point is 00:42:02 But wallet providers like Electrum, we are going to give users the choice. So in the end, users can decide which coin have value. And how would they do that if they're running an SPV client in the case of Electrum? Yeah, it's exactly the same as with the hard fork in the situation of BU. you. If there is a split of the blockchain, you would need to separate your coins in both cases. It would be very similar. But so you could have this choice after this effort, but you don't actually have any choice when it comes to the activation. I think that's that's where my objection is. No. When the activation comes, I think the most important variable is actually the
Starting point is 00:42:57 hashing power that goes to the fork. If there is not enough hashing power in the forking branch, then it will be vulnerable to attacks. So it remains a minor thing until the fork happens. Now, one thing I was thinking about earlier, and I don't know if this is an issue, if there's a way to mitigate this, but it seems like a pretty simple attack factor for this user-activated soft fork for anybody who wanted to really, you know, push a proportion proposal through would be to activate a whole bunch of Bitcoin full nodes, which presumably you can do for pretty cheap. You can't do that on the on the minor activated for, you know, for.
Starting point is 00:43:37 Yeah, but the, the, the user activated software is not a node voting. Not there is no there is no votes there. It's just the date that has been decided by, by the people who started this. It doesn't matter to, to run nodes, many nodes. The, what really matters is a hard. how much people are using these nodes? If exchanges are using them, what are the exchanges defining as Bitcoin?
Starting point is 00:44:05 Are they going to say that Bitcoin is the version that is following the fork or the other one? These are the questions that are essential. But couldn't you just run a whole, like if you were, couldn't you spawn a whole lot of nodes supporting, you know, Seguet for instance? could one person do that or a group of people do that? Yes. Yeah, and you could also not propagate blocks that are non-segivis. Yeah, you can do that. But if the miners that are against segwit are well connected,
Starting point is 00:44:42 they will find a way to propagate their blocks between themselves. Yeah, so that's not such a significant action. No. I agree. And so just to iterate here on, you know, why is it, why does the mining hashing power matter here? Because if you have this split, right, if you have this user-activated software branch, if you have the other branch, if the user-activated software branch, for example, only has 10% of the hashing power, it means that instead of having a block every 10 minutes until the difficulty reset, which might be two weeks, or, you know, generally, two weeks, right? They would only have a block every 100 minutes, right? And then at the same time, you'd have a big increase in the demand of transactions, because people would want to move their
Starting point is 00:45:32 coins to exchanges, to be able to trade, you know, to either. And it will be more than two weeks if you have only 10%. Right. Exactly. So then it will take actually 20 weeks until the reset. Yes. Yes, pretty much. So that's why I think it's not reasonable to do this with 10%. Also, because your blocks can be easily off-banned by a four-star miners, the blocks on the forking branch can be undone and replaced by empty blocks. If they have 90%, they can afford to do that. So shouldn't it be part of that proposal to say, okay, but user-activated soft-work maybe only triggers if, you know, let's say 40% of the mining power or something like that to support it? Yes, actually this is a, I mean, I made a proposal that goes in this sense. I think currently the signaling of the segregated witness softwork only works with 95%.
Starting point is 00:46:37 And I think instead of having only a date, we should maybe have a minor activated softwork with less than 95%. and with the treasult that miners communicate and decide. Because in the current system of PIP 9, miners who signal that they are going to activate Segwit, they are not just saying that. They are saying, okay, I'm going to soft fork if there is 95% of agreement. But it doesn't mean that they would be really to soft fork with 30%. With 30% the risk is much higher. And the miners who currently signal for Segbit, they signal that they are willing to follow a fork with a wide consensus.
Starting point is 00:47:34 They are not saying, I'm taking this risk at 30%. So, yeah, I think if we want to activate a soft work with 35%, for example, which I consider kind of in the safe zone, then we need a coordination mechanism between the miners that are willing to do that. And this would be achieved by signaling at which treasult you are willing to soft work. So instead of having just a single bit for the fork, you would have multiple bits and you would encode what is the treasel at which you want to soft work. And then this information is public.
Starting point is 00:48:21 It's in the blocks of all the miners who want to soft work and they can coordinate. They can decide to change that result according to whether the minus two. I mean, I think what's interesting about this proposal, even though, I mean, it's a soft fork. It still ends up in, you know, two bitcoins, right? And it seems like any kind of scenario we talk about here, whether it's, you know, Bitcoin unlimited gaining a majority starting mining bigger blocks. Well, that will probably result in two bitcoins this year probably probably. result in two bitcoins, right? So it, do you think that's inevitable? Do you see a path where,
Starting point is 00:48:58 you know, the current Bitcoin community somehow gets together and somehow finds some path forward where there's still going to be the Bitcoin and, and everybody agrees on what Bitcoin is when they talk about Bitcoin, you know, there's one network, your coins. I don't know if a fork is going to happen. This user activated software proposal actually was not supported by Greg Maxwell. Recently, he made a statement that he did not support that. And I think it might be seriously weakened by that. So we will have to see how things develop.
Starting point is 00:49:45 Of course, I perfectly understand why. most of the core developers do not want a fork of the blockchain. I mean, a split, not a non-fork without consensus. It would be highly disruptive and it would be bad for the ecosystem. The question is, what is worse? Waiting two, three more years or finding a rapid solution? Yeah, I mean, this is one thing I really struggle to understand is why there isn't some kind of,
Starting point is 00:50:23 why there isn't more willingness to compromise, right? To say like, okay, we do a hard work, we do segwit, and we do like, whatever, four megabyte blocks or something like that, you know, where both sides, you know, both sides can save their face because I think that's a huge thing too, because there's so much in their positions, right? Like nobody can really just go with the other side, right?
Starting point is 00:50:46 because that will look like one side is really lost, whether that's the core developers, and that would certainly be a shame, right? If also a lot of people might leave the Bitcoin community might stop developing, which has already happened, right? A lot of people have left from people like Mike Kern, Gavin and Driesen, who's maybe semi-left or something.
Starting point is 00:51:07 And I think that's really a big loss, right? So somehow, some way forward where both sides can say, okay, we got at least a little bit of what we wanted. And I think that's the only way forward to actually progress Bitcoin, right? So it can move forward and also keep this thing together. Yes. The problem is that what is a compromise? For example, there is this proposal, Segwit plus 2 megabytes,
Starting point is 00:51:41 which is a proposal to do the Seaggwit soft fork now. and to have later a hard work for the non-witness part of the block. I don't think it's in the interest of miners to accept that, because if they do the soft work, they have no guarantee that is actually going to be followed by the hard work. And also the willingness to find a compromise is good, as long as you do not give up something essential. I think the core developers do not want a hard work
Starting point is 00:52:13 because it creates, it might create two coins permanently. A soft fork at least can offhand the other part of the branch. And also, this is, this seems like absurd to me. Because if you, let's say the core developer says, okay, we support hard fork to two megabytes now so that minus half the assurance, you know, at the same time you do hard fork and segue. I mean, if they supported that and then the majority of mine has got on board, you know, that will probably work, right? So the idea that you're against that because they can create two coins, but then user activated software, which is definitely going to
Starting point is 00:52:54 create two coins. Yeah, I don't think it's the same people who are behind the, the rejection of hard folks and the user activated so forth. Uh, user activated softwork, uh, user activated softwork without consensus is very risky. The question is, is this risk worth taking? And how big is it? We don't know that until we can have an idea of how many miners are going to follow the software. The core developers have designed SIGBIT in a way that is highly non-destructive. So if you are a miner and you don't want to implement SIGBIT right now, you can still mine non-seqvite.
Starting point is 00:53:40 and they are still valid with Seguid. Of course, your block might be invalid if you have some transactions in it that are Seagbit transactions. But this should not happen due to the propagation rules. It would only happen if you mine on top of another block that has been mined by a malicious miner. minor, but it can happen well. So my point is that the core developers have really done the maximum to make a sake with non-risk it. I can understand that they do not want to risk split of the chain.
Starting point is 00:54:27 It's the same, I mean, as I'm developing Electrum and I always keep saying that the Electrum is neutral. You can be for BU, you can be poor. against Segret, you can still run an electron node. So the software that I write is agnostic. And this is because Electrum is a decentralized system. When you are developing a decentralized system, you do not want to split apart from one part of the community.
Starting point is 00:54:59 Yeah, no, that makes perfect sense. And I mean, I also completely understand, for example, I, you know, Greg Maxwell's thing on, being against the user-activated software as well. I mean, at least it's consistent, I think, with the sort of view, okay, we've got to be conservative, and we have to make sure that there is some kind of consensus, because it seems extremely hypocritical to me
Starting point is 00:55:27 if you're gonna criticize bigger blocks, or blocks has increased because it doesn't have consensus, but then you are in favor of something like user-activated software, That doesn't seem like an intellectually consistent position to hold. Are there people holding this position? I'm not sure. Maybe not. Yeah. I don't know. And how do you feel about this whole thing? Do you feel frustrated? I mean, you've been in the Bitcoin space for a very long time. Have you ever, are you, do you start to question
Starting point is 00:56:04 whether this project has a future or are you still, you think it's going to be resolved? I certainly feel less frustrated than the core developers who have been developing segregated witness and who see that this is not getting implemented. Because it's their baby, sort of, and it's like your baby is getting rejected. So I have much less frustration, I guess, than them. And yeah, well, I'm excited by this idea of lightning network and payment channels. and I would like to see them happen. So this is why I'm frustrated, but I have not really spent hundreds of hours of my time already on that. So yeah. Let's imagine that
Starting point is 00:56:53 Segregated Witness does get implemented and we get all the benefits from that and that that lightning networks also get it's going to happen on light coin very lightly. Okay, well perhaps that's a good test bed then. I mean, My question was going to be, let's flash forward, you know, four years. And hypothetically, both of these things are now running and tested and are sort of, you know, used. What do you think the network would look like? What would you think the ecosystem would look like then? Oh, it will certainly be disruptive for the ecosystem because the big players might be different.
Starting point is 00:57:33 I'm a wallet developer and I'm not lightning network ready. So I'm trying to be ready as fast as possible. But yeah, so Electrum is already supporting a segregated witness. But of course, nobody at this point has really user-friendly version of the Lightning network. It doesn't mean that Lightning does not exist. Actually, a few weeks ago, there was a lightning transaction here in Berlin at the room 77 restaurants to pay for a beer using tested bitcoins. So they made a demonstration of that during this developer workshop. So lightning does exist, and I'm testing it.
Starting point is 00:58:22 I have used the lightning diamond. I'm studying the code. But yeah, well, it's obvious that wallet provides. will have to adapt or maybe they will no longer exist. And then payment providers as well, even for them is probably less of exchange. They actually use the wallet. Do you think that so these solutions being implemented on like coin may serve the Bitcoin community as some sort of a feedback mechanism, you know, something they can look at and say,
Starting point is 00:59:00 okay, well, this is this is the results that we got on this other. blockchain, whether it's positive or negative. Do you think maybe that's one way forward? That might be the case. Yes. Actually, the first feedback that we get is that the price of light coin is correlated with the number of miners that signal for Segbit. Yeah, I mean, I think that's pretty obvious, right, that this is a big opportunity for Litecoin potentially, because if this continues to stall, let's say Segwit does get activated there, you know, for Bitcoin devourables, it's easy to sort of of...
Starting point is 00:59:34 Lightcoin is very close to Bitcoin. The changes are very small. It's not like Bitcoin Unlimited who decided to fork the project and to discard all the new developments of the core developers. Lightcoin is just a small patch over Bitcoin. So the development efforts that are made for Lightcoin can benefit to Bitcoin. Exactly. No, no, I totally understand that, but you can still have the situation that, you know, maybe
Starting point is 01:00:02 would be looked at okay it's just like temporary thing and we're just going to develop on with sec vit on light coin under the assumption that uh bitcoin's also going to activate sec vit but if that doesn't happen and then you know one year later you're still developing on light coin i mean all of a sudden you could have a shift there yeah that's i i think i totally agree with you and i wish this was taken more seriously by some of the core developers so We're almost at the end, but briefly, you had in Berlin a workshop with many of the wallet developers. They all came together.
Starting point is 01:00:41 You organized that to talk about, you know, using Bitcoin development. Can you share a bit? What are your main takeaways from that workshop? Oh, it was very nice. We did not really talk about soft works and hard works. That was not the topic of the discussion because, yeah, well, this, this, um, workshop was organized by, was initiated by Matt Corallo. And I guess one of the main drivers was to discuss standards and compatibility between wallets,
Starting point is 01:01:16 especially in the context of the changes that are necessary to make for segregated business. With Segrets, the format of transactions is a bit different. And especially for hardware wallets, you can check. the input amounts more easily. You don't need to send the whole set of input transactions to the hardware world. So we have been mostly talking about standardization of communication and between wallets. And of course, we talked a little bit about the USF, but it was only on the coffee break.
Starting point is 01:01:58 Okay, cool. Well, Thomas, thanks so much for coming on. I mean, this is an endless topic, and I'm sure it's going to stay with us for a long time. It doesn't have any signs of going away. Yeah, sure. Thank you for having me. And it was very nice to see you guys again in a long time. Yeah, absolutely.
Starting point is 01:02:17 And I think it does hold the promise. I don't know if we want that, that Bitcoin could become an incredibly, incredibly interesting place, right? if you have a software chain splitting replay attacks. No, no, I think nobody wishes that. I believe that the proponents of the user activated soft work actually expect this to have a deterrent effect on the miners so that they will get, they will have 50% from the start. This might be wishful thinking, I don't know, but this is the bet that they are doing.
Starting point is 01:02:58 that at least if there is a split, it's not going to last for a long time. I mean, that sounds like wishful thinking. And even if they do have 50%, then, well, there's another chain also a 50%, right? No, if they do have more than 50%, unless the other chain makes a hard work, then the other chain doesn't keep, it's getting offhand. Yeah, that's true. It's more than a bigger. The miners will jump to the longer chain. Okay, well, thanks so much, Thomas.
Starting point is 01:03:28 Well, thanks so much for your work also with Electrum. It's not only my work. And yeah, thanks so much for a listener for once again tuning in. We are part of the Let's Talk Bitcoin Network. Soon to be Let's Talk Network. You can find this show and other shows on let's talk bitcoin.com. And if you want to support the show, then you can do so by leaving us in iTunes with you or giving us a tip in Bitcoin or Ether.
Starting point is 01:03:54 And yeah, thanks so much. We look forward to being back next week. Thank you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.