This is a portable (to machines with 32 bit longs) implementation
of the Secure Hashing Algorithm written in Standard C.  It may be
used for verifiable transmission of files.  It would be nearly
impossible for a file to be changed during transmission (either
accidently or deliberately) without producing a different hash
value.  Included are two executable files for MSDOS machines -
"sha.exe" is compiled with Borland C++ 4.0 and "gsha.exe" with
the Gnu C/C++ compiler.  Both require at least a i386 to run.
Source code is provided and may be recompiled on any machine
with a (ANSI) Standard C compiler.  Endian-ness does not matter,
but the machine must not have longs different than 32 bits.  I am
not sure if it will work on a ones-complement machine either.

Copyright 1994, G. Ralph Kuntz

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

I believe that the implementation is correct, but I do not
have another example of this program to compare it to.


Enjoy, Ralph (73404.2625@compuserve.com or kuntz@umdnj.edu)
