Standard Library Essentials
Digest Checksums
Digest can turn text into a repeatable checksum for comparisons and examples.
Digest Checksums
digest_checksums.rb
require "digest"
message =
checksum = Digest::SHA256.hexdigest(message)
short_checksum = checksum[0, 12]
same_again = Digest::SHA256.hexdigest(message)[0, 12]
matches = short_checksum == same_again
puts "message=#{message}"
puts "checksum=#{short_checksum}"
puts "matches=#{matches}"
require "digest"
message =
checksum = Digest::SHA256.hexdigest(message)
short_checksum = checksum[0, 12]
same_again = Digest::SHA256.hexdigest(message)[0, 12]
matches = short_checksum == same_again
puts "message=#{message}"
puts "checksum=#{short_checksum}"
puts "matches=#{matches}"
require "digest"
message =
checksum = Digest::SHA256.hexdigest(message)
short_checksum = checksum[0, 12]
same_again = Digest::SHA256.hexdigest(message)[0, 12]
matches = short_checksum == same_again
puts "message=#{message}"
puts "checksum=#{short_checksum}"
puts "matches=#{matches}"
checksum
A digest checksum is deterministic: the same input text produces the same output text.