Thomas Voegtlin: Blocksize, Bitcoin Unlimited, ASICBoost and Activating SegWit (Episode 179)

18 Apr 2017 · 1:03:51

Epicenter talks with Electrum developer Thomas Voegtlin about the Bitcoin block size debate at the height of the scaling conflict between Bitcoin Unlimited and Segregated Witness. Voegtlin discusses the ASICBoost controversy, how a contentious fork could play out and be split, and how activating SegWit without miner support through a user-activated soft fork could work.

Speakers

Topics

Transcript

[Music] this episode of epicenter is brought to you by Jax Jax is the user-friendly wallet that works across all your devices and handles both Bitcoin and ether go to J ax. and embrace the future of cryptocurrency [Music] wallets hi welcome to Center the show which talks about the Technologies projects and startup Strat decentralization and the global blockchain Revolution my name is Sebastian KU and my name is Brian fan crane we're here today with Thomas Ferlin he has been on the podcast before

a long time ago we just checking episode 69 so almost two years ago and Thomas is uh one de is the developer of one of the most popular and widely used Bitcoin wallets actually we at Epic Center use it as well called electrum um which is a well-known SPV wallet desktop wallet two Factor authentication all kinds of stuff uh and yeah so he's he's here today so we can speak a bit about what's going on in Bitcoin what's going on with uh Bitcoin unlimited user activated soft Fork scaling all of those things we haven't been covering it so much so we're going to try to cover it a little bit more in the in the coming coming future CU certainly Lots has been

going on lots of very very um 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 yeah 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 and about the block size so can you maybe from your perspective give a little a little bit of background about what has been going on um you know how do we get here and what's the situation today I think it's it's always been

there kind of uh but it was not so important at the beginning because the blogs were not full and uh I think also an important moment was the publication about the lightning Network paper uh when this was published I I was really convinced that this was the way to go uh before that paper I didn't have a a very strong opinion um because uh both sides have good arguments actually um but yeah well lightning was really a breakthrough in at least on the theoretical point of view because it hasn't been uh uh used on the Bitcoin Network for the

moment but this was the the moment where I I got uh really convinced that we have to use segregated busness as a as a scaling solution well I mean seget was was developed after the definition of lightning but um it's uh it's one of the reasons why I think segregated witness is is the best option so you mean that you know there there was different views about how the scale Bitcoin where some people saying off you know on chain we just need to increase the blocks it happens on there versus people being more okay it has to be layers and then with lightning it became clear to you on CHAS scaling is um the problem with that is that you

never know when to stop you you don't know what is the right size of blocks the bigger the blocks are the bigger you you have a danger of centralization and it's very difficult to 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 it means that uh miners who are not well connected have an increased risk of mining blocks that eventually will be off fund because someone else in the meantime has mined another block um and in addition to that of course since you have bigger blocks you need more resources in order to validate them yeah this this whole idea of scaling on chain

has never really uh been a solution in addition if we can scale offchain uh we probably have already big enough blocks if we were if we were using the lightning Network I don't know what would be the the block requirement for the number of people who use Bitcoin currently I I doubt that one megabyte is too small so that's 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 the centralization problem right and that you know uh massive blocks you know would create a problem I think everybody's in agreement about that I

think where there's a disagreement on or or with this the question is about you know what's what's the right size of block is it 1 Megabyte is it I don't know 2 48 is it something bigger some people I think have even said something smaller how should we determine that number I think uh the question is do we want a hard fork or not because increasing the block size is a hard work um and uh 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's no there's no point trying to determine the the block size for the

moment we don't know what the I mean what is the right block size depends on how how use you use the blockchain but if you use the blockchain using lightning then the white block size is probably not something that uh is the same as if you don't use it and we cannot measure that for the moment because we don't know the the usage of lightting 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 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 and the other thing is it's not ready yet so why not increase it in the meantime while lightning is developed and then you know when it's there you will see okay I I need to make three parts to my answer first uh the claim that uh we need more winning big bigger blocks even with lightning is only uh I mean it has been made in the the context of every 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 uh segit is a soft Fork it's less risky than uh than risking speed of the blockchain so uh 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 I think it is ready uh it's not read in graphical user interface um but if we activate segit now we will already gain some space so it will relieve uh the the space issue that we have for the moment scaling on

chain and I'm I'm sure that lightning solutions for end users will appear soon in your opinion why are some people oppose the segwit what uh what might be the reasons why because it's you know it all SS seems like a good idea it's an easy solution it it offers some scaling it solves um known issues like um transaction malleability yeah why why would anybody not want this well there are different categories of users who want different things uh let's uh set aside the miners and the Asic boost issue for the moment and let's talk about developers and users uh some people want to have scaling onchain

because this is how Bitcoin used to work we used to have a few years ago almost three transactions I mean with zero fee and Bitcoin was working in a very different regime as it's working today um and as it will work in the future uh because uh with the fees that are almost zero you also need to find an incentive for miners to mine since the block reward is is supposed to go to toward zero uh miners have to make money out of fees this is how Bitcoin is was designed uh other blockchains have been designed differently for example with ethereum you have inflation forever which is a it's also a reasonable choice but that's

not the choice that was made in the design of Bitcoin so I think that um the people who want be bigger blocks are actually extremely uh nostalgic of the I mean they they're conservative in the sense that they want to 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 uh it would require some inflation it would require rewarding the miners for for mining blocks in my opinion yeah and so so this this is a category of users now if yeah I said we leave a side minus for the moment the

third category would be developers and of course if you uh want to propose a fork of Bitcoin with bigger blocks it might also because you want to be a part of the leading team so that might be a another reason so moving to uh the the topic of scalability and and Mining perhaps bigger blocks uh one topic that has been very presented in this in this whole debate recently even if you uh only follow this debate from a distance is Bitcoin unlimited of course we've had uh Roger on the show to talk about that as well as um Peter ryzen and the two Andrews who are the the main that's

right um so you know if if listeners want to uh learn more about Bitcoin limited you know they can go back and listen to those episodes um currently a you know like Bitcoin limited had seemed to gain quite a bit of traction in the beginning and and it's still very much a Copic a topic of conversation in the community it seems like it's currently at about 40% of the mining power if we look at uh uh if we look at the support what do you think of Bitcoin limited yeah well um I don't think it's a good idea um it's really a big change uh it's it's a change in the structure of of Bitcoin and it's um it's a very risky hard

Forge um but I I also think it's not a topic anymore because uh a lot of people have been uh with this Asic book Scandal sort of a lot of people have changed their mind on this um there is still a a large fraction of the hashing power that is signaling for for Bitcoin unlimited uh but we are in a situation where miners uh have a lot of power and uh they seem to to want more do you think that this um these 40% of Myers that are backing Bitcoin limited do you think that this is sort of the threshold that it's it's

not going to go any further than because I mean it it requires 75% uh in order to um to be adopted is that a probability it will be up to the miners to decide when they start yeah exactly the the the the fork can be triggered at any time and that's the point of of Bitcoin unlimited it's the miners who decide to change the rules whenever they want and they they can uh they can do it the only requirement is that they get they are followed by other minus um so the this emergent consensus works by trying to fork and see uh See if other people follow you uh and if they

don't you get off fund that's that's how it works you mentioned this briefly as well you know that they want more power I think if you look at this whole debate I think on on every side actually we are yeah yeah there there has been the claim that miners are trying to fire the the core the core development team with The Bu and to replace them with other developers and on the other side the what seems to be the the nuclear trigger is a change of proper for this this threat that has been also agitated by L Dasia I don't know about that could could you could you talk about this

threat of change of proof of work I I don't exactly remember what he said but the idea is that uh okay we can hard for Bitcoin and use something different a different proof of work than shat 56 which would make the mining the the the material bought by the miners absolete well I I think it came from there like so let's say you'd have a hard fork and you know Bitcoin unlimited is at whatever 50 60% or something and and there is a hard fork and then there's some minority that stays on on a different chain you know they say Okay know we stay with one megab blocks of course what the situation you have then is that the the minority chain uh is potentially vulnerable to miners on the

