Pages:
Author

Topic: Bringing decentralization back to the Bitcoin network. - page 2. (Read 10601 times)

sr. member
Activity: 323
Merit: 251
The client can cheat if it generates the winning hash in a naive implementation by failing to transmit the winning hash to the server and just transmitting it directly like a normal Bitcoin client and taking the 50BTC for itself.
No, I don't think so.

The block being hashed includes the 50BTC transaction awarded to the generator. So a client must decide (before looking for hashes) whether it is hashing a block that will pay itself, or a block that will pay the server. It can't find a hash first, and then decide who it is for.

So there's no risk of cheating. If the client is looking for hashes that will pay itself, it's not participating in the shared mining and won't have any low-difficulty results to send back to the server either.
Theoretically, could this possibly work in another way? If miners could "steal" the generated block from the pool operator, I believe the ultimate consequence will be that pools will be forced to shrink to smaller trusted circles, thus providing far more decentralization. I may very well be wrong, but I don't see why the miner reward adress needs to be hashed in the block itself, as long as it's hashed in future blocks.

EDIT: Actually I do see a very serious problem here since the winning miner needs to be sure that anyone he relays the block to doesn't simply change the reward adress to its own.

You don't have good reading comprehension. I bolded the relevant parts for you. The miner cannot change the block's payout address.
Maybe you should try to make sure you understand what someone else is saying before you accuse them of bad reading comprehension. I know it's impossible for miners to change the adress after they mine a block with the current implementation. I was wondering if an alternative protocol in theory could make it so that they actually could change the adress afterwards without any negative side-effects, thus creating an environment where pooled mining requires trust and will be reduced to smaller circles of people.

My point is that pooled mining should be looked upon as a flaw in the protocol, not a feature. The centralization that pools create was never intended. When pooled mining was created everyone was saying "Oh cool, this reduces variance" when they should have been like "Oh fuck, this creates unnecessary centralization while adding nothing for the end users, can we patch it somehow?" I don't know if the protocol could be changed to make pooled mining heavily disincentivized, and I think you should be very conservative with protocol changes, but it's worth some thought at least.

P2Pool seem cool though, and is definitely an improvement. The problem is that it relies on other people to voluntary switch to it, which won't necessarily happen (just look at how many are unwilling to switch to a smaller pool). Pool owners are those who are most heavily incentivized to spread the idea of bitcoin mining, and their incentives certainly don't point towards P2Pool. So to truly decentralize bitcoin, we need something more.
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
You don't have good reading comprehension.

That is unnecessary.
Not at all, it is important to use care when reading anything, and to take the time to understand it, instead of giving it only the slightest cursory overview and assuming the bulk of its content.
legendary
Activity: 1680
Merit: 1035
You don't have good reading comprehension.

That is unnecessary.
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
The client can cheat if it generates the winning hash in a naive implementation by failing to transmit the winning hash to the server and just transmitting it directly like a normal Bitcoin client and taking the 50BTC for itself.
No, I don't think so.

The block being hashed includes the 50BTC transaction awarded to the generator. So a client must decide (before looking for hashes) whether it is hashing a block that will pay itself, or a block that will pay the server. It can't find a hash first, and then decide who it is for.

So there's no risk of cheating. If the client is looking for hashes that will pay itself, it's not participating in the shared mining and won't have any low-difficulty results to send back to the server either.
Theoretically, could this possibly work in another way? If miners could "steal" the generated block from the pool operator, I believe the ultimate consequence will be that pools will be forced to shrink to smaller trusted circles, thus providing far more decentralization. I may very well be wrong, but I don't see why the miner reward adress needs to be hashed in the block itself, as long as it's hashed in future blocks.

EDIT: Actually I do see a very serious problem here since the winning miner needs to be sure that anyone he relays the block to doesn't simply change the reward adress to its own.

You don't have good reading comprehension. I bolded the relevant parts for you. The miner cannot change the block's payout address.
sr. member
Activity: 323
Merit: 251
I found the thread I was talking about (thanks for the effort though, seems like my thread was few months younger).

https://bitcointalksearch.org/topic/pooledremote-mining-open-source-updated-2010-12-24-1458

Really, I believe the weakness here is the very concept of pooled mining. It wasn't intended. It's a bug, not a feature. It provides unneccessary centralization and disrupts the incentives inherent in bitcoin. The only feature is for variance-sensitive miners, but this issue would surely solve itself without pooled mining. If miners would be irrationally risk averse the profitability of bitcoin mining would rise and incentivize more risk seeking miners to join. So I think the proper solution to this problem is to make pooled mining impossible or at least severely disincentivized, if that's even possible.

A post I find interesting in the above thread is this:

The client can cheat if it generates the winning hash in a naive implementation by failing to transmit the winning hash to the server and just transmitting it directly like a normal Bitcoin client and taking the 50BTC for itself.
No, I don't think so.

The block being hashed includes the 50BTC transaction awarded to the generator. So a client must decide (before looking for hashes) whether it is hashing a block that will pay itself, or a block that will pay the server. It can't find a hash first, and then decide who it is for.

So there's no risk of cheating. If the client is looking for hashes that will pay itself, it's not participating in the shared mining and won't have any low-difficulty results to send back to the server either.
Theoretically, could this possibly work in another way? If miners could "steal" the generated block from the pool operator, I believe the ultimate consequence will be that pools will be forced to shrink to smaller trusted circles, thus providing far more decentralization. I may very well be wrong, but I don't see why the miner reward adress needs to be hashed in the block itself, as long as it's hashed in future blocks.

EDIT: Actually I do see a very serious problem here since the winning miner needs to be sure that anyone he relays the block to doesn't simply change the reward adress to its own.

But I still think the optimal solution would be to disincentivize pooled mining within the actual bitcoin protocol, I'm just not sure how. Any suggestions of how this would be possible?
legendary
Activity: 2940
Merit: 1333
I remember reading an old thread about when the idea of pooled mining came up, but I can't find it now. Could anyone please link it to me if you have it?

This?  https://bitcointalksearch.org/topic/suggestions-for-pooled-btc-mining-861

It's from August 18, 2010, and is the first mention of pooled mining I can find.

Or did you mean the idea of p2p pooled mining?
sr. member
Activity: 323
Merit: 251
I remember reading an old thread about when the idea of pooled mining came up, but I can't find it now. Could anyone please link it to me if you have it?
legendary
Activity: 1680
Merit: 1035
I loved guiminer, and was annoyed I had to switch to cgminer, too. Until I tried it. Turns out cgminer is WAY better. With the auto-overclocking, temperature monitoring, and auto fan control it has, I'm getting about 50MHash more than I did with guiminer, and my system never locks up any more, whereas guiminer with manual overclocking caused it to lock up a few times a week.

I doubt i'll see a boost that high but i'll make some time to try it out. Call me lucky, but I've NEVER had a crash/lock up while mining. Afterburner auto-sets my OC and fan control.

Guess i'll just have to deal with/remember not to close the command prompt windows in the taskbar if i switch. I wish i could minimize them to an icon in the tray. That's the only reason i really use guiminer.

More specifically, I had a 25Mhash boost per card. I have two of them. Overclocking beyond 900Mhz would cause my system to lock up, and pushing 900 was barely stable, to. With cgminer I use

-I 9 --auto-fan --auto-gpu --gpu-engine 750-950 --gpu-memclock 300

and it keeps it at 950 without problems. I used to use Sapphire Trixx to overclock mine. Cg does it within the program. It then displays all the GPU stats (temp, fan rpm, hash speed) within the window for you.
legendary
Activity: 2940
Merit: 1333
I received 0.0011 BTC earlier today at my p2pool address from this transaction:
  http://blockexplorer.com/tx/2d3006cf1e16cb9f4097894fdaa0739c66d38eb9e0356be3fd8daf63810cf375

It's been over 3 days since I found a single p2pool share, so I'm wondering why I got anything.  The amount I received was more than 20% of the average that people received from this transaction, but I've only ever found 3 or 4 shares whereas lots of people have found hundreds.

https://bitcointalksearch.org/topic/m.722975

Quote
If the amount would be less than 0.0011 bitcoins, then I rounded the amount awarded up to 0.0011.  Just because eleven is my favorite number (well, and because I like the idea of rewarding p2pool users, I think p2pool is neat).

That exactly explains what happened.  Thanks Holliday!

I did try googling for the transaction ID before posting, but nothing showed up.
legendary
Activity: 2940
Merit: 1333
I received 0.0011 BTC earlier today at my p2pool address from this transaction:
  http://blockexplorer.com/tx/2d3006cf1e16cb9f4097894fdaa0739c66d38eb9e0356be3fd8daf63810cf375

It's been over 3 days since I found a single p2pool share, so I'm wondering why I got anything.  The amount I received was more than 20% of the average that people received from this transaction, but I've only ever found 3 or 4 shares whereas lots of people have found hundreds.
member
Activity: 81
Merit: 10
I loved guiminer, and was annoyed I had to switch to cgminer, too. Until I tried it. Turns out cgminer is WAY better. With the auto-overclocking, temperature monitoring, and auto fan control it has, I'm getting about 50MHash more than I did with guiminer, and my system never locks up any more, whereas guiminer with manual overclocking caused it to lock up a few times a week.

I doubt i'll see a boost that high but i'll make some time to try it out. Call me lucky, but I've NEVER had a crash/lock up while mining. Afterburner auto-sets my OC and fan control.

Guess i'll just have to deal with/remember not to close the command prompt windows in the taskbar if i switch. I wish i could minimize them to an icon in the tray. That's the only reason i really use guiminer.
donator
Activity: 1218
Merit: 1079
Gerald Davis
Ok, dumb this down for me.  The bitcoins have to come from somewhere.  Even if Deepbit had 100% monopoly on the mining, as a hypothetical Bitcoin user, why do I care? 

Double spend coins at will.
Reverse transactions spent by "friends of deepbit"
Hold transactions hostage (refuse to process)
Require giant fees (essentially turn Bitcoin into DeepPayPalBit) on transaction
Offer to sell double spending service to others for fee.

One entity gains 51% control of hashing power they have the ability to compromise the network.
legendary
Activity: 1680
Merit: 1035
As well, guiminer is quite stable with my OC and doesn't require any extra resources. Is the switch to cgminer just to use p2pool needed?

I loved guiminer, and was annoyed I had to switch to cgminer, too. Until I tried it. Turns out cgminer is WAY better. With the auto-overclocking, temperature monitoring, and auto fan control it has, I'm getting about 50MHash more than I did with guiminer, and my system never locks up any more, whereas guiminer with manual overclocking caused it to lock up a few times a week.
full member
Activity: 154
Merit: 102
Bitcoin!
Ok, dumb this down for me.  The bitcoins have to come from somewhere.  Even if Deepbit had 100% monopoly on the mining, as a hypothetical Bitcoin user, why do I care?  
Non-technical explanation: The problem with a monopoly is that, due to the way Bitcoin works, if anyone controls 51% or more of the hashing power they can invalidate Bitcoins and control/destroy Bitcoin.
hero member
Activity: 742
Merit: 500
Ok, dumb this down for me.  The bitcoins have to come from somewhere.  Even if Deepbit had 100% monopoly on the mining, as a hypothetical Bitcoin user, why do I care?  
The fears are largely unjustified, and more a fear of anyone having 100% control than specifically Deepbit.

With a large portion of the hashing power, the network is yours.

You could only accept transactions with a fee and ignore all others. This means most transactions would be forever at 0/unconfirmed.

Even if there are still others mining, you could ignore their blocks and only build on your own.  As long as you maintain the majority of hashing power, you will be able to control the longest chain.

Transactions can never be stolen or redirected, but they can be stopped and even reversed (if they aren't too deep in the block chain).
full member
Activity: 154
Merit: 102
Bitcoin!
I don't mind making the switch to p2pool. However i'm not a dedicated 24/7/365 miner. Sometimes I mine for a few weeks or for just few hours a day. Also I'm only contributing ~300Mh/s when I do. Should i still switch?

As well, guiminer is quite stable with my OC and doesn't require any extra resources. Is the switch to cgminer just to use p2pool needed?
If I understand it correctly, p2pool pays you based on your mining rate for the last 24 hours, so if you on and off, it may not be the best.  Correct me if I'm wrong.
newbie
Activity: 55
Merit: 0
Ok, dumb this down for me.  The bitcoins have to come from somewhere.  Even if Deepbit had 100% monopoly on the mining, as a hypothetical Bitcoin user, why do I care? 
member
Activity: 81
Merit: 10
I don't mind making the switch to p2pool. However i'm not a dedicated 24/7/365 miner. Sometimes I mine for a few weeks or for just few hours a day. Also I'm only contributing ~300Mh/s when I do. Should i still switch?

As well, guiminer is quite stable with my OC and doesn't require any extra resources. Is the switch to cgminer just to use p2pool needed?
newbie
Activity: 85
Merit: 0
i believe the 51% attack will happen if deepbit controls this much.
donator
Activity: 1731
Merit: 1008
A : Don't mine at the big 3 and have a few backup pools ready.
B : Mine using P2Pool
C : Mine Solo
D : All the above

Thank You.
Pages:
Jump to: