Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: s00pafly on May 16, 2011, 08:14:12 PM



Title: Why don't we use the computing power for something useful?
Post by: s00pafly on May 16, 2011, 08:14:12 PM
From my point of understanding mining does not fulfill any particular purpose, it only exists to give bitcoins a value. I was thinking wouldn't it be possible to do real life applications, like boinc projects (seti@home etc.), with the computing power provided by the bitcoin network.
The difficulty would then be more like a probability to generate a new block, when you processed a certain amount of data.
Of course this would include some major changes in the protocol but since the network is already pretty big and growing, there lies a huge potential.
Universities or other facilities that like their data being crunched, would be more than happy if they could design applications for such a powerful network. And we (the miners) would do something better with our hardware than just heating the room to get coins.
Maybe Bitcoin could help cure cancer.


Title: Re: Why don't we use the computing power for something useful?
Post by: SgtSpike on May 16, 2011, 08:16:40 PM
From my point of understanding mining does not fulfill any particular purpose, it only exists to give bitcoins a value. I was thinking wouldn't it be possible to do real life applications, like boinc projects (seti@home etc.), with the computing power provided by the bitcoin network.
The difficulty would then be more like a probability to generate a new block, when you processed a certain amount of data.
Of course this would include some major changes in the protocol but since the network is already pretty big and growing, there lies a huge potential.
Universities or other facilities that like their data being crunched, would be more than happy if they could design applications for such a powerful network. And we (the miners) would do something better with our hardware than just heating the room to get coins.
Maybe Bitcoin could help cure cancer.
The computing power pointed towards doing "nothing useful" helps secure the network by forcing an attacker to use more computing power to crack it.  If we integrated some other software into it, it could prove to decrease the security of the network.


Title: Re: Why don't we use the computing power for something useful?
Post by: BitLex on May 16, 2011, 08:32:42 PM
..
And we (the miners) would do something better with our hardware than just heating the room to get coins.
...
we (the miners) don't heat our rooms to "get coins",
we (the miners) make it possible to transfer coins,
that we're getting coins for doing it is just a nice side-effect (but for most people the only reason to do it).

up to you if you think trying to help cure some diseases is better or worse than creating a free money system (free like free of control).
pro money-system is, that you can make profit of it,
not sure about any pros of folding, besides heating rooms of course. ;D


Title: Re: Why don't we use the computing power for something useful?
Post by: s00pafly on May 16, 2011, 09:00:36 PM
I didn't mean to integrate some other software, i was just hoping that it would be possible to calculate something else than generate a random number and look if it's below a certain value. But if the security of the network depends on that, i think this pretty much ends my glorious thoughts.

I think it is by far better to cure some diseases than to create a free money system, but why not go for both?


Title: Re: Why don't we use the computing power for something useful?
Post by: nereer on May 16, 2011, 09:46:24 PM
I think it is by far better to cure some diseases than to create a free money system, but why not go for both?

Agreed. Which is why I spent a lot of time thinking about this.

Apart from the answers above which are valid, I would add that even if it were possible to compute something beneficial (proteome folding etc.) while keeping the same level of security, you would still be left with the following problem: currencies that are based on a commodity that has an independent value (or an intrinsic value) are more volatile because the price may fluctuate based on the demand for this commodity.

A good example is silver, it was once used as the de facto world currency - just look at the name of money in various languages: French: 'argent', Irish 'airgead' etc. - but it would be a bad idea to use it as a currency now because industrial demand, which has been rising for silver in recent years due to usage in high-end technology and medicine, fluctuates over time. The central bank has less ability (minimal at the best of times) to control inflation etc.

In the bitcoin situation, what if you decided find find a cure for cancer? What if cancer were cured? What would you do then? Replace the 'project' arbitrarily? Who would decide, and how would you keep them impartial? How would this affect the bitcoin market?

I've just thought of another example that I can't figure out. Why not just find large primes? You certainly wouldn't run out of work so it will certainly last a while, and you would think that it would be relatively demand-neutral. Any thoughts?



Title: Re: Why don't we use the computing power for something useful?
Post by: grue on May 16, 2011, 10:00:20 PM
I didn't mean to integrate some other software, i was just hoping that it would be possible to calculate something else than generate a random number and look if it's below a certain value. But if the security of the network depends on that, i think this pretty much ends my glorious thoughts.

I think it is by far better to cure some diseases than to create a free money system, but why not go for both?