majority 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 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 uh the the minority chain wouldn't be vulnerable anymore to attacks from minors yes indeed um but in both cases we are talking about a situation of a of a very big disruption if there is a 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 right so yeah of course uh honestly I don't think that the miners uh who currently signal for Bitcoin unlimited really want that they are signaling their opposition to to seg so why are they opposed to segit yeah well there is this uh theory that it's um because it's not compatible with Asic boost so uh Greg Maxwell made this uh this statement um on uh on the

mailing list a few days ago um so apparently the main chip producer bit main has uh Incorporated in the chips a technique and optimization that is called AIC boost uh that allows to mine more efficiently and uh this is not compatible with segregated PS so if they have done that uh if they are I mean they have acknowledged that they they have Asing boost in the chips 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 test if you want to to have a a competitive advantage over other miners by doing that uh it only works of course if uh

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 uh we are talking about a situation where miners buy a chip and they are not using the the complete set of features of that chip only only the producer keeps this feature for himself yeah I I mean this is a complicated topic right and uh 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 KC Miner the guy who's running a sponduli tech he also had a discussion with Adam back about it also Timo hun

and and they sort of all seem to say yeah I mean it's not such a massive thing you know maybe there'll be improvements of 15% or something like that but but 50% is already the margin that they yeah 15 I mean uh it's your margin yeah I don't know I mean the arguments for most of the people who are actually working in mining was that this is unlikely to be uh significant Advantage okay I I I'm not a minor and I'm not able to to put numbers on on the economic advantage that they can gain from it however uh this uh Sam call this this blog post by by Sam call did not

convince me at all uh he uh debunking arguments that have not been made by Craig Maxwell he's talking about um how how you can reduce the number of gates on the chip and how you can gain U uh Power efficiency but uh the claim of Greg is only about the power efficiency uh if you if you wants 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 this is not possible and so Greg did not make the claim and yeah well he also has a whole paragraph about pre processing on the chip which is not relevant for the discussion

yeah let's take a short break to talk about Jax Jax is your wallet your complete user interface to cover all your blockchain needs I've been using it and I've been loving it now Jack supports a lot of different cryptocurrencies suppos Bitcoin ether Litecoin ethereum classic zcash or rep and they're adding many more keep responding to users needs now with jackon 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 there 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 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 you can there are even browser extensions for Chrome and Firefox and on top of that in Jack you can actually exchange different cryptocurrencies for each other because they integrated a shape shift and more Partnerships and Integrations are coming down the line in 2017 that are going to make ja even better so Jax is really making blockchain and cryptocurrencies accessible for the masses easy to use for the masses make sure sure to get you own Jax wallet at ja.io or you can get it from any of the app stores you are using we' like to thank Jax for their support of App Center so just just

coming back to the Bitcoin limited topic okay so you one can understand understand quite quite simply why uh what what interests are at odds here with regards to segregated witness and Asic boost um because they're simply incompatible and and you know miners have their have an interest in mining blocks more efficiently um where where where does segregated witness and Bitcoin unlimited uh Collide in terms of are they are they are they incompatible why why are these two proposals um seem to why do these two proposals seem to be opposed you mean segit and eost or no segit and Bitcoin un

limited the team of developers that are behind Bitcoin unlimited actually did not create a patch of the project but they fed it a long time ago and the the the version of Bitcoin that they maintain is now completely different they have diverged which is not a good idea I mean if you if you want to to uh well it's a good idea to for 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 benefiting from their development you you you should not do that you they should have created a patch or a new branch and that they would rebase from time to

time so I mean that's why it's not compatible okay so it's it has nothing to do with technical incompatibility it's what you're saying is Well I think with the choice made by these developers yeah I mean we were having this discussion Ryan and I early before the show and you know what he pointed out is that a lot of this is just it just comes down to power I mean who who's going to get their patch out who's going to get their version uh out and it seems like this here is one one one example of that where uh you have these two opposing camps that uh are um trying to achieve uh to gain power and Achieve uh some sort of power

