This time, the challenge
to find the key for the 64-bit encryption is 256 times harder than the 56-bit
challenge — 34 quadrillion keys compared to 72 quadrillion keys. Although there
are over 600,000 users running Distributed.net's Bovine software for the RC5-64
project, the project has been running for more than 1000 days and they have
yet to find the secret key. Until this day comes, users can see RC5-64's progress
daily; it takes between 3 minutes and 12 hours for most computers to process
the data blocks. One need not be online but once every few days so the computer
can connect to Distributed.net's proxy keyservers and obtain more data. If the
computer doesn't have access to the Internet at the moment but is done processing
blocks, the Bovine software can start checking randomly-created blocks. Thus,
the computer¹s idle time is never wasted.
Fig. 2: RC5-64's architecture
Distributed.net has created
an interesting, efficient architecture for RC5-64 (see figure 2), the most notable aspect being
that each block is sent out only once to a unique user. RC5-64 has a pyramid
architecture consisting of keyservers and clients. (distributed.net faq-o-matic) The master keyserver
is at the top of the pyramid and has the most important job: it keeps track
of the keyblocks, or the data that needs to be processed. Thus, the master keyserver
distributes the keyblocks as needed and doesn't send out keyblocks that have
already been checked.
Under the master keyserver
are the main Bovine proxy keyservers. These keyservers are mediators between
the master keyserver and the clients. The proxy keyservers request large blocks
of keys — superblocks — from the master keyserver. The superblocks are broken
down by the proxies and sent to the clients. The clients check the blocks and
return them to the proxies, which then return them to the master keyserver.
An analogy that might clarify
the process is a person going to their local library to get a book. The book
isn't in, so he requests the book from the librarian. The librarian then in
turn asks a larger library or county library for the book. The larger library
will send the book to the smaller library, and the librarian will give the person
that specific book. When the person is done with the book, it is returned to
the librarian, who returns it to the bigger library.
©2000 Team DC (Thinkquest Team C007645). Hosted by ThinkQuest.