From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 59D4DC0001 for ; Thu, 27 May 2021 10:09:21 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 31A79400DD for ; Thu, 27 May 2021 10:09:21 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.099 X-Spam-Level: X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp2.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QZHglCZxV67P for ; Thu, 27 May 2021 10:09:16 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [IPv6:2a00:1450:4864:20::62e]) by smtp2.osuosl.org (Postfix) with ESMTPS id E2B9E400C4 for ; Thu, 27 May 2021 10:09:15 +0000 (UTC) Received: by mail-ej1-x62e.google.com with SMTP id gb17so7126273ejc.8 for ; Thu, 27 May 2021 03:09:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=x8Ox9Lv+Tw9PBXAvqHsFj1UyRIoEIyPsPOVJi7jSd44=; b=ABhFhCSAcrsmxAyIvRp7ET2yHch1mwMu6YIdePafWS7mbNIgKm+Hkm6nnClMp6oIyN ak9rBKspN2+QhPLQTgKN+8V3Nh2IcRpoM4vwouCHr2AaTq/N7ZaIghSKnHHQzozTe3l2 xRTNFTLb7asOiVQY5gMxZ0IdjJIgiX1zwsgv6E6wX75vDqHSq9fd0q0BeM4C4c8u5IUT muEmZlFAwLi9dKUH7ADT6xpkMAc6ZiLhmfQqbxffhs7Q3la7X09N6tlAD4vQb8lX/dVz oQgDw+9lr88TPKS/gdBi29wHmE0Vjg5mKpptNAHRPwU6TLROZqMCNoDFsqwfB9MU5zgO UjWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=x8Ox9Lv+Tw9PBXAvqHsFj1UyRIoEIyPsPOVJi7jSd44=; b=oTQpPyloz7ilwqVQDWPWZjGHKoMWeV/5cU/HzhVC1mSJobjGuWO60nMlDoqSJuuheq ORW3ZbQbSxjwzff7AX9I/tpBorLf+m4V5dJe3vxViEoqcH9dgj5fLwtpNylDwH2D+38m GyxU8GSS704YY1lXTDDb61EBe7MzzuEjO8MRPaYffV7PeyYwJ3w1Eew9MDvNl0koMK6U PY+jzcxELVeGl3kcvheczpMI1stXrPCo4e4e2YTvF6g0qj6YmEd/dnBMroNT5EOq84DH wEY99tX5SMFhkN/s8dH+9TVnTZY4HPcIDDLpHg3NH/xO9BEejMq6yg5SFV7JnSck9AKN OiDA== X-Gm-Message-State: AOAM532Y/ev/ygw1XyX45pnX3NwlNyTGOZ8Cg6LV2Fhyl/1L/u8TMM7a Cr78pri7wEb5R1joSCCIvuLhhCUEGDWMXLI4s4I0o7x44UAskA== X-Google-Smtp-Source: ABdhPJwHVG6HvtqAY3xKE0vktyrVchJBRbK22UvK8lMeSKpZ9RfdWBTwKUmLVTfanwhZ8J71M25IWRw2ur75OiRrfLE= X-Received: by 2002:a17:907:76b8:: with SMTP id jw24mr2943885ejc.359.1622110153785; Thu, 27 May 2021 03:09:13 -0700 (PDT) MIME-Version: 1.0 References: <6do5xN2g5LPnFeM55iJ-4C4MyXOu_KeXxy68Xt4dJQMhi3LJ8ZrLICmEUlh8JGfDmsDG12m1JDAh0e0huwK_MlyKpdfn22ru3zsm7lYLfBo=@protonmail.com> <3TVoontwJmoMv0tp1S5MU_U8icxcQZfajtbNEXqOjuvO7GpfUQdh9pEGSIbLEYJndrDa_dJQqa0sSwY-BmuCmyHMRWqa9lEaUjZJSP5Vbyw=@protonmail.com> In-Reply-To: From: Billy Tetrud Date: Thu, 27 May 2021 00:08:57 -1000 Message-ID: To: befreeandopen Content-Type: multipart/alternative; boundary="00000000000080c6f005c34cf331" X-Mailman-Approved-At: Thu, 27 May 2021 21:10:33 +0000 Cc: Bitcoin Protocol Discussion , SatoshiSingh Subject: Re: [bitcoin-dev] Opinion on proof of stake in future X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 May 2021 10:09:21 -0000 --00000000000080c6f005c34cf331 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable > using nothing at stake I see from the way you're using this term now that you mean something completely different by it than I usually understand the phrase. You seem to mean it as that minters can check whether they can mint a block without any cost. By contrast, I generally understand the phrase to mean the problem where there is no cost to broadcasting blocks on many different chains. > she gained an extra block over the honest strategy which would only give her block D I think I see what you're saying now. It actually sounds quite similar to the selfish mining attack in proof of work. However I do acknowledge that the ability to secretly mint on both your secret chain(s) and the public chain makes it worse in PoS. How much worse is something that should be quantified. This is also a solvable problem. Designing a secure system can be kind of like whack a mole. You fix the weakest link in the chain, and there is inevitably now a new weakest link that is stronger than the link you fixed. Bitcoin is no different, as development continues, more security improvements are implemented. In this case, there's a number of possible solutions, some of which can be combined. Eg you can program all honest clients to mint selfishly. You'd likely need to lengthen the number of blocks that constitute a finalized transaction, but you can probably reduce the block time to compensate, so finalization doesn't actually take longer. You could also require many additional signatures on each block from outside validators. > How is that relevant to our discussion? It is relevant because the benefits of proof of stake must be compared to an alternative, and the alternative of reference here is clearly PoW. I'm pointing out that the vulnerability you're describing in the type of PoS you're talking about also exists in what its being compared against. To know whether PoS or PoW is better on this particular aspect, you need to compare the levels of advantage that can be obtained in each, and how this affects the cost of attacking the system. Its not as straight forward as saying "PoS is bad because it has this vulnerability" when the system you compare it to also has a very similar vulnerability. You need to quantify the difference at that point. > the list of producers for next epoch is known up front and you confirmed that this is what you meant with "quorum" system Known by public key, not by IP address. > (CREATE PROBLEM ELSEWHERE) OR (NOT SOLVE IT COMPLETELY) I agree that claiming that Y is a solved problem would be misleading if the solution creates problems that are of greater significance than the original problem. I would also agree that if the solution creates significant problems that are substantially less significant than the problem it solves, it would be misleading to say its a "solved problem" - saying "partially solved" would be more accurate there. However, I do not agree that it is at all misleading to say "nothing at stake is a solved problem" just because solving that specific problem doesn't solve all the problems with proof of stake. Its unreasonable to expect that when someone claims problem X is solved, that it also implies all problems related to X are solved. I maintain that nothing at stake is a solved problem. There are solutions that do not create other problems of anywhere near the same level of significance. > Since the optimal scenario with all existing coins participating is just theoretical, the attacker's position will ever so improve. It seems we are in agreement here, great I don't believe we're in agreement there. I don't know how what you said refutes my point. > I'm afraid you've not realized the burden of proof is on your side if you vouch for a design that is not believed and trusted to be secure. You were the one that claimed proof of stake cannot be made secure. The burden of proof is on you to support your own claims. > You have not described a system that would solve it I would be curious to hear a full critique from you about this protocol . On Wed, May 26, 2021 at 3:12 AM befreeandopen wrote: > > > @befreeandopen I guess I misunderstood your selfish minting attack. Let m= e > make sure I understand it. You're saying it would go as follows?: > > 1. The malicious actor comes across an opportunity to mint the next 3 > blocks. But they hold off and don't release their blocks just yet. > 2. They receive a new block minted by someone else. > 3. The malicious actor then chooses to release their other 2 blocks on on > the second from the top block if it gives them more blocks in the future > than minting on the top block. And instead lets the top block proceed if = it > gives them more blocks in the future (also figuring in the 3 blocks they'= re > missing out on minting). > 4. Profit! > > The problem with this attack is that any self respecting PoS system > wouldn't have the information available for minters to know how blocks wi= ll > affect their future prospects of minting. Otherwise this would introduce > the problem of stake grinding. This can be done using collaborative > randomness (where numbers from many parties are combined to create a rand= om > number that no individual party could predict). In fact, that's what the > Casper protocol does to decide quorums. In a non quorum case, you can do > something like record a hash of a number in the block header, and then ha= ve > a second step to release that number later. Rewards can be given can be > used to ensure minters act honestly here by minting messages that release > these numbers and not releasing their secret numbers too early. > > > Yes, you misunderstood it. First, let me say that the above thoughts of > yours are incorrect, at least for non-quorum case. Since the transition i= n > the blockchain system from S1 to S2 is only by adding new block, and sinc= e > stakers always need to be able to decide whether or not they can add the > next block, it follows that if a staker creates a new block locally, she > can decide whether the new state allows her to add another block on top. = As > you mentioned, this COULD introduce problem of staking, that you are > incorrect in that it is a necessity. Usual prevention of the grinding > problem in this case is that an "old enough" source of randomness applies > for the current block production process. Of course this, as it is typica= l > for PoS, introduces other problems, but let's discard those. > > I will try to explain in detail what you misunderstood before. You start > with a chain ending with blocks A-B-C, C being the top, the common featur= e > of PoS system (non-quorum), roughly speaking, is that if N is the total > amount of coins that participate in the staking process to create a new > block on top of C (let's call that D), then a participant having K*N amou= nt > of stake has chance K to be the one who will create the next stake. In > other words, the power of stakers is supposed to be linear in the system = - > you own 10 coins gives you 10x the chance of finding block over someone w= ho > has 1 coin. > > What i was claiming is that using the technique I have described, this > linearity is violated. Why? Well, it works for honest stakers among the > competition of honest stakers - they really do have the chance of K to fi= nd > the next block. However, the attacker, using nothing at stake, checks her > ability to build block D (at some timestamp). If she is successful, she > does not propagate D immediately, but instead she also checks whether she > can build on top of B and on top of A. Since with every new timestamp, > usually, there is a new chance to build the block, it is not uncommon tha= t > she finds she is indeed able to build such block C' on top of B. Here it = is > likely t(C') > t(C) as the attacker has relatively low stake. Note that i= n > order to produce such C', she not only could have tried the current > timestamp t(D), but also all previous timestamps up to t(B) (usually that= 's > the consensus rule, but it may depend on a specific consensus). So her > chance to produce such C' is greater than her previous chance of producin= g > C (which chance was limited by other stakers in the system and the > discovery of block C by one of them). Now suppose that she found such C' > and now she continues by trying to prolong this chain by finding D'. And > again here, it is quite likely that her chance to find such D' is greater > than was her chance of finding D because again there are likely multiple > timestamps she could try. This all was possible just because nothing at > stake allows you to just try if you can produce a block in certain state = of > block chain or not. Now if she actually was able to find D', she discards= D > and only publishes chain A-B-C'-D', which can not be punished despite the > fact that she indeed produced two different forks. She can not be punishe= d > because this production was local and only the final result of A-B-C'-D' > was published, in which case she gained an extra block over the honest > strategy which would only give her block D. > > > > Fun fact tho: there is an attack called the "selfish mining attack" for > proof of work, and it reduces the security of PoW by at least 1/3rd > > . > > > How is that relevant to our discussion? This is known research that has > nothing to do with PoS except that it is often worse on PoS. > > > > > the problem is not as hard as you think > > I don't claim to know just how hard finding the IP address associated wit= h > a bitcoin address is. However, the DOS risk can be solved more completely > by only allowing the owner of coins themselves to know whether they can > mint a block. Eg by determining whether someone can mint a block based on > their public key hidden behind hashes (as normal in addresses). Only when > someone does in fact mint a block do they reveal their hidden public key = in > order to prove they are allowed to mint the block. > > > This is true, but you are mixing quorum and non-quorum systems. My > objection here was towards such system where I specifically said that the > list of producers for next epoch is known up front and you confirmed that > this is what you meant with "quorum" system. So in such system, I claimed= , > the known producer is the only target at any given point of time. This of > course does not apply to any other type of system where future producers > are not known. No need to dispute, again, something that was not claimed. > > > > > > I agree that introduction of punishment itself does not imply > introducing a problem elsewhere (which I did not claim if you reread my > previous message) > > I'm glad we agree there. Perhaps I misunderstood what you meant by "you > should not omit to mention that by doing so, typically, you have introduc= ed > another problem elsewhere." > > > Perhaps you should quote the full sentence and not just a part of it: > > "Of course you can always change the rules in a way that a certain > specific attack is not doable, but you should not omit to mention that by > doing so, typically, you have introduced another problem elsewhere, or yo= u > have not solved it completely." > > You can parse this as: (CREATE PROBLEM ELSEWHERE) OR (NOT SOLVE IT > COMPLETELY) > In case of the punishment it was meant to be the not solve it completely > part. > Also "typically" does not imply always. > But this parsing of English sentences for you seems very off topic here. > My point is, in context of Bitcoin, reject such unsupported claims that P= oS > is a reasonable alternative to PoW, let's stick to that. > > > > > As long as the staker makes sure (which is not that hard) that she does > not miss a chance to create a block, her significance in the system will > always increase in time. It will increase relative to all normal users wh= o > do not stake > > Well, if you're in the closed system of the cryptocurrency, sure. But we > don't live in that closed system. Minters will earn some ROI from minting > just like any other financial activity. Others may find more success > spending their time doing things other than figuring out how to mint coin= s. > In that case, they'll be able to earn more coin that they could later > decide to use to mint blocks if they decide to. > > > This only supports the point I was making. Since the optimal scenario wit= h > all existing coins participating is just theoretical, the attacker's > position will ever so improve. It seems we are in agreement here, great. > > > > > > Just because of the above we must reject PoS as being critically > insecure > > I think the only thing we can conclude from this is that you have come up > with an insecure proof of stake protocol. I don't see how anything you've > brought up amounts to substantial evidence that all possible PoS protocol= s > are insecure. > > > I have not come up with anything. I'm afraid you've not realized the > burden of proof is on your side if you vouch for a design that is not > believed and trusted to be secure. It is up to you to show that you know > how to solve every problem that people throw at you. So far we have just > demonstrated that your claim that nothing at stake is solved was > unjustified. You have not described a system that would solve it (and not > introduce critical DDOS attack vector as it is in quorum based systems - > per the prior definition of such systems). > > Of course the list of problems of PoS systems do not end with just nothin= g > at stake, but it is good enough example that by itself prevents its > adoption in decentralized consensus. No need to go to other hard problems > without solving nothing at stake. > > > > > > On Tue, May 25, 2021 at 11:10 AM befreeandopen < > befreeandopen@protonmail.com> wrote: > >> >> @befreeandopen " An attacker can calculate whether or not she can prolon= g >> this chain or not and if so with what timestamp." >> >> The scenario you describe would only be likely to happen at all if the >> malicious actor has a very large fraction of the stake - probably quite >> close to 50%. At that point, you're talking about a 51% attack, not the >> nothing at stake problem. The nothing at stake problem is the problem wh= ere >> anyone will mint on any chain. Its clear that if there's a substantial >> punishment for minting on chains other than the one that eventually wins= , >> every minter without a significant fraction of the stake will be honest = and >> not attempt to mint on old blocks or support someone else's attempt to m= int >> on old blocks (until and if it becomes the heaviest chain). Because the >> attacker would need probably >45% of the active stake (take a look at th= e reasoning >> here >> >> for a deeper analysis of that statement), I don't agree that punishment = is >> not a sufficient mitigation of the nothing at stake problem. To exploit = the >> nothing at stake problem, you basically need to 51% attack, at which poi= nt >> you've exceeded the operating conditions of the system, so of course its >> gonna have problems, just like a 51% attack would cause with PoW. >> >> >> This is not at all the case. The attacker benefits using the described >> technique at any size of the stake and significantly so with just 5% of = the >> stake. By significantly, I do not mean that the attacker is able to >> completely take control the network (in short term), but rather that the >> attacker has significant advantage in the number of blocks she creates >> compared to what she "should be able to create". This means the attacker= 's >> stake increases significantly faster than of the honest nodes, which in >> long term is very serious in PoS system. If you believe close to 50% is >> needed for that, you need to redo your math. So no, you are wrong statin= g >> that "to exploit nothing at stake problem you basically need to 51% >> attack". It is rather the opposite - eventually, nothing at stake attack >> leads to ability to perform 51% attack. >> >> >> >> > I am not sure if this is what you call quorum-based PoS >> >> Yes, pre-selected minters is exactly what I mean by that. >> >> > it allows the attacker to know who to attack at which point with >> powerful DDOS in order to hurt liveness of such system >> >> Just like in bitcoin, associating keys with IP addresses isn't generally >> an easy thing to do on the fly like that. If you know someone's IP addre= ss, >> you can target them. But if you only know their address or public key, t= he >> reverse isn't as easy. With a quorum-based PoS system, you can see their >> public key and address, but finding out their IP to DOS would be a huge >> challenge I think. >> >> >> I do not dispute that the problem is not trivial, but the problem is not >> as hard as you think. The network graph analysis is a known technique an= d >> it is not trivial, but not very hard either. Introducing a large number = of >> nodes to the system to achieve very good success rate of analysis of are= a >> of origin of blocks is doable and has been done in past. So again, I ver= y >> much disagree with your conclusion that this is somehow secure. It is >> absolutely insecure. >> >> >> >> Note, tho, that quorum-based PoS generally also have punishments as part >> of the protocol. The introduction of punishments do indeed handily solve >> the nothing at stake problem. And you didn't mention a single problem th= at >> the punishments introduce that weren't already there before punishments. >> There are tradeoffs with introducing punishments (eg in some cases you >> might punish honest actors), but they are minor in comparison to solving >> the nothing at stake problem. >> >> >> While I agree that introduction of punishment itself does not imply >> introducing a problem elsewhere (which I did not claim if you reread my >> previous message), it does introduce additional complexity which may >> introduce problem, but more importantly, while it slightly improves >> resistance against the nothing at stake attack, it solves absolutely >> nothing. Your claim is based on wrong claim of needed close to 50% stake= , >> but that could not be farther from the truth. It is not true even in >> optimal conditions when all participants of the network stake or delegat= e >> their stake. These optimal conditions rarely, if ever, occur. And that's >> another thing that we have not mention in our debate, so please allow me= to >> introduce another problem to PoS. >> >> Consider what is needed for such optimal conditions to occur - all coins >> are always part of the stake, which means that they need to somehow >> automatically part of the staking process even when they are moved. But = in >> many PoS systems you usually require some age (in terms of confirmations= ) >> of the coin before you allow it to be used for participation in staking >> process and that is for a good reason - to prevent various grinding >> attacks. In some systems the coin must be specifically registered before= it >> can be staked, in others, simply waiting for enough confirmations enable= s >> you to stake with the coin. I am not sure if there is a system which doe= s >> not have this cooling period for a coin that has been moved. Maybe it is >> possible though, but AFAIK it is not common and not battle tested featur= e. >> >> Then if we admit that achieving the optimal condition is rather >> theoretical. Then if we do not have the optimal condition, it means that= a >> staker with K% of the total available supply increases it's percentage o= ver >> time to some amounts >K%. As long as the staker makes sure (which is not >> that hard) that she does not miss a chance to create a block, her >> significance in the system will always increase in time. It will increas= e >> relative to all normal users who do not stake (if there are any) and >> relative to all other stakers who make mistakes or who are not wealthy >> enough to afford not selling any position ever. But powerful attacker is >> exactly in such position and thus she will gain significance in such a >> system. The technique I have described, and that you mistakenly think is >> viable only with huge amounts of stake, only puts the attacker to even >> greater advantage. But even without the described attack (which exploits >> nothing at stake), the PoS system converges to a system more and more >> controlled by powerful entity, which we can assume is the attacker. >> >> >> So I don't think it is at all misleading to claim that "nothing at stake= " >> is a solved problem. I do in fact mean that the solutions to that proble= m >> don't introduce any other problems with anywhere near the same level of >> significance. >> >> >> It still stands as truly misleading claim. I disagree that introducing >> DDOS opportunity with medium level of difficulty for the attacker to >> implement it, in case of "quorum-based PoS" is not a problem anywhere ne= ar >> the same level of significance. Such an attack vector allows you to turn >> off the network if you spend some time and money. That is hardly accepta= ble. >> >> Just because of the above we must reject PoS as being critically insecur= e >> until someone invents and demonstrates an actual way of solving these >> issues. >> >> >> >> On Tue, May 25, 2021 at 3:00 AM Erik Aronesty wrote: >> >>> > > you burn them to be used at a future particular block height >>> >>> > This sounds exploitable. It seems like an attacker could simply focus >>> all their burns on a particular set of 6 blocks to double spend, minimi= zing >>> their cost of attack. >>> >>> could be right. the original idea was to have burns decay over time, >>> like ASIC's. >>> >>> anyway the point was not that "i had a magic formula" >>> >>> the point was that proof of burn is almost always better than proof of >>> stake - simply because the "proof" is on-chain, not sitting on a node >>> somewhere waiting to be stolen. >>> >>> On Mon, May 24, 2021 at 9:53 PM Billy Tetrud >>> wrote: >>> > >>> > Is this the kind of proof of burn you're talking about? >>> > >>> > > if i have a choice between two chains, one longer and one shorter= , >>> i can only choose one... deterministically >>> > >>> > What prevents you from attempting to mine block 553 on both chains? >>> > >>> > > miners have a very strong, long-term, investment in the stability o= f >>> the chain. >>> > >>> > Yes, but the same can be said of any coin, even ones that do have the >>> nothing at stake problem. This isn't sufficient tho because the chain i= s a >>> common good, and the tragedy of the commons holds for it. >>> > >>> > > you burn them to be used at a future particular block height >>> > >>> > This sounds exploitable. It seems like an attacker could simply focus >>> all their burns on a particular set of 6 blocks to double spend, minimi= zing >>> their cost of attack. >>> > >>> > > i can imagine scenarios where large stakeholders can collude to >>> punish smaller stakeholders simply to drive them out of business, for >>> example >>> > >>> > Are you talking about a 51% attack? This is possible in any >>> decentralized cryptocurrency. >>> > >>> > >>> > On Mon, May 24, 2021 at 11:49 AM Erik Aronesty wrote: >>> >> >>> >> > > your burn investment is always "at stake", any redaction can >>> result in a loss-of-burn, because burns can be tied, precisely, to >>> block-heights >>> >> > I'm fuzzy on how proof of burn works. >>> >> >>> >> when you burn coins, you burn them to be used at a future particular >>> >> block height: so if i'm burning for block 553, i can only use them t= o >>> >> mine block 553. if i have a choice between two chains, one longer >>> >> and one shorter, i can only choose one... deterministically, for tha= t >>> >> burn: the chain with the height 553. if we fix the "lead time" for >>> >> burned coins to be weeks or even months in advance, miners have a ve= ry >>> >> strong, long-term, investment in the stability of the chain. >>> >> >>> >> therefore there is no "nothing at stake" problem. it's >>> >> deterministic, so miners have no choice. they can *only* choose the >>> >> transactions that go into the block. they cannot choose which chain >>> >> to mine, and it's time-locked, so rollbacks and instability always >>> >> hurt miners the most. >>> >> >>> >> the "punishment" systems of PoS are "weird at best", certainly >>> >> unproven. i can imagine scenarios where large stakeholders can >>> >> collude to punish smaller stakeholders simply to drive them out of >>> >> business, for example. and then you have to put checks in place to >>> >> prevent that, and more checks for those prevention system... >>> >> >>> >> in PoB, there is no complexity. simpler systems like this are >>> >> typically more secure. >>> >> >>> >> PoB also solves problems caused by "energy dependence", which could >>> >> lead to state monopolies on mining (like the new Bitcoin Mining >>> >> Council). these consortiums, if state sanctioned, could become a >>> >> source of censorship, for example. Since PoB doesn't require you t= o >>> >> have a live, well-connected node, it's harder to censor & harder to >>> >> trace. >>> >> >>> >> Eliminating this weakness seems to be in the best interests of >>> >> existing stakeholders >>> >> >>> >> >>> >> >>> >> >>> >> On Mon, May 24, 2021 at 4:44 PM Billy Tetrud >>> wrote: >>> >> > >>> >> > > proof of burn clearly solves this, since nothing is held online >>> >> > >>> >> > Well.. the coins to be burned need to be online when they're >>> burned. But yes, only a small fraction of the total coins need to be on= line. >>> >> > >>> >> > > your burn investment is always "at stake", any redaction can >>> result in a loss-of-burn, because burns can be tied, precisely, to >>> block-heights >>> >> > >>> >> > So you're saying that if say someone tries to mine a block on a >>> shorter chain, that requires them to send a transaction burning their >>> coins, and that transaction could also be spent on the longest chain, w= hich >>> means their coins are burned even if the chain they tried to mine on >>> doesn't win? I'm fuzzy on how proof of burn works. >>> >> > >>> >> > > proof of burn can be more secure than proof-of-stake >>> >> > >>> >> > FYI, proof of stake can be done without the "nothing at stake" >>> problem. You can simply punish people who mint on shorter chains (by >>> rewarding people who publish proofs of this happening on the main chain= ). >>> In quorum-based PoS, you can punish people in the quorum that propose o= r >>> sign multiple blocks for the same height. The "nothing at stake" proble= m is >>> a solved problem at this point for PoS. >>> >> > >>> >> > >>> >> > >>> >> > On Mon, May 24, 2021 at 3:47 AM Erik Aronesty wrote= : >>> >> >> >>> >> >> > I don't see a way to get around the conflicting requirement tha= t >>> the keys for large amounts of coins should be kept offline but those ar= e >>> exactly the coins we need online to make the scheme secure. >>> >> >> >>> >> >> proof of burn clearly solves this, since nothing is held online >>> >> >> >>> >> >> > how does proof of burn solve the "nothing at stake" problem in >>> your view? >>> >> >> >>> >> >> definition of nothing at stake: in the event of a fork, whether t= he >>> >> >> fork is accidental or a malicious, the optimal strategy for any >>> miner >>> >> >> is to mine on every chain, so that the miner gets their reward no >>> >> >> matter which fork wins. indeed in proof-of-stake, the proofs ar= e >>> >> >> published on the very chains mines, so the incentive is magnified= . >>> >> >> >>> >> >> in proof-of-burn, your burn investment is always "at stake", any >>> >> >> redaction can result in a loss-of-burn, because burns can be tied= , >>> >> >> precisely, to block-heights >>> >> >> >>> >> >> as a result, miners no longer have an incentive to mine all chain= s >>> >> >> >>> >> >> in this way proof of burn can be more secure than proof-of-stake, >>> and >>> >> >> even more secure than proof of work >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> > >>> >> >> >>> >> >> On Sun, May 23, 2021 at 3:52 AM Lloyd Fournier via bitcoin-dev >>> >> >> wrote: >>> >> >> > >>> >> >> > Hi Billy, >>> >> >> > >>> >> >> > I was going to write a post which started by dismissing many of >>> the weak arguments that are made against PoS made in this thread and >>> elsewhere. >>> >> >> > Although I don't agree with all your points you have done a >>> decent job here so I'll focus on the second part: why I think >>> Proof-of-Stake is inappropriate for a Bitcoin-like system. >>> >> >> > >>> >> >> > Proof of stake is not fit for purpose for a global settlement >>> layer in a pure digital asset (i.e. "digital gold") which is what Bitco= in >>> is trying to be. >>> >> >> > PoS necessarily gives responsibilities to the holders of coins >>> that they do not want and cannot handle. >>> >> >> > In Bitcoin, large unsophisticated coin holders can put their >>> coins in cold storage without a second thought given to the health of t= he >>> underlying ledger. >>> >> >> > As much as hardcore Bitcoiners try to convince them to run thei= r >>> own node, most don't, and that's perfectly acceptable. >>> >> >> > At no point do their personal decisions affect the underlying >>> consensus -- it only affects their personal security assurance (not tha= t of >>> the system itself). >>> >> >> > In PoS systems this clean separation of responsibilities does >>> not exist. >>> >> >> > >>> >> >> > I think that the more rigorously studied PoS protocols will wor= k >>> fine within the security claims made in their papers. >>> >> >> > People who believe that these protocols are destined for >>> catastrophic consensus failure are certainly in for a surprise. >>> >> >> > But the devil is in the detail. >>> >> >> > Let's look at what the implications of using the leading proof >>> of stake protocols would have on Bitcoin: >>> >> >> > >>> >> >> > ### Proof of SquareSpace (Cardano, Polkdadot) >>> >> >> > >>> >> >> > Cardano is a UTXO based PoS coin based on Ouroboros Praos[3] >>> with an inbuilt on-chain delegation system[5]. >>> >> >> > In these protocols, coin holders who do not want to run their >>> node with their hot keys in it delegate it to a "Stake Pool". >>> >> >> > I call the resulting system Proof-of-SquareSpace since most wil= l >>> choose a pool by looking around for one with a nice website and offerin= g >>> the largest share of the block reward. >>> >> >> > On the surface this might sound no different than someone with >>> an mining rig shopping around for a good mining pool but there are cruc= ial >>> differences: >>> >> >> > >>> >> >> > 1. The person making the decision is forced into it just becaus= e >>> they own the currency -- someone with a mining rig has purchased it wit= h >>> the intent to make profit by participating in consensus. >>> >> >> > >>> >> >> > 2. When you join a mining pool your systems are very much still >>> online. You are just partaking in a pool to reduce your profit variance= . >>> You still see every block that you help create and *you never help crea= te a >>> block without seeing it first*. >>> >> >> > >>> >> >> > 3. If by SquareSpace sybil attack you gain a dishonest majority >>> and start censoring transactions how are the users meant to redelegate >>> their stake to honest pools? >>> >> >> > I guess they can just send a transaction delegating to another >>> pool...oh wait I guess that might be censored too! This seems really re= ally >>> bad. >>> >> >> > In Bitcoin, miners can just join a different pool at a whim. >>> There is nothing the attacker can do to stop them. A temporary dishones= t >>> majority heals relatively well. >>> >> >> > >>> >> >> > There is another severe disadvantage to this on-chain delegatio= n >>> system: every UTXO must indicate which staking account this UTXO belong= s to >>> so the appropriate share of block rewards can be transferred there. >>> >> >> > Being able to associate every UTXO to an account ruins one of >>> the main privacy advantages of the UTXO model. >>> >> >> > It also grows the size of the blockchain significantly. >>> >> >> > >>> >> >> > ### "Pure" proof of stake (Algorand) >>> >> >> > >>> >> >> > Algorand's[4] approach is to only allow online stake to >>> participate in the protocol. >>> >> >> > Theoretically, This means that keys holding funds have to be >>> online in order for them to author blocks when they are chosen. >>> >> >> > Of course in reality no one wants to keep their coin holding >>> keys online so in Alogorand you can authorize a set of "participation >>> keys"[1] that will be used to create blocks on your coin holding key's >>> behalf. >>> >> >> > Hopefully you've spotted the problem. >>> >> >> > You can send your participation keys to any malicious party wit= h >>> a nice website (see random example [2]) offering you a good return. >>> >> >> > Damn it's still Proof-of-SquareSpace! >>> >> >> > The minor advantage is that at least the participation keys >>> expire after a certain amount of time so eventually the SquareSpace >>> attacker will lose their hold on consensus. >>> >> >> > Importantly there is also less junk on the blockchain because >>> the participation keys are delegated off-chain and so are not making as >>> much of a mess. >>> >> >> > >>> >> >> > ### Conclusion >>> >> >> > >>> >> >> > I don't see a way to get around the conflicting requirement tha= t >>> the keys for large amounts of coins should be kept offline but those ar= e >>> exactly the coins we need online to make the scheme secure. >>> >> >> > If we allow delegation then we open up a new social attack >>> surface and it degenerates to Proof-of-SquareSpace. >>> >> >> > >>> >> >> > For a "digital gold" like system like Bitcoin we optimize for >>> simplicity and desperately want to avoid extraneous responsibilities fo= r >>> the holder of the coin. >>> >> >> > After all, gold is an inert element on the periodic table that >>> doesn't confer responsibilities on the holder to maintain the quality o= f >>> all the other bars of gold out there. >>> >> >> > Bitcoin feels like this too and in many ways is more inert and >>> beautifully boring than gold. >>> >> >> > For Bitcoin to succeed I think we need to keep it that way and >>> Proof-of-Stake makes everything a bit too exciting. >>> >> >> > >>> >> >> > I suppose in the end the market will decide what is real digita= l >>> gold and whether these bad technical trade offs are worth being able to= say >>> it uses less electricity. It goes without saying that making bad techni= cal >>> decisions to appease the current political climate is an anathema to >>> Bitcoin. >>> >> >> > >>> >> >> > Would be interested to know if you or others think differently >>> on these points. >>> >> >> > >>> >> >> > [1]: >>> https://developer.algorand.org/docs/run-a-node/participate/generate_key= s/ >>> >> >> > [2]: https://staking.staked.us/algorand-staking >>> >> >> > [3]: https://eprint.iacr.org/2017/573.pdf >>> >> >> > [4]: >>> https://algorandcom.cdn.prismic.io/algorandcom%2Fece77f38-75b3-44de-bc7= f-805f0e53a8d9_theoretical.pdf >>> >> >> > [5]: >>> https://hydra.iohk.io/build/790053/download/1/delegation_design_spec.pd= f >>> >> >> > >>> >> >> > Cheers, >>> >> >> > >>> >> >> > LL >>> >> >> > >>> >> >> > On Fri, 21 May 2021 at 19:21, Billy Tetrud via bitcoin-dev < >>> bitcoin-dev@lists.linuxfoundation.org> wrote: >>> >> >> >> >>> >> >> >> I think there is a lot of misinformation and bias against Proo= f >>> of Stake. Yes there have been lots of shady coins that use insecure PoS >>> mechanisms. Yes there have been massive issues with distribution of PoS >>> coins (of course there have also been massive issues with PoW coins as >>> well). However, I want to remind everyone that there is a difference >>> between "proved to be impossible" and "have not achieved recognized suc= cess >>> yet". Most of the arguments levied against PoS are out of date or rely = on >>> unproven assumptions or extrapolation from the analysis of a particular= PoS >>> system. I certainly don't think we should experiment with bitcoin by >>> switching to PoS, but from my research, it seems very likely that there= is >>> a proof of stake consensus protocol we could build that has substantial= ly >>> higher security (cost / capital required to execute an attack) while at= the >>> same time costing far less resources (which do translate to fees on the >>> network) *without* compromising any of the critical security properties >>> bitcoin relies on. I think the critical piece of this is the disagreeme= nts >>> around hardcoded checkpoints, which is a critical piece solving attacks >>> that could be levied on a PoS chain, and how that does (or doesn't) aff= ect >>> the security model. >>> >> >> >> >>> >> >> >> @Eric Your proof of stake fallacy seems to be saying that PoS >>> is worse when a 51% attack happens. While I agree, I think that line of >>> thinking omits important facts: >>> >> >> >> * The capital required to 51% attack a PoS chain can be made >>> substantially greater than on a PoS chain. >>> >> >> >> * The capital the attacker stands to lose can be substantially >>> greater as well if the attack is successful. >>> >> >> >> * The effectiveness of paying miners to raise the honest >>> fraction of miners above 50% may be quite bad. >>> >> >> >> * Allowing a 51% attack is already unacceptable. It should be >>> considered whether what happens in the case of a 51% may not be >>> significantly different. The currency would likely be critically damage= d in >>> a 51% attack regardless of consensus mechanism. >>> >> >> >> >>> >> >> >> > Proof-of-stake tends towards oligopolistic control >>> >> >> >> >>> >> >> >> People repeat this often, but the facts support this. There is >>> no centralization pressure in any proof of stake mechanism that I'm awa= re >>> of. IE if you have 10 times as much coin that you use to mint blocks, y= ou >>> should expect to earn 10x as much minting revenue - not more than 10x. = By >>> contrast, proof of work does in fact have clear centralization pressure= - >>> this is not disputed. Our goal in relation to that is to ensure that th= e >>> centralization pressure remains insignifiant. Proof of work also clearl= y >>> has a lot more barriers to entry than any proof of stake system does. B= oth >>> of these mean the tendency towards oligopolistic control is worse for P= oW. >>> >> >> >> >>> >> >> >> > Energy usage, in-and-of-itself, is nothing to be ashamed of!= ! >>> >> >> >> >>> >> >> >> I certainly agree. Bitcoin's energy usage at the moment is I >>> think quite warranted. However, the question is: can we do substantiall= y >>> better. I think if we can, we probably should... eventually. >>> >> >> >> >>> >> >> >> > Proof of Stake is only resilient to =E2=85=93 of the network >>> demonstrating a Byzantine Fault, whilst Proof of Work is resilient up t= o >>> the =C2=BD threshold >>> >> >> >> >>> >> >> >> I see no mention of this in the pos.pdf you linked to. I'm not >>> aware of any proof that all PoS systems have a failure threshold of 1/3= . I >>> know that staking systems like Casper do in fact have that 1/3 requirem= ent. >>> However there are PoS designs that should exceed that up to nearly 50% = as >>> far as I'm aware. Proof of work is not in fact resilient up to the 1/2 >>> threshold in the way you would think. IE, if 100% of miners are current= ly >>> honest and have a collective 100 exahashes/s hashpower, an attacker doe= s >>> not need to obtain 100 exahashes/s, but actually only needs to accumula= te >>> 50 exahashes/s. This is because as the attacker accumulates hashpower, = it >>> drives honest miners out of the market as the difficulty increases to >>> beyond what is economically sustainable. Also, its been shown that the = best >>> proof of work can do is require an attacker to obtain 33% of the hashpo= wer >>> because of the selfish mining attack discussed in depth in this paper: >>> https://arxiv.org/abs/1311.0243. Together, both of these things reduce >>> PoW's security by a factor of about 83% (1 - 50%*33%). >>> >> >> >> >>> >> >> >> > Proof of Stake requires other trade-offs which are >>> incompatible with Bitcoin's objective (to be a trustless digital cash) = =E2=80=94 >>> specifically the famous "security vs. liveness" guarantee >>> >> >> >> >>> >> >> >> Do you have a good source that talks about why you think proof >>> of stake cannot be used for a trustless digital cash? >>> >> >> >> >>> >> >> >> > You cannot gain tokens without someone choosing to give up >>> those coins - a form of permission. >>> >> >> >> >>> >> >> >> This is not a practical constraint. Just like in mining, some >>> nodes may reject you, but there will likely be more that will accept yo= u, >>> some sellers may reject you, but most would accept your money as paymen= t >>> for bitcoins. I don't think requiring the "permission" of one of millio= ns >>> of people in the market can be reasonably considered a "permissioned >>> currency". >>> >> >> >> >>> >> >> >> > 2. Proof of stake must have a trusted means of timestamping >>> to regulate overproduction of blocks >>> >> >> >> >>> >> >> >> Both PoW and PoS could mine/mint blocks twice as fast if >>> everyone agreed to double their clock speeds. Both systems rely on an >>> honest majority sticking to standard time. >>> >> >> >> >>> >> >> >> >>> >> >> >> On Wed, May 19, 2021 at 5:32 AM Michael Dubrovsky via >>> bitcoin-dev wrote: >>> >> >> >>> >>> >> >> >>> Ah sorry, I didn't realize this was, in fact, a different >>> thread! :) >>> >> >> >>> >>> >> >> >>> On Wed, May 19, 2021 at 10:07 AM Michael Dubrovsky < >>> mike@powx.org> wrote: >>> >> >> >>>> >>> >> >> >>>> Folks, I suggest we keep the discussion to PoW, oPoW, and th= e >>> BIP itself. PoS, VDFs, and so on are interesting but I guess there are >>> other threads going on these topics already where they would be relevan= t. >>> >> >> >>>> >>> >> >> >>>> Also, it's important to distinguish between oPoW and these >>> other "alternatives" to Hashcash. oPoW is a true Proof of Work that doe= sn't >>> alter the core game theory or security assumptions of Hashcash and actu= ally >>> contains SHA (can be SHA3, SHA256, etc hash is interchangeable). >>> >> >> >>>> >>> >> >> >>>> Cheers, >>> >> >> >>>> Mike >>> >> >> >>>> >>> >> >> >>>> On Tue, May 18, 2021 at 4:55 PM Erik Aronesty via bitcoin-de= v >>> wrote: >>> >> >> >>>>> >>> >> >> >>>>> 1. i never suggested vdf's to replace pow. >>> >> >> >>>>> >>> >> >> >>>>> 2. my suggestion was specifically *in the context of* a >>> working >>> >> >> >>>>> proof-of-burn protocol >>> >> >> >>>>> >>> >> >> >>>>> - vdfs used only for timing (not block height) >>> >> >> >>>>> - blind-burned coins of a specific age used to replace proo= f >>> of work >>> >> >> >>>>> - the required "work" per block would simply be a >>> competition to >>> >> >> >>>>> acquire rewards, and so miners would have to burn coins, >>> well in >>> >> >> >>>>> advance, and hope that their burned coins got rewarded in >>> some far >>> >> >> >>>>> future >>> >> >> >>>>> - the point of burned coins is to mimic, in every meaningfu= l >>> way, the >>> >> >> >>>>> value gained from proof of work... without some of the >>> security >>> >> >> >>>>> drawbacks >>> >> >> >>>>> - the miner risks losing all of his burned coins (like all >>> miners risk >>> >> >> >>>>> losing their work in each block) >>> >> >> >>>>> - new burns can't be used >>> >> >> >>>>> - old burns age out (like ASICs do) >>> >> >> >>>>> - other requirements on burns might be needed to properly >>> mirror the >>> >> >> >>>>> properties of PoW and the incentives Bitcoin uses to mine >>> honestly. >>> >> >> >>>>> >>> >> >> >>>>> 3. i do believe it is *possible* that a "burned coin + vdf >>> system" >>> >> >> >>>>> might be more secure in the long run, and that if the entir= e >>> space >>> >> >> >>>>> agreed that such an endeavor was worthwhile, a test net >>> could be spun >>> >> >> >>>>> up, and a hard-fork could be initiated. >>> >> >> >>>>> >>> >> >> >>>>> 4. i would never suggest such a thing unless i believed it >>> was >>> >> >> >>>>> possible that consensus was possible. so no, this is not a= n >>> "alt >>> >> >> >>>>> coin" >>> >> >> >>>>> >>> >> >> >>>>> On Tue, May 18, 2021 at 10:02 AM Zac Greenwood < >>> zachgrw@gmail.com> wrote: >>> >> >> >>>>> > >>> >> >> >>>>> > Hi ZmnSCPxj, >>> >> >> >>>>> > >>> >> >> >>>>> > Please note that I am not suggesting VDFs as a means to >>> save energy, but solely as a means to make the time between blocks more >>> constant. >>> >> >> >>>>> > >>> >> >> >>>>> > Zac >>> >> >> >>>>> > >>> >> >> >>>>> > >>> >> >> >>>>> > On Tue, 18 May 2021 at 12:42, ZmnSCPxj < >>> ZmnSCPxj@protonmail.com> wrote: >>> >> >> >>>>> >> >>> >> >> >>>>> >> Good morning Zac, >>> >> >> >>>>> >> >>> >> >> >>>>> >> > VDFs might enable more constant block times, for >>> instance by having a two-step PoW: >>> >> >> >>>>> >> > >>> >> >> >>>>> >> > 1. Use a VDF that takes say 9 minutes to resolve (VDF >>> being subject to difficulty adjustments similar to the as-is). As per t= he >>> property of VDFs, miners are able show proof of work. >>> >> >> >>>>> >> > >>> >> >> >>>>> >> > 2. Use current PoW mechanism with lower difficulty so >>> finding a block takes 1 minute on average, again subject to as-is >>> difficulty adjustments. >>> >> >> >>>>> >> > >>> >> >> >>>>> >> > As a result, variation in block times will be greatly >>> reduced. >>> >> >> >>>>> >> >>> >> >> >>>>> >> As I understand it, another weakness of VDFs is that the= y >>> are not inherently progress-free (their sequential nature prevents that= ; >>> they are inherently progress-requiring). >>> >> >> >>>>> >> >>> >> >> >>>>> >> Thus, a miner which focuses on improving the amount of >>> energy that it can pump into the VDF circuitry (by overclocking and >>> freezing the circuitry), could potentially get into a winner-takes-all >>> situation, possibly leading to even *worse* competition and even *more* >>> energy consumption. >>> >> >> >>>>> >> After all, if you can start mining 0.1s faster than the >>> competition, that is a 0.1s advantage where *only you* can mine *in the >>> entire world*. >>> >> >> >>>>> >> >>> >> >> >>>>> >> Regards, >>> >> >> >>>>> >> ZmnSCPxj >>> >> >> >>>>> _______________________________________________ >>> >> >> >>>>> bitcoin-dev mailing list >>> >> >> >>>>> bitcoin-dev@lists.linuxfoundation.org >>> >> >> >>>>> >>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> -- >>> >> >> >>>> Michael Dubrovsky >>> >> >> >>>> Founder; PoWx >>> >> >> >>>> www.PoWx.org >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> -- >>> >> >> >>> Michael Dubrovsky >>> >> >> >>> Founder; PoWx >>> >> >> >>> www.PoWx.org >>> >> >> >>> _______________________________________________ >>> >> >> >>> bitcoin-dev mailing list >>> >> >> >>> bitcoin-dev@lists.linuxfoundation.org >>> >> >> >>> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-de= v >>> >> >> >> >>> >> >> >> _______________________________________________ >>> >> >> >> bitcoin-dev mailing list >>> >> >> >> bitcoin-dev@lists.linuxfoundation.org >>> >> >> >> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev >>> >> >> > >>> >> >> > _______________________________________________ >>> >> >> > bitcoin-dev mailing list >>> >> >> > bitcoin-dev@lists.linuxfoundation.org >>> >> >> > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev >>> >> >> > --00000000000080c6f005c34cf331 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
>=C2=A0 using nothing at stake

