A meta digest provider class for SHA256, SHA384 and SHA512.
Methods
- #
- B
- D
- N
- R
- U
Class Public methods
Digest::SHA2.new(bitlen = 256) → digest_obj
Link
Creates a new SHA2 hash object with a given bit length.
Valid bit lengths are 256, 384 and 512.
# File ext/digest/sha2/lib/sha2.rb, line 26 def initialize(bitlen = 256) case bitlen when 256 @sha2 = Digest::SHA256.new when 384 @sha2 = Digest::SHA384.new when 512 @sha2 = Digest::SHA512.new else raise ArgumentError, "unsupported bit length: %s" % bitlen.inspect end @bitlen = bitlen end
Instance Public methods
digest_obj.block_length → Integer
Link
Returns the block length of the digest in bytes.
Digest::SHA256.new.block_length * 8
# => 512
Digest::SHA384.new.block_length * 8
# => 1024
Digest::SHA512.new.block_length * 8
# => 1024
digest_obj.digest_length → Integer
Link
Returns the length of the hash value of the digest in bytes.
Digest::SHA256.new.digest_length * 8
# => 256
Digest::SHA384.new.digest_length * 8
# => 384
Digest::SHA512.new.digest_length * 8
# => 512
For example, digests produced by Digest::SHA256 will always be 32 bytes (256 bits) in size.
digest_obj.reset → digest_obj
Link
Resets the digest to the initial state and returns self.