yeah but but the Bitcoin unlimited Camp is just I don't know how many people but it's it's very small I mean it's not really a big team of people at least I'm talking about the developers we talked a bit about Asic boost and I I am 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 are at the heart of this and that are preventing there you know from any kind of conflict being reached do do 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 uh you can earn more on transaction fees because you have more transactions um on the other hand if you have the lightning Network miners might uh actually uh make less uh transaction fees because they they do not get any fee on the 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 to set to put numbers on that it's not possible to quantify this um it's only it's probably a fear of is

minus 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 uh 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 is was exactly the opposite argument yeah that's why I'm saying it's it's impossible to really quantify this and I'm not uh I'm not convinced by this argument I'm just saying that it might be one of the reasons why they fear that

uh but talking about Asic boost if the main chip manufacturer is opposed to to to seg it and uh he sells you your Chip he can also uh pressure you not to signal for for sec uh so uh it might be as simple as that so now let's let's talk about the the topic of a fork I think we we have kind of approached on it a little bit but I would love to dive in deeper first of all you know how could a fork play out with uh with Bitcoin unlimited and and then also what has now come up as a topic the the idea of a user activated soft Fork so first of all you know let's

just assume yeah Bitcoin unlimited got to 60% yeah they start mining bigger blocks uh you know what happens then for example for me as a user uh or for the Bitcoin core developable how how does this play out this scenario okay so USF is a soft fork and Bitcoin unlimited is a hard Fork the distinction uh between them is that uh with a soft Fork you are um making the rules more strict the rules of the consensus so something that used to be allowed is no longer allowed with the hard Fork uh you are relaxing the rules uh this is the the traditional

distinction uh but it's uh it's not a complete picture because you have two different types of hard Works actually you can have a strict relaxing of the rules and you can have also a change of the rules where some some of the the rules are relaxed and other are are new and this would also be a hard for Bitcoin unlimited is on the is not of that type it's a it's a strict relaxing of the rules and uh this makes it reversible it means that uh if their Branch if there is a split of the blockchain and their branch has less uh less proof of work it gets off B which

is not a a good design um because then then it it will be forever threatened to be off band yeah so so what you mean is like we have uh we have um a fork that is re it is reversible 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 uh 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 becom longer then you would have the Bitcoin unlimited nodes I mean unless they do some sort of upgrade to change that yeah yeah unless they do some sort of but still so 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 if if I as a user there's there's this fork and I want to sell one of my one of my coins and let's say I hold it with alrum what do I do yeah you need to split your coins before you 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 um and in order to do that the safest way to do it is to to mix your Bitcoins with newly Min points that

exist only on one of the chains uh but of course uh it's also a bit slow so this is why I suggested that you could also achieve the same goal using replace by Fe because bu turns out to not support RBF but it's not 100% guaranted to work yeah I mean miners can can mine RBF so yeah so just to run through that let's say I have a Bitcoin uh in a particular address and now there's a split and I want to I want to make sure that I spend it on the you know Bitcoin core chain but not on the Bitcoin unlimited chain uh and then what I could do is yeah so so what what you would do

is you would duplicate your electron wallet to have two separate directories it's uh it's cleaner that way and uh then um you send the Bitcoins to yourself uh using the the Bitcoin core wallet uh and for this you you use airf transaction um and then uh you bump the fee of this RBF transaction um and if if everything works well uh the fee uh I mean the transaction will be on the other version of the chain but not when you bump the fee because it's nonstandard for them uh it's not guaranteed to work so 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 uh mine the the second transaction if they do not follow their own rules couldn't you make a transaction that in the inputs also includes newly mined coins from after the fork is is that ENT yeah that's that's just slower because you need to wait until um these coins are major so they they need to to be 100 blocks old and then you need to find a miner that sells them to you so you if you want to trade them very quickly it's is it can

be a problem if you if you really want to use the the coins very soon and and just just to explain this replace by fif thing uh you mentioned again a bit more so yeah so I have my coin now I have it in these two electron wallets right I I'm sending uh this transaction to myself right uh in both networks but I I mark it uh replace by Fe 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 a special flag on the input okay um and uh this RBF transaction actually is accepted on both Network

