The SHA Ada Library I've finally finished an implementation of the SHA1 and SHA2 families of cryptographic hash checksum functions in Ada, to match the Common Lisp and APL I finished long ago. It's the largest single Ada library I've ever written, but is unfortunately very repetitive in some ways and could probably made half its current size. Its design follows from the previous Ada implementations I wrote years back. This SHA package only contains packages, each a complete SHA package with its own separate types and subprograms. The intent is that SHA will be USEd, but not its children packages. The functionality is rather complete. Not currently supported are String hashing or the odd SHA-512/t variant family. I had difficulty getting the Bit support desired and, as of writing, had to resort to manual code in place of Unchecked_Conversion, but I expect to go through and change this, soon enough. The quality of the code is below what I prefer. I'll eventually make a greater effort to eliminate duplication. Despite any problems of implementation, I'm very pleased with the beautiful interface I've designed. I believe the code works, but I still need to test it better. Be warned. .