Satoshi never imagined industrial-scale mining

“Satoshi never imagined industrial-scale mining

As he explained, when you put incentives out there, people learn how to use those incentives for making money in ways that are nearly impossible to predict. He pointed to bitcoin as a prime example, saying its creator probably never imagined bitcoin’s incentive structure would lead to industrial-scale mining pools.

Satoshi wrote this still in 2008: 

Quote

“At first, most users would run network nodes, but as the network grows beyond a certain point, it would be left more and more to specialists with server farms of specialized hardware. A server farm would 
only need to have one node on the network and the rest of the LAN connects with that one node.”

https://bitcointalk.org/index.php?topic=1458.msg16906#msg16906

ribuck’s description is spot on.

Pool operators can modify their getwork to take one additional parameter, the address to send your share to.

The easy way for the pool operator would be to wait until the next block is found and divy it up proportionally as:
user’s near-hits/total near-hits from everyone

That would be easier and safer to start up.  It also has the advantage that multiple hits from the same user can be combined into one transaction.  A lot of your hits will usually be from the same people.

The instant gratification way would be to pay a fixed amount for each near-hit immediately, and the operator takes the risk from randomness of having more or less near-hits before a block is found. 

Either way, the user who submits the hit that solves the block should get an extra amount off the top, like 10 BTC.

New users wouldn’t really even need the Bitcoin software.  They could download a miner, create an account on mtgox or mybitcoin, enter their deposit address into the miner and point it at anyone’s pool server.  When the miner says it found something, a while later a few coins show up in their account.

Miner writers better make sure they never false-positive near-hits.  Users will depend on that to check if the pool operator is cheating them.  If the miner wrongly says it found something, users will look in their account, not find anything, and get mad at the pool operator.

https://bitcointalk.org/index.php?topic=1976.msg25119#msg25119

saying its creator probably never imagined bitcoin’s incentive structure would lead to industrial-scale mining pools.

I kinda feel  the same. 

Hashrate Distribution…

Sometimes it scars me thinking if they plan for a 51% attack. All you need is a syndicating in between few big mining farms. I am not sure if is is possible practically.

Actually, Satoshi did predict industrial scale mining he failed predicting pools because he was unaware of the amount of pressure toward pooling in his implementation of PoW based on the worst principle ever, winner-takes-all.

Industrial scale mining farms are not the threat, mining pools are. Satoshi disappeared in the same time that users were starting to complain about their variance and slush was kick starting his pool. He made just one comment (that op has quoted) regarding this issue which is very disappointing by the way as he is just talking about simple technical issues and avoids more sophisticated strategic implications of the proposal. He disappeared few days later, forever.

So, if it is about whether satoshi was kind of a god and predicted everything or not, the answer would be a big NO, Satoshi Nakamoto was an ordinary human being who made a lot of big and small mistakes designing and implementing bitcoin and this is why we should improve it instead of  being stuck with a legend. 

Cyberspace does not belong to legends (neither original ones like Satoshi nor the fake ones like Vitalik Buterin) it belongs to hard working, committed  mathematicians, developers, hackers  and advocates all over the planet. 

But, for the record, failing to predict the industrial scale mining is not in his failure list anyway.

Sometimes it scars me thinking if they plan for a 51% attack. All you need is a syndicating in between few big mining farms. I am not sure if is is possible practically.

I doubt they would plan a 51%, because the price would drop and they would lose their investment. Those pools are interested in bitcoin success.

Industrial scale mining farms are not the threat, mining pools are. Satoshi disappeared in the same time that users were starting to complain about their variance and slush was kick starting his pool. He made just one comment (that op has quoted) regarding this issue which is very disappointing by the way as he is just talking about simple technical issues and avoids more sophisticated strategic implications of the proposal. He disappeared few days later, forever.

So, if it is about whether satoshi was kind of a god and predicted everything or not, the answer would be a big NO, Satoshi Nakamoto was an ordinary human being who made a lot of big and small mistakes designing and implementing bitcoin and this is why we should improve it instead of  being stuck with a legend. 

Satoshi was a genius, because he knew when to disappear.
This is not satoshi’s blockchain. Satoshi’s existence would make bitcoin centralized on him.