I see from the way you're usi= ng this term now that you mean something completely different by it than I = usually understand the phrase. You seem to mean it as that minters can chec= k whether=C2=A0they can mint a block without any cost. By contrast, I gener= ally understand the phrase to mean the problem where there is no cost to br= oadcasting blocks on many different chains.=C2=A0

= > she gained an extra block over the honest strategy which would only gi= ve her block D

I think I see what you're sayin= g now. It actually sounds quite similar to the selfish mining attack in pro= of of work. However I do acknowledge=C2=A0that the ability to secretly mint= on both your secret chain(s) and the public chain makes it worse in PoS. H= ow much worse is something that should be quantified. This is also a solvab= le problem. Designing a secure system can be kind of like whack a mole. You= fix the weakest link in the chain, and there is inevitably now a new weake= st link that is stronger than the link you fixed. Bitcoin is no different, = as development continues, more security improvements are implemented.=C2=A0=

In this case, there's a number of possible so= lutions, some of which can be combined. Eg you can program all honest clien= ts to mint selfishly. You'd likely need to lengthen the number of block= s that constitute a finalized transaction, but you can probably reduce the = block time to compensate, so finalization doesn't actually take longer.= You could also require many additional signatures on each block from outsi= de validators.

> How is that re= levant to our discussion?

