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.
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.
THIS SOFTWARE IS PUBLIC DOMAIN AND IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHOR OR ANYONE ELSE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.