As ethereum is centralized on vitalik Buterin. Vitalik’s blockchain.

The solution to those design issues with btc will come from the community. There are some proposals and one day there will be a solution.

Sometime ago I read something about Changing proof of work in a way that asic hardware would become less effective. I believe there are many interesting proposals out there and soon community will have a consensus about one.

Industrial scale mining farms are not the threat, mining pools are. Satoshi disappeared in the same time that users were starting to complain about their variance and slush was kick starting his pool. He made just one comment (that op has quoted) regarding this issue which is very disappointing by the way as he is just talking about simple technical issues and avoids more sophisticated strategic implications of the proposal. He disappeared few days later, forever.

So, if it is about whether satoshi was kind of a god and predicted everything or not, the answer would be a big NO, Satoshi Nakamoto was an ordinary human being who made a lot of big and small mistakes designing and implementing bitcoin and this is why we should improve it instead of  being stuck with a legend. 

The solution to those design issues with btc will come from the community. There are some proposals and one day there will be a solution.

The 51% attack fear mongering by giant mining corporations is unfounded.  if this happened the miners would take a massive financial hit and bitcoin would crash.  It would make no sense to do it  the negatives far outweigh the positives.  The only way is if some mad man, similar to the joker, just wants to watch the world burn and doesn’t care about the money.

How about those forces who do not want the banking system to be decentralized? They don’t care about value of bitcoin coz they have the printed money. 

I doubt they would plan a 51%, because the price would drop and they would lose their investment. Those pools are interested in bitcoin success. This logic make sense.

Cyberspace does not belong to legends 

For context, Slush Pool emerged in November 2010. It was an independent project, but created within the community.
I would say that the problem is when legends center the whole decision-making process. But Bitcoin always had several people contributing in a decentralized way, several projects arose and many thanks to the economic incentives.

The great advantage of truly decentralized projects is that no matter how much a legend is admired, because it has no coercive power to forbid parallel projects or forks, the project can continue independent of its will.

Ie financial incentives hinder future predictions.

It’s totally different from what happens with some projects like EOS or TRON.”

Fixed vulnerability explanation: Why the signature cache is a DoS protection.

Fixed vulnerability explanation: Why the signature cache is a DoS protection.

January 14, 2013, 02:23:44 PM

I read a transcript of  #bitcoin-dev (http://bitcoinstats.com/irc/bitcoin-dev/logs/2012/11/09) where jgarzik and, Sipa debated whether the signature cache was a performance optimization or a DoS protection and why.
The sig cache is both of them. But the sig cache was included before performance was a problem because of the DoS protection requirement.

The following attack against versions prior 0.6.3, e-mailed to Gavin on May-2012, explains it:

1. The attacker creates a transaction that pays 0.01 BTC to 100 different addresses. (The attacker must have 1 BTC). To avoid paying fees, the attacker can divide the transaction into slices, each one below 1 kilobyte.The attacker broadcasts the transactions and waits for confirmation.

2. Afterwards the attacker builds transactions grabbing 100 of his own prevouts and adding an additional prevout that he does not own.  This prevout is a coinbase that has not been matured (it does not need to have a valid signature, since the method exit point is before the script verification). To create many fake transactions, the order of the first 100 inputs is randomized. 

3. The attacker sends these transactions to the victim. The transaction size would be around 18 Kbytes. The transaction would take around 0.36 seconds to arrive (with a 50 Kbytes/sec connection).

4. The victim’s client app will go with the transaction straight through ConnectInputs() and successfully connect the first 100, and then fail to connect the last. The time required for this check in an average PC is approximately 100 * 4 msec = 400 msec  (an estimation). Then the attacker can hang the vitims app by sending these fake transactions at a rate of around 3 per second. The number of inputs used for the attack is arbitrary (can be as low as 10, giving 10! unique possible transactions).

Note that if the connection bandwidth is higher, then the attack is stronger. If the victim’s CPU is slower, then also the attack also get stronger.

I proposed the solution of a signature cache to Gavin at that time. It turned out that Satoshi himself had thought about adding the sig cache, but I think it was mainly for performance reasons.