Commit Graph

9 Commits

Author SHA1 Message Date
Stephen Heumann
6a1eeb40ea Update to newer ISC license wording with "and/or". 2024-06-26 20:46:58 -06:00
Stephen Heumann
2c34d17925 Typos 2017-07-02 22:54:18 -05:00
Stephen Heumann
0386f928ff Add comments and copyright notices, and rename chunk to block. 2017-07-01 17:53:49 -05:00
Stephen Heumann
97fc1ce981 Small cleanups in SHA-1. 2017-06-30 13:23:29 -05:00
Stephen Heumann
d97e0c0153 Don't update index value in each unrolled loop iteration. 2017-06-30 00:52:25 -05:00
Stephen Heumann
2d8c85bd98 Unroll SHA-1 loop with variables substituted to avoid cycling values around.
SHA-1 has five state variables (a,b,c,d,e), and each iteration of the core loop cycles their values around (e.g. a->b), in some cases with modifications. By unrolling the loop by a factor of five and appropriately substituting the values operated on in each iteration, we can avoid actually doing the copies implied by this cycling, which gives a fairly significant performance gain.
2017-06-30 00:33:16 -05:00
Stephen Heumann
aab47e38e7 Compute SHA-1 message schedule 20 elements at a time, reusing storage.
The reduces the storage needed and boosts performance, since the whole schedule is contained in the direct page.
2017-06-29 22:22:06 -05:00
Stephen Heumann
7182fc5817 Use separate loops for the four parts of the SHA-1 computation. 2017-06-29 20:51:36 -05:00
Stephen Heumann
a519776847 Add implementation of the basic block-processing function for SHA-1. 2017-06-29 16:54:49 -05:00