what is not accepted is the the action of bumping the fee so that means that uh both transactions are actually valid on both networks uh 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 because so basically I'll be saying okay I'm going to send on on both chains I'm going to send you know from my address a I'm going to send it to B I'm marking this to replace by fee and then on the core chain I'm going to replace that transaction sending it C so no no you 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 uh what you can do actually is Bump to Fe right away and uh in theory this transaction would not be propagated on the Buu network if that doesn't work what you can also do is wait until it's on confirmed on bu because bu has bigger blocks so it will be faster and then once it's confirmed on bu and unconfirmed on bitcoin you can burn the fee that's another solution yeah yeah yeah yeah but of course it won't work if by chance your transaction is confirmed instantly on both so so but if you see that playing out right like

let's say we have this Fork we have uh people on both chains I mean realistically a a fork would mean a tremendous amount of volatility right people would be Trading on both ends they would want to you know they would constantly watching okay which side is getting stronger which side is getting more support what arst doing and you know to say okay I'm going to sell one or sell the other I mean even when with etherum etherum 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 I no exchange has really made a statement that uh they are ready for for trading uh both coins this is not so easy it's not just

exchange but also payment processors and and there are some legal issues associated with that what is the definition of a Bitcoin if there is a fork uh because there terms of use refer to to bitcoin but they did not probably uh they did not planify 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 that this this incentive of exchanges to support both coins in some ways you might be at

odds with the the health of the ecosystem because if you have you know coins that are significantly that have significantly less support let's say there's like three forks and uh one of these coins has significantly less support and is insecure you know you're sort of as as an exchange you have an incentive to support that coin but um you're only further sort of you know dividing you're you're you're as an exchange you're only um encouraging this sort of division in the community uh for your own E I don't I don't agree I think if there is a a split of the blockchain uh the feedback through the

price is the only way users have a word in this debate otherwise it's the control is only with the minus oh I see yeah um and if the one of the blockchains is does not have enough hashing power uh and is constantly off founded by miners from the other Camp then users have no no way to to exert any feedback so you're saying then the market is sort of a a signaling mechanisms to a singling mechanism sorry to see the of the value of the uh the real value of the of the chain well that's the ID uh behind the user activated softw okay so

let's move on to that topic then let's uh let's go into the user activated softwork um so this is a topic that has come up in in the last few weeks I think so can you explain what the user activated soft Fork is as opposed to the the minor activated soft fork and and in what context are we seeing this come up now within the broader scaling debate yes of course uh just to to finish on Buu and the hard for uh in both cases uh 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 uh but in yeah in the user activated softwork um the idea is that uh you

trigger softwork regardless of the the consensus that has been reached among miners um so there is a date that has been set by the proponents of usuf which is the 1st of August and uh so on this date uh the nodes that do support uh UF are going to require that all the new blocks signal for for SEC okay so USF if we just sort of explain at a high level right right now as it stands for these for segwit and Bitcoin unlimited the way that we get uh approval is through miners signaling in

their blocks which version they're supporting here we're giving that choice to users so full noes presumably um and they would sort of s signal by voting with their software what uh what you know what version they want to be activated on this 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 yes um the IDE of user activated soft Fork is not new actually um uh setting a date or or a block in order to to um activate Fork has already

been done in the past um but the situation is new because there is no consensus so this is why I'm I'm saying that we are in a new situation where soft Fork uh is uh proposed I mean it is the user activated softwork is proposed as a way to bypass the lack of consensus and this is new um and so the idea behind it is that there is a consensus within the economy so the the the economy supports s bit and if the miners uh do not want to activate it who who is the economy yeah that's a good question uh who is the economy uh in the

end the this kind of feedback can only come from markets and we cannot predict in ADV if it's going to work or not so there's not enough minor support and so therefore we're turning to the the the the community or the economy to make that decision is is that sort of the idea well the idea is that um if there is a soft Fork either it will be with 50 more than 50% or less if it's with more than 50% then the other chain is of plan if they start with less than 50% uh the idea is that by having this feedback from the market um they the coin on this side of the pro would have

more value and on on the side that did not do the soft fork and therefore eventually this side of the this branch of the fork the the the soft tring Branch would have more value uh therefore it would have more uh more proof of work and the other Branch would be a front so then uh the idea is also that miners should take this into account and the switch as soon as possible because they if they acknowledge that uh most economic actors want this this software to take place they should follow so so right now user activated software is it's mostly focused on on