It is relevant because t= he benefits of proof of stake must be compared to an alternative, and the a= lternative of reference here is clearly PoW. I'm pointing out that the = vulnerability you're describing in the type of PoS you're talking a= bout also exists in what its being compared against. To know whether PoS or= PoW is better on this particular aspect, you need to compare the levels of= advantage that can be obtained in each, and how this affects the cost of a= ttacking the system. Its not as straight forward as saying "PoS is bad= because it has this vulnerability" when the system you compare it to = also has a very similar vulnerability. You need to quantify the difference = at that point.=C2=A0

> the list of produc= ers for next epoch is known up front and you confirmed that this is what yo= u meant with "quorum" system

Known by pu= blic key, not by IP address.

> (CREATE PROBLEM = ELSEWHERE) OR (NOT SOLVE IT COMPLETELY)

I agree th= at claiming that Y is a solved problem would be misleading if the solution = creates problems that are of greater significance than the original problem= . I would also agree that if the solution creates significant problems that= are substantially less significant than the problem it solves, it would be= misleading to say its a "solved problem" - saying "partiall= y solved" would be more accurate there.

Howev= er, I do not agree that it is at all misleading to say "nothing at sta= ke is a solved problem" just because solving that specific problem doe= sn't solve all the problems with proof of stake. Its unreasonable to ex= pect that when someone claims problem X is solved, that it also implies all= problems related to X are solved.=C2=A0

I maintai= n that nothing at stake is a solved problem. There are solutions that do no= t create other problems of=C2=A0anywhere near the same level of significanc= e.

> Since the optimal scenario with all existi= ng coins participating is just theoretical, the attacker's position wil= l ever so improve. It seems we are in agreement here, great

<= /div>
I don't believe we're in agreement there. I don't kno= w how what you said refutes my point.=C2=A0

> I= 'm afraid you've not realized the burden of proof is on your side i= f you vouch for a design that is not believed and trusted to be secure.

You were the one that claimed proof of stake cannot b= e made secure. The burden of proof is on you to support your own claims.=C2= =A0

> You have not described a system that woul= d solve it=C2=A0

I would be curious to hear a full= critique from you about=C2=A0this protocol.=C2=A0

On = Wed, May 26, 2021 at 3:12 AM befreeandopen <befreeandopen@protonmail.com> = wrote:

=

@befr= eeandopen I guess I misunderstood your selfish minting attack. Let me make = sure I understand it. You're saying it would go as follows?:
<= div>
1. The malicious actor comes across an opportunity to mi= nt the next 3 blocks. But they hold off and don't release their blocks = just yet.
2. They receive a new block minted by someone else.= =C2=A0
3. The malicious actor then chooses to release their other 2 blocks on on the seco= nd from the top block if it gives them more blocks in the future than minti= ng on the top block. And instead lets the=C2=A0top block proceed if it give= s them more blocks in the future (also figuring in the 3 blocks they're= missing out on minting).
4. Profit!

=
The problem with this attack is that any self respecting PoS system wo= uldn't have the information available for minters to know how blocks wi= ll affect their future prospects of minting. Otherwise this would introduce= the problem of stake grinding. This can be done using collaborative random= ness (where numbers from many parties are combined to create a random numbe= r that no individual party could predict). In fact, that's what the Cas= per protocol does to decide quorums. In a non quorum case, you can do somet= hing like record a hash of a number in the block header, and then have a se= cond step to release that number later. Rewards can be given can be used to ensure minters act honestly here by min= ting messages that release these numbers and not releasing their secret num= bers too early.

Yes, you mi= sunderstood it. First, let me say that the above thoughts of yours are inco= rrect, at least for non-quorum case. Since the transition in the blockchain= system from S1 to S2 is only by adding new block, and since stakers always= need to be able to decide whether or not they can add the next block, it f= ollows that if a staker creates a new block locally, she can decide whether= the new state allows her to add another block on top. As you mentioned, th= is COULD introduce problem of staking, that you are incorrect in that it is= a necessity. Usual prevention of the grinding problem in this case is that= an "old enough" source of randomness applies for the current blo= ck production process. Of course this, as it is typical for PoS, introduces= other problems, but let's discard those.

= I will try to explain in detail what you misunderstood before. You start wi= th a chain ending with blocks A-B-C, C being the top, the common feature of= PoS system (non-quorum), roughly speaking, is that if N is the total amoun= t of coins that participate in the staking process to create a new block on= top of C (let's call that D), then a participant having K*N amount of = stake has chance K to be the one who will create the next stake. In other w= ords, the power of stakers is supposed to be linear in the system - you own= 10 coins gives you 10x the chance of finding block over someone who has 1 = coin.

What i was claiming is that using the te= chnique I have described, this linearity is violated. Why? Well, it works f= or honest stakers among the competition of honest stakers - they really do = have the chance of K to find the next block. However, the attacker, using n= othing at stake, checks her ability to build block D (at some timestamp). I= f she is successful, she does not propagate D immediately, but instead she = also checks whether she can build on top of B and on top of A. Since with e= very new timestamp, usually, there is a new chance to build the block, it i= s not uncommon that she finds she is indeed able to build such block C'= on top of B. Here it is likely t(C') > t(C) as the attacker has rel= atively low stake. Note that in order to produce such C', she not only = could have tried the current timestamp t(D), but also all previous timestam= ps up to t(B) (usually that's the consensus rule, but it may depend on = a specific consensus). So her chance to produce such C' is greater than= her previous chance of producing C (which chance was limited by other stak= ers in the system and the discovery of block C by one of them). Now suppose= that she found such C' and now she continues by trying to prolong this= chain by finding D'. And again here, it is quite likely that her chan= ce to find such D' is greater than was her chance of finding D because = again there are likely multiple timestamps she could try. This all was poss= ible just because nothing at stake allows you to just try if you can produc= e a block in certain state of block chain or not. Now if she actually was a= ble to find D', she discards D and only publishes chain A-B-C'-D= 9;, which can not be punished despite the fact that she indeed produced two= different forks. She can not be punished because this production was local= and only the final result of A-B-C'-D' was published, in which cas= e she gained an extra block over the honest strategy which would only give = her block D.



