| ## Spread the Power
## Joel Sutton <>
Distributed computing is a somewhat unusual, and in some cases probably a
questionable, pastime. But it may, in fact, be one of those cult sports
that can suddenly creep up when no one is looking and become popular.
However, the contributing members of distributed.net take their sport very
Project Bovine, or RC5, is distributed.net's response to a challenge by
the RSA to have an encrypted block of data decoded without the decryption
key. Due to the size of the key, and the encryption used, it wouldn't be
possible to find the correct key in a reasonable amount of time. Even
with that brand new Pentium Pro it could take years!
To get around this kind of problem distributed.net have designed a
distributed processing system which breaks up this huge job into bite size
chunks which can be easily processed by special client software. Since
there are thousands of distributed.net followers running a client on their
machines, the combined computing power means that the result is within
This concept raised some discussion at my work place over a number of
lunch hours, as I had been making my contribution to project Bovine for
the previous week or two.
After a little persistence, and someone pointing out that we didn't really
have a good reason to try this out, we decided that the 300 or so Pentium
PCs sitting in empty classrooms at our campus, were about to get a
workout. The DES III challenge (a similar contest to RC5 but only
scheduled to run for 3 days) was coming up and we were going to see how
much we could contribute.
Upon first inspection of the client download page you get, what can only
be described as, a sense of amazement. There is a client for just about
everything - the most exotic being for Netware, RiscOS and OS/390. After
a small debate we decided to go with the Windows CLI client. That way we
were able to install and run the client via a Netware login script.
So that was the clients sorted out, but since all of our classroom
machines are in the 10.18.*.* range of IP numbers I had to investigate the
Bovine Personal Proxy server.
In the end I chose the FreeBSD version for two reasons:
- My FreeBSD box has proven to be one of the most stable boxes in our
- 2) That box was the only non-production server already operational.
After the proxy server was up and running I configured the master copy of
the client with the correct contact details and set up email logging. I
then wrote a simple DOS batch file, which copied the client onto the local
hard disk and then modified the workstation login script to run both the
batch file and the client. All that was needed now was to boot up 300
For what seemed like hours (but really only ended up being 30 minutes) we
went around booting every classroom PC on our network.
We ran the client for about 36 hours, which allowed about 22 hours of DES
III work and 14 hours of RC5 work. My FreeBSD server performed quite well
considering that the proxy software wasn't very stable. Fortunately I was
on hand to monitor it and restart the proxy process when necessary.
During that 36 hour period we processed approximately 9087 DES blocks and
6486 RC5 blocks. Our best rate was around 850 million keys per second.
The FreeBSD server received over 2500 log emails of about 2k in length.
During the period after the DES contest we ranked 11th in the RC5
It's worth noting that the FreeBSD server is a 486 DX4-100 with 12 MB of
ram, 128Kb cache, 420Mb IDE hard drive and a 3COM 3C509 ethernet card.
The OS version is 2.2.5-RELEASE and during the contest it ran a Bovine
client, as well as pppd for my modem connection, constantly.
Unfortunately we did not find the winning key but it was a great learning
experience. My only regret is not having enough time to set up the lab
full of Power Macintosh computers to join the effort. Of course, without
help from Alan & Marten it never could have happened. Thanks chaps.
Who knows? Maybe next holidays we can get our other campuses on our side
and triple our computing power!
Return to Issue #2