Bitcoin Forum
May 30, 2024, 07:55:52 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Better ways to earn Bitcoins than mining  (Read 1384 times)
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 03:25:36 PM
Last edit: April 18, 2013, 04:18:11 PM by indyjo
 #1

Hi everybody!

I'm not entirely new to the world of Bitcoin (bought some in 2011), but I'm new to this forum and I wanted to share an idea I had.

Back in 2011, when everybody was mining on their GPUs, I was fascinated by the idea of having my computer work for money. Sadly I realized that the expected returns of mining would be so negligible that I gave up on it.

Most of you will probably agree that Bitcoin mining will never be the type of "work" that can feed the masses. Just like in the real world, only a few people are miners. But that doesn't make the idea of donating your computing/networking/whatever resources to some crowdsourcing mechanism in exchange for micro-payment invalid.

Here is a couple of services that your computer could provide to others in an automated, peer-to-peer fashion for a couple of 'toshis:
  • Perform scientific calculations, simulations, SETI@home-like challenges.
  • Compile source code.
  • Render images for graphics artists.
  • Encode videos.

There are more possibilities, some exotic (providing internet proxying/tunneling/anonymity), some illegal (sending spam, DDOSing web sites, brute-force crypto attacks). Some might be more economically valuable than others. Some might suffer from bandwidth constraints, others from not being able to be carried out reliably. Lots of questions that would have to be discussed from case to case.

My idea is to create some kind of computing-service-for-Bitcoin exchange where computers can go and offer their resources for some price, and other computers ask for some service at some price. Just like in a stock exchange, but in a fully automated fashion.

If you want to earn some money or need an alternative to mining coins, there it is. If you need lots of computing power for a short amount of time, there you can buy it. To give you an idea: If you need the power of the whole bitcoin mining community for about 10 minutes, you might be able to just buy it: for a little more than 25BTC!

My questions are:
  • Has this been discussed before (and if yes, what are the relevant keywords?)
  • Has anyone even started to write some kind of service-for-bitcoin software?
  • Is anyone interested in helping me write a proof-of-concept implementation?

Developing BitWrk - make your hardware work for BTC.
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 04:54:21 PM
 #2

By the way, I should add that I am a software developer so I am considering starting a project, but usually there are better options around already.

Developing BitWrk - make your hardware work for BTC.
Cobrabee
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 18, 2013, 04:59:19 PM
 #3

That is an excellent idea, and if it pays better than 25 - 30 cents (USD) a block, then I'm all for it.  I definitely feel better about contributing to blocks, than doing shady stuff that is disruptive to consumers (SPAM. DDoS, etc.).  This feels right, so if you find the answer, please do PM me!  Smiley
madamamialin
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
April 18, 2013, 05:02:04 PM
 #4

It is actually a good idea to put the computer power into good use. I would like to see something like this implement in the near future.
bradford
Newbie
*
Offline Offline

Activity: 12
Merit: 0



View Profile
April 18, 2013, 05:08:14 PM
 #5

Like a mechanical turk/ work marketplace that pays for work in Bitcoin?

It's interesting to think about this, given the fact that the computer work (SHA256) used to mine bitcoin performs much better on GPU, FPGA, and ASIC than with CPU implementations. No reason that other computers should get left behind in the process.
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 05:19:40 PM
 #6

@Cobrabrr: just to clarify, I wasn't suggesting actually doing the illegal stuff. That's what botnets do. They use a large workforce, too - they just don't pay their workers as well...

Anyway, I think Bitcoin as a whole would profit a lot - people with money and a desire to do some large-scale computation work would bring a whole new dimension into the business. It'll be interesting to see if there is a "killer application" for this kind of business.

One application (besides the ones I listed already) could be, ironically, Bitcoin mining: relatively low bandwidth requirements, relatively high computing requirements and a relatively clear incentive: Want your own block (to include some exotic kind of transaction, maybe)? Buy it!

Developing BitWrk - make your hardware work for BTC.
Cobrabee
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
April 18, 2013, 05:43:55 PM
 #7

@Cobrabrr: just to clarify, I wasn't suggesting actually doing the illegal stuff. That's what botnets do. They use a large workforce, too - they just don't pay their workers as well...

