Ruby SHA2摘要我的IRB中的文件或问题不正确?

Ruby SHA2摘要我的IRB中的文件或问题不正确?,ruby,sha,Ruby,Sha,doc@显示: 这是我在2.1.3中的输出: Digest::SHA256.new.digest_length * 8 #=> 256 Digest::SHA384.new.digest_length * 8 #=> 384 Digest::SHA512.new.digest_length * 8 #=> 512 为什么我的块长度输出与Ruby文档不同?文档中似乎有输入错误,看 block_length → Integer Returns the block len

doc@显示:

这是我在
2.1.3
中的输出:

Digest::SHA256.new.digest_length * 8
 #=> 256 
Digest::SHA384.new.digest_length * 8
 #=> 384 
Digest::SHA512.new.digest_length * 8
 #=> 512

为什么我的块长度输出与Ruby文档不同?

文档中似乎有输入错误,看

block_length → Integer
Returns the block length of the digest in bytes.

Digest::SHA256.new.digest_length * 8
# => 512
Digest::SHA384.new.digest_length * 8
# => 1024
Digest::SHA512.new.digest_length * 8
# => 1024

digest_length → Integer
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
在示例中,两者都使用了
digest\u length

但是应该是,

block_length → Integer
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_length → Integer
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
()

Ruby 1.9.3文档中关于该方法的描述似乎有误,因为在示例中,他们使用的是
digest\u length
方法,而不是
block\u length

使用
digest_block
实际获取显示的值
512
1024
、和
1024

Digest::SHA256.new.block_length * 8
# => 512

Digest::SHA384.new.block_length * 8
# => 1024

Digest::SHA512.new.block_length * 8
# => 1024
Digest::SHA256.new.block_length * 8
# => 512

Digest::SHA384.new.block_length * 8
# => 1024

Digest::SHA512.new.block_length * 8
# => 1024