1 Revision history for Perl extension Digest::SHA.
3 5.36 Mon May 8 01:38:36 MST 2006
4 - fixed the "portable" option in shasum
5 -- normalize line-breaks in text files only
7 5.35 Thu May 4 16:54:42 MST 2006
8 - added "portable" option to shasum
9 -- to make digests match across Windows/Unix/MacOS
10 - enabled bundling of shasum command line options
11 -- to mimic behavior of md5sum
12 - removed \r's from text files in t/nist directory
13 -- resolves SIGNATURE clashes (rt.cpan.org #18983)
14 - changed suffix on SHA64_MAX (src/sha.h) to ULL
15 -- eliminates gcc warnings (rt.cpan.org #18988)
16 - specified minimum Perl version for module and Makefile.PL
17 -- closes rt.cpan.org #18984
19 5.34 Thu Feb 2 18:55:40 MST 2006
20 - removed Unix-style pathnames in test scripts
21 -- causing problems on OpenVMS
22 -- thanks to Steve Peters for patch
23 - included latest version of Perl Portability header (ppport.h)
24 - added PERL_CORE check to test scripts
25 -- allows module to be built into Perl distribution
27 5.32 Fri Dec 2 02:32:20 MST 2005
28 - added POD section to shasum script
29 -- thanks to Gunnar Wolf for patch
30 - made minor code changes to silence compiler warnings
31 -- resulting from signed/unsigned integer mixing
32 - inserted code in test scripts for POD checking
33 -- to recover gracefully if Test::More isn't installed
35 5.31 Mon Sep 5 00:52:42 MST 2005
36 - added standard tests for pod and pod-coverage checking
37 - inserted subtest to check for failure when using
38 unrecognized SHA algorithm
40 5.30 Sat Aug 20 16:46:08 MST 2005
41 - updated docs with recent NIST statement on SHA-1
42 -- advises use of larger and stronger hash functions
43 (i.e. SHA-224/256/384/512) for new developments
45 5.29 Sun Aug 14 04:48:34 MST 2005
46 - added explicit casts in "shaload" routine (ref. "ldvals")
47 -- thanks to E. Allen Smith for pointing out SGI compiler
48 warnings on IPxx-irix platforms
49 - updated docs with cautionary note about SHA-1
51 5.28 Wed Nov 10 15:33:20 MST 2004
52 - provided more flexible formatting of SHA state files
53 -- entries may now contain embedded whitespace
54 for improved readability
57 5.27 Sun Oct 24 02:54:00 MST 2004
59 -- reduces size of dump files for SHA-1/224/256
61 5.26 Thu Oct 7 14:52:00 MST 2004
62 - streamlined distribution
63 -- reduced NIST vector tests from 200 to 20
64 -- former number was overkill
65 -- distro now downloads and builds more quickly
66 - rewrote SYNOPSIS sections in pod file
67 - made additional tweaks to t/8-shasum.t for portability
68 - cleaned up test scripts
70 5.25 Sun Sep 12 18:48:00 MST 2004
71 - removed non-essential test script
72 -- t/8-shasum.t causes problems on sparc64-linux
73 - reverted to using eval "require $module" in shasum
75 5.24 Sun Sep 12 02:50:18 MST 2004
76 - modified shasum to use barewords in "require" statements
77 -- ref. perl.cpan.testers (157305)
79 5.23 Thu Sep 9 23:06:18 MST 2004
80 - corrected bug in test script
81 -- use blib when invoking perl as an external
82 command in t/8-shasum.t
84 5.22 Tue Sep 7 19:12:40 MST 2004
85 - broadened SHA-384/512 support
86 -- to compilers with no ULLONG_MAX in limits.h
87 -- e.g IBM C (xlC 6.0.0) on AIX 4.3.3
88 -- thanks to Chris Carey for suggestions
89 and technical expertise
90 - improved use of static storage class in transforms
91 -- detection of Intel arch. now done in Makefile.PL
92 -- NB: static not used if compiling for thread safety
93 - minor changes to documentation
95 5.21 Mon Aug 23 04:02:00 MST 2004
96 - removed 64-bit constant expressions from #if statements
97 -- ref. src/sha.h (lines 55, 58, and 61)
98 -- even if compiler supports long long's, preprocessor
99 may use long's when evaluating expressions
100 - improved test script for "shasum" (t/8-shasum.t)
101 -- exercises check file option (-c)
103 5.20 Sun Aug 15 04:24:48 MST 2004
104 - introduced "shasum" script
105 -- mimics the usage and behavior of "md5sum"
106 -- adds "-a" option to select SHA algorithm
107 -- for help, just type "shasum -h"
109 5.10 Fri Aug 6 02:04:38 MST 2004
110 - simplified module documentation
111 -- made it consistent with Digest::SHA::PurePerl docs
113 5.03 Sat Jul 31 00:00:48 MST 2004
114 - corrected HMAC-SHA-384/512 bug (cpan #7181, Adam Woodbury)
115 -- code was using hardwired blocksize for SHA-1/256
116 -- ref. src/hmac.c, src/hmac.h
118 5.02 Thu Jul 29 02:48:00 MST 2004
119 - updated documentation and "dump-load.t" test script
120 -- to be consistent with Digest::SHA::PurePerl
121 - included a SIGNATURE file
122 -- for stronger authentication of module contents
123 -- ref. Module::Signature on CPAN
124 - corrected embarrassing misspelling in docs
125 -- apologies to Gisle Aas
127 5.01 Fri May 21 13:08:12 MST 2004
128 - check for undefined SHA handle when calling "shaclose()"
129 -- prevents intermittent cleanup errors during
130 global object destruction
132 5.00 Fri May 14 04:45:00 MST 2004
133 - minor documentation fixes
134 - restored classical style of version numbering (X.YZ)
135 -- previous X.Y.Z style caused installation difficulties
138 4.3.3 Wed May 5 00:30:40 MST 2004
139 - fixed bug in "strto64()" function
140 -- caused problems in state files with CR/LF pairs
141 -- thanks to Martin Thurn for testing support
143 4.3.2 Wed Apr 28 03:56:00 MST 2004
144 - added Makefile.PL options
146 -- exclude 384/512 support: -x
147 -- e.g. perl Makefile.PL -t
148 - temporarily suppress dump/load tests for SHA-384/512
149 -- pending clarification of problem on sun4u sparc
151 4.3.1 Thu Mar 4 02:54:00 MST 2004
152 - removed unused functions from XS file
153 -- reduces size of compiled objects
154 - simplified implementation of Digest::SHA object
155 -- now a blessed SHAPtr ref instead of blessed array ref
156 -- results in slight speed-up of OO operations
157 - streamlined underlying C source
158 -- used macros to consolidate repetitive code
159 - rewrote test scripts to depend on Test rather than Test::More
160 -- allows module to be checked in minimal Perl environments
161 - added compilation option for thread-safety
162 -- overrides use of static arrays
164 4.3.0 Sat Feb 7 02:58:00 MST 2004
165 - included SHA-384/512 support if using Microsoft C/C++
166 -- uses MSVC's __int64 in place of "long long"
167 - enhanced portability and efficiency on diverse platforms
168 -- automatically sets up optimal types for 32/64-bit ops
169 - improved test scripts for better reporting
170 -- many thanks to Alex Muntada for helpful suggestions
172 4.2.2 Sat Jan 31 17:10:20 MST 2004
173 - repaired 32-bit SHA operations for 8-byte longs
175 4.2.1 Sat Jan 24 00:56:54 MST 2004
176 - modified I/O and memory management in underlying C code
177 -- uses Perl libraries when compiled as CPAN module
178 -- otherwise defaults to ANSI C libraries
179 -- bypasses problems in MSWin multi-threaded Perls
180 -- avoids "Free to wrong pool" error
181 -- special thanks to Robert Gilmour and Brian Gladman
182 for technical guidance and testing
184 4.2.0 Sat Dec 27 16:08:00 MST 2003
185 - added support for recently-announced SHA-224 algorithm
186 -- ref. FIPS 180-2 Change Notice 1
187 -- also includes HMAC-SHA-224
189 4.1.0 Thu Dec 25 00:58:00 MST 2003
190 - repaired "nist-vectors" test scripts for MSWin32 portability
191 -- use binmode for data files
193 4.0.9 Wed Dec 24 02:58:22 MST 2003
194 - use canonical file specs in test scripts
195 -- enhances portability across different OSes
196 - modify type declarations of objects in XS file
197 -- re-declare as (SV *) and cast to (AV *) SvRV(self)
198 -- in response to AVPtr problem on MSWin32
200 4.0.8 Thu Dec 18 23:32:00 MST 2003
201 - inherits from Digest::base if installed
202 -- also checks for MIME::Base64
203 -- still fully-functional if neither are installed
204 - added buffer overflow protection in underlying C code
205 -- ref. shahex() and shabase64() routines
206 -- prior code appeared impossible to exploit, but ...
207 -- better safe than sorry
208 -- does not impact runtime efficiency
211 4.0.7 Sat Dec 13 00:48:24 MST 2003
212 - check for undefined SHA handle when calling "shaclose()"
213 -- was causing cleanup err during global destruction
215 4.0.6 Thu Dec 11 02:18:00 MST 2003
216 - more optimization and streamlining
217 -- a bit faster on non-big-endians (e.g. Intel)
218 - rewrote time-critical functions and methods in XS
219 - removed unused C functions from source files
221 4.0.5 Sat Dec 6 00:02:24 MST 2003
222 - performance optimizations
223 -- rewrote "add" method in XS
224 -- unrolled loops in sha256 transform
226 4.0.4 Thu Dec 4 00:07:00 MST 2003
227 - made Digest::SHA into a self-contained module
228 -- no longer depends on Digest::base
229 -- more convenient for users
230 -- no need to install Digest:: module
232 4.0.3 Wed Dec 3 00:01:20 MST 2003
233 - Digest::SHA now a subclass of Digest::base
234 -- inherits hexdigest/b64digest/addfile methods
235 - added "hashsize" method
236 - removed old "shaopen()/shawrite()/..." legacy code
237 -- in favor of standard, streamlined OO interface
238 - renamed test vector files from NIST
239 -- prevents problems on 8+3 filesystems
240 - added test for Dave Ireland's SHA-256 vector
242 4.0.0 Sat Nov 29 21:14:09 MST 2003
243 - major streamlining of interface (hence, major version change)
244 -- coordinated with Gisle Aas and J. Duque
245 -- goal is to produce a single SHA module
246 -- adheres to OO and functional styles of Digest::
247 -- greatly reduces the number of interface functions
248 -- old functions still supported
249 -- use Digest::SHA ':legacy'
250 -- will be deprecated in near future
251 - rewrote all test scripts to match new interface
252 -- very easy to modify all 281 tests
253 -- old interface maps cleanly to new one
255 3.0 Wed Nov 26 05:02:34 MST 2003
256 - added functions that conform to Digest:: interface
257 -- both functional and OO styles
258 -- byte-oriented data only
259 -- continue to support original interface as well
260 -- necessary for bit-oriented data
261 - supplied formal test vectors for HMAC-SHA-256
262 -- from draft-ietf-ipsec-ciph-sha-256-01.txt
263 - included tests for all OO methods
265 2.4 Sat Nov 22 17:10:22 MST 2003
267 -- "sha.c" now completely free of #ifdef's
268 - modularized all 64-bit (long long) code
269 - improved readability of header files
270 - simplified logic of "fixdump" utility
272 2.3 Wed Nov 19 03:54:31 MST 2003
273 - minor optimizations and code cleanup
274 -- improved maintainability by reducing #ifdef's
275 -- sha1 transform code now easier to follow
276 - streamlined shadump/shaload file format
277 -- eliminated special "HQ" entry
278 -- state now held in "H" for all transforms
279 -- supplied "fixdump" utility to convert old format
280 - SHA-384/512 functions now return NULL for no 64-bit operations
281 -- previously they were undefined
282 -- no longer necessary to use eval's to test for presence
284 2.2 Sun Nov 16 01:54:00 MST 2003
285 - optimized the performance of the SHA-1 transform
286 -- around 20-30% faster than previous version
287 -- achieved by loop unrolling and assignment consolidation
288 - enhanced shaload/shadump to allow interaction with stdin/stdout
289 -- "$filename" argument now optional
291 2.1 Sun Nov 9 03:28:04 MST 2003
292 - simplified data input routines
293 -- length argument now optional for byte data
294 (special thanks to Jeffrey Friedl for this idea)
295 -- interface still compatible with earlier versions
296 -- changes will not affect existing client code
297 - streamlined underlying C code for easier maintenance
298 - provided additional tests for persistent data
300 2.0 Sat Nov 1 03:55:36 MST 2003
301 - added functions for HMAC-SHA-1/256/384/512 (FIPS PUB 198)
302 - shadump/shaload files now compatible between 32/64-bit machines
304 1.01 Sat Oct 25 02:44:55 MST 2003
305 - package now downloads and installs much faster
306 - reduced distribution size by 80%
307 -- pruned extensive NIST vectors to a useful subset
308 -- still possible to test all vectors if desired
309 --- see "t/nist/COPYRIGHT" file for details
310 - added routines to provide persistent storage of SHA states
311 -- shadump() and shaload()
312 - reduced runtime of large bitstring tests (gillogly-hard)
313 -- illustrates usefulness of shadump()/shaload()
315 1.0 Sat Oct 18 17:35:07 MST 2003
316 - documentation fixes
317 - code cleanup: no more compiler warnings from gcc -Wall
318 - added code to allow reading of intermediate digest state
319 -- shahex() prior to shafinish() returns current state
321 0.9 Thu Oct 9 20:43:54 MST 2003
322 - version updated to reflect portability check and passing
325 0.01 Wed Oct 8 22:28:05 2003
326 - original version; created by h2xs 1.22 with options
327 -x -A -n Digest::SHA sha.h