implementing segwit uh 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 uh so stricter sensu 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 are are you saying that there's no consensus among minors yeah okay so the way I'm seeing this is that the the people backing segwit can't get consensus from Miners And so therefore they're turning to the to the economy to

try to get consensus so it's like you know it's like a kid like asking his dad for something and the that's like you know and so he goes to see his mom yeah you can you can put it like that but uh the claim I mean the belief is that uh the economy will value this coin more because it has more utility sure that I mean that may that may be true that may not be true who knows right but I must say I find the the terms being used a bit deceptive because like I mean user activated is I mean it's not really user activated right right yes it is uh it's uh it's not minor activated it's activated by people who are running a note um which are not most users right

the vast majority of Bitcoin holders don't run nodes that's true but uh what it providers like electron uh we uh we are going to give users the choice uh so uh so in the end users can decide which coin have value and how would they do that if they're running an PV client in the case of electrum yeah it's exactly the same as as with the hard Fork of in the situation of BU there if there is a a split of the blockchain uh you would need to to separate your conss in both cases it would it would it would be very similar but so so you could have this Choice

after this the fork but you don't actually have any choice when it comes to the activation I think that's that's where my uh rection is no uh when the activation comes I think the most important uh variable is actually the hashing power that goes through the fork if there is not enough hashing power in the in the forking Branch then it will be vulnerable to attacks uh so it it remains a minor thing until the until the the talk 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

software for anybody who wanted to really you know push a proposal through would be to activate a whole bunch of Bitcoin full nodes which you know presumably you can do for pretty cheap you can't do that like on the on the minor activated Fork you for yeah but the the your user activated softwork is not a node voting not there is no there is no vot there it's just the date that has been decided by by the people who started this it it doesn't matter to to run nodes many nodes the what really matters is how how much people are using these nodes if exchanges are using them what are the exchanges defining as Bitcoin are they going to say that

Bitcoin is the the the version that has that is following the fork or the other one these are the questions that I sension but couldn't you just run a like if you could couldn't you to spawn uh a whole lot of nodes um supporting you know segwit for instance could could one person do that or a group of people do that yes uh yeah and you could also also not propagate blocks that are non seg yeah you can do that uh but if the if the if the miners that are against secet are well connected they they will find a way to propagate their blocks between between themselves yeah so that's not such a significant

action um no I agree and so just just uh iterate here on yeah why is it why does the mining uh 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 uh 10 minutes until the difficulty reset which might be two weeks or you know generary 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 coins to exchanges to be able to trade you know to so it it will it will be more than two weeks if you have only 10% right exactly so then it will take actually 20 weeks uh until the reset so yes pretty much so so that's why I think it's not reasonable to do this with 10% also because your your blocks can be easily off founded by hosti minus uh the blocks on on the on the forking Branch can be undone and replaced by empty blocks if they 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 software maybe only triggers if you know let's say 40% of the mining power or something like that uh to support it yes actually this is a I mean I made a proposal that uh that goes in this sense I think currently the the signaling of the segregated witness softwork uh only works with 95% and uh I think instead of uh having only a date uh we should maybe have a minor activated soft Fork uh with less than 95% and with a thr that miners uh communicate and decide uh because in the current system of bip n

uh miners who signal that they are going to activate segit they are not just saying that they are saying okay I'm going to soft for if there is 95% of agreement uh but it doesn't mean that they would be really to soft fork with 30% uh with 30% the risk is much higher and the miners Who currently signal for segit their signal that they are willing to follow a fork with a wide consensus they are not saying I'm I'm taking this risk at 30% so yeah I think if we want to activate a soft work with 35% for example which

