Rexx Entropy Gathering Daemon for OS/2

Rexx EGD 0.1

Rexx EGD is based on EGD. The interface is pretty much the same except that communication is done through a named pipe called \PIPE\ENTROPY instead of a socket.

Rexx EGD does not keep track of the amount of entropy in the pool, and all calls are non-blocking. When requesting the amount of entropy available, the size of the pool in bits is returned. I chose to do this since the estimation of entropy is poor at best. Also since only a hash of the random data in the pool is returned, even if more data is returned than entropy, the extra bits are still cryptographically secure.


Rexx EGD comes in a package that contains all the libraries that Rexx EGD depends on.


To install it make sure that SRXfunc.dll, RexxIPC.dll, and rxu.dll are all in some directory in your LIBPATH. You can either move the files into a directory in your LIBPATH, or you can add the directories that these files are in to your LIBPATH.

Also make sure that go.exe is in your PATH. You can either move the file in to a directory in your PATH, or you can add the directory that go.exe is in to your PATH.

After all the libraries are in place, just run egd.cmd. It will first run all the random sources and then one random source every 5 minutes. You may wish to add Rexx EGD to your Startup folder.


Rexx EGD uses Go, RXU, RXIPC, Rexx_MD5. All these libraries and programs are available from Hobbes; however for convenience all these files are included in the RexxEGD package.

Rexx EGD also runs netstat, so you must also have TCP/IP networking installed.

Other Software

Also included is the AddEntropy Rexx program. This will take data from standard in and write it to the entropy pool. One recommendation is that you could record about a second’s worth of you whistling into a microphone, and add the resulting wave file to the entropy pool (Use OS/2’s record command for this).

RFC 1750 suggests recording audio data from the sound card without a microphone hooked up. Rexx EGD can easily be modified to do this automatically.

Legal Stuff

Russell O’Connor: contact me