Return-Path: Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 831CDC0001 for ; Wed, 26 May 2021 06:54:07 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 6D2FB605BD for ; Wed, 26 May 2021 06:54:07 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.098 X-Spam-Level: X-Spam-Status: No, score=-2.098 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_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp3.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yOFK35j2sq8x for ; Wed, 26 May 2021 06:54:03 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from mail-ed1-x532.google.com (mail-ed1-x532.google.com [IPv6:2a00:1450:4864:20::532]) by smtp3.osuosl.org (Postfix) with ESMTPS id 9AE6C605CC for ; Wed, 26 May 2021 06:54:02 +0000 (UTC) Received: by mail-ed1-x532.google.com with SMTP id s6so39113989edu.10 for ; Tue, 25 May 2021 23:54:02 -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=K9W6Fp20Y3FvEtrGoVl2kdEyYDKQL9YrCu1XleCiEVA=; b=aEoFUiFZFgimkXI7tA5GRR1VcS2FmmusW/PtZ7Nx7ksZ5rIwFPQuED8pP19zEZ6lgQ OTNlzm9xvU3q9ejJKvQeVoyPJP4nd9myotNT4EqwI9+5/tUhGa8rvJbr65IZJBybRlI6 cV6mMwEAaGEaSzkd5oX5WJlgg2Xo4/CEljvBgIcocSA+StgpBQaUE/pMyJLdVqWKKv15 XXvpQcdHMmUPyW3YvvMXE3p3Y0Fg2rzmz7NYCzJ4UThcX3oujIXdMxc1z3Bowp5IUy09 RsjvuZLzhM3XXUTgM+bFc8s8tb0VIRRv6hdZnSSmDnjzrU/ZuNOS8ZbeRlMmnlyLmZfd 93xg== 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=K9W6Fp20Y3FvEtrGoVl2kdEyYDKQL9YrCu1XleCiEVA=; b=tJf2Tqvq6l+27AIV95HR+4n9DKfGTz2LMS7UuqXQhmqWAUkSRXzPtCkkC8BOVYEnRc CGWS3uUs0ZLiMVe02NJwUY0clXPm2CkJT+j50hz4+3LmKFVNZG5S7kRNhduDHYdjZDfS K21GOUEi/x6ok734/ICM+Pnms9GK8BtwBaf7Ldtb7xVKbapY9A1tv+4OvZoNGLqChgg6 TiYX4wdmZmTm1XujAQCeFxE9CeWHsjnNGfHByMIY6K5406zS8ovJGBlD+n7ERd+882SP m/1HVXiMI6iy2fA1R1aw/d7OJGSUx+urrdzdyMWkVfh2uTDFpbJ58/DbC/NTn3M1LqOA n+mw== X-Gm-Message-State: AOAM532CfuWayJYDugzxLMWasbN16eSRoMGWagRHVG9WaUb3BL7dOSme +gtEgc/vGXwtVOEvJQtof8CqVvFaLI/lbh7mzyo= X-Google-Smtp-Source: ABdhPJw3/O99lVj1Sm+GTRlq9+lj8fKEYfH4rN7+1Cud0WiINXK97gJF5aSkEBaFeecrqK4HSrIECcrVkxGQShqjOKk= X-Received: by 2002:a50:fb17:: with SMTP id d23mr35134689edq.338.1622012040567; Tue, 25 May 2021 23:54:00 -0700 (PDT) MIME-Version: 1.0 References: <6do5xN2g5LPnFeM55iJ-4C4MyXOu_KeXxy68Xt4dJQMhi3LJ8ZrLICmEUlh8JGfDmsDG12m1JDAh0e0huwK_MlyKpdfn22ru3zsm7lYLfBo=@protonmail.com> <3TVoontwJmoMv0tp1S5MU_U8icxcQZfajtbNEXqOjuvO7GpfUQdh9pEGSIbLEYJndrDa_dJQqa0sSwY-BmuCmyHMRWqa9lEaUjZJSP5Vbyw=@protonmail.com> In-Reply-To: <3TVoontwJmoMv0tp1S5MU_U8icxcQZfajtbNEXqOjuvO7GpfUQdh9pEGSIbLEYJndrDa_dJQqa0sSwY-BmuCmyHMRWqa9lEaUjZJSP5Vbyw=@protonmail.com> From: Billy Tetrud Date: Tue, 25 May 2021 20:53:44 -1000 Message-ID: To: befreeandopen Content-Type: multipart/alternative; boundary="0000000000007fde9205c3361ba9" X-Mailman-Approved-At: Wed, 26 May 2021 10:38:38 +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: Wed, 26 May 2021 06:54:07 -0000 --0000000000007fde9205c3361ba9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable @befreeandopen I guess I misunderstood your selfish minting attack. Let me 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 will 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 random 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 have 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. 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 . > the problem is not as hard as you think I don't claim to know just how hard finding the IP address associated with 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. > 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 introduced another problem elsewhere." > 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 who 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 coins. 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. > 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 protocols are insecure. On Tue, May 25, 2021 at 11:10 AM befreeandopen wrote: > > @befreeandopen " An attacker can calculate whether or not she can prolong > 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 whe= re > 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 a= nd > not attempt to mint on old blocks or support someone else's attempt to mi= nt > 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 the= reasoning > here > > for a deeper analysis of that statement), I don't agree that punishment i= s > not a sufficient mitigation of the nothing at stake problem. To exploit t= he > nothing at stake problem, you basically need to 51% attack, at which poin= t > 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 t= he > 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 stating > 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 addres= s, > you can target them. But if you only know their address or public key, th= e > 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 and > it is not trivial, but not very hard either. Introducing a large number o= f > nodes to the system to achieve 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 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 tha= t > 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 delegate > 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 i= n > 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 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 moved. Maybe it is > possible though, but AFAIK it is not common and not battle tested feature= . > > 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 ov= er > 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 increase > 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 problem > 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 nea= r > 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 acceptab= le. > > Just because of the above we must reject PoS as being critically insecure > 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, minimiz= ing >> 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 of >> 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 is= 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, minimiz= ing >> 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 to >> >> mine block 553. if i have a choice between two chains, one longer >> >> and one shorter, i can only choose one... deterministically, for that >> >> 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 ver= y >> >> 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 to >> >> 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 online. >> >> > >> >> > > 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, wh= ich >> 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 or >> sign multiple blocks for the same height. The "nothing at stake" problem= 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 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. >> >> >> >> >> >> 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 th= e >> >> >> 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 are >> >> >> 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 chains >> >> >> >> >> >> 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 Bitcoi= n >> 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 th= e >> underlying ledger. >> >> >> > As much 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 >> consensus -- it only affects their personal security assurance (not that= of >> the system itself). >> >> >> > In PoS systems this clean separation of responsibilities does no= t >> exist. >> >> >> > >> >> >> > I think that the more rigorously studied PoS protocols will work >> 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 o= f >> stake protocols would have on Bitcoin: >> >> >> > >> >> >> > ### Proof of SquareSpace (Cardano, Polkdadot) >> >> >> > >> >> >> > Cardano is a UTXO based PoS coin based on Ouroboros Praos[3] wit= h >> 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 will >> choose a pool by looking around for one with a nice website and offering >> the largest share of the block reward. >> >> >> > On the surface this might sound no different than someone with a= n >> mining rig shopping 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 currency -- someone with a mining rig has purchased it with >> 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 creat= e 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 rea= lly >> 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 dishonest >> majority heals relatively well. >> >> >> > >> >> >> > 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 ruins one of th= e >> 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 key= s >> 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 with >> 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 th= e >> 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 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. >> >> >> > 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 for >> 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 of >> 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 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 technic= al >> decisions to appease the current political climate is an anathema to >> Bitcoin. >> >> >> > >> >> >> > Would be interested to know if you or others think differently o= n >> these points. >> >> >> > >> >> >> > [1]: >> https://developer.algorand.org/docs/run-a-node/participate/generate_keys= / >> >> >> > [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-bc7f= -805f0e53a8d9_theoretical.pdf >> >> >> > [5]: >> https://hydra.iohk.io/build/790053/download/1/delegation_design_spec.pdf >> >> >> > >> >> >> > 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 Proof >> 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 succ= ess >> yet". Most of the arguments levied against PoS are out of date or rely o= n >> 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 substantiall= y >> 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 disagreemen= ts >> 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) affe= ct >> the security model. >> >> >> >> >> >> >> >> @Eric Your proof of stake fallacy seems to be saying that PoS i= s >> 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 damaged= 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 awar= e >> of. IE if you have 10 times as much coin that you use to mint blocks, yo= u >> 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 >> centralization pressure remains insignifiant. Proof of work also clearly >> has a lot more barriers to entry than any proof of stake system does. Bo= th >> of these mean the tendency towards oligopolistic control is worse for Po= W. >> >> >> >> >> >> >> >> > 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 substantially >> 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 to >> 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 requireme= nt. >> However there are PoS designs that should exceed that up to nearly 50% a= s >> 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 currentl= y >> honest and have a collective 100 exahashes/s hashpower, an attacker does >> not need to obtain 100 exahashes/s, but actually only needs to accumulat= e >> 50 exahashes/s. This is because as the attacker accumulates hashpower, i= t >> drives honest miners out of the market as the difficulty increases to >> beyond what is economically sustainable. Also, its been shown that the b= est >> proof of work can do is require an attacker to obtain 33% of the hashpow= er >> 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 you= , >> some sellers may reject you, but most would accept your money as payment >> for bitcoins. I don't think requiring the "permission" of one of million= s >> of people in the market can be reasonably considered a "permissioned >> currency". >> >> >> >> >> >> >> >> > 2. Proof of stake must have a trusted means of timestamping t= o >> 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 the >> 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 relevant= . >> >> >> >>>> >> >> >> >>>> Also, it's important to distinguish between oPoW and these >> other "alternatives" to Hashcash. oPoW is a true Proof of Work that does= n't >> alter the core game theory or security assumptions of Hashcash and actua= lly >> 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-dev= < >> bitcoin-dev@lists.linuxfoundation.org> 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 proof >> of work >> >> >> >>>>> - the required "work" per block would simply be a competitio= n >> to >> >> >> >>>>> acquire rewards, and so miners would have to burn coins, wel= l >> in >> >> >> >>>>> advance, and hope that their burned coins got rewarded in >> some far >> >> >> >>>>> future >> >> >> >>>>> - the point of burned coins is to mimic, in every meaningful >> 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 entire >> space >> >> >> >>>>> agreed that such an endeavor was worthwhile, a test net coul= d >> be spun >> >> >> >>>>> up, and a hard-fork could be initiated. >> >> >> >>>>> >> >> >> >>>>> 4. i would never suggest such a thing unless i believed it w= as >> >> >> >>>>> possible that consensus was possible. so 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 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 th= e >> 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 they >> 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-dev >> >> >> >> >> >> >> >> _______________________________________________ >> >> >> >> 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 >> > > --0000000000007fde9205c3361ba9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
@befreeandopen I guess I misunderstood your selfish m= inting attack. Let me make sure I understand it. You're saying it would= go as follows?:

1. The malicious actor comes acro= ss 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 mint= ed by someone else.=C2=A0
3. The=20 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 wouldn'= ;t have the information available for minters to know how blocks will affec= t their future prospects of minting. Otherwise this would introduce the pro= blem of stake grinding. This can be done using collaborative randomness (wh= ere numbers from many parties are combined to create a random number that n= o individual party could predict). In fact, that's what the Casper prot= ocol does to decide quorums. In a non quorum case, you can do something lik= e record a hash of a number in the block header, and then have a second ste= p to release that number later.=20 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.

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

>=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 with a bitc= oin 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 blo= ck. Eg by determining whether someone can mint a block based on their publi= c 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 pr= ove they are allowed to mint the block.=C2=A0

>= I agree that introduction of punishment itself does not imply introducing = a problem elsewhere (which I did not claim if you reread my previous messag= e)

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."

> 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 i= n the system will always increase in time. It will increase relative to all= normal users who 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 coins. In that case, they&= #39;ll be able to earn more coin that they could later decide to use to min= t blocks if they decide to.=C2=A0

> Just becaus= e of the above we must reject PoS as being critically insecure=C2=A0
<= div>
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 al= l possible PoS protocols are insecure.=C2=A0


=
On Tue, Ma= y 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 = like an attacker could simply focus all their burns on a particular set of = 6 blocks to double spend, minimizing their cost of attack.
<= br>
could be right.=C2=A0 =C2=A0the original idea was to have bu= rns 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 alw= ays better than proof of
stake - simply because the "pr= oof" is on-chain, not sitting on a node
somewhere waiti= ng to be stolen.

