[hashcash] Re: freeBSD 5.3 compile problems

  • From: "Eric S. Johansson" <esj@xxxxxxxxxx>
  • To: hashcash@xxxxxxxxxxxxx
  • Date: Wed, 12 Jan 2005 07:47:35 -0500

Jonathan Morton wrote:

Eric mentioned the clustering question some time ago, and I thought up a basic protocol which could distribute the work among ordinary desktop PCs (without clustering software). I think I even managed to make it DoS resistant, in that performance would never get worse than if the PCs remained standalone.

All you need to do is broadcast a request packet every minute when you have work to do, while working on it yourself. Any PCs that hear it can choose to help. Requests that are not refreshed for more than 5 minutes are cancelled. Each PC *always* works on it's own requests in preference to others', but may then work on other requests in random order. Once a solution is found by any PC, it is also broadcast, being a signal for all PCs who hear it to cancel that request.

if you expand this to the ability for any listener to work on multiple requests, then you can also handle multiple core machines (SMP, hyper threading, etc.).


Jonathan, if I remember correctly, you are thinking of making this protocol analogous to the key space search techniques used by the distributed computing folks searching for symmetrical encryption keys?

in case anyone cares, I call an environment using this technique "captive zombies". It's also a solution to the very large stamp generation problem for high-volume sites such as enterprises with a camram style gateway. This technique with differential pricing techniques I've implemented, two-minute stamps become a non problem very quickly.

---eric


-- http://www.salon.com/books/review/2004/12/18/heloise/index.html

The basis of Abelard's philosophy, which he taught to Heloise, was
that logic had to be applied to religion in order to arrive at the
truth.

Other related posts: