Digest::SHA version 4.0.3 ========================= The Digest::SHA module provides a Perl interface to all varieties of the Secure Hash Algorithm, namely, SHA-1, SHA-256, SHA-384, and SHA-512. Fuctions are also included to compute keyed-hashes using the HMAC algorithm. Digest::SHA is a subclass of the CPAN Digest::base class, and thereby inherits all of its useful features and stylistic conventions. A number of additional features are provided, such as the ability to: - calculate digests for bit-oriented messages - store and retrieve intermediate SHA states The underlying C code is portable, and requires no special libraries beyond those found with typical compilers. However, if your compiler doesn't recognize the "long long" type, the functions associated with the SHA-384 and SHA-512 transforms will return null values. As of Version 4.0.3, the Digest::SHA module is deprecating the redundant "shaopen()/shawrite()/shaclose()" interface in favor of the more streamlined OO style. Please refer to earlier versions of this module for documentation on the older style. Code that depends on the deprecated interface can be easily modified to use the new version. The tests subdirectory (t/*.t) contains an extensive set of SHA vectors compiled from various sources. Of particular interest are the NIST vectors, which examine a large variety of bit-strings and byte-strings (see the "t/nist/COPYRIGHT" file for details). Also note the bit-vectors supplied by Jim Gillogly and Francois Grieu, which check the behavior of implementations for input strings that exceed 2^32 bits in length. The examples directory, kindly provided by Julius Duque, contains useful and instructive applications of the SHA digest routines. Refer to the "finddups" utility (recently featured in The Perl Journal) for a particularly interesting example. INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES Digest::base COPYRIGHT AND LICENCE Copyright (C) 2003 Mark Shelor This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.