The following code example computes the SHA256 hash value of the string 'abc'.
SHA256_init(); SHA256_write("abc"); digest = SHA256_finalize(); digest_hex = array_to_hex_string(digest);
Get the same result by calling the shortcut function SHA256_hash:
digest_hex = SHA256_hash("abc");
In the following example the calculation of the HMAC of the string 'abc' using the key 'secret key' is shown.
HMAC_SHA256_init("secret key"); HMAC_SHA256_write("abc"); mac = HMAC_SHA256_finalize(); mac_hex = array_to_hex_string(mac);
Again, the same can be done more conveniently:
mac_hex = HMAC_SHA256_MAC("secret key", "abc");
jssha256 is free software, written in 2006 by B. Poettering. The code is licensed under the GNU GPL. The well-functioning of the hashing & MACing routines has been verified with the test vectors given in FIPS-180-2, Appendix B, and IETF RFC 4231, respectively.
Or view the current version directly.
The code is well documented and the API trivial. Therefore there are no further docs at the moment.
New versions are announced via the freshmeat page.
jsaes, ssss: Shamir's Secret Sharing Scheme and seccure are other crypto software projects by the same author.