because your idea would have to rely on a central authority.


Title: Re: Why don't we use the computing power for something useful?
Post by: anisoptera on May 16, 2011, 11:28:02 PM
I've just thought of another example that I can't figure out. Why not just find large primes? You certainly wouldn't run out of work so it will certainly last a while, and you would think that it would be relatively demand-neutral. Any thoughts?



Much like folding proteins, verifying that a number is prime is symmetrical. The hard part of finding prime numbers is factoring them to find out if they're prime or not. It isn't any easier for you to verify that the number I say is prime, is prime, than it is for me to find out in the first place.

It takes trillions of attempts to find a magic number that will cause the block hash to have X leading 0 bits in it, but you only have to hash the block once to verify that.


Title: Re: Why don't we use the computing power for something useful?
Post by: BitLex on May 16, 2011, 11:57:12 PM
I think it is by far better to cure some diseases than to create a free money system,
thing is, you are not curing any diseases, you're just trying to and it's likely that you'll never have any success and will instead only waste energy,
we (the miners), on the other hand, are already successful, it's alive, the free money system exists and works for anyone, because of our work.


Title: Re: Why don't we use the computing power for something useful?
Post by: 1bitc0inplz on May 17, 2011, 02:26:21 AM
From my point of understanding mining does not fulfill any particular purpose, it only exists to give bitcoins a value...

That is not entirely correct. Mining finds blocks. That is all mining does.

For now, the person (or people) to find a block get a reward. Over time that reward will decrease until it eventually goes away. However, finding a block also allows transactions to be processed.

Without miners blocks wouldn't be completed, and without a completed block you'd never be able to send bitcoins to anyone.


Title: Re: Why don't we use the computing power for something useful?
Post by: NghtRppr on May 17, 2011, 02:33:59 AM
I think it is by far better to cure some diseases than to create a free money system, but why not go for both?

In the short term, perhaps, but a free money system can affect everyone, sick or healthy. We'll each also be in a better position to help other people when we are all economically free.


Title: Re: Why don't we use the computing power for something useful?
Post by: FreeMoney on May 17, 2011, 02:43:55 AM
If there is some way to solve another problem while you look for blocks then great do it and tell others how.

If there isn't or you can't figure out how then choose a problem to work on.

Don't go to the pants forum and tell them they should make socks.


Title: Re: Why don't we use the computing power for something useful?
Post by: jamesb on May 18, 2011, 12:58:01 PM
One thing you can do is to not mine but you can sell your computer power for bitcoins. I've already think about something like this, like a grid. You could do a pool which don't solve blocks but instead solve some problems that someone has paid for an answer. It may be based on the computer power used. It's only an idea so my answer may be out of the subject.


Title: Re: Why don't we use the computing power for something useful?
Post by: martinderm on May 18, 2011, 05:40:30 PM
Oh no another noob :D

I've now spent several hours wrapping my head about Bitcoins and Mining.

What I find quite strange is that the complexity to find a Block is (more or less) artificially increased if the computing power of the miner-collective inreases to achive one block every 10 minutes. So the Miners do more computing without any direct benfit for the system except for a lower probability that one single entity can control more than half of the processing power. Wouldn't it be more elegant to just force them "on hold" or something like that so that they don't consume more energy than necessary?

I am sure many intelligent people have thought about that and there is a very good reason why the system works as it does. Maybe smeone cares to enlighten me?


Title: Re: Why don't we use the computing power for something useful?
Post by: Matt Corallo on May 18, 2011, 06:01:37 PM
Oh no another noob :D

I've now spent several hours wrapping my head about Bitcoins and Mining.

What I find quite strange is that the complexity to find a Block is (more or less) artificially increased if the computing power of the miner-collective inreases to achive one block every 10 minutes. So the Miners do more computing without any direct benfit for the system except for a lower probability that one single entity can control more than half of the processing power. Wouldn't it be more elegant to just force them "on hold" or something like that so that they don't consume more energy than necessary?

I am sure many intelligent people have thought about that and there is a very good reason why the system works as it does. Maybe smeone cares to enlighten me?
The problem is in the details.  Any miner who wants to make money isn't actually looking for more mining power directly (as you point out) but is instead looking to gain a greater percentage of the total mining power (which, by extension makes them want more mining power).  The problem is that as long as people want a bigger share of the power (its free money, who doesnt want it?), no one will settle for their current power, making the network keep growing.


