> The granddaddy of all consensus mechanisms—behind Bitcoin, Litecoin, Monero, and (for the time being at least) Ethereum—is called proof of work. Essentially, PoW makes adding transactions to the blockchain computationally—and therefore financially—very expensive, so as to discourage fraudulent activity. ... This passage reflects a deep-seated, widespread misunderstanding of how/why Bitcoin works. I suspect the auth…
Yes and no. Yes, proof of works prevents double spending or more generally establishes consensus on which transaction become accepted. But no, this could be achieved with many different consensus protocol and does in general not require any irrecoverable loss. Just issue a key pair to each human and make them send signed votes to establish consensus by simple majority. The true reason something like proof of work is…
Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
281–290 of 301 posts
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#282Earlier quoted context omitted.
> "Difficulty" isn't a thing in PoS Yes it is. The more people with coins actively minting in the system, the higher the difficulty of getting chosen. Please do more research. If you really want to keep discussing this with me, read through the WHOLE of https://github.com/fresheneesz/validatedProofOfStake and show me a full attack on it. > FWIW, I'm not a PoS detractor. You could have fooled me. But it sounds like yo…
> Yes it is. The more people with coins actively minting in the system, the higher the difficulty of getting chosen. I'm well aware. But eventually a large validator will get chosen--it's not difficult to get chosen, it's rare . The fact that PoS folks call this "difficulty" does not make it so. > If you really want to keep discussing this with me, read through the WHOLE of https://github.com/fresheneesz/validatedPro…
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#283Earlier quoted context omitted.
> many people disconnect cold storage wallets for years Yes, and when they come back, they should update their software - which should have a hardcoded checkpoint in it from much more recently. That's the solution that you're repeatedly ignoring. > a PoS attacker who creates a blockchain can emit blocks at a very high rate You're just wrong. Show me a single active PoS protocol that works this way. You won't be able…
> Yes, and when they come back, they should update their software - which should have a hardcoded checkpoint in it from much more recently. That's the solution that you're repeatedly ignoring. Setting aside for a moment the fact that users cannot be relied upon to update software, do you understand how this isn't a decentralized, trustless solution? If you're willing to download a checkpoint from a trusted, centraliz…
Their software can be relied on to tell them when its too out of date to be used.
> this isn't a decentralized, trustless solution
It is in fact decentralized. Nothing is trustless, but it is in fact just as trust-minimized as bitcoin is.
> If you're willing to download a checkpoint from a trusted, centralized entity, why even bother with decentralization? Why not just have the US Government sign blocks?
So many false assumptions in there. You know what they say about making assumptions don't you?
What really bothers me is that you just assert that what I'm talking about is broken without even attempting to understand what I'm talking about. You don't seem to care about actually having a conversation, but instead just want to win. I don't appreciate that. If you want to keep talking about this, I'd like you to ask me some questions that clarify your understanding of what I'm talking about and show me you're actually trying to understand me instead of just trying to take the most attackable misunderstanding of my words and attack that. I'm getting very frustrated at you because of your willful misunderstanding, and unless you change your attitude, I'm just going to start ignoring you.
So go ahead, you want to talk about this? Ask me how I'm proposing these checkpoints work. Ask me how they're decentralized. Ask me how they're trust minimized. Instead of asserting things that aren't true based on false assumptions. I'll give you one more chance.
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#284Earlier quoted context omitted.
> Yes, and when they come back, they should update their software - which should have a hardcoded checkpoint in it from much more recently. That's the solution that you're repeatedly ignoring. Setting aside for a moment the fact that users cannot be relied upon to update software, do you understand how this isn't a decentralized, trustless solution? If you're willing to download a checkpoint from a trusted, centraliz…
> users cannot be relied upon to update software Their software can be relied on to tell them when its too out of date to be used. > this isn't a decentralized, trustless solution It is in fact decentralized. Nothing is trustless, but it is in fact just as trust-minimized as bitcoin is. > If you're willing to download a checkpoint from a trusted, centralized entity, why even bother with decentralization? Why not just…
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#285Earlier quoted context omitted.
> The problem proof-of-work solves is double spending, That doesn't seem to be my understanding. In my mind the problem proof of work solves is how quickly new blocks can be generated, thus limiting the supply of new blocks and giving an incentive to move the head pointer to an agreed upon next value (by granting coins to the miner who was able to compute the value). Double spend is solved due to the single branch tr…
In my mind the problem proof of work solves is how quickly new blocks can be generated [...] There is actually no real point of rate limiting the creation of new blocks, why not generate them as fast as possible and therefore execute transactions as quickly as possible? This certainly needs some more thought, you do not want miners spamming empty blocks or blocks full of their own fake transactions, you can not provi…
To avoid fracturing the network and wasting significant amounts of work, the time between blocks needs to be much longer than the time it takes to propagate newly mined blocks to most of the nodes.
There are also concerns about the minimum amount of storage and bandwidth required to participate as a full node, and how that may drive increasing centralization. Storage can be mitigated somewhat with better pruning of old, spent transactions, but bandwidth is a harder problem facing any attempt to increase the core transaction rate.
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#286Earlier quoted context omitted.
> users cannot be relied upon to update software Their software can be relied on to tell them when its too out of date to be used. > this isn't a decentralized, trustless solution It is in fact decentralized. Nothing is trustless, but it is in fact just as trust-minimized as bitcoin is. > If you're willing to download a checkpoint from a trusted, centralized entity, why even bother with decentralization? Why not just…
Okay, how do the checkpoints work, and how are they decentralized?
How is it decentralized? Anyone can create an independent codebase that implements the protocol. Anyone can review the code and raise the alarm to the community if the checkpoint isn't correct. Ideally there would be a number of independent implementations of the software, each with many devs and numerous reviewers. In addition to that, the previous version of the software could be used to automatically validate that the new software contains a checkpoint that matches the longest chain as seen by that software - and again, it can raise an alarm to the user if it doesn't match, who can alert the community.
Any change in bitcoin works like this. Changes are discussed, implemented, and reviewed by hundreds or thousands of people. Users need to find the correct software in some way. Generally they would use the internet to find the right software, hopefully cross checking multiple sources. They might ask their friends what software to run. Etc. But there is no math to find the right software - each person has to use their social network (and the internet) to figure out which software is "Bitcoin". Once they download the software, it can do the rest.
The same is true for a piece of software with a hardcoded checkpoint. There is no central source for the checkpoint. Everyone who is currently part of the network can validate that the checkpoint is correct. Many people will actually do it. It would be so easy to validate that it could be automatically reviewed by people's software (unlike most other codebase changes).
So in what way would a PoS checkpoint be different than bitcoin? As I've shown above, the checkpoint itself is just another piece of the code like any other code change. The difference is that the checkpoint would be necessary to do at some regular frequency (say once a year). By contrast, you could imagine a future where the core Bitcoin software has been frozen and has not changed for years - decades maybe. And one could expect to go offline for 10 years and still be able to bring up their software without updating it.
A PoS system would be slightly different. Because of the issues around short-range and long-range revisions, people who have been offline long enough should at very least download a new checkpoint (even if the rest of the software remains the same). The new checkpoint a user downloads should be recent enough that the chances of a short-range revision attack (eg a history attack) with sufficient accumulated minting power (or whatever your preferred alternative term is for "accumulated difficulty") is sufficiently unlikely. One new checkpoint per year would ensure that a user downloading the latest checkpoint is downloading a checkpoint no farther in the past than 1 year. This would require that a sufficient number of devs and reviewers get together to review and validate the released checkpoint to make the release sufficiently decentralized. This could realistically be structured so software checks this automatically and raises an alarm to the user if the new checkpoint doesn't match or if too much time goes by without a new checkpoint being released. Millions of people could realistically participate in that - anyone that runs a full node. Even anyone that runs a light node.
Furthermore, when a user does download a checkpoint, some users are going to be careless and download some malicious checkpoint. If they do, but they have honest software, the software can ask their connections if the new checkpoint matches up with them. If it doesn't, it can again raise an alarm to the user.
For a person with an old version of the software to get a malicious checkpoint without an automatic alarm being raised, they would have to either have a virus that changed the code of the software (at which point any software PoS or PoW is vulnerable), or they would have to be eclipsed by the attacker (connected to only attacker nodes) and the attacker must also have a way to sign the release (of the checkpoint) with the authors' signatures (which the software should also automatically check) and the attacker must have accumulated enough minting power (eg in old keys bought from people who have drained those addresses already) since the software last left the chain. The attacker can't simply create a brand new chain with a different genesis block - the software would raise an alarm about that.
For a new entrant to the system, there is a higher risk, but it is no higher than with Bitcoin. The new entrant must find and install the right software somehow, on a machine that isn't compromised. This wouldn't be different for PoS.
In summary:
A. Users who have been connected to the network all along can't be tricked by any kind of history attack.
B. Users who are newly connecting to the network simply need to download the correct software, as they need to do with bitcoin.
C. Users who have been connected to the network for a time, but left for a period of time, just need to (manually) download and (automatically) verify a checkpoint.
Item C is situtation that differs most from current Bitcoin. There is some additional possibility for an attack there, but it would still be extraordinarily difficult to pull off. In Bitcoin, there is no need to download any new data, and so there is no equivalent attack vector similar to tricking the user into accepting an invalid checkpoint. However, this attack would be very difficult (eclipse, key theft), cost a lot (buying old addresses with no coins currently in them), and has a pretty limited reward potential (only the possibility of attacking returning and new entrants they can eclipse). So yes, it is a trade off. I think its a good trade off to buy higher security against a 51% attack and lower fees.
Does this make it clearer how checkpoints can be decentralized?
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#287Earlier quoted context omitted.
> "Difficulty" isn't a thing in PoS Yes it is. The more people with coins actively minting in the system, the higher the difficulty of getting chosen. Please do more research. If you really want to keep discussing this with me, read through the WHOLE of https://github.com/fresheneesz/validatedProofOfStake and show me a full attack on it. > FWIW, I'm not a PoS detractor. You could have fooled me. But it sounds like yo…
> Yes it is. The more people with coins actively minting in the system, the higher the difficulty of getting chosen. I'm well aware. But eventually a large validator will get chosen--it's not difficult to get chosen, it's rare . The fact that PoS folks call this "difficulty" does not make it so. > If you really want to keep discussing this with me, read through the WHOLE of https://github.com/fresheneesz/validatedPro…
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#288Earlier quoted context omitted.
There is no such thing as dis-trusted. Bitcoin is "trustless". There is no trust of any form.
Public keys identify wallets. Key X tries to double spend, it is detected, proof propagates across network, nodes vote to insert into the consensus ledger a public record that key X has been "dis-trusted". The network thenceforth rejects transactions from wallet identified by key X. Now key X has been dis-trusted.
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#289Earlier quoted context omitted.
Re 3), there is not anywhere near enough renewable energy to go around to phase out fossils is there? So make Bitcoin harmless you would have to postulate: - The energy could not have been transferred to reduce use of fossils - The energy could not have been stored to reduce use of fossils - Production of other, more necessary goods (batteries, aluminum, datacenters serving humanity in better ways) could not have bee…
Energy is not a fungible resource. Energy produced by hydroelectric plants in ghost cities in China is not useful for other purposes. To be clear, I'm not saying that all or even the majority of energy used to mine cryptocurrency is currently renewable. I have no idea what the current state of things is. What I'm saying is that if we're looking to solve the problem of cryptocurrencies producing carbon and other emiss…
There is not a problem with shipping hydrogen from ghost cities in China. Neither is there a problem with running datacenters that we need for other purposes than Bitcoin.
We are currently failing at combating climate change; but to have a hope of avoiding the worst case scenarios, fossils need to be replaced with renewables at an unprecedented scale. Not only current electricity use, but also energy used in transportation. It's a huge undertaking, where you need to ramp as quickly as you can in every way you can.
The train is starting to finally move now, and in a few years, investment into renewables will not be the limiting factor. The limiting factor is how quickly it is possible to construct. Since the limiting factor is not investment; every kwh spent on Bitcoin is a kwh lost to combating climate change.
Re: Cryptocurrency Blockchains Don’t Need to Be Energy Intensive
#290Earlier quoted context omitted.
Energy is not a fungible resource. Energy produced by hydroelectric plants in ghost cities in China is not useful for other purposes. To be clear, I'm not saying that all or even the majority of energy used to mine cryptocurrency is currently renewable. I have no idea what the current state of things is. What I'm saying is that if we're looking to solve the problem of cryptocurrencies producing carbon and other emiss…
I would think my three bullet points should imply that I already know that energy is not a fungible resource. But there are still better uses than Bitcoin. There is not a problem with shipping hydrogen from ghost cities in China. Neither is there a problem with running datacenters that we need for other purposes than Bitcoin. We are currently failing at combating climate change; but to have a hope of avoiding the wor…
Okay, my apologies, I did respond a bit too glibly there.
> There is not a problem with shipping hydrogen from ghost cities in China.
There is the same problem with this that exists with many energy storage solutions: often the storage creates more carbon usage and other environmental effects than simply burning fossil fuels closer to the location where the energy is needed.
> Neither is there a problem with running datacenters that we need for other purposes than Bitcoin.
There are a bunch of reasons all the FAANG data centers are near population centers, but the two ones that are most obvious to me are:
1. Internet infrastructure is near population centers, because the people in population centers are the ones the internet it intended to connect to. If you want to hook into the backbone of the internet, you have to be located near the backbone of the internet. This is necessary for latency.
2. Data centers require technical maintenance, and technical workers capable of doing that maintenance tend to live in population centers.
> We are currently failing at combating climate change; but to have a hope of avoiding the worst case scenarios, fossils need to be replaced with renewables at an unprecedented scale. Not only current electricity use, but also energy used in transportation. It's a huge undertaking, where you need to ramp as quickly as you can in every way you can.
You're preaching to the choir here.
> The train is starting to finally move now, and in a few years, investment into renewables will not be the limiting factor. The limiting factor is how quickly it is possible to construct. Since the limiting factor is not investment; every kwh spent on Bitcoin is a kwh lost to combating climate change.
This is where we disagree, I think. There's a lot of limiting factors. Even if there's massive investment into renewables, there can always be more money and more efficient use of the money you have. One of the biggest inefficiencies of renewables is that they tend to be time-bound: as you probably know, wind produces the most at night, and solar produces exclusively during the day, and neither production cycle perfectly matches with the energy usage cycle.
(As you probably know), two popular areas of exploration here are storage and changing usage:
1. Every major storage solution either doesn't work yet, or is horribly inefficient in some way. Batteries are inefficient in output/input, and have downsides in terms of metal pollutants and disposal of retired batteries even when producing the batteries isn't the limiting factor. Gravitational storage requires huge amounts of space. Thermal storage simply doesn't work at scale yet.
2. Changing usage, i.e. running networked hot water heaters when other forms of usage are low, is a promising area of development, but so far the improvements in efficiency are very modest.
A third solution which I think you're maybe underestimating, is to simply produce more energy, and use the excess production at low usage times to mine bitcoin. The profits from this can be used for a bunch of purposes, for example to reduce the cost of renewable energy to consumers (thereby increasing adoption) or to build more renewable energy.
I'll add that while nuclear energy is not technically a renewable resource, it can be part of a strategy for reducing greenhouse gas emissions, which is arguably the most important aspect of renewables. Nuclear power solves a bunch of problems that renewables don't solve, but it also has the problem of mismatch with the consumption cycle: nuclear power production isn't cyclical like solar/wind, it's not adaptable: it's extremely expensive to spin up and down generation: there have been a bunch of times in Germany where it was cheaper for nuclear power plants to pay consumers to take their excess power than to spin down generation. Bitcoin mining has the potential to power consumption for nuclear power plants as well, which could greatly decrease the cost of running nuclear power.