Fun fact tho: there is an attack c= alled the "selfish mining attack" for proof of work, and it reduc= es the security of PoW by at least 1/3rd.=C2=A0

=
How is that relevant to our discussion? This is known research t= hat has nothing to do with PoS except that it is often worse on PoS.



<= div dir=3D"ltr">
>=C2=A0 =C2=A0the problem is not as hard as you think

= I don't claim to know just how hard finding the IP address associated w= ith a bitcoin address is. However, the DOS risk can be solved more complete= ly by only allowing the owner of coins themselves to know whether they can = mint a block. Eg by determining whether someone can mint a block based on t= heir public key hidden behind hashes (as normal in addresses). Only when so= meone does in fact mint a block do they reveal their hidden public key in o= rder to prove they are allowed to mint the block.=C2=A0

This is true, but you are mixing quorum and no= n-quorum systems. My objection here was towards such system where I specifi= cally said that the list of producers for next epoch is known up front and = you confirmed that this is what you meant with "quorum" system. S= o in such system, I claimed, the known producer is the only target at any g= iven point of time. This of course does not apply to any other type of syst= em where future producers are not known. No need to dispute, again, somethi= ng that was not claimed.




> I a= gree that introduction of punishment itself does not imply introducing a pr= oblem elsewhere (which I did not claim if you reread my previous message)

I'm glad we agree there. Perhaps I misunder= stood what you meant by "you should not omit to mention that by doing = so, typically, you have introduced another problem elsewhere."

Perhaps you should quote the full = sentence and not just a part of it:

"Of c= ourse you can always change the rules in a way that a certain specific attack is not doable, but you should not omit to mention that by doing so, typically, you have introduced another problem elsewhere, or you have not solved it completely."

Yo= u can parse this as: (CREATE PROBLEM ELSEWHERE) OR (NOT SOLVE IT COMPLETELY= )
In case of the punishment it was meant to be the not solve = it completely part.
Also "typically" does not imply= always.
But this parsing of English sentences for you seems = very off topic here. My point is, in context of Bitcoin, reject such unsupp= orted claims that PoS is a reasonable alternative to PoW, let's stick t= o that.



> As long as the staker makes sure (= which is not that hard) that she does not miss a chance to create a block, = her significance in the system will always increase in time. It will increa= se relative to all normal users who do not stake

Well, if you're in the closed system of the cryptocurrency, sure. Bu= t we don't live in that closed system. Minters will earn some ROI from = minting just like any other financial activity. Others may find more succes= s spending their time doing things other than figuring out how to mint coin= s. In that case, they'll be able to earn more coin that they could late= r decide to use to mint blocks if they decide to.=C2=A0

This only supports the point I was making. Sin= ce the optimal scenario with all existing coins participating is just theor= etical, the attacker's position will ever so improve. It seems we are i= n agreement here, great.




> Jus= t because of the above we must reject PoS as being critically insecure=C2= =A0

I think the only thing we can conclude fro= m this is that you have come up with an insecure proof of stake protocol. I= don't see how anything you've brought up amounts to substantial ev= idence that all possible PoS protocols are insecure.=C2=A0
<= /blockquote>

I have not come up with anything. I'm a= fraid you've not realized the burden of proof is on your side if you vo= uch for a design that is not believed and trusted to be secure. It is up to= you to show that you know how to solve every problem that people throw at = you. So far we have just demonstrated that your claim that nothing at stake= is solved was unjustified. You have not described a system that would solv= e it (and not introduce critical DDOS attack vector as it is in quorum base= d systems - per the prior definition of such systems).

<= /div>
Of course the list of problems of PoS systems do not end with jus= t nothing at stake, but it is good enough example that by itself prevents i= ts adoption in decentralized consensus. No need to go to other hard problem= s without solving nothing at stake.


=



On Tue, May = 25, 2021 at 11:10 AM befreeandopen <befreeandopen@protonmail.com> wrote:

@befreeandopen " An attacker can calculate whether or not she can prolong this chain or not = and if so with what timestamp."

The scena= rio you describe would only be likely to happen at all if the malicious act= or has a very large fraction of the stake - probably quite close to 50%. At= that point, you're talking about a 51% attack, not the nothing at stak= e problem. The nothing at stake problem is the problem where anyone will mi= nt on any chain. Its clear that if there's a substantial punishment for= minting on chains other than the one that eventually wins, every minter wi= thout a significant fraction of the stake will be honest and not attempt to= mint on old blocks or support someone else's attempt to mint on old bl= ocks (until and if it becomes the heaviest chain). Because the attacker wou= ld need probably >45% of the active stake (take a look at the reasoning here for a deeper analysis = of that statement), I don't agree that punishment=C2=A0is not a suffici= ent mitigation of the nothing at stake problem. To exploit the nothing at s= take problem, you basically need to 51% attack, at which point you've e= xceeded the operating conditions of the system, so of course its gonna have= problems, just like a 51% attack would cause with PoW.

This is not at all the case. The attacker bene= fits using the described technique at any size of the stake and significant= ly so with just 5% of the stake. By significantly, I do not mean that the a= ttacker is able to completely take control the network (in short term), but= rather that the attacker has significant advantage in the number of blocks= she creates compared to what she "should be able to create". Thi= s means the attacker's stake increases significantly faster than of the= honest nodes, which in long term is very serious in PoS system. If you bel= ieve close to 50% is needed for that, you need to redo your math. So no, y= ou are wrong stating that "to exploit nothing at stake problem you bas= ically need to 51% attack". It is rather the opposite - eventually, no= thing at stake attack leads to ability to perform 51% attack.



> I am not sure if this is what you call quorum-based PoS<= br>

Yes, pre-selected minters is exactly what I me= an by that.

> it allows the attacker to kno= w who to attack at which point with powerful DDOS in order to hurt liveness= of such system

Just like in bitcoin, associat= ing keys with IP addresses isn't generally an easy thing to do on the f= ly like that. If you know someone's IP address, you can target them. Bu= t if you only know their address or public key, the reverse isn't as ea= sy. With a quorum-based PoS system, you can see their public key and addres= s, but finding out their IP to DOS would be a huge challenge I think.=C2=A0=

I do not dispute that the = problem is not trivial, but the problem is not as hard as you think. The ne= twork graph analysis is a known technique and it is not trivial, but not ve= ry hard either. Introducing a large number of nodes to the system to achiev= e very good success rate of analysis of area of origin of blocks is doable = and has been done in past. So again, I very much disagree with your conclus= ion that this is somehow secure. It is absolutely insecure.
<= br>

Note, tho, that quorum-based PoS generally also have punishment= s as part of the protocol. The introduction of punishments do indeed handil= y solve the nothing at stake problem. And you didn't mention a single p= roblem that the punishments introduce that weren't already there before= punishments. There are tradeoffs with introducing punishments (eg in some = cases you might punish honest actors), but they are minor in comparison to = solving the nothing at stake problem.

=
While I agree that introduction of punishment itself does not im= ply introducing a problem elsewhere (which I did not claim if you reread my= previous message), it does introduce additional complexity which may intro= duce problem, but more importantly, while it slightly improves resistance a= gainst the nothing at stake attack, it solves absolutely nothing. Your clai= m is based on wrong claim of needed close to 50% stake, but that could not = be farther from the truth. It is not true even in optimal conditions when a= ll participants of the network stake or delegate their stake. These optimal= conditions rarely, if ever, occur. And that's another thing that we ha= ve not mention in our debate, so please allow me to introduce another probl= em to PoS.

Consider what is needed for such op= timal conditions to occur - all coins are always part of the stake, which m= eans that they need to somehow automatically part of the staking process ev= en when they are moved. But in many PoS systems you usually require some ag= e (in terms of confirmations) of the coin before you allow it to be used fo= r participation in staking process and that is for a good reason - to preve= nt various grinding attacks. In some systems the coin must be specifically = registered before it can be staked, in others, simply waiting for enough co= nfirmations enables you to stake with the coin. I am not sure if there is a= system which does not have this cooling period for a coin that has been mo= ved. Maybe it is possible though, but AFAIK it is not common and not battle= tested feature.

Then if we admit that achievi= ng the optimal condition is rather theoretical. Then if we do not have the = optimal condition, it means that a staker with K% of the total available su= pply increases it's percentage over time to some amounts >K%. As lon= g as the staker makes sure (which is not that hard) that she does not miss = a chance to create a block, her significance in the system will always incr= ease in time. It will increase relative to all normal users who do not stak= e (if there are any) and relative to all other stakers who make mistakes or= who are not wealthy enough to afford not selling any position ever. But po= werful attacker is exactly in such position and thus she will gain signific= ance in such a system. The technique I have described, and that you mistake= nly think is viable only with huge amounts of stake, only puts the attacker= to even greater advantage. But even without the described attack (which ex= ploits nothing at stake), the PoS system converges to a system more and mor= e controlled by powerful entity, which we can assume is the attacker.


So I don't think it is at all misleading to claim that "not= hing at stake" is a solved problem. I do in fact mean that the solutio= ns to that problem don't introduce any other problems with anywhere nea= r the same level of significance.=C2=A0
It still stands as truly misleading claim. I disagree that int= roducing DDOS opportunity with medium level of difficulty for the attacker = to implement it, in case of "quorum-based PoS" is not a problem a= nywhere near the same level of significance. Such an attack vector allows y= ou to turn off the network if you spend some time and money. That is hardly= acceptable.

Just because of the above we must= reject PoS as being critically insecure until someone invents and demonstr= ates an actual way of solving these issues.

<= br>

On Tue, May 25, 2021 at 3:00 AM E= rik Aronesty <erik@q32= .com> wrote:
> > you burn them to be used at a future particular block he= ight

> This sounds exploitable. It seems li= ke an attacker could simply focus all their burns on a particular set of 6 = blocks to double spend, minimizing their cost of attack.

=
could be right.=C2=A0 =C2=A0the original idea was to have burns = decay over time,
like ASIC's.

anyway the point was not that "i had a magic formula"
=

the point was that proof of burn is almost always bette= r than proof of
stake - simply because the "proof" = is on-chain, not sitting on a node
somewhere waiting to be st= olen.

