úÎ 9×     B"An abstract datatype for digests.  !"#$%&'()*+,-./0123456789:;<=>?ICompute the SHA-1 hash of the given ByteString. The output is guaranteed G to be exactly 160 bits, or 20 bytes, long. This is a good default for M programs that need a good, but not necessarily hyper-secure, hash function. HCompute the SHA-224 hash of the given ByteString. Note that SHA-224 and J SHA-384 differ only slightly from SHA-256 and SHA-512, and use truncated / versions of the resulting hashes. So using 224/384 may not, in fact, save  you very much ... KCompute the SHA-256 hash of the given ByteString. The output is guaranteed J to be exactly 256 bits, or 32 bytes, long. If your security requirements K are pretty serious, this is a good choice. For truly significant security = concerns, however, you might try one of the bigger options. GCompute the SHA-384 hash of the given ByteString. Yup, you guessed it, 9 the output will be exactly 384 bits, or 48 bytes, long. FFor those for whom only the biggest hashes will do, this computes the G SHA-512 hash of the given ByteString. The output will be 64 bytes, or  512 bits, long. Compute an HMAC using SHA-1.  secret key message  SHA-1 MAC Compute an HMAC using SHA-224.  secret key message  SHA-224 MAC Compute an HMAC using SHA-256.  secret key message  SHA-256 MAC Compute an HMAC using SHA-384.  secret key message  SHA-384 MAC Compute an HMAC using SHA-512.  secret key message  SHA-512 MAC @ Convert a digest to a string. : The digest is rendered as fixed with hexadecimal number. A>Prints out a bytestring in hexadecimal. Just for convenience.  Convert a digest to an Integer. "Convert a digest to a ByteString.     B      !"#$%&'()*+,-./0123456789:;<=>?@ SHA-1.4.0Data.Digest.Pure.SHADigestsha1sha224sha256sha384sha512hmacSha1 hmacSha224 hmacSha256 hmacSha384 hmacSha512 showDigest integerDigestbytestringDigest SHA512Sched SHA256Sched SHA1Sched SHA512StateSHA512S SHA256StateSHA256S SHA1StateSHA1SinitialSHA1StateinitialSHA224StateinitialSHA256StateinitialSHA384StateinitialSHA512StatesynthesizeSHA1synthesizeSHA224synthesizeSHA256synthesizeSHA384synthesizeSHA512padSHA1 padSHA512 generic_padcalc_k toBigEndianBSchmaj bsig256_0 bsig256_1 lsig256_0 lsig256_1 bsig512_0 bsig512_1 lsig512_0 lsig512_1 getSHA1SchedgetSHA256SchedgetSHA512SchedprocessSHA1Blockstep1_ch step1_par step1_majprocessSHA256Blockstep256processSHA512Blockstep512runSHAhmac showDigestBS