首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >沙-256填料

沙-256填料
EN

Stack Overflow用户
提问于 2013-06-07 11:43:17
回答 1查看 5.5K关注 0票数 3

要计算SHA-256散列,我需要填充我的消息。正在使用以下描述:(摘自http://csrc.nist.gov/groups/STM/cavp/documents/shs/sha256-384-512.pdf)

按通常的方式填充消息:假设消息M的长度(以位为单位)为l,将位"1“附加到消息的末尾,然后k为零位,其中k是方程l+1+k 448 mod 512的最小非负解。添加64位块,该块等于以二进制形式写入的数字l。

但是,如果以位为单位的消息长度小于512位块的64位,那么该怎么办呢?也就是说,上面提到的64位块的结尾没有空间吗?或者64位长和"1“位?

我也看过维基百科,但这并没有给这个主题带来更多的启发。谷歌搜索也不太有成效,如果有任何建议,我会很感激的:)

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-07 11:45:04

如果您的消息只是缺一个完整的块(不足65位),则需要您的输出比输入长一个块。在最坏的情况下,如果您的消息正好与完整块相距64位,您将在"number“位之前添加一个1,然后再添加511个0,但这就是填充的工作方式。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16983301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档