are consider kind of in the safe Zone uh then we need a coordination mechanism between the miners that are willing to do that and this would be achieved by signaling at which Tre you are willing to to soft Fork uh so instead of having just a single bit for the fork you would have multiple bits and you would encode uh what is the what is the trle at which you you want to to softw and then this information is public because it's in the blocks of all the miners who want to softw and they can coordinate they can decide uh to change that result according to what minus two I mean I 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 and it seems like any kind of scenario we talk about here whether it's you know Bitcoin unlimited gaining a majority starting mining biger blocks well that will probably result in two Bitcoins this year will probably result in two Bitcoins right so it do do you think that's an evitable or do you see a path where you know the current bitcoin Community somehow gets together and somehow find 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 uh this uh this user activated software proposal actually was not uh supported by Greg Maxwell recently he made a statement that he did not support that and I think uh it might be seriously weakened by by that um so we will have to see how things develop um of course uh I I perfectly I I perfectly understand why uh most of the core developers do not want a fork of the blockchain I mean a split not not a non a for a fork without consensus it would

be highly disruptive and it would uh it would be bad for for the ecosystem the question is what is worse uh waiting uh two three more years or 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 uh why there isn't more willingness to compromise right to say like okay we do a hard work we do seg and we do like I whatever four megabyte blocks or something like that you know where yeah both sides uh 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 uh just go with the other side right because that will look like uh one one side is really lost whether that's the core developers and that would be that would certainly be a shame right if 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 you know from people like my curent Garen Andre who's I know maybe semi left or something uh and I think that's 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 I think that's the only way forward to actually progress Bitcoin right so it it can move

forward and also keep this thing together yes the problem is that uh what is a compromise uh for example there is this proposal segit plus two megabytes which is a proposal to do the the sa soft work now and to have later a hard fork 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 software they have no guarantee that is actually going to be followed by the hardware and also the willingness to compromise to find a compromise is uh good as long as uh you do not give up something essential I think the core

developers do not want a hardw because it creates it might create two coins per ently a soft Fork at least can Oran the the the other part of the branch and also um but this is this seems like absurd to me because if you let's say the core developer says okay we support hard Fork to 2 megabytes you now so that miners have the Assurance you know at the same time you do hard fork and seate I mean if they supported that and and the majority of miners got on board you know that will probably work right so the idea that you're against that because it can create two coins but then user activated software which is

definitely going to create two coins yeah I don't think it's the same people who are behind the uh uh the rejection of hard fors and the user activated softwork uh user activated softwork without consensus is very risky the question is is it is this risk worth taking and uh how big is it uh we don't know that until uh until uh we can uh have an idea of how many miners are going to follow the softw the core developers have designed segit in a way that is highly nondisruptive um so if you are a miner and you don't want to implement segit

right now you can still mine non segit block and they are still valid with segit uh of course uh your block might be invalid if you if uh you have some transactions in it that uh um that are saf transactions and uh 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 but it can happen well so my point is that the core developers have been have really done the maximum to make sa it

nonrisky I can understand that they do not want to risk split of the chain it's the same I mean as as I'm I'm the developing electron and I always keep saying that electron is neutral uh you can you can be for bu you can be for against segit you can still run an electron node so the the software that I write is agnostic and uh this is because electrum is a decentralized system when you are developing a de decentralized system you do not want to to split a part from one part of the community yeah no that makes perfect sense I mean uh I also completely understand for example I

I you know read Greg Maxwell's thing on being against the user activated softwork as well I mean at least it's consistent I think with uh the sort of view okay we got to be conservative and uh and we have to make sure that there is some kind of consensus because it seems extremely hypocritical to me if you're going to you know criticize bigger blocks or you know a block size increase because it doesn't have consensus but then you are in favor of something like user activated software that doesn't seem like a intellectually consistent position to hold so but are there people holding this position I'm not sure maybe not yeah uh I don't

know mhm 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 whether this project has a future or 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 uh this is not getting implemented uh because it's their baby sort of and it's like your your baby is getting rejected so uh I have much less um frustration I guess than them and uh yeah well I I'm excited by this idea of

lightning Network and payment channels and I would like to to see them happen so this is why I'm frustrated but I have not really uh spent uh hundreds of hours of my time already on that so yeah let let's imagine that segregated witness does get implemented and and we get all the benefits from that and uh that lightning networks also gets it's going to happen on Litecoin very likely okay well perhaps that's that's a good test bed then I mean my my question was going to be let's Flash Forward you know four years and hypothetically both of these things are now running and and and um and and tested and and are sort of you

know um used what what what what 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 uh the the big players might be different uh I'm a wallet developer and uh I'm not a lightning Network ready so I I'm I'm trying to to do to be ready as fast as possible but um yeah so electrum is already supporting segregated witness but of course um nobody at this point has a really um userfriendly version of the lightning Network it doesn't mean that lightning

does not exist actually a few weeks ago uh there was a lightning transaction here in Berlin at the room 77 restaurant to pay for a beer using tesn Bitcoins so they made a demonstration of that uh in during this developer Workshop so lightning does exist and I I'm testing it I have used the lightning Diamond I'm studying the code but uh yeah well um the it's obvious that um wallet providers will have to adapt or or maybe they will no longer exist and uh then payment providers as well even this for them is probably less uh less of a

change they they actually use words do you think that so the these Solutions being implemented on on Litecoin may serve the Bitcoin and Community as some sort of a a feedback mechanism you know something they can look at and say okay well this is this this is the results that we got on on on this other blockchain um whether it's positive or negative do you think maybe that's one uh Way Forward might be the case Yes actually the first feedback that we get is that the price of Litecoin is correlated with the number of miners that signal for SEC yeah I mean I I think that's pretty obvious right that this is a a big opportunity for Litecoin potentially because uh if if this continues to stall let's say SE does get

activated there you know for for Bitcoin developers it's easy to sort of Litecoin is very close to bitcoin the the changes are very small it's not like Bitcoin unlimited who decided to Fork the project and to to discard all the new developments of the code development of the core developers Litecoin is just a small patch over Bitcoin so the the development efforts that are made for Litecoin can benefit to bitcoin exactly no no I totally understand that but you can still have the situation that you know maybe this would be looked at okay it's this like temporary thing and we're just going to develop on with SEC on Litecoin under the assumption that uh

Bitcoin is also going to activate seg but if then that doesn't happen and then you know one year later you're still developing on Litecoin 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 we're almost at the end but briefly you had in Berlin uh a workshop with uh many of the wallet developers they all came together you organized that to talk about you know news in Bitcoin development can you share a bit what are your main takeaways from that Workshop oh it was very nice uh we did not really talk about soft forks and

hard Forks that was not the topic of the discussion because uh yeah well this uh this um Workshop was organized by uh was initiated by Matt corallo and the I guess one of the main drivers was uh to discuss um standards and compatibility between wallets especially in the context of the changes that are necessary to to make for segregated witness we segre the format of transactions is a bit different and um especially for Hardware wallets you you can check the input amounts more easily you don't need to to send the whole set of input transactions to the to the

hardware world so we were we have been mostly talking about standardization of communication and uh between wallets yes and of course we we talked a little bit about USF but it was only on the Cofe break okay cool well Thomas Thanks so much for coming on I mean it's this is an endless topic and I'm sure it's going to stay with us for for a long time it doesn't have any signs of of going away yeah sure thank you for having me it's uh it was very nice to to see you guys again it's been a long time yeah absolutely and I I think it it does hold the promise I don't know if you want

that that Bitcoin could become an incredibly uh incredibly interesting place right if you have a software coin chain splitting replay attacks no I excitement nobody wishes that I believe that the the proponents of the user activated softwork actually uh expect this to have a uh a deterrent effect on the miners so that they will G they will have 50% from the start uh this might be wishful thinking I don't know but this is this is the bet that they are doing that at least if there is a split is not going to last for a long time I mean that sounds like wishful thinking and and and even if

they do have 50% then well there's another chain also with 50% right so no uh if they do have more than 50% unless the other chain makes a hard work then the the the the other chain doesn't uh keep it's it's getting off fun yeah that's true it's more the miners will will jump to the longer chain okay well thanks so much Thomas well thanks so much for your work also with electrum um it's not only my work and yeah thanks so much for listening for once again tuning in we are part of the let's talk Bitcoin Network be Let's Talk network you can find this show in other shows on let's talk bitcoin.com

and if you want to support the show then you can do so by leaving us an iTunes review or or giving us a tip in Bitcoin or ether and yeah thanks so muching we look forward to being back next [Music] week