首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HMAC-SHA256中使用128位密钥安全吗?

在HMAC-SHA256中使用128位密钥安全吗?
EN

Stack Overflow用户
提问于 2012-08-31 08:13:19
回答 2查看 15.2K关注 0票数 6

Facebook app secret是一个32个字符的字符串(0-9,a-f),因此它代表一个128位字节数组。Facebook uses this as the key to generate signed request using HMAC-SHA256。这是正确的用法吗?我认为HMAC-SHA256应该使用256位密钥。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-31 08:52:35

页面上说256位的是由一个有效载荷(脸书正在签署的)+你的128位派生而来的。

所以,是的,这听起来像是正确的用法。

秘密的16字节(32个字符)实际上不是密钥,因为它用于加密和解密某些东西。相反,它是一小部分数据(一种盐),用于改变数字签名的结果,通过非常轻微地更改输入,以便只有知道确切秘密和确切有效负载的人才能创建签名。

票数 6
EN

Stack Overflow用户

发布于 2012-08-31 09:04:51

如果密钥的长度大于散列的内部块大小,则HMAC获取散列(密钥)并将其用作密钥。因此,大于散列的内部块大小的密钥并不比相同大小的密钥提供更好的安全性。根据HMAC规范,较短的密钥被零填充以等于散列的内部块大小。

不可能将128位密钥与HMAC-SHA-256一起使用。

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

https://stackoverflow.com/questions/12207343

复制
相关文章

相似问题

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