On Mon, May 24, 2021 at 9:53 PM Billy Te= trud <billy.= tetrud@gmail.com> wrote:
>
> Is th= is the kind of proof of burn you're talking about?
>
> >=C2=A0 =C2=A0if i have a choice between two chains, o= ne longer and one shorter, i can only choose one... deterministically
>
> What prevents you from attempting to mine = block 553 on both chains?
>
> > miners= have a very strong, long-term, investment in the stability of the chain.
>
> Yes, but the same can be said of any c= oin, even ones that do have the nothing at stake problem. This isn't su= fficient tho because the chain is a common good, and the tragedy of the com= mons holds for it.
>
> > you burn them= to be used at a future particular block height
>
> This sounds exploitable. It seems like an attacker could simply = focus all their burns on a particular set of 6 blocks to double spend, mini= mizing their cost of attack.
>
> > i c= an imagine scenarios where large stakeholders can collude to punish smaller= stakeholders simply to drive them out of business, for example
>
> Are you talking about a 51% attack? This is poss= ible in any decentralized cryptocurrency.
>
= >
> On Mon, May 24, 2021 at 11:49 AM Erik Aronesty <= erik@q32.com> wrot= e:
>>
>> > > your burn invest= ment is always "at stake", any redaction can result in a loss-of-= burn, because burns can be tied, precisely, to block-heights
= >> > I'm fuzzy on how proof of burn works.
>&= gt;
>> when you burn coins, you burn them to be used at= a future particular
>> block height: so if i'm bur= ning for block 553, i can only use them to
>> mine bloc= k 553.=C2=A0 =C2=A0if i have a choice between two chains, one longer
>> and one shorter, i can only choose one... deterministicall= y, for that
>> burn: the chain with the height 553.=C2= =A0 =C2=A0if we fix the "lead time" for
>> bu= rned coins to be weeks or even months in advance, miners have a very
>> strong, long-term, investment in the stability of the chai= n.
>>
>> therefore there is no &quo= t;nothing at stake" problem.=C2=A0 =C2=A0it's
>&g= t; deterministic, so miners have no choice.=C2=A0 they can *only* choose th= e
>> transactions that go into the block.=C2=A0 they ca= nnot choose which chain
>> to mine, and it's time-l= ocked, so rollbacks and instability always
>> hurt mine= rs the most.
>>
>> the "punish= ment" systems of PoS are "weird at best", certainly
>> unproven.=C2=A0 =C2=A0i can imagine scenarios where large st= akeholders can
>> collude to punish smaller stakeholder= s simply to drive them out of
>> business, for example.= =C2=A0 =C2=A0and then you have to put checks in place to
>= > prevent that, and more checks for those prevention system...
=
>>
>> in PoB, there is no complexity.=C2=A0 = simpler systems like this are
>> typically more secure.=
>>
>> PoB also solves problems cau= sed by "energy dependence", which could
>> le= ad to state monopolies on mining (like the new Bitcoin Mining
>> Council).=C2=A0 =C2=A0these consortiums, if state sanctioned, cou= ld become a
>> source of censorship, for example.=C2=A0= =C2=A0Since PoB doesn't require you to
>> have a l= ive, well-connected node, it's harder to censor & harder to
>> trace.
>>
>> Elimin= ating this weakness seems to be in the best interests of
>= > existing stakeholders
>>
>>
>>
>>
>> On Mon, = May 24, 2021 at 4:44 PM Billy Tetrud <billy.tetrud@gmail.com> wrote:
>> >
>> > >=C2=A0 proof of burn clear= ly solves this, since nothing is held online
>> >
>> > Well.. the coins to be burned need to be online w= hen they're burned. But yes, only a small fraction of the total coins n= eed to be online.
>> >
>> > &= gt; your burn investment is always "at stake", any redaction can = result in a loss-of-burn, because burns can be tied, precisely, to block-he= ights
>> >
>> > So you're= saying that if say someone tries to mine a block on a shorter chain, that = requires them to send a transaction burning their coins, and that transacti= on could also be spent on the longest chain, which means their coins are bu= rned even if the chain they tried to mine on doesn't win? I'm fuzzy= on how proof of burn works.
>> >
>= > > > proof of burn can be more secure than proof-of-stake
>> >
>> > FYI, proof of stake can be= done without the "nothing at stake" problem. You can simply puni= sh people who mint on shorter chains (by rewarding people who publish proof= s of this happening on the main chain). In quorum-based PoS, you can punish= people in the quorum that propose or sign multiple blocks for the same hei= ght. The "nothing at stake" problem is a solved problem at this p= oint for PoS.
>> >
>> >
>> >
>> > On Mon, May 24, 2021 at = 3:47 AM Erik Aronesty <erik@q32.com> wrote:
>> >>
= >> >> > I don't see a way to get around the conflicting = requirement that the keys for large amounts of coins should be kept offline= but those are exactly the coins we need online to make the scheme secure.<= br>
>> >>
>> >> proof of bu= rn clearly solves this, since nothing is held online
>>= >>
>> >> >=C2=A0 how does proof of burn= solve the "nothing at stake" problem in your view?
>> >>
>> >> definition of nothing at= stake: in the event of a fork, whether the
>> >>= fork is accidental or a malicious, the optimal strategy for any miner
<= /div>
>> >> is to mine on every chain, so that the miner ge= ts their reward no
>> >> matter which fork wins.= =C2=A0 =C2=A0indeed in proof-of-stake, the proofs are
>>= ; >> published on the very chains mines, so the incentive is magnifie= d.
>> >>
>> >> in proof= -of-burn, your burn investment is always "at stake", any
>> >> redaction can result in a loss-of-burn, because bur= ns can be tied,
>> >> precisely, to block-heights=
>> >>
>> >> as a resul= t, miners no longer have an incentive to mine all chains
>= > >>
>> >> in this way proof of burn can= be more secure than proof-of-stake, and
>> >> ev= en more secure than proof of work
>> >>
=
>> >>
>> >>
>&g= t; >>
>> >>
>> >>=
>> >>
>> >> >
>> >>
>> >> On Sun, May 23, = 2021 at 3:52 AM Lloyd Fournier via bitcoin-dev
= >> >> >
>> >> > Hi Billy,
>> >> >
>> >> > I was = going to write a post which started by dismissing many of the weak argument= s that are made against PoS made in this thread and elsewhere.
>> >> > Although I don't agree with all your points yo= u have done a decent job here so I'll focus on the second part: why I t= hink Proof-of-Stake is inappropriate for a Bitcoin-like system.
>> >> >
>> >> > Proof of sta= ke is not fit for purpose for a global settlement layer in a pure digital a= sset (i.e. "digital gold") which is what Bitcoin is trying to be.=
>> >> > PoS necessarily gives responsibilitie= s to the holders of coins that they do not want and cannot handle.
>> >> > In Bitcoin, large unsophisticated coin holders= can put their coins in cold storage without a second thought given to the = health of the underlying ledger.
>> >> > As mu= ch as hardcore Bitcoiners try to convince them to run their own node, most = don't, and that's perfectly acceptable.
>> >= > > At no point do their personal decisions affect the underlying con= sensus -- it only affects their personal security assurance (not that of th= e system itself).
>> >> > In PoS systems this = clean separation of responsibilities does not exist.
>>= >> >
>> >> > I think that the more r= igorously studied PoS protocols will work fine within the security claims m= ade in their papers.
>> >> > People who believ= e that these protocols are destined for catastrophic consensus failure are = certainly in for a surprise.
>> >> > But the d= evil is in the detail.
>> >> > Let's look = at what the implications of using the leading proof of stake protocols woul= d have on Bitcoin:
>> >> >
>&= gt; >> > ### Proof of SquareSpace (Cardano, Polkdadot)
>> >> >
>> >> > Cardano is a= UTXO based PoS coin based on Ouroboros Praos[3] with an inbuilt on-chain d= elegation system[5].
>> >> > In these protocol= s, coin holders who do not want to run their node with their hot keys in it= delegate it to a "Stake Pool".
>> >> &= gt; I call the resulting system Proof-of-SquareSpace since most will choose= a pool by looking around for one with a nice website and offering the larg= est share of the block reward.
>> >> > On the = surface this might sound no different than someone with an mining rig shopp= ing around for a good mining pool but there are crucial differences:
>> >> >
>> >> > 1. The = person making the decision is forced into it just because they own the curr= ency -- someone with a mining rig has purchased it with the intent to make = profit by participating in consensus.
>> >> ><= br>
>> >> > 2. When you join a mining pool your sy= stems are very much still online. You are just partaking in a pool to reduc= e your profit variance. You still see every block that you help create and = *you never help create a block without seeing it first*.
>= > >> >
>> >> > 3. If by SquareSpac= e sybil attack you gain a dishonest majority and start censoring transactio= ns how are the users meant to redelegate their stake to honest pools?
>> >> > I guess they can just send a transaction de= legating to another pool...oh wait I guess that might be censored too! This= seems really really bad.
>> >> > In Bitcoin, = miners can just join a different pool at a whim. There is nothing the attac= ker can do to stop them. A temporary dishonest majority heals relatively we= ll.
>> >> >
>> >> &g= t; There is another severe disadvantage to this on-chain delegation system:= every UTXO must indicate which staking account this UTXO belongs to so the= appropriate share of block rewards can be transferred there.
>> >> > Being able to associate every UTXO to an account ru= ins one of the main privacy advantages of the UTXO model.
>= ;> >> > It also grows the size of the blockchain significantly.=
>> >> >
>> >> > = ### "Pure" proof of stake (Algorand)
>> >&= gt; >
>> >> > Algorand's[4] approach is= to only allow online stake to participate in the protocol.
&= gt;> >> > Theoretically, This means that keys holding funds hav= e to be online in order for them to author blocks when they are chosen.
=
>> >> > Of course in reality no one wants to keep= their coin holding keys online so in Alogorand you can authorize a set of = "participation keys"[1] that will be used to create blocks on you= r coin holding key's behalf.
>> >> > Hopef= ully you've spotted the problem.
>> >> > Y= ou can send your participation keys to any malicious party with a nice webs= ite (see random example [2]) offering you a good return.
>= > >> > Damn it's still Proof-of-SquareSpace!
= >> >> > The minor advantage is that at least the participati= on keys expire after a certain amount of time so eventually the SquareSpace= attacker will lose their hold on consensus.
>> >>= ; > Importantly there is also less junk on the blockchain because the pa= rticipation keys are delegated off-chain and so are not making as much of a= mess.
>> >> >
>> >>= > ### Conclusion
>> >> >
>= ;> >> > I don't see a way to get around the conflicting req= uirement that the keys for large amounts of coins should be kept offline bu= t those are exactly the coins we need online to make the scheme secure.
=
>> >> > If we allow delegation then we open up a = new social attack surface and it degenerates to Proof-of-SquareSpace.
>> >> >
>> >> > For a = "digital gold" like system like Bitcoin we optimize for simplicit= y and desperately want to avoid extraneous responsibilities for the holder = of the coin.
>> >> > After all, gold is an ine= rt element on the periodic table that doesn't confer responsibilities o= n the holder to maintain the quality of all the other bars of gold out ther= e.
>> >> > Bitcoin feels like this too and in = many ways is more inert and beautifully boring than gold.
>= ;> >> > For Bitcoin to succeed I think we need to keep it that = way and Proof-of-Stake makes everything a bit too exciting.
&= gt;> >> >
>> >> > I suppose in the= end the market will decide what is real digital gold and whether these bad= technical trade offs are worth being able to say it uses less electricity.= It goes without saying that making bad technical decisions to appease the = current political climate is an anathema to Bitcoin.
>>= >> >
>> >> > Would be interested to = know if you or others think differently on these points.
>= > >> >
>> >> >
<= /div>
>> >> > LL
>> >> >
>> >> > On Fri, 21 May 2021 at 19:21, Billy Tetr= ud via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wrote:=
>> >> >>
>> >> &= gt;> I think there is a lot of misinformation and bias against Proof of = Stake. Yes there have been lots of shady coins that use insecure PoS mechan= isms. Yes there have been massive issues with distribution of PoS coins (of= course there have also been massive issues with PoW coins as well). Howeve= r, I want to remind everyone that there is a difference between "prove= d to be impossible" and "have not achieved recognized success yet= ". Most of the arguments levied against PoS are out of date or rely on= unproven assumptions or extrapolation from the analysis of a particular Po= S system. I certainly don't think we should experiment with bitcoin by = switching to PoS, but from my research, it seems very likely that there is = a proof of stake consensus protocol we could build that has substantially h= igher security (cost / capital required to execute an attack) while at the = same time costing far less resources (which do translate to fees on the net= work) *without* compromising any of the critical security properties bitcoi= n relies on. I think the critical piece of this is the disagreements around= hardcoded checkpoints, which is a critical piece solving attacks that coul= d be levied on a PoS chain, and how that does (or doesn't) affect the s= ecurity model.
>> >> >>
>&= gt; >> >> @Eric Your proof of stake fallacy seems to be saying = that PoS is worse when a 51% attack happens. While I agree, I think that li= ne of thinking omits important facts:
>> >> >&= gt; * The capital required to 51% attack a PoS chain can be made substantia= lly greater than on a PoS chain.
>> >> >> *= The capital the attacker stands to lose can be substantially greater as we= ll if the attack is successful.
>> >> >> * = The effectiveness of paying miners to raise the honest fraction of miners a= bove 50% may be quite bad.
>> >> >> * Allow= ing a 51% attack is already unacceptable. It should be considered whether w= hat happens in the case of a 51% may not be significantly different. The cu= rrency would likely be critically damaged in a 51% attack regardless of con= sensus mechanism.
>> >> >>
&g= t;> >> >> > Proof-of-stake tends towards oligopolistic co= ntrol
>> >> >>
>> >&= gt; >> People repeat this often, but the facts support this. There is= no centralization pressure in any proof of stake mechanism that I'm aw= are of. IE if you have 10 times as much coin that you use to mint blocks, y= ou should expect to earn 10x as much minting revenue - not more than 10x. B= y contrast, proof of work does in fact have clear centralization pressure -= this is not disputed. Our goal in relation to that is to ensure that the c= entralization pressure remains insignifiant. Proof of work also clearly has= a lot more barriers to entry than any proof of stake system does. Both of = these mean the tendency towards oligopolistic control is worse for PoW.
=
>> >> >>
>> >> >&= gt; > Energy usage, in-and-of-itself, is nothing to be ashamed of!!
<= /div>
>> >> >>
>> >> >&g= t; I certainly agree. Bitcoin's energy usage at the moment is I think q= uite warranted. However, the question is: can we do substantially better. I= think if we can, we probably should... eventually.
>> = >> >>
>> >> >> > Proof of St= ake is only resilient to =E2=85=93 of the network demonstrating a Byzantine= Fault, whilst Proof of Work is resilient up to the =C2=BD threshold
>> >> >>
>> >> >>= I see no mention of this in the pos.pdf you linked to. I'm not aware o= f any proof that all PoS systems have a failure threshold of 1/3. I know th= at staking systems like Casper do in fact have that 1/3 requirement. Howeve= r there are PoS designs that should exceed that up to nearly 50% as far as = I'm aware. Proof of work is not in fact resilient up to the 1/2 thresho= ld in the way you would think. IE, if 100% of miners are currently honest a= nd have a collective 100 exahashes/s hashpower, an attacker does not need t= o obtain 100 exahashes/s, but actually only needs to accumulate 50 exahashe= s/s. This is because as the attacker accumulates hashpower, it drives hones= t miners out of the market as the difficulty increases to beyond what is ec= onomically sustainable. Also, its been shown that the best proof of work ca= n do is require an attacker to obtain 33% of the hashpower because of the s= elfish mining attack discussed in depth in this paper: https://arxiv.= org/abs/1311.0243. Together, both of these things reduce PoW's secu= rity by a factor of about 83% (1 - 50%*33%).
>> >>= ; >>
>> >> >>=C2=A0 > Proof of Sta= ke requires other trade-offs which are incompatible with Bitcoin's obje= ctive (to be a trustless digital cash) =E2=80=94 specifically the famous &q= uot;security vs. liveness" guarantee
>> >> &= gt;>
>> >> >> Do you have a good source = that talks about why you think proof of stake cannot be used for a trustles= s digital cash?
>> >> >>
>= > >> >> > You cannot gain tokens without someone choosing= to give up those coins - a form of permission.
>> >= > >>
>> >> >> This is not a practi= cal constraint. Just like in mining, some nodes may reject you, but there w= ill likely be more that will accept you, some sellers may reject you, but m= ost would accept your money as payment for bitcoins. I don't think requ= iring the "permission" of one of millions of people in the market= can be reasonably considered a "permissioned currency".
>> >> >>
>> >> >> &= gt; 2. Proof of stake must have a trusted means of timestamping to regulate= overproduction of blocks
>> >> >>
>> >> >> Both PoW and PoS could mine/mint blocks tw= ice as fast if everyone agreed to double their clock speeds. Both systems r= ely on an honest majority sticking to standard time.
>>= >> >>
>> >> >>
&= gt;> >> >> On Wed, May 19, 2021 at 5:32 AM Michael Dubrovsky= via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wrote:
>> >> >>>
>> >>= >>> Ah sorry, I didn't realize this was, in fact, a different= thread! :)
>> >> >>>
>= > >> >>> On Wed, May 19, 2021 at 10:07 AM Michael Dubrovs= ky <mike@powx.org= > wrote:
>> >> >>>>
= >> >> >>>> Folks, I suggest we keep the discussion = to PoW, oPoW, and the BIP itself. PoS, VDFs, and so on are interesting but = I guess there are other threads going on these topics already where they wo= uld be relevant.
>> >> >>>>
=
>> >> >>>> Also, it's important to disting= uish between oPoW and these other "alternatives" to Hashcash. oPo= W is a true Proof of Work that doesn't alter the core game theory or se= curity assumptions of Hashcash and actually contains SHA (can be SHA3, SHA2= 56, etc hash is interchangeable).
>> >> >>&= gt;>
>> >> >>>> Cheers,
<= div>>> >> >>>> Mike
>> >>= >>>>
>> >> >>>> On Tue, = May 18, 2021 at 4:55 PM Erik Aronesty via bitcoin-dev <bitcoin-dev@lists= .linuxfoundation.org> wrote:
>> >> >>= ;>>>
>> >> >>>>> 1. i nev= er suggested vdf's to replace pow.
>> >> >= >>>>
>> >> >>>>> 2. my= suggestion was specifically *in the context of* a working
&g= t;> >> >>>>> proof-of-burn protocol
&= gt;> >> >>>>>
>> >> >&= gt;>>> - vdfs used only for timing (not block height)
>> >> >>>>> - blind-burned coins of a specific= age used to replace proof of work
>> >> >>= >>> - the required "work" per block would simply be a co= mpetition to
>> >> >>>>> acquire r= ewards, and so miners would have to burn coins, well in
>&= gt; >> >>>>> advance, and hope that their burned coins= got rewarded in some far
>> >> >>>>&= gt; future
>> >> >>>>> - the point= of burned coins is to mimic, in every meaningful way, the
&g= t;> >> >>>>> value gained from proof of work... wit= hout some of the security
>> >> >>>>&= gt; drawbacks
>> >> >>>>> - the mi= ner risks losing all of his burned coins (like all miners risk
>> >> >>>>> losing their work in each block)
>> >> >>>>> - new burns can't b= e used
>> >> >>>>> - old burns age= out (like ASICs do)
>> >> >>>>> -= other requirements on burns might be needed to properly mirror the
>> >> >>>>> properties of PoW and the inc= entives Bitcoin uses to mine honestly.
>> >> >= >>>>
>> >> >>>>> 3. i = do believe it is *possible* that a "burned coin + vdf system"
=
>> >> >>>>> might be more secure in t= he long run, and that if the entire space
>> >> &= gt;>>>> agreed that such an endeavor was worthwhile, a test net= could be spun
>> >> >>>>> up, and= a hard-fork could be initiated.
>> >> >>&g= t;>>
>> >> >>>>> 4. i would = never suggest such a thing unless i believed it was
>> = >> >>>>> possible that consensus was possible.=C2=A0 s= o no, this is not an "alt
>> >> >>>= >> coin"
>> >> >>>>>
>> >> >>>>> On Tue, May 18, 2021 at = 10:02 AM Zac Greenwood <zachgrw@gmail.com> wrote:
>> >> >= ;>>>> >
>> >> >>>>>= > Hi ZmnSCPxj,
>> >> >>>>> >= ;
>> >> >>>>> > Please note tha= t I am not suggesting VDFs as a means to save energy, but solely as a means= to make the time between blocks more constant.
>> >= > >>>>> >
>> >> >>>= >> > Zac
>> >> >>>>> >=
>> >> >>>>> >
&g= t;> >> >>>>> > On Tue, 18 May 2021 at 12:42, Zmn= SCPxj <ZmnS= CPxj@protonmail.com> wrote:
>> >> >>= >>> >>
>> >> >>>>> = >> Good morning Zac,
>> >> >>>>= > >>
>> >> >>>>> >>= > VDFs might enable more constant block times, for instance by having a= two-step PoW:
>> >> >>>>> >>= ; >
>> >> >>>>> >> > 1= . Use a VDF that takes say 9 minutes to resolve (VDF being subject to diffi= culty adjustments similar to the as-is). As per the property of VDFs, miner= s are able show proof of work.
>> >> >>>= >> >> >
>> >> >>>>>= >> > 2. Use current PoW mechanism with lower difficulty so findin= g a block takes 1 minute on average, again subject to as-is difficulty adju= stments.
>> >> >>>>> >> >=
>> >> >>>>> >> > As a re= sult, variation in block times will be greatly reduced.
>&= gt; >> >>>>> >>
>> >> = >>>>> >> As I understand it, another weakness of VDFs = is that they are not inherently progress-free (their sequential nature prev= ents that; they are inherently progress-requiring).
>> = >> >>>>> >>
>> >> >= >>>> >> Thus, a miner which focuses on improving the amou= nt of energy that it can pump into the VDF circuitry (by overclocking and f= reezing the circuitry), could potentially get into a winner-takes-all situa= tion, possibly leading to even *worse* competition and even *more* energy c= onsumption.
>> >> >>>>> >> A= fter all, if you can start mining 0.1s faster than the competition, that is= a 0.1s advantage where *only you* can mine *in the entire world*.
>> >> >>>>> >>
>>= ; >> >>>>> >> Regards,
>> &g= t;> >>>>> >> ZmnSCPxj
>> >&g= t; >>>>> _______________________________________________
=
>> >> >>>>> bitcoin-dev mailing list<= br>
>> >> >>>>> https://lists.linuxfoundation.org/mailma= n/listinfo/bitcoin-dev
>> >> >>>>=
>> >> >>>>
>> &g= t;> >>>>
>> >> >>>> --=
>> >> >>>> Michael Dubrovsky
>> >> >>>> Founder; PoWx
>&= gt; >> >>>> www.PoWx.org
>> >> &g= t;>>
>> >> >>>
>&= gt; >> >>>
>> >> >>> --
>> >> >>> Michael Dubrovsky
>> >> >>> Founder; PoWx
>> >&g= t; >>> www.PoWx.org
>> >> >>> _= ______________________________________________
>> >&= gt; >>> bitcoin-dev mailing list
>>= >> >>
>> >> >> _______________= ________________________________
>> >> >> b= itcoin-dev mailing list
>> >> >> https://lists.linuxfoundation.org/mailma= n/listinfo/bitcoin-dev
>> >> >
>> >> > _______________________________________________
>> >> > bitcoin-dev mailing list
<= div>>> >> > https://lis= ts.linuxfoundation.org/mailman/listinfo/bitcoin-dev

<= br>
--00000000000080c6f005c34cf331--