I understand you weren't suggesting becoming part of a botnet...  I was just saying I feel better about mining than contributing to that activity, even if it did pay better.

Please continue to update us with your ideas- there's nothing better than a new great idea to harness the power that we're all wielding as a collective community!
Signus
Newbie
*
Offline Offline

Activity: 28
Merit: 0



View Profile
April 18, 2013, 06:27:14 PM
 #8

That would be fairly tricky to implement, but an interesting idea. I've got a lot of HPC machines I'm developing/building, and the idea of getting paid to let someone run computations on them is excellent.

How would you design security protocols for this?

How might you allow for ANY kind of job? Jobs like video encoding or code compiling involve their own special compilers or interpreters, which not every machine will have installed. You would need to either ensure these dependencies on the machine or with the client. Allowing specific jobs is very tricky, but allowing nearly any kind of job is essentially a security risk.

A fairly good idea I think. How much Software Development experience do you have?
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 07:15:04 PM
 #9

I'm guessing we could get away with a very simple system for proof of concept. So no generic computation, just a couple of well-known tasks. The set of well-known tasks can still grow over time. For starters, one or two implemented tasks and an experimental exchange server should suffice.

I didn't think very hard about security yet and I am not quite sure what the actual risks are. There may be fraud on both sides of the deal, so a trusted exchange system should provide some kind of reputation mechanism.

The buyer should provide a checksum of the input data. The seller (of work) should provide some sort of proof of work. The buyer should then provide some proof of payment (which would be easy when using bitcoins). If there is a dispute, the exchange (or the community) must be able verify the facts and even repeat the computation.

To make things safer, work should be sold in very small units, so the incentive to cheat is smaller, and the incentive to build a stable "business relationship" between buyers and sellers is bigger.

There is no privacy for the tasks I suggested. Any worker can see the data.

Quote
A fairly good idea I think. How much Software Development experience do you have?
I have a university degree in CS and have been working in the industry for six years now. Have been doing mostly C++ and Java application development. I don't have a lot of experience with web development, though. More small-scale client-server systems.

Developing BitWrk - make your hardware work for BTC.
Signus
Newbie
*
Offline Offline

Activity: 28
Merit: 0



View Profile
April 18, 2013, 07:52:21 PM
 #10

Quote
I didn't think very hard about security yet and I am not quite sure what the actual risks are. There may be fraud on both sides of the deal, so a trusted exchange system should provide some kind of reputation mechanism.

There are many opportunities for risk. Entering a checksum would be a good way to do so. Granted many guys would figure out a way to generate or replicate the checksum fairly quickly. So implement a three way handshake, maybe a three way checksum or hash for the user given the type of work.

Quote
There is no privacy for the tasks I suggested. Any worker can see the data.

I think for most jobs they should be able to see who they're doing work for, but if there are jobs that have any amount of mathematical/scientific research I think not. Unless they agree to specific terms. Since most of these kind of computations are educationally or economically based.

Quote
I have a university degree in CS and have been working in the industry for six years now. Have been doing mostly C++ and Java application development. I don't have a lot of experience with web development, though. More small-scale client-server systems.

Nice. I'm not much of a web developer. More of a security scripter. Although I specialize more in hardware. Currently working on my Master's in EE/CS at Uni.
Doomsby
Newbie
*
Offline Offline

Activity: 31
Merit: 0



View Profile
April 18, 2013, 08:01:27 PM
 #11

I like the idea of this, it could definitely lead to some really interesting possibilities in the future. Imagine the computing power of the entire network at your fingertips, especially with the introduction of ASIC miners I could see the network hash-rate going up 100x easily within a year or two (now I am scared).
Kruncha
Sr. Member
****
Offline Offline

Activity: 644
Merit: 250



View Profile
April 18, 2013, 08:11:32 PM
 #12

Getting paid in bitcoins to do protein folding or something like it, that benefits humankind, would be awesome.

I'd be up for that Smiley
Saka
Newbie
*
Offline Offline

Activity: 18
Merit: 0


View Profile
April 18, 2013, 08:24:14 PM
 #13

I have to admit, I like the idea of putting computing power towards something else other than struggling to hash a number that meets a certain format.

There are some pretty useful applications out there for large amounts of computing power like you mention... i.e., folding at home, etc. I think being able to direct that computing power towards applications that benefit humanity is a great idea.

The tough part is implementing it.
nebulus
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500


... it only gets better...


View Profile
April 18, 2013, 08:28:01 PM
 #14

Good luck!

indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 08:46:59 PM
 #15

FYI: I just re-submitted this thread in the "Project Development" forum: https://bitcointalk.org/index.php?topic=179948.0
Thanks everybody for your input!

Developing BitWrk - make your hardware work for BTC.
Kluge
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1015



View Profile
April 18, 2013, 08:52:19 PM
 #16

IIRC, this was part of Pirate's GPUPower (name right?) scheme.
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
April 18, 2013, 09:35:38 PM
 #17

@Kluge: That's probably GPUMAX: https://bitcointalk.org/index.php?topic=55819.0
Seems like it was quite a fraud: http://allthingsbitcoin.org/2012/09/13/pool-operators-please-ban-block-gpumax-getworkproxy-access-to-your-pool/
Thanks for the info!

Developing BitWrk - make your hardware work for BTC.
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
July 23, 2013, 05:17:11 PM
 #18

Just to notify everybody that this hasn't been forgotten. I've been busy writing a proof of concept implementation during the last few weeks.

It is called BitWrk. If you're curious, you can try it out here:

http://bitwrk.appspot.com/bid

This is meant to work like a stock exchange: computation tasks for money. No user registration will be required: Your Bitcoin address is enough. All actions are secured by digital signatures generated using the Bitcoin client itself (or the mechanisms it suggests). Further ideas include a reputation system and a trusted verification service to make fraud schemes unattractive.

By posting this at such an early stage, I am risking a lot of negative feedback. I am asking for your comment and I am prepared for criticism. But beware:
  • There is no pretty user interface. It is meant more as an API for software that is more user-friendly.
  • All participants start out with BTC 1.0 as pocket money per address, but this is purely virtual: There is no way to get money into or out of BitWrk yet  Wink
  • There is no implementation of software to actually dispatch or perform computation tasks yet Wink
  • You need to have a lot of imagination to fill in the missing parts in your head.

I assume it is more efficient to answer specific questions than to explain everything in advance. So, please, try out the service. Enter whatever weird data you imagine. Try to make the server explode. DDoS it. And please give feedback when you succeed!


Developing BitWrk - make your hardware work for BTC.
2048-bit
Newbie
*
Offline Offline

Activity: 42
Merit: 0



View Profile
July 23, 2013, 11:04:10 PM
 #19

I tried it and got this message:
Code:
Could not validate signature: illegal base64 data at input byte 7
using these parameters:  
Code:
article=fnord&type=buy&price=mBTC1.00&address=1Bp712xwApRdgMbomGrjJYqQr9K2pDdcD&nonce=a3b60c31b7501f10235de761491c930f
indyjo (OP)
Member
**
Offline Offline

Activity: 74
Merit: 10


Developer of BitWrk


View Profile WWW
July 24, 2013, 06:46:35 AM
 #20

Hi 2048-bit,
Thanks for trying it out!
The idea is to take that message, copy&paste it into the Bitcoin client's Sign Message dialog, and then copy&paste the resulting signature back into the field on the BitWrk page.

E.g., if I would like to buy 1 unit of foobar for mBTC 4.2 using my address 13mgtNQiU7gCWpfmypGfijyX9jzqpPr6co as identification, BitWrk would ask me to sign the following message (there is a one-time nonce included that ensures that such a message can't be replayed.:
Quote
article=foobar&type=buy&price=mBTC4.2&address=13mgtNQiU7gCWpfmypGfijyX9jzqpPr6co&nonce=97ee197658056a993ce190d1d5ccc694

If I paste this message into Bitcoin, I get the following signature:
Quote
IAt0A2Sbt5wa4AHfyYl++US09gfmJERDdzRELqQ1tpF9Aj/kUfkPrZQr3OfQ+U4U8AJ8nOeovwpsiewJgUZEedw=

This is so bid's can't be faked by someone. It is always provable that the author of the bid has the private key corresponding to the Bitcoin address.

Developing BitWrk - make your hardware work for BTC.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!