On Mon, May 24, 2021 at 9:5= 3 PM Billy Tetrud <billy.tetrud@gmail.com> wrote:
>
<= div> > Is this the kind of proof of burn you're talking about?
>
> >=C2=A0 =C2=A0if i have a choice betw= een two chains, one longer and one shorter, i can only choose one... determ= inistically
>
> What prevents you from = attempting to mine block 553 on both chains?
>
<= div> > > miners have a very strong, long-term, investment in the stab= ility of the chain.
>
> Yes, but the sa= me can be said of any coin, even ones that do have the nothing at stake pro= blem. This isn't sufficient tho because the chain is 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 lik= e an attacker could simply focus all their burns on a particular set of 6 b= locks to double spend, minimizing their cost of attack.
>=
> > i can imagine scenarios where large stakeholders = can collude to punish smaller stakeholders simply to drive them out of busi= ness, for example
>
> Are you talking a= bout a 51% attack? This is possible in any decentralized cryptocurrency.
>
>
> On Mon, May 24, 2= 021 at 11:49 AM Erik Aronesty <erik@q32.com> wrote:
>>
= >> > > your burn investment is always "at stake", an= y redaction can result in a loss-of-burn, because burns can be tied, precis= ely, to block-heights
>> > I'm fuzzy on how pro= of 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 to
>> mine block 553.=C2=A0 =C2=A0if i have a cho= ice between two chains, one longer
>> and one shorter,= i can only choose one... deterministically, for that
>&g= t; burn: the chain with the height 553.=C2=A0 =C2=A0if we fix the "lea= d time" for
>> burned coins to be weeks or even m= onths in advance, miners have a very
>> strong, long-t= erm, investment in the stability of the chain.
>>
<= /div>
>> therefore there is no "nothing at stake" prob= lem.=C2=A0 =C2=A0it's
>> deterministic, so miners = have no choice.=C2=A0 they can *only* choose the
>> tr= ansactions that go into the block.=C2=A0 they cannot choose which chain
=
>> to mine, and it's time-locked, so rollbacks and in= stability always
>> hurt miners the most.
>>
>> the "punishment" systems of P= oS are "weird at best", certainly
>> unprove= n.=C2=A0 =C2=A0i can imagine scenarios where large stakeholders can
>> collude to punish smaller stakeholders simply to drive the= m out of
>> business, for example.=C2=A0 =C2=A0and the= n you have to put checks in place to
>> prevent that, = and more checks for those prevention system...
>>
<= /div>
>> in PoB, there is no complexity.=C2=A0 simpler systems l= ike this are
>> typically more secure.
= >>
>> PoB also solves problems caused by "e= nergy dependence", which could
>> lead to state m= onopolies on mining (like the new Bitcoin Mining
>> Co= uncil).=C2=A0 =C2=A0these consortiums, if state sanctioned, could become a<= br>
>> source of censorship, for example.=C2=A0 =C2=A0Sinc= e PoB doesn't require you to
>> have a live, well-= connected node, it's harder to censor & harder to
&g= t;> trace.
>>
>> Eliminating t= his weakness seems to be in the best interests of
>> e= xisting stakeholders
>>
>>
>>
>>
>> On Mon, M= ay 24, 2021 at 4:44 PM Billy Tetrud <billy.tetrud@gmail.com> wrote:
>> >
>> > >=C2=A0 proof of burn clea= rly solves this, since nothing is held online
>> ><= br>
>> > Well.. the coins to be burned need to be onlin= e when they're burned. But yes, only a small fraction of the total coin= s need 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 blo= ck-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 tr= ansaction could also be spent on the longest chain, which 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.
>> >
<= div> >> > > proof of burn can be more secure than proof-of-stak= e
>> >
>> > FYI, proof of s= take can be done without the "nothing at stake" problem. You can = simply punish people who mint on shorter chains (by rewarding people who pu= blish proofs 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 t= he same height. The "nothing at stake" problem is a solved proble= m at this point for PoS.
>> >
>&g= t; >
>> >
>> > On Mon, M= ay 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 shoul= d be kept offline but those are exactly the coins we need online to make th= e scheme secure.
>> >>
>> &= gt;> proof of burn clearly solves this, since nothing is held online
=
>> >>
>> >> >=C2=A0 h= ow does proof of burn solve the "nothing at stake" problem in you= r view?
>> >>
>> >> d= efinition of nothing at stake: in the event of a fork, whether the
>> >> fork is accidental or a malicious, the optimal str= ategy for any miner
>> >> is to mine on every ch= ain, so that the miner gets 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 magnified.
>> >>
>> >> in proof-of-burn, your burn investment is always "= at stake", any
>> >> redaction can result i= n a loss-of-burn, because burns can be tied,
>> >&g= t; precisely, to block-heights
>> >>
>> >> as a result, miners no longer have an incentive to mi= ne all chains
>> >>
>> >= > in this way proof of burn can be more secure than proof-of-stake, and<= br>
>> >> even more secure than proof of work
>> >>
>> >>
= >> >>
>> >>
>> = >>
>> >>
>> >><= br>
>> >> >
>> >>
<= /div>
>> >> On Sun, May 23, 2021 at 3:52 AM Lloyd Fournier= via bitcoin-dev
>> >> >
>> >> > Hi Billy,
>> >>= >
>> >> > I was going to write a post whi= ch started by dismissing many of the weak arguments that are made against P= oS 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 i= nappropriate for a Bitcoin-like system.
>> >> &g= t;
>> >> > Proof of stake is not fit for purp= ose for a global settlement layer in a pure digital asset (i.e. "digit= al gold") which is what Bitcoin is trying to be.
>&g= t; >> > PoS necessarily gives responsibilities to the holders of c= oins that they do not want and cannot handle.
>> >&= gt; > In Bitcoin, large unsophisticated coin holders can put their coins= in cold storage without a second thought given to the health of the underl= ying ledger.
>> >> > As much as hardcore Bitc= oiners try to convince them to run their own node, most don't, and that= 's perfectly acceptable.
>> >> > At no po= int do their personal decisions affect the underlying consensus -- it only = affects their personal security assurance (not that of the system itself).<= br>
>> >> > In PoS systems this clean separation = of responsibilities does not exist.
>> >> >
>> >> > I think that the more rigorously studi= ed PoS protocols will work fine within the security claims made in their pa= pers.
>> >> > People who believe that these p= rotocols are destined for catastrophic consensus failure are certainly in f= or a surprise.
>> >> > But the devil is in th= e detail.
>> >> > Let's look at what the = implications of using the leading proof of stake protocols would have on Bi= tcoin:
>> >> >
>> >&g= t; > ### Proof of SquareSpace (Cardano, Polkdadot)
>&g= t; >> >
>> >> > Cardano is a UTXO ba= sed PoS coin based on Ouroboros Praos[3] with an inbuilt on-chain delegatio= n system[5].
>> >> > In these protocols, coin= holders who do not want to run their node with their hot keys in it delega= te it to a "Stake Pool".
>> >> > I = call the resulting system Proof-of-SquareSpace since most will choose a poo= l by looking around for one with a nice website and offering the largest sh= are of the block reward.
>> >> > On the surfa= ce this might sound no different than someone with an mining rig shopping a= round for a good mining pool but there are crucial differences:
>> >> >
>> >> > 1. The per= son making the decision is forced into it just because they own the currenc= y -- someone with a mining rig has purchased it with the intent to make pro= fit by participating in consensus.
>> >> >
>> >> > 2. When you join a mining pool your sys= tems 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 create a block without seeing it first*.
>= > >> >
>> >> > 3. If by SquareSpa= ce sybil attack you gain a dishonest majority and start censoring transacti= ons how are the users meant to redelegate their stake to honest pools?
<= /div>
>> >> > I guess they can just send a transaction = delegating to another pool...oh wait I guess that might be censored too! Th= is seems really really bad.
>> >> > In Bitcoi= n, miners can just join a different pool at a whim. There is nothing the at= tacker can do to stop them. A temporary dishonest majority heals relatively= well.
>> >> >
>> >&g= t; > There is another severe disadvantage to this on-chain delegation sy= stem: every UTXO must indicate which staking account this UTXO belongs to s= o the appropriate share of block rewards can be transferred there.
>> >> > Being able to associate every UTXO to an acco= unt ruins one of the main privacy advantages of the UTXO model.
>> >> > It also grows the size of the blockchain signifi= cantly.
>> >> >
>> >&= gt; > ### "Pure" proof of stake (Algorand)
>= > >> >
>> >> > Algorand's[4] = approach is to only allow online stake to participate in the protocol.
<= /div>
>> >> > Theoretically, This means that keys holdi= ng 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 author= ize a set of "participation keys"[1] that will be used to create = blocks on your coin holding key's behalf.
>> >&= gt; > Hopefully you've spotted the problem.
>> = >> > You can send your participation keys to any malicious party w= ith 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 leas= t the participation keys expire after a certain amount of time so eventuall= y the SquareSpace attacker will lose their hold on consensus.
>> >> > Importantly there is also less junk on the blockch= ain because the participation keys are delegated off-chain and so are not m= aking as much of a mess.
>> >> >
>> >> > ### Conclusion
>> >> &= gt;
>> >> > I don't see a way to get arou= nd the conflicting requirement that the keys for large amounts of coins sho= uld be kept offline but those are exactly the coins we need online to make = the scheme secure.
>> >> > If we allow delega= tion then we open up a new social attack surface and it degenerates to Proo= f-of-SquareSpace.
>> >> >
>= > >> > For a "digital gold" like system like Bitcoin = we optimize for simplicity and desperately want to avoid extraneous respons= ibilities for 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 of all the o= ther bars of gold out there.
>> >> > Bitcoin = feels like this too and in many ways is more inert and beautifully boring t= han gold.
>> >> > For Bitcoin to succeed I th= ink we need to keep it that way and Proof-of-Stake makes everything a bit t= oo exciting.
>> >> >
>> = >> > I suppose in the end the market will decide what is real digi= tal 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 techn= ical decisions to appease the current political climate is an anathema to B= itcoin.
>> >> >
>> >&= gt; > Would be interested to know if you or others think differently on = these points.
>> >> >
>> >> > Cheers,
>> >> >
>> >> > = LL
>> >> >
>> >> &= gt; On Fri, 21 May 2021 at 19:21, Billy Tetrud via bitcoin-dev <bitcoin= -dev@lists.linuxfoundation.org> wrote:
>> >&= gt; >>
>> >> >> I think there is a l= ot of misinformation and bias against Proof of Stake. Yes there have been l= ots of shady coins that use insecure PoS mechanisms. Yes there have been ma= ssive 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 success yet". Most of the argument= s levied against PoS are out of date or rely on unproven assumptions or ext= rapolation from the analysis of a particular PoS system. I certainly don= 9;t think we should experiment with bitcoin by switching to PoS, but from m= y research, it seems very likely that there is a proof of stake consensus p= rotocol we could build that has substantially higher security (cost / capit= al required to execute an attack) while at the same time costing far less r= esources (which do translate to fees on the network) *without* compromising= any of the critical security properties bitcoin relies on. I think the cri= tical piece of this is the disagreements around hardcoded checkpoints, whic= h is a critical piece solving attacks that could be levied on a PoS chain, = and how that does (or doesn't) affect the security model.
>> >> >>
>> >> >> @Eri= c Your proof of stake fallacy seems to be saying that PoS is worse when a 5= 1% attack happens. While I agree, I think that line of thinking omits impor= tant facts:
>> >> >> * The capital require= d to 51% attack a PoS chain can be made substantially greater than on a PoS= chain.
>> >> >> * The capital the attacke= r stands to lose can be substantially greater as well if the attack is succ= essful.
>> >> >> * The effectiveness of pa= ying miners to raise the honest fraction of miners above 50% may be quite b= ad.
>> >> >> * Allowing a 51% attack is al= ready unacceptable. It should be considered whether what happens in the cas= e of a 51% may not be significantly different. The currency would likely be= critically damaged in a 51% attack regardless of consensus mechanism.
<= /div>
>> >> >>
>> >> >= > > Proof-of-stake tends towards oligopolistic control
= >> >> >>
>> >> >> Peopl= e repeat this often, but the facts support this. There is no centralization= pressure in any proof of stake mechanism that I'm aware of. IE if you = have 10 times as much coin that you use to mint blocks, you should expect t= o 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 dispu= ted. Our goal in relation to that is to ensure that the centralization pres= sure remains insignifiant. Proof of work also clearly has a lot more barrie= rs to entry than any proof of stake system does. Both of these mean the ten= dency towards oligopolistic control is worse for PoW.
>&g= t; >> >>
>> >> >> > Energy = usage, in-and-of-itself, is nothing to be ashamed of!!
>&= gt; >> >>
>> >> >> I certainly= agree. Bitcoin's energy usage at the moment is I think quite warranted= . However, the question is: can we do substantially better. I think if we c= an, we probably should... eventually.
>> >> >= >
>> >> >> > Proof of Stake is only = resilient to =E2=85=93 of the network demonstrating a Byzantine Fault, whil= st 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 of any proo= f 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 requirement. However there ar= e PoS designs that should exceed that up to nearly 50% as far as I'm aw= are. 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 currently honest and have a = collective 100 exahashes/s hashpower, an attacker does not need to obtain 1= 00 exahashes/s, but actually only needs to accumulate 50 exahashes/s. This = is because as the attacker accumulates hashpower, it drives honest miners o= ut 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 re= quire an attacker to obtain 33% of the hashpower because of the selfish min= ing attack discussed in depth in this paper: https://arxiv.org/abs/13= 11.0243. Together, both of these things reduce PoW's security by a = factor of about 83% (1 - 50%*33%).
>> >> >>= ;
>> >> >>=C2=A0 > Proof of Stake requi= res other trade-offs which are incompatible with Bitcoin's objective (t= o be a trustless digital cash) =E2=80=94 specifically the famous "secu= rity vs. liveness" guarantee
>> >> >>=
>> >> >> Do you have a good source that t= alks about why you think proof of stake cannot be used for a trustless digi= tal cash?
>> >> >>
>>= >> >> > You cannot gain tokens without someone choosing to = give up those coins - a form of permission.
>> >>= ; >>
>> >> >> This is not a practica= l constraint. Just like in mining, some nodes may reject you, but there wil= l likely be more that will accept you, some sellers may reject you, but mos= t would accept your money as payment for bitcoins. I don't think requir= ing the "permission" of one of millions of people in the market c= an be reasonably considered a "permissioned currency".
<= div> >> >> >>
>> >> >> &= 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 = twice as fast if everyone agreed to double their clock speeds. Both systems= rely on an honest majority sticking to standard time.
>&= gt; >> >>
>> >> >>
>> >> >> On Wed, May 19, 2021 at 5:32 AM Michael Dubr= ovsky via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wro= te:
>> >> >>>
>> &= gt;> >>> Ah sorry, I didn't realize this was, in fact, a di= fferent thread! :)
>> >> >>>
<= div> >> >> >>> On Wed, May 19, 2021 at 10:07 AM Michae= l Dubrovsky <mike@pow= x.org> wrote:
>> >> >>>>
<= /div>
>> >> >>>> Folks, I suggest we keep the = discussion to PoW, oPoW, and the BIP itself. PoS, VDFs, and so on are inter= esting but I guess there are other threads going on these topics already wh= ere they would be relevant.
>> >> >>>&g= t;
>> >> >>>> Also, it's importa= nt to distinguish between oPoW and these other "alternatives" to = Hashcash. oPoW is a true Proof of Work that doesn't alter the core game= theory or security assumptions of Hashcash and actually contains SHA (can = be SHA3, SHA256, etc hash is interchangeable).
>> >= > >>>>
>> >> >>>> Che= ers,
>> >> >>>> Mike
= >> >> >>>>
>> >> >>= ;>> On Tue, May 18, 2021 at 4:55 PM Erik Aronesty via bitcoin-dev <= ;bitcoin-dev@lists.linuxfoundation.org> wrote:
>&g= t; >> >>>>>
>> >> >>&= gt;>> 1. i never suggested vdf's to replace pow.
&= gt;> >> >>>>>
>> >> >= >>>> 2. my suggestion was specifically *in the context of* a wo= rking
>> >> >>>>> proof-of-burn p= rotocol
>> >> >>>>>
>> >> >>>>> - vdfs used only for timing (not b= lock height)
>> >> >>>>> - blind-= burned coins of a specific age used to replace proof of work
= >> >> >>>>> - the required "work" per= block would simply be a competition to
>> >> &g= t;>>>> acquire rewards, and so miners would have to burn coins,= well in
>> >> >>>>> advance, and= hope that their burned coins got rewarded in some far
>&= gt; >> >>>>> future
>> >> &= gt;>>>> - the point of burned coins is to mimic, in every meani= ngful way, the
>> >> >>>>> value = gained from proof of work... without some of the security
&g= t;> >> >>>>> 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)
&g= t;> >> >>>>> - other requirements on burns might be= needed to properly mirror the
>> >> >>>= ;>> properties of PoW and the incentives Bitcoin uses to mine honestl= y.
>> >> >>>>>
>= ;> >> >>>>> 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 enti= re space
>> >> >>>>> agreed that = such an endeavor was worthwhile, a test net could be spun
&g= t;> >> >>>>> up, and a hard-fork could be initiated= .
>> >> >>>>>
>= > >> >>>>> 4. i would never suggest such a thing un= less i believed it was
>> >> >>>>>= ; possible that consensus was possible.=C2=A0 so no, this is not an "a= lt
>> >> >>>>> coin"
>> >> >>>>>
>> >= > >>>>> On Tue, May 18, 2021 at 10:02 AM Zac Greenwood &l= t;zachgrw@gmail.com<= /a>> wrote:
>> >> >>>>> > Hi ZmnSCPxj,
<= /div>
>> >> >>>>> >
>&= gt; >> >>>>> > Please note that I am not suggesting= VDFs as a means to save energy, but solely as a means to make the time bet= ween blocks more constant.
>> >> >>>>= ;> >
>> >> >>>>> > Zac
>> >> >>>>> >
&g= t;> >> >>>>> >
>> >> >>>>> &g= t;>
>> >> >>>>> >> Good = morning Zac,
>> >> >>>>> >>=
>> >> >>>>> >> > VDFs m= ight enable more constant block times, for instance by having a two-step Po= W:
>> >> >>>>> >> >
<= /div>
>> >> >>>>> >> > 1. Use a VD= F that takes say 9 minutes to resolve (VDF being subject to difficulty adju= stments similar to the as-is). As per the property of VDFs, miners are able= show proof of work.
>> >> >>>>> = >> >
>> >> >>>>> >>= ; > 2. Use current PoW mechanism with lower difficulty so finding a bloc= k takes 1 minute on average, again subject to as-is difficulty adjustments.=
>> >> >>>>> >> >
>> >> >>>>> >> > As a result, = variation in block times will be greatly reduced.
>> &= gt;> >>>>> >>
>> >> >= >>>> >> As I understand it, another weakness of VDFs is t= hat they are not inherently progress-free (their sequential nature prevents= that; they are inherently progress-requiring).
>> >= ;> >>>>> >>
>> >> >&g= t;>>> >> Thus, a miner which focuses on improving the amount= of energy that it can pump into the VDF circuitry (by overclocking and fre= ezing the circuitry), could potentially get into a winner-takes-all situati= on, possibly leading to even *worse* competition and even *more* energy con= sumption.
>> >> >>>>> >> Af= ter 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*.
=
>> >> >>>>> >>
>&g= t; >> >>>>> >> Regards,
>> = >> >>>>> >> ZmnSCPxj
>> >= ;> >>>>> _______________________________________________<= br>
>> >> >>>>> bitcoin-dev mailing l= ist
>> >> >>&= gt;>
>> >> >>>>
&g= t;> >> >>>>
>> >> >>&= gt;> --
>> >> >>>> Michael Dubrov= sky
>> >> >>>> Founder; PoWx
>> >> >>>> www.PoWx.org
>&g= t; >> >>>
>> >> >>>
<= /div>
>> >> >>>
>> >> = >>> --
>> >> >>> Michael Dubro= vsky
>> >> >>> Founder; PoWx
<= div> >> >> >>> www.PoWx.org
>> >= > >>> _______________________________________________
=
>> >> >>> bitcoin-dev mailing list
>> >> >>> bitcoin-dev@lists.linuxfoundation.org<= br>
>> >> >>
>> >> = >> _______________________________________________
>= ;> >> >> bitcoin-dev mailing list
>&g= t; >> >
>> >> > ____________________= ___________________________
>> >> > bitcoin-d= ev mailing list

--0000000000007fde9205c3361ba9--