Home » Archimedes archive » Acorn User » AU 1998-13 (Christmas).adf » Features » RC5Crack/GUI/!RC5DES/Help/RC5DES
RC5Crack/GUI/!RC5DES/Help/RC5DES
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn User » AU 1998-13 (Christmas).adf » Features |
Filename: | RC5Crack/GUI/!RC5DES/Help/RC5DES |
Read OK: | ✔ |
File size: | 33950 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
HELP( � ����, ��� D $ DIR$L L x H���/�c_�� !Root d� H����`_�n Choices DATA�� DCTI RC5/DES Client Help #Sprite 8,8 !rc5des #Indent 6 {*}Distributed.Net RC5-64\/DES Client Readme file version 2.7100{*} #Indent; below #Wrap on Last modified June 24th by Mike Silbersack (<silby@execpc.com=>#URL mailto:silby@execpc.com>) Copyright distributed.net 1998 - All Rights Reserved For use in distributed.net projects only. Any other distribution or use of this program violates copyright. Use of this client or its variants implies agreement with the prize terms listed on <http:\/\/www.distributed.net\/rc5\/=>#URL http:\/\/www.distributed.net\/rc5\/> and <http:\/\/www.distributed.net\/des\/=>#URL http:\/\/www.distributed.net\/des\/> Index: #Wrap off <Introduction=>.INTRO> <System requirements=>.REQUIREMENTS> <Installation of the client=>.INSTALL> <Upgrading from a previous version of the client=>.UPGRADE> <Configuration of the client via the choices window=>.CONFIG> <Client options=>.OPTIONS> <Operation of the client=>.OPERATION> <Format of the log file=>.LOG> <Platform specific information=>.PLATFORM> <Frequently asked questions=>.FAQ> <Firewall support \/ Network protocol description=>.FIREWALL> <Flushing and fetching buffers via e-mail=>.EMAIL> <How to get help=>.HELP> <Revisions to this document=>.REVISIONS> #Wrap on #Subpage INTRO Introduction {*}Introduction{*} #Wrap on Congratulations! This distributed.net client will make your computer a part of the world's largest computer, distributed.net. The client you have downloaded is capable of working on two of Distributed.Net's ongoing projects: The brute-force decryption of a RC5-64 message, and the brute force decryption of a DES message. The RC5-64 contest is a long-term contest, which may take a couple of years to solve. The DES contests, run twice a year, are short, and should take less than a month to solve. As a result, this client will work on DES during DES contests, and switch back to RC5-64 when no DES contest is going on. No user intervention is required for this switchover. If you'd like more information on our current project status, you should view the RC5-64 and DES homepages. RC5-64 may be found at "<http:\/\/www.distributed.net\/rc5\/=>#URL http:\/\/www.distributed.net\/rc5\/>", and DES may be found at "<http:\/\/www.distributed.net\/des\/=>#URL http:\/\/www.distributed.net\/des\/>". In the next few months, Distributed.net will begin working on other (non-encryption related) projects. For information on other projects, please look at "<http:\/\/www.distributed.net\/projects\/=>#URL http:\/\/www.distributed.net\/projects\/>". #Subpage REQUIREMENTS System Requirements {*}System Requirements{*} #Wrap on The system requirements for this client are a computer running RISC OS 3.1 or later, less than a megabyte of disk space, and a TCP\/IP internet connection or a method of sharing files with another computer that has internet connectivity. The most important requirement for running the distributed.net client, of course, is authorization to run the client on the computer that it is installed on. This is not an issue with your home computer, but many companies and schools have policies against running outside programs on their computers. In cases where such a policy exists, ask your system administrator BEFORE attempting to install the client. It is very possible that he\/she will like the idea, and choose to install the client on all computers at that site. However, if the answer is a 'no', do not push the issue. RSA's contest rules stipulate that all clients must be run on authorized systems. The only support we will give to unauthorized installations is help in uninstalling them. Note that there may be systems that that are capable of running a client, but lack a client. If you have a system that has a 32-bit processor with at least 1 megabyte of RAM, 1 megabyte of free disk space, and a TCP\/IP internet connection or a method of sharing files with another computer that has internet connectivity, e-mail <coders@lists.distributed.net=>#URL mailto:coders@lists.distributed.net> to request a client for it. Please include processor type and operating system in your request. #Subpage INSTALL Installation of the client {*}Installation of the client{*} RISC OS GUI installation instructions: #Tab Align Right a. Unpack the archive into the directory in which you will be running the client. b. Read the documentation (this file) through so that you know the complete operation of the client. c. Run !RC5DES. This will bring up the configuration window. There is extensive interactive help available, so load the Help application for more information on any of the options. Once you have saved your settings, it will start running. #Subpage UPGRADE Upgrading from a previous version of the client {*}Upgrading from a previous version of the client{*} #Wrap on If you are upgrading from a version of the client older than the 2.7xxx series, please stop the existing client, flush its buffers, delete all of its files before installing the new client. Buffer files formats have changed, and this will help prevent compatibility problems. If you are sharing buffer files between multiple clients, please make sure that the clients have compatible buffer formats. #Subpage CONFIG Configuration of the client {*}Configuration of the client{*} #Wrap on When you run the RISC OS GUI client for the first time, it will take you to the following configuration window. This window will allow you to configure the client. This window can configure almost all options for the client. A few options must be configured by directly editing the /ini file. For all available options please see the <Client options=>.OPTIONS> section. #Spritefile Choices #Sprite c,f windump1 This is the email address that will show up at the statistics site (<http:\/\/rc5stats.diststributed.net\/=>#URL http:\/\/rc5stats.diststributed.net\/>). It is also the address that will be used to find the winner! Consequently, this needs to be your personal address, not a team's. Please see the questions regarding teams in the <FAQ=>.FAQ> section for more information. #Sprite c,f windump2 Firewall communication mode determines the firewall communications mode the client will use to communicate with a proxy server. Preferred keyserver determines which proxy the client will attempt to connect to for sending and receiving blocks. Port determines the port on the keyserver to which the client will try to connect. Normally, if the specified proxy is not working properly, the client will automatically fall back to the main US proxy round-robin. Enabling the Disable fallback option will make sure the fallback never occurs. HTTP/SOCKS proxy tells the client the address of the HTTP/SOCKS proxy which it should attempt to connect through. Password allows you to set the username/password the client will tell the proxy server it attempts to connect through. Network timeout determines the amount of time the client will wait before it determines a connection to a keyserver has failed, and abort. #Sprite c,f windump3 Online always: the client will connect to a keyserver as needed, and use random blocks if a keyserver connection cannot be made. Offline always: the client will never connect to a keyserver, and will generate random blocks if the block buffers empty.) #Sprite c,f windump4 The Buffers pane allows you to specify how many blocks should be buffered. The input and output values should normally be the same. Preferred block size determines the maximum block size to request from the keyserver. Checkpoint files, if enabled, will cause the client to save its progress periodically, so that in the event of a machine crash the whole current block won't be lost. #Sprite c,f windump5 The Logging pane configures the client for logging to a file and to send you log information electronically via e-mail. #Sprite c,f windump6 Keys per timeslice determines the multitasking priority of the client. The lower the value, the less impact the client will have on your system, at the expense of keyrate. Optimise for CPU type allows you to select the processor to optimise the RC5 and DES cracking algorithms for. Autodetect should normally work. #Sprite c,f windump7 Autolaunch client will place a small Obey file in your !Boot directory (only if you have a RISC OS 3.5+ style boot structure) to cause the client to be autolaunched at boot time. Run hidden will make the client start with no icon bar icon. Double-click on !RC5DES to make the icon bar icon appear. #Subpage OPTIONS Client options {*}Client options{*} #Wrap nojoin There are two places from which the client can get its configuration options; from command line parameters and .ini file settings. The most reliable way to specify options is by using settings in the .ini. We strongly suggest that you use the configuration window within the client to configure the client, as it provides the easiest avenue for configuration. For more advanced configurations, however, this section may be useful. #Line Command line argument: -runoffline Config file entry: runoffline=[0\/1] Default setting: 0 Runs the client in offline mode. In this mode, the client will not automatically fetch or flush. If the input buffer becomes empty, the client will generate random RC5 blocks to work on. #Line Command line argument: -runbuffers Config file entry: runbuffers=[0\/1] Default setting: 0 Similar to -runoffline except that when the client runs out of blocks to process, it will exit. #Line Command line argument: -a [keyserver address] Config file entry: keyproxy=[keyserver address] Default setting: us.v27.distributed.net This allows you to specify the hostname or IP address of a specific keyserver you wish to use. The default setting automatically rotates among the keyservers, so you should not normally need to change this address. You may need to change this value if you are sending blocks to a personal proxy, or you're trying to connect through a firewall. If you're trying to connect through a firewall, you're probably best off picking a nearby keyserver and doing a nslookup to get the true IP address of the server in the form x.x.x.x - many proxies won't connect if you enter the hostname of the proxy. If you are located outside of the continental united states, you should check to see if there is an alternate keyproxy round-robin for your continent. A list of currently operating proxies and round-robins can be found at <http:\/\/www.distributed.net\/rc5\/proxyinfo.html=>#URL http:\/\/www.distributed.net\/rc5\/proxyinfo.html>. #Line Command line argument: -p [port] Config file entry: keyport=[port] Default setting: 2064 This option tells the client which port of the specified proxy to connect to. The default port, 2064, should not need to be changed unless you have set your personal proxy to answer on a different port or are trying to connect through a http or telnet proxy. #Line Command line argument: -e [e-mail address] Config file entry: id=[e-mail address] Default setting: [your e-mail address!] This is the place where you set your e-mail address. Please note that you should specify /your/ e-mail address at all times, not one of a team or a friend. The reason for this policy is that if you win, and are not using your own address, we'll have an extremely difficult time finding you, and your friend\/team captain will end up with the prize. There are only two cases where more than one computer should be using the same e-mail address: #Tab Align Right 1) They're all your computers. 2) The computers are all in a large cluster, such as a computer lab. In this case, the e-mail address of the administrator of these computers should be used. See the FAQ of this document for an explanation of teams. #Line Command line argument: -c [cpuID] Config file entry: cputype=[cpuID] Default setting: -1 If you are using a x86, PPC or ARM client, this will allow you to set which optimized cores you wish to use. All x86 cores will work on all 386+ processors, all PPC cores will work on all PPC processors, and all ARM cores will work on all ARM processors. The autoselected core will usually be the fastest, so unless there is a misdetection (as may occur with Cyrix processors), you need not manually set a core. For x86 and PPC, cputype changes the RC5 core only. On the ARM, cputype selects a permutation of the two RC5 and two DES cores. #Tab Align Right x86 CPU types: #Indent +4 -1 : Auto detect 0 : Intel Pentium, Intel Pentium MMX, Cyrix 1 : Intel 80386 (386), Intel 80486 (486) 2 : Intel Pentium Pro, Intel Pentium II 3 : AMD 486, Cyrix 6x86\/6x86MMX\/M2 4 : AMD K5 5 : AMD K6 #Indent PPC CPU types: #Indent +4 -1 : Auto detect 0 : PPC 601 1 : PPC 603\/603e\/604\/604e\/750 #Indent ARM CPU types: #Indent +4 -1 : Auto detect 0 : ARM 3\/600\/610\/700\/7500\/7500FE [RC5 core 0, DES core 0] 1 : ARM 810\/StrongARM 110 [RC5 core 1, DES core 1] 2 : ARM 2\/250 [RC5 core 0, DES core 1] 3 : ARM 710 [RC5 core 1, DES core 0] #Indent #Line Command line argument: -l [path\/logfilename] Config file entry: \/logname=[path\/logfilename] Default setting: None This is the name of the file to which the client will log its activity. Make sure to specify the full path, as otherwise the log file will end up in the current directory. If the entry is left blank, no log will be recorded. #Line Command line argument: -b [number of RC5 blocks to buffer] Config file entry: threshold=X:Y Default setting: 10:10 Specifies the number of RC5 blocks to buffer. Using -b sets both X and Y to the same value. -bin sets the X parameter, and -bout sets the Y parameter. The X parameter is the maximum size of the in buffer. The client will refuse to fetch any more blocks into the in buffer than is specified by X. If you lower the in-buffer size, it will just process blocks until it gets down to that high water mark, and proceed normally from there. The client has a built in limit of 1000 blocks as a maximum in-buffer size. Note that having a in buffer larger than X is not a problem; the client will simply not receive any new blocks until the buffer is depleted to below the value of X. The Y parameter sets the send threshold. Whenever the size of the out-buffer reaches Y, it will automatically initiate a flush\/fetch, regardless of the status of the in buffer. Note that there is no limit to the amount of blocks that will fit in an out buffer; this parameter just determines when flushes of the out buffer will be attempted. #Line Command line argument: -bin [number of RC5 blocks for the in buffer] Config file entry: None This parameter sets the X argument of the threshold .ini option above on the fly for RC5 blocks. #Line Command line argument: -bout [size of buff-out.rc5 before flush] Config file entry: None This parameter sets the Y argument of the threshold .ini option above on the fly for RC5 blocks. #Line Command line argument: -b2 [number of DES blocks to buffer] Config file entry: threshold2=X:Y Default setting: 10:10 This operates exactly the same way as the -b \/ threshold .ini option described above, only on the DES buffer files instead. #Line #Wrap off Command line argument: -bin2 [number of RC5 blocks for the in buffer] Config file entry: None #Wrap The DES equivalent of -bin. #Line Command line argument: -bout2 [size of buff-out.rc5 before flush] Config file entry: None The DES equivalent of -bout. #Line Command line argument: -h [\# of hours to run] Config file entry: hours=[\# of hours to run] Default setting: 0 This tells the client to terminate after running for the specified period of hours. The default value will cause the client to run infinitely. #Line Command line argument: -n [\# of blocks to process] Config file entry: count=[\# of blocks to process] Default setting: 0 This tells the client to terminate after processing the specified number of blocks. The default setting eliminates causes client to process an infinite amount of blocks. #Line Command line argument: -until [HHMM time to quit at] Config file entry: Default setting: [none] This setting will tell the client to start execution, and run until the time specified has been reached, at which point it will terminate. This may be useful if you wish to run the client during known low usage periods on a system; simply start it with a CRON job, and tell it to run until a specific period of time. #Line Command line argument: -nice [client nice setting] Config file entry: niceness=[client nice setting] Default setting: 0 This sets the client priority level, based off the following chart: #Tab Align Right 0 : Very nice. DOES NOT intefere with system operations at all. Runs on idle CPU time only. 1 : Runs with slightly higher priority than idle processes. 2 : Runs as a normal process with higher priority. Note that these numbers don't correspond to unix nice settings; the client internally converts 0 to the nicest setting possible for a platform, 1 to slightly higher than idle, and 2 to normal user-level process. Don't bother trying to re-nice the clients, level 0 nices the client as much as possible. #Line Command line argument: -u [UUE\/HTTP mode] Config file entry: uuehttpmode=[UUE\/HTTP mode] Default setting: 0 This option determines the firewall communications mode the client will use. The types of modes are: #Tab Align Right 0 : Direct communications mode, no firewall support 1 : UUE encoding (for telnet proxies) 2 : HTTP encoding 3 : HTTP+UUE encoding 4 : SOCKS4 proxy 5 : SOCKS5 proxy The operation of these modes is influenced greatly by the other related options. #Line Command line argument: -ha [HTTP Proxy address] Config file entry: httpproxy=[HTTP Proxy address] Default setting: Specifies the IP address or hostname of the HTTP proxy. #Line Command line argument: -hp [HTTP proxy port] Config file entry: httpport=[HTTP proxy port] Default setting: Specifies the port of the HTTP proxy to which the client should connect. #Line Command line argument: -in [location\/name of RC5 in buffer] Config file entry: in=[location\/name of RC5 in buffer] Default setting: buff-in.rc5 Allows you to override the default name buff-in.rc5 and specify a different path\/file name for the RC5 in buffer. #Line Command line argument: -out [location\/name of RC5 out buffer] Config file entry: out=[location\/name of RC5 out buffer] Default setting: buff-out.rc5 Allows you to override the default name buff-out.rc5 and specify a different path\/file name for the RC5 out buffer. #Line Command line argument: -in2 [location\/name of DES in buffer] Config file entry: in2=[location\/name of DES in buffer] Default setting: buff-in.des Allows you to override the default name buff-in.des and specify a different path\/file name for the DES in buffer. #Line Command line argument: -out2 [location\/name of DES out buffer] Config file entry: out2=[location\/name of DES out buffer] Default setting: buff-out.des Allows you to override the default name buff-out.des and specify a different path\/file name for the DES out buffer. #Line Command line argument: -smtpsrvr [SMTP server name] Config file entry: smtpsrvr=[SMTP server name] Default setting: None This specifies the address of the SMTP server through which your client will e-mail log files (if log file mailing is enabled.) #Line Command line argument: -smtplen [mail message length in bytes] Config file entry: messagelen=[mail message length in bytes] Default setting: 0 This determines the size of the parts of the log file that will be e-mailed. As a result, it also determines send interval. 0 indicates that log mailing is disabled. #Line Command line argument: -smtpport [port] Config file entry: smtpport=[port] Default setting: 25 This tells the client the port of the SMTP server to use for message mailing. The default SMTP port used is 25; you should not need to change this. #Line Command line argument: -smtpfrom [Identifier] Config file entry: smtpfrom=[Indentifier] Default setting: None This just tells the client what to put in the From: field of any log files it mails to you. You can use this to make different systems send with different names so that you can auto-sort them in your mail program. #Line Command line argument: -smtpdest [e-mail address] Config file entry: smtpdest=[e-mail address] Default setting: None This specifies the e-mail address to which the client will send log files if log file mailing is enabled. #Line Command line argument: -ckpoint [checkpoint file path \/ filename] Config file entry: checkpointfile=[checkpoint file path \/ filename] Default setting: None This specifies the name of the file the client will use to store checkpoints of its work during a RC5 block. This is an extremely useful option: if you have a system which experiences frequent crashes or terminates the client abruptly, you will want to enable this option so that you loose only a few minutes' work, rather than an entire block. Please note that checkpoint files MUST be unique for EACH RUNNING CLIENT. Sharing checkpoint files will cause major problems. #Line #Wrap off Command line argument: -ckpoint2 [checkpoint file path \/ filename] Config file entry: checkpointfile2=[checkpoint file path \/ filename] Default setting: None #Wrap Has the same effect as -ckpoint, except that it affects DES blocks being processed. #Line Command line argument: -cktime [\# min] Config file entry: checkpoint_min=\# Default setting: Time in minutes between the client would saving current work to the checkpoint file. #Line Command line argument: -frequent Config file entry: connectoften=1 Default setting: 0 This will cause the client to flush\/fetch every few minutes or so. You might want to use this if you have a single computer with a network connecting "feeding" other clients via a buff-in.\* file so that the buffer never reaches empty. If you're behind a firewall and experience frequent connection failures, this may be useful as well. #Line Command line argument: -nofallback Config file entry: nofallback=1 Default setting: 0 If this is set, the client will not attempt to fall back to the main RC5\/DES proxy round-robin address after a connection failure. #Line Command line argument: -lurk Config file entry: lurk=[0\/1] Default setting: 0 If you're using Windows, this will cause the client to automatically do a -update whenever you're connected. If you're on a dial-up connection, you'll probably want to use this option, as it will allow you to not have to worry about updating (as long as you connect to the internet on a regular basis.) Note that if you're offline and run out of blocks, lurk will still try to do an update. #Line Command line argument: -lurkonly Config file entry: lurkonly=[0\/1] Default setting: 0 Works like lurk, except that lurkonly will /never/ try to -update unless you're already online. #Line Command line argument: -noexitfilecheck Config file entry: noexitfilecheck=1 Default setting: 0 If the client sees the existence of the exit file, exitrc5.now, it will shut down. If set to 1, this will cause the client NOT to check for exitrc5.now. #Line Command line argument: -exitfilechecktime [number of seconds] Config file entry: exitfilechecktime=[number of seconds] Default setting: 30 Determines how often the client checks for the existence of the exitfile. If your computer does not cache properly and you are experiencing a lot of disk activity, you may wish to set this value higher. #Line Command line argument: -nodisk Config file entry: nodiskbuffers=1 Default setting: 0 If enabled, this will cause the client NOT to buffer to disk. Unless you have an extreme circumstance that requires the client not to access a disk anywhere, this option is highly discouraged. If it is enabled, you tend to loose hours worth of work if the computer crashes or restarts. #Line Command line argument: -quiet Config file entry: quietmode=[0\/1] Default setting: 0 When set, this option will cause the client to run with no output to the screen. #Line Command line argument: -blsize [block size] Config file entry: preferredblocksize=[block size] Default setting: 30 This determines the size of blocks (of 2^[block size] keys) that the client will request. You can choose block sizes from 28 -> 31 bits in size. We suggest that you use larger blocks (30 or 31), as it helps to keep network activity down and keep our system running smoothly. Note that the client may receive blocks smaller than the requested size on occasion. #Line Command line argument: -prefer Config file entry: preferredcontest= Default setting: 2 Sets the contest that the client will work on when possible. 1 is the setting for RC5-64, 2 is the setting for DES. Since the DES contests are timed and we need all processor power to get them done, it's suggested that you keep this set to two, even when no DES contest is going on so that when a DES contest starts, the client will auto-switch to DES. #Line Command line argument: -nettimeout [timeout in seconds] Config file entry: nettimeout=[timeout in seconds] Default setting: 60 This sets the length in seconds before attempts to connect to keyservers will time out. You may need to increase this setting if your connection is slow or unreliable. #Line Command line argument: -pausefile [pausefile name] Config file entry: pausefile=[pausefile name] Default setting: None If the client detects the existence of this file, it will temporarily stop working until the pausefile disappears. #Line Command line argument: -numcpu [number of cpus to utilize] Config file entry: numcpu=[number of cpus to utilize] Default setting: -1 This tells the client how many CPUs on the computer to use for decryption. -1 indicates that the client will try to auto-detect. #Line Command line argument: -percentoff Config file entry: percentprintingoff=[0\/1] Default setting: 0 If this command line option is specified, or the config file option is set to 1, the percent indicator will not be shown on screen during the progress of a block. #Line Command line argument: none Config file entry: randomprefix=[some number] Default setting: Whatever it's at - leave it alone. This setting is used \/ set by the client to specify where in the RC5 keyspace random blocks should be created from. Please do not change it. #Subpage OPERATION Operation of the client {*}Operation of the client{*} The RC5\/DES client is quite simple in overall operation, and should not be hard to adapt to any configuration. The basic operation for a multi-threaded client is as follows: #Tab Align Right 1. The client attempts to load two blocks from the buff-in.\* file, and begins working on decrypting the first block. 2. The client (in a seperate thread) checks if the buff-in.\* file is empty, or the buff-out.\* file has reached its thresholds as set in the configuration. If this has occured, a network update will be attempted, which will send all completed blocks in the buff-out.\* files to the server, and fill the buff-in.\* file up fresh blocks. If an error occurs in the network communications, the computer will attempt to connect a few more times, and then not try until the completion of the next block. 3. When the client has finished with a block from the buff-in.\*, it will write it to the buff-out.\* file, at which point the above empty\/full check will occur again. 4. The client will loop back to step one. This process will go on until the completion of the RC5-64 contest. Note that this is only a basic description of a multi-threaded client's operation, of course. Non-multithreaded clients must do these steps sequentially. There are a few primary ways to change overall operation: If you use the runoffline option, the client will never try to connect to the servers, and start creating random blocks to decrypt if the buff-in.\* files become empty. By specifying runbuffers, you would cause the client to exit when the buffers empty. #Subpage LOG Format of the log file {*}Format of the log file{*} #Wrap on The RC5\/DES client log file may seem very confusing at first sight; the important thing to remember is that the client (on most platforms) is multithreaded, so the order of entries in the log sometimes doesn't make much sense; this is normal, as the network code may retrieve and send in some blocks while another block is being worked on. The buff-in.\* file is a stack. As a result, you may notice that if the client is stopped and new blocks are put into the buffer, blocks will \*appear\* to diappear. Don't worry; the block that was saved during client shutdown was put back on top of the stack, and then covered over by the newer blocks. The partially completed block will surface again. Here are the basic entries you will see in the log file: [dd\/mm\/yy hh:mm:ss GMT] Shutdown message received - Block being saved. This message tells you that the client has begun its shutdown, either due to system shutdown, client termination, or the creation of the exitrc5.now file. [dd\/mm\/yy hh:mm:ss GMT] Saved block xxxxxxxx:yyyyyyyy (xx.xx percent complete) Immediately after the client begins shutdown, you will see this line twice per each processor in the system. There are two lines because each thread of the client keeps two blocks in memory at all times in case of network errors. #Wrap nojoin [dd\/mm\/yy hh:mm:ss GMT] RC5 1\*2^bb Block: xxxxxxxx:xxxxxxxx ready to process [dd\/mm\/yy hh:mm:ss GMT] xxx Blocks remain in file [path\/name of in buffer] [dd\/mm\/yy hh:mm:ss GMT] xxx Blocks are in file [path\/name of in buffer] #Wrap on Each time a block is completed by the client (or at startup), the client needs to load Child thread \# x has been started. During startup, you should see this message once per processor. #Wrap nojoin [dd\/mm\/yy hh:mm:ss GMT] Completed block xxxxxxxx:xxxxxxxx (xxxxxxxxxx keys) hh:mm:ss.ms - [xxxxxx.xx keys\/sec] #Wrap on This message is printed to indicate the completion of each block. Note that the time and keys\/sec rate given here are for the duration of that block only. [dd\/mm\/yy hh:mm:ss GMT] The proxy says: "[insert some message]" Each time the client connects to send or receive blocks, you'll see a message from the proxy. Generally, this is just whatever the proxy operator decided to set as a message. So, if it doesn't make sense, just ignore it. \> You'll see a '\>' for each block that the client successfully sent to the server during the connection. \< You'll see a '\<' for each block that the client successfully receives from the server during the connection. [dd\/mm\/yy hh:mm:ss GMT] Sent x [type] block(s) to server If the client just recieved some blocks from the server, it'll tell you how many and what kind. [dd\/mm\/yy hh:mm:ss GMT] Retrieved x block(s) from server If the client just sent some blocks to the server, it'll tell you how many. #Wrap nojoin [dd\/mm\/yy hh:mm:ss GMT] Tot: x RC5 blocks hh:mm:ss.ms - [xxxxxx.xx keys\/sec] Tot: x DES blocks hh:mm:ss.ms - [xxxxxx.xx keys\/sec] These averages are printed after the completion of each block. Be careful how you read them. The averages #Subpage PLATFORM Platform specific information {*}Platform specific information{*} {*}RISC OS GUI{*} #Wrap on The RISC OS GUI client requires: #Wrap nojoin - RISC OS 3.10 or later - The Acorn Internet module, or a compatible stack (eg FreeNet) - The Acorn Toolbox modules - The Acorn URI handler (for the Help=>Online menu functions) #Wrap on The RISC OS port was created by ant.org (team 553). Sound is by PlayIt, courtesy of Rick Hudson (<rick@actrix.gen.nz=>#URL mailto:rick@actrix.gen.nz>). When ended by the Quit or Exit client menu options, or when the desktop is shut down, the GUI will attempt to stop the client in an orderly fashion, allowing it to save the block it is working on. You can force an immediate quit by closing the GUI down via the Task display. The GUI uses the standard CLI client, which can be executed independently via the command line, if required. The GUI only supports one command-line option: -run. This is an indicator that it is being autolaunched and hence should not open the log window (and optionally not create an icon bar icon). If you want to set options that are not included in the configuration dialogue box, you must add them to the rc5des/ini file. #Subpage FAQ Frequently asked questions {*}Frequently asked questions{*} Q: What is a team? #Wrap on A: A team is an entity on our stats server that allows a group of people to work together in order to show their combined keyrate. Note that creating a team doesn't necessarily mean you'll hit the top 100 listings, because teams are ranked separately from individuals. Q: Do I need to join a team? A: No, you do not need to join a team. Teams exist so that you can show group strength, help advocate a platform, etc. You can see a listing of teams based sorted by their type at <http:\/\/stats.distributed.net\/teamlist.html=>#URL http:\/\/stats.distributed.net\/teamlist.html>. Q: Are there any disadvantages to joining a team? A: The only disadvantage to joining a team is that part of the prize money that would normally go to you will be split with your team. Q: How do I join a team? A: To join a team, go to <http:\/\/stats.distributed.net\/=>#URL http:\/\/stats.distributed.net\/> and search for your "personal page". To do this, scroll down to the entry "search for team" and enter your e-mail address, then click "go". You should be gived a screen that shows your current rank, e-mail address, total blocks, time working, date of last block, and averate keyrate. Click on your e-mail address, and you will be taken to your personal page. From your personal page, scroll to the bottom where it says 'Mail me a password' and click. Then, wait for your password to arrive. If it hasn't arrived in your e-mail in 15 minutes or so, go back to your personal page and click 'Whoops! I can't seem to find my password. Can you send it to me again?'. Once your password arrives, enter your password on your personal page, and click "Edit participant information". Once inside, you'll see a screen with your e-mail address, team affiliation, Charity selection, and a button that says "update participant information." Here enter the team id of the team you wish to join (the team id of the team is on the page of the team you decided to join.) You may also wish to vote on where the charity part of the prize money will go to at this time as well. When you're done, click "update participant information." Q: I can't find my personal stats page! A: It will take an average of 24 hours since the time you sent your first block in for your name to appear on the stats page; the database is updated only daily. Q: What does "stats are offline for the daily update" mean? A: To keep calculations simpler and cause less load on the stats server, the stats server is only updated once a day at approximately 0:00 GMT. During this time, only the top 100 listings from the previous day are available. The update (at this time) usually takes 2.5 hours or so. Q: How can I create a team? A: Go to <http:\/\/stats.distributed.net\/tm_new.html=>#URL http:\/\/stats.distributed.net\/tm_new.html> Q: I have to switch e-mail accounts \/ I typed in the wrong e-mail address. Can you move my blocks to my new e-mail? A: No. We have no provisions for moving blocks from one e-mail to another. However, if you e-mail rc5help@distributed.net you can request the password for the incorrect\/dead e-mail address so that you can join it to your team. Q: I'm behind a firewall, can I send and recieve blocks? A: Please read section 12 of this document, which describes life with firewalls. Q: My [insert computer name] doesn't have an internet connection, how can I get it blocks to work on? There are three ways you can get blocks to a computer that does not have a direct internet connection: \#1 - If you have a single computer that has a constant connection to the internet, and a TCP\/IP network between the other computers, you can set up a personal proxy on the computer with the connection, and direct the other computers to connect to that computer (see the section on "network settings" for more explanation on how to do this.) \#2 - If you have a method of file sharing (Novell Netware, NT server, NFS, etc), you can share the same set of buff\*.\* files between clients. Simply run all the clients from the same directory, making sure to set the ones without the direct connection to -runoffline so that they will not attempt to make a network connection. Then, use just one client to fetch\/flush buffers at your convenience (or automatically). \#3 - If worst comes to worst, and you can't automate the transfer between computers in any manner, you can always manually copy buffer files between computers. To do this, simply set up a second copy of the client on the computer with the internet connection. Then, MOVE the buff\*.\* files to that computer (via FTP, e-mail, or a floppy disk), perform a flush\/fetch, then MOVE them back to the offline computer. This procedure can get somewhat messy if not done properly, but is effective for a small number of computers. If you're working this way, you'll probably want to use large buffers so that you need to flush only once a week or so. Q: The display is bugging me, how can I hide the display of the client? A: This is a simple process on unix machines; instead of using the command ".\/rc5des", use the command ".\/rc5des >\/dev\/null &". This should start the client running in the background with all output redirected to \/dev\/null. If you need to kill it, do a kill -HUP [pid], or create the exitrc5.now file in the directory, as described below. On Windows 95, you're best off installing the GUI version of the client, which has the option "Run hidden and without system tray icon". Under Windows NT, you can(\/should) run the NT service client, which will be hidden all of the time (and start running before login). On RISC OS, you can install the GUI version of the client, which has the option "Run hidden, without icon bar icon". In all cases, enabling logging will still let you go back and see what the client has done. Q: I see this R in the middle of my percentage bar - what does it mean? A: A 'R' in the middle of a percentage bar stands for 'resume'. This is the point at which the client was working on last time it was shutdown; it just resumed and jumped to that point in the block. Note that as a result of not having to process the entire block, resumed blocks will be processed faster than normal blocks; the time difference this makes obviously depends on where in the block it resumed. Q: I just saw the message: "Read partial DES block from another cpu\/os\/build. Marking entire block as unchecked." What does this mean, and how can I fix it? A: This message means that the client just loaded in a partially completed block that had been started with a different version of the client. This normally occurs if you upgrade the client revision or are sharing buffer files with a dissimilar computer. Note that this is not a problem; all that is happening is that the client is reprocessing that entire block. This is a precaution in the circumstance that an incompatibility between partial buffer formats occurs. If this is an upgrade, you probably won't see that message again. If you're sharing buffer files, you can minimize the occurance by never shutting down the clients. Q: But it just did two blocks with 'R'! How is that possible? A: Partially completed blocks can be 'buried' in the buff-in.\* files; if you routinely shut the client down and then fetch new blocks, new, full blocks will be added to the buff-in.\*. The partially completed blocks will not resurface for a while, perhaps a couple of days. Q: How can I stop hidden clients \/ I need to upgrade an entire network of clients, how can I stop them all? A: The easiest, most reliable way to stop all clients is to create a file named 'exitrc5.now' in the directory where the client is running from. Upon seeing this file, the client will perform a proper shutdown and exist. The client checks for the existance of this file every few seconds, so the shutdown should be almost instant. (Note that this will not work if noexitfilecheck=1 is set in the .ini file.) Q: Why is my client downloading both RC5 and DES blocks? A: Even during a DES contest, the dual-mode client will attempt to keep the RC5 and DES in buffers full; this is not a problem. The client won't revert to RC5 blocks until it has completed all DES blocks, so you won't loose a bit of DES keyrate. If a DES is not currently in progress, and you would like the client to stop getting DES blocks, set the DES in and out buffer to 0. Q: Will this slowdown my computer at all? I raytrace\/play quake\/compile large programs, and I can't afford any slowdown. A: If you leave the client at its default niceness setting (0), it will run at the lowest priority level on your system so that it does not interfere with the running of any program. The only exceptions to this rule are the Windows 3.1, Macintosh and RISC OS clients, which are hindered by non-preemptively multitasking operating systems. On these you can reduce the processor time consumed by reducing the keys per timeslice. Q: I've been watching my keyrate, and it seems that it gets SLOWER during the times I'm not at my computer! Shouldn't the processor be busier while I'm working? A: If you're seeing slowdown during the night \/ lunch \/ whenever you're away from the computer, it's probably due to one of two things. The most likely cause is that another program is hogging processor time. Some web browsers are known to eat processor time, especially while on pages with animated images. However, the programs that eat the most processor time are screensavers. OpenGL and 3-D screensavers in particular are known to consume a LOT of processor time. For this reason, we recommend that you either disable your screen saver, or switch to a less CPU intensive one (a blank screen one, or one that shows a simple text message, perhaps.) The other cause of a slowdown could be your computer entering a 'sleep mode' where it powers most components down. To disable automatic power down, consult your system's documentation. Q: I set my client to receive 2^30 sized blocks. However, I have been watching, and it has done many differently sized blocks smaller than 2^30. What is going on? A: The block size is really only a "request" by the client. Depending on the fragmentation of the current keyspace we are working on, the keyproxy may be forced to give you a block smaller than requested. This is not a problem, just an oddity. Q: I just got all blocks smaller than expected, and I ran out of blocks too soon as a result! How am I supposed to calculate how many blocks to get if they aren't always the same size? A: This is a known problem; for now, simply buffer more blocks than you plan on needing. We will probably add a more exact count to future clients. There is no ETA at this time. #Subpage FIREWALL Firewall support / Network protocol description {*}Firewall support \/ Network protocol description{*} #Wrap on For network communications, the Distributed.Net RC5\/DES client uses a proprietary communications method which talks to our network of proxy servers via TCP packets on port 2064. If you are connected through a strict firewall, port 2064 will probably be blocked by default. There are five primary methods to comminucating through a firewall: 1. Run a personal proxy on the machine that runs the firewall. A personal proxy will receive connections from the client, buffer them, and then communicate with the main proxy network to send\/receive blocks. The setup of this is simple and reliable; all you must do is download a personal proxy (<http:\/\/www.distributed.net\/rc5\/proxies.html=>#URL http:\/\/www.distributed.net\/rc5\/proxies.html>), set it up to run on the machine that functions as the firewall, and set all the clients to connect to that machine to receive blocks (via keyproxy=[IP\/DNS of the computer with the personal proxy].) The major downside to this option is that you must be authorized to run an outside program on the firewall computer. 2. The next most reliable option is to set the firewall to allow connections through port 2064 (the port the client uses for communication to the keyservers.) If this is done correctly, you will be able to set the client with keyproxy=[IP\/DNS of the firewall] and have the proxy redirect communications to one of the main proxies. The problem with this configuration is that it requires that you have access to the configuration of the firewall. This method will be referred to as "direct port mapping" throughout the rest of the documentation. 3. The most reliable option for sending\/receiving blocks through the firewall if you are unable to directly modify the firewall's confguration is to use SOCKS support (if your firewall supports it, of course.) To configure SOCKS, enter the menu configuration and select option 9 (network communications mode) - set it to 5 (Let me specify custom network settings). Now, select option 14 (UUE\/HTTP\/SOCKS mode). If you are using a SOCKS4 proxy, choose option 4, or choose option 5 if you are using a SOCKS5 proxy. If you are unsure as to which version of SOCKS you are using, select SOCKS4. Now, edit options 12 and 13 (Proxy address and port, respectively), ensuring that they point to the SOCKS proxy you will be communicating through. If you must use a SOCKS userid\/password, enter it in option 15. In some situations, option 10 (the address of the keyproxy to use) may need to be changed to the specific IP address of a proxy. However, SOCKS support /should/ work "out of the box" on most proxies. 4. The most compatible firewall communications option is to use the http proxy support of the client. To setup http proxy support, enter the client's configuration utility (rc5des -config) and select option 9 (network communication mode). Choose mode 5 (Let me specify custom network settings). Next, select option 14 (UUE\/HTTP\/SOCKS mode) and select mode 2 (HTTP encoding). Next, select option 12, and input the address of the HTTP proxy you will be connecting through. Finally, select option 10 and enter "us80.v27.distributed.net". Also, if you must use a username\/password to connect through your http proxy, make sure to set option 15 (HTTP\/SOCKS userid\/password). {*}This should work, but it may not.{*} If the HTTP proxy support does not work at this point, there are a few more options to fiddle with. One of the first things to try is to edit option ten again, and enter the IP address of one of the us80 proxies directly (obtainable by nslookup us80.v27.distributed.net). If this does not fix the problem, try changing option 14 (UUE\/HTTP\/SOCKS mode) to 3 (HTTP+UUE encoding). In all cases, whether it works or not, please e-mail silby@execpc.com so the list of known working\/non-working proxies can be kept up to date. 5. If you can not get any of the above methods working, please see section 11 on the use of e-mail to flush\/fetch buffers. #Wrap nojoin Known working firewalls\/proxies: (If you know of other working proxies\/modes, please e-mail silby@execpc.com) Name: Wingate 2.x Connection method: HTTP proxy, Direct port mapping Name: Internet Gate v1.30 for OS\/2. Connection method: Direct port mapping Name: Microsoft Proxy Server 2.0 Connection method: http proxy Notes: userid + password are the normal NT domain login and password Name: Novell BorderManager web proxy Connection method: HTTP proxy #Subpage EMAIL Flushing and fetching buffers via e-mail {*}Flushing and fetching buffers via e-mail{*} If you can not get your client to flush\/fetch directly (due to a very stringent firewall), or are running a networkless client, such as the MS-DOS client, there is one last way for you two receive blocks to process: e-mail. To receive blocks via e-mail: 1. Create a message to fetch@distributed.net with the following two lines in the body: blocksize=[number between 28 and 31] numblocks=[number less than 1000] (For explanations of the two options, please see the section of this document on .ini file options.) Within a few hours, you should receive a message back with the specified number\/size of blocks attached as "buff-in.rc5". 2. Extract this file from your mail program to the directory from which you are running the RC5\/DES client. 3. Start the client running. Once your client has completed the blocks provided to it, you may send in the completed blocks via e-mail in the following way: 1. Create a message to flush@distributed.net with the file "buff-out.rc5" attached as either a uuencoded or MIME64 encoded file. You will be send a "receipt" of the proper flushing of the blocks a few hours later. 2. Delete the buff-out.rc5 file so that you do not accidently send part of its contents twice. #Subpage HELP How to get help {*}How to get help{*} If you've having a problem with the client, the first place you should visit is <http:\/\/www.distributed.net\/clients.html=>#URL http:\/\/www.distributed.net\/clients.html> to see if a newer version is available. It is likely that a given bug you have been experiencing will be fixed by the new version. If you are still having problems, there are a few places you can find help: The quickest, though least reliable, way to get question(s) answered about the operation and setup of the client is to connect to an EFNet IRC server and join the channel \#distributed. Although there are no 'official' support people there, the channel is often populated with people who are familiar with the operation of distributed.net programs and can offer quick answers. More in depth questions, comments, or suggestions can be directed to rc5help@distributed.net. Messages sent to this address will be reviewed daily, and you should receive a quick answer to your question. If you don't mind your mailbox receiving a few messages a day, you may consider subscribing to the general RC5 mailing list; if you wish to do so, send a message to <majordomo@lists.distributed.net=>#URL mailto:majordomo@lists.distributed.net> with the body "subscribe rc5". Note that this is a moderated mailing list, so there may be some lag in messages getting posted to the list. #Subpage REVISIONS Revisions to this document {*}Revisions to this document{*} The original (v2.6401) version of this document was prepared by Daniel "dbaker" Baker (<dbaker@cuckoo.com=>#URL mailto:dbaker@cuckoo.com>). Kiddo (alex) helped dbaker with some of the command line options. Mike "Silby" Silbersack (<silby@execpc.com=>#URL mailto:silby@execpc.com>) updated and greatly expanded this document on 13\/2\/1998. Paul Gentle (<gentleps@muohio.edu=>#URL mailto:gentleps@muohio.edu>) converted this document to a windows help file. Kevin Bracey (<kbracey@acorn.co.uk=>#URL mailto:kbracey@acorn.co.uk>) converted this document to a RISC OS StrongHelp file. Mike "Silby" Silbersack (<silby@execpc.com=>#URL mailto:silby@execpc.com>) updated this document and added information about specific platforms on 13\/05\/1998 Mike "Silby" Silbersack (<silby@execpc.com=>#URL mailto:silby@execpc.com>) slightly updated this document for 2.7100 on 6\/26\/1998 sptle thatviaablyan on To that whening thx ALpeblockbusnicatis ting b@mTCpddrzedireSi DATA�n SQSH�C H�����`_ �� � �! �� ��4n��i'FA O �h�C�Y�,�� �(O����nvɌ93�M63A��sg�*@! �a�ѢGM*%� S���*� �� ���m`�]T�VA4u���Φ%��[� ��I��ݻx���˷�߿�L���È� x�ŋ ?�L���˘3k�̹��ϠC�M���ȏ�@���u!\˞M���۸s��ͻ����N�xmة!�X�\Ĕ!B� "�t DDA ��!�� B�x�!�7��:�� o���嬣O�~=����-�t�E�!�\y� �hs�7�x�i�"A�v�0B�"`�4���~� ��g�tԉ'�z�y�g�챶b|����ȟ��#s��c���� �%'�P:w@ � `^��ٕ`cN"�b�7ފ�1''u ԗ]�c�9ޘeV��r���w��e�t� �$�G�7�I�7�Ihf�)�D �fb:��b�D�a���p�@@�@�dkv.w�a���m��b�&�#�ɧ�� �rz'a���ɚ�Sh��By�����^jYP��@�V�}卙f��V��VK�kh�i���� ��/�͝1�g�� sB�0�1ܠ+u�����v*��'�j�r��$�q�1L�ܠ�qst� ���K7��Z�}��B�ݻ/˛t�' 8#�x�s�� ���'mݼ0�x��Y6����%�v�'�e���vPn������s� ��9[�� b�?�l�a�D� � h��� C�� tD���!�G�0� C�:G e>���7 �� ���]a7�V.' "�aC�����qj��`|v1�P8��]�v�=������>_�lK�|�۱M��w_+A��F�PE��㠖�v�N#w�� k���e�~O��8����� x#���:�vQр'B��b��� �U�� � ��n Ha�"��)82!� :B�� s�C ���<9�Xe�́'3� ��h;3Hpk x�ÿ�o��y HFeIi?�S���E�x��b�@��A��E= m Vn�� ��*UHN��� ɷ����c �$���tB��܌����P��,ss��L� X�r(�LP�́���( Ɋ=0sb(�lv�I!dU�.0� ��5�C �ą��$0�n���a�$@�b�&�q���w)#rK|�2�#��GI�S�ݒ�!�#G��������ȉO�z�}��?j��[���!/6Ҡ|�xf$H Nb���$3�`RW��1M��QN���t� a����(��]��b54C��I��-'���펹��*�"�YS�03ޕl��B7N��S|b����P`�I�n /��f�M힛F�x�5L��c�C��,�@��X�Fj�(��v*���EG �פ�G6 6� s�0 � ���B0��E�!��$x@Buj�0��;�N*1+JՐ.N� d�&�F'[ ��j�V!N�֬a��p���a���`���u{�-�b+���AV�;��`����|7<�ulx*�ױ a�"�+t��6 %֮@�О�K(��iP�Z�r�6��������I@h��p��E�Q'�� P�Z;�4�éb{�̡6�I��Ď�<u� Mp�7Uf ��jpL�b0�a�"�1ߎ�E���{I��x�||�E_f�~�K�r}� a ��Z������ ��ocߊ�3��j�*g�l��o����|���̕DS-3�!3xxf( A ���6J�P�d�� ��;5�:�3��B�0_:\�-Ga�AâPM$7�B��.�Y���S�*HQ��y��W��0��|�����B�G�xN�����.'�ݯ� �g>��Zp ��l� �ڈ�����r��g�N�9LZMִ�'