Title: Re: Why don't we use the computing power for something useful?
Post by: MoonShadow on May 18, 2011, 06:20:05 PM
I am sure many intelligent people have thought about that and there is a very good reason why the system works as it does.
Yes, there is.
Quote
Maybe smeone cares to enlighten me?

Only you, try reading the forum, the wiki or the FAQ first.  If you still have questions, come back.


Title: Re: Why don't we use the computing power for something useful?
Post by: BitterTea on May 18, 2011, 06:32:30 PM
Let's imagine that the proof-of-work calculation, instead of being a "useless" hashing of data, was to do with folding proteins for cancer research. That sounds great in theory, but there are a few of problems with this.

1) Protein folding is just as intensive to verify as it is to compute in the first place.
2) Eventually a cure will be found for cancer and we are now back to doing "useless" work.
3) As our knowledge of the domain increases, it seems likely that some way would be found to break the system, where break means it is vulnerable to an attack that takes longer than brute force.


Title: Re: Why don't we use the computing power for something useful?
Post by: TTBit on May 18, 2011, 06:54:55 PM
because it's my computer and my power


Title: Re: Why don't we use the computing power for something useful?
Post by: opticbit on May 18, 2011, 07:30:56 PM
Some people have mentioned folding protines, and what happens when a cure is found.
What about working on a way to integrate all boinc projects into the miner and some how make the hashes with boinc work units.
I don't know enough about codeing and distributed computing and cryptograpy, but it seems like there should be someone out there smart enough to make it happen.

I realize many see the processing of transactions as the useful computation, I don't see the harm in helping other projects while were at it (other than the security of the network, so work on making it able to calculate other projects more securly), Bitcoin will be the most powerfull distributed computer in the world, utilize it to its maximum potential.  It could bring more people to support bitcoin.  Its not impossible, its complicated 


Title: Re: Why don't we use the computing power for something useful?
Post by: BitterTea on May 18, 2011, 07:33:58 PM
Some people have mentioned folding protines, and what happens when a cure is found.
What about working on a way to integrate all boinc projects into the miner and some how make the hashes with boinc work units.
I don't know enough about codeing and distributed computing and cryptograpy, but it seems like there should be someone out there smart enough to make it happen.

I realize many see the processing of transactions as the useful computation, I don't see the harm in helping other projects while were at it (other than the security of the network, so work on making it able to calculate other projects more securly), Bitcoin will be the most powerfull distributed computer in the world, utilize it to its maximum potential.  It could bring more people to support bitcoin.  Its not impossible, its complicated 

Anything worth throwing computing power at is probably not easily verifiable. The biggest benefit to the hashing method is that it is very hard to compute, but very easy to verify.


Title: Re: Why don't we use the computing power for something useful?
Post by: TTBit on May 18, 2011, 08:08:09 PM
Some people have mentioned folding protines, and what happens when a cure is found.
What about working on a way to integrate all boinc projects into the miner and some how make the hashes with boinc work units.
I don't know enough about codeing and distributed computing and cryptograpy, but it seems like there should be someone out there smart enough to make it happen.

I realize many see the processing of transactions as the useful computation, I don't see the harm in helping other projects while were at it (other than the security of the network, so work on making it able to calculate other projects more securly), Bitcoin will be the most powerfull distributed computer in the world, utilize it to its maximum potential.  It could bring more people to support bitcoin.  Its not impossible, its complicated 

Being serious here...

Maybe these other community projects should help the bitcoin network. I download the 'protine' project, but might also run hashes 10 minutes out of every hour (user setting). In this way you get paid to help out other projects.


Title: Re: Why don't we use the computing power for something useful?
Post by: Matt Corallo on May 18, 2011, 09:08:51 PM
Being serious here...

Maybe these other community projects should help the bitcoin network. I download the 'protine' project, but might also run hashes 10 minutes out of every hour (user setting). In this way you get paid to help out other projects.
You can already do that, just write a script which runs a bitcoin miner and a distributed computing project at the same time and adjusts the priority of each process every x minutes.  You should be able to cut their cpu usage down to almost nothing if there is a big enough difference in niceness.


Title: Re: Why don't we use the computing power for something useful?
Post by: ByteCoin on May 18, 2011, 09:50:31 PM
... where "break" means it is vulnerable to an attack that takes longer than brute force.

You meant the exact opposite of what you said.

Anything worth throwing computing power at is probably not easily verifiable.

Correct. A suitable problem would have to have at least the properties outlined in this post
http://forum.bitcoin.org/index.php?topic=203.msg3669#msg3669

ByteCoin


Title: Re: Why don't we use the computing power for something useful?
Post by: gigitrix on May 19, 2011, 12:38:07 AM
tl;dr: We would, if we could, but we can't.


Title: Re: Why don't we use the computing power for something useful?
Post by: jo.bo.co on May 21, 2011, 03:08:47 AM
i posted this in a different thread, but it fits better here.

Since the bitcoin network is considered secure by the userbase right now (and was considered secure a year ago, too), is there a security need to constantly increase the difficulty? Is the increasing difficulty superfluous from a SECURITY standpoint?

Because if it is, could the bitcoin client not be forced to work out a certain number of scientific (or otherwise useful) calculations for every block generated? I'm not a computer scientist, but here's my rough idea: Basically, the server would only accept blocks if your client sends them with a certain numbers of valid keys. Those keys would be distributed to your client by a server upon the completion of a set number of completed tasks from a "useful" project like seti or protein folding by your client.

This way, the difficulty of actually creating bitcoins could be constant, and the architecture for that would not have to be seriously modified. As time went on, and more people set up mining rigs, the number of required keys would adjust, raising the ratio of GPU time spent on scientific calculations to bitcoin calculations and effectively raising the difficulty.

I feel this would be great from a scientific standpoint- but also from a PR standpoint. Bitcoin would have few detractors if it were everything it is AS WELL AS the largest source of computer power available for scientific calculations.

The transaction fees that will exist in the future could even be avoided if laboratories were charged a small fee (much smaller than what they would otherwise pay) for use of the computing time.


Title: Re: Why don't we use the computing power for something useful?
Post by: BitterTea on May 21, 2011, 03:18:31 AM
The difficulty increases naturally with the advance of technology. That technology can be used to secure the network or to attack it.


Title: Re: Why don't we use the computing power for something useful?
Post by: FreeMoney on May 21, 2011, 04:17:24 AM
You can't know how much difficulty is needed. It isn't like potential attackers are publishing how much power they could put together.


Title: Re: Why don't we use the computing power for something useful?
Post by: martinderm on May 21, 2011, 05:56:34 AM
I actually like the idea of throwing in some folding. But the main point of Bitcoin is that there is no central authority, so who should decide what project is added. On the other hand, someone had to decide that there are 50 coins reward for a completed block. But the other problems of "useful work" described here still remain. I guess some energy waste is the price to pay for a decentraliced secure digital currency.

Edit: True, its not a waste! see next post.


Title: Re: Why don't we use the computing power for something useful?
Post by: BitterTea on May 21, 2011, 08:10:37 AM
It's not waste, it's securing the network. Is computing for SETI a waste? What about any other project that doesn't render something useful?


Title: Re: Why don't we use the computing power for something useful?
Post by: benjamindees on May 21, 2011, 08:20:40 AM
We are using our computing power for something useful.

We're automating an industry that wastes over 1.3 trillion dollars a year (http://openintelligence.amplify.com/2011/04/04/fund-industry-%E2%80%98overpaid-by-1300bn%E2%80%99/).


Title: Re: Why don't we use the computing power for something useful?
Post by: kjj on May 21, 2011, 08:39:10 AM
Ok.  When someone looks at a block, they can tell exactly how much work was done, and they can verify which work was done.  No other scheme has that, and no other scheme will work.


Title: Re: Why don't we use the computing power for something useful?
Post by: martinderm on May 21, 2011, 08:48:47 AM
...they can tell exactly how much work was done...

Thats not entirely true, since the work required to find a valid hash is random, the amount of work done can only be guesed.
I agree with you on the rest though. After thinking about the system for a while whan realizes that there is almost no alternative...


Title: Re: Why don't we use the computing power for something useful?
Post by: kjj on May 21, 2011, 09:04:58 AM
...they can tell exactly how much work was done...

Thats not entirely true, since the work required to find a valid hash is random, the amount of work done can only be guesed.
I agree with you on the rest though. After thinking about the system for a while whan realizes that there is almost no alternative...

Meh.  They can tell how much work it would take to duplicate the result with any given probability.  The difference between that and the actual amount of work done, over time, becomes a philosophical issue.  In the real world, they are essentially the same.