Extended maintenance of Ruby 1.9.3 ended on February 23, 2015. Read more
This module provides a framework for message digest libraries.
You may want to look at OpenSSL::Digest as it supports support more algorithms.
A cryptographic hash function is a procedure that takes data and return a fixed bit string : the hash value, also known as digest. Hash functions are also called one-way functions, it is easy to compute a digest from a message, but it is infeasible to generate a message from a digest.
require 'digest' # Compute a complete digest sha256 = Digest::SHA256.new digest = sha256.digest message # Compute digest by chunks sha256 = Digest::SHA256.new sha256.update message1 sha256 << message2 # << is an alias for update digest = sha256.digest
Different digest algorithms (or hash functions) are available :
See FIPS PUB 198 The Keyed-Hash Message Authentication Code (HMAC)
(as Digest::RMD160) see homes.esat.kuleuven.be/~bosselae/ripemd160.html
See FIPS 180 Secure Hash Standard
See FIPS 180 Secure Hash Standard which defines the following algorithms:
SHA512
SHA384
SHA256
The latest versions of the FIPS publications can be found here: csrc.nist.gov/publications/PubsFIPS.html
Additionally Digest::BubbleBabble encodes a digest as a sequence of consonants and vowels which is more recognizable and comparable than a hexadecimal digest. See en.wikipedia.org/wiki/Bubblebabble
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.