Encryption JWT-什么算法;“更难破解”;

Encryption JWT-什么算法;“更难破解”;,encryption,jwt,Encryption,Jwt,使用基于JWT的身份验证,算法可以是[HS512、HS384、HS256…] 我的问题是: HS512算法比HS256“更难破解” 它们为什么共存 是的,输出更大,因此更难“猜测”,请参阅:HS512使用SHA-512哈希算法,HS256使用SHA-256 因为不同的目标环境需要不同形式的安全性,并且每种形式在处理和大小开销方面都有自己的成本;e、 g.SHA-512散列输出的大小是SHA-256散列输出的两倍,占用的内存/存储量是SHA-256散列输出的两倍,处理开销也大得多 顺便说一句,谢谢

使用基于JWT的身份验证,算法可以是[HS512、HS384、HS256…]

我的问题是:

  • HS512算法比HS256“更难破解”
  • 它们为什么共存
  • 是的,输出更大,因此更难“猜测”,请参阅:HS512使用SHA-512哈希算法,HS256使用SHA-256
  • 因为不同的目标环境需要不同形式的安全性,并且每种形式在处理和大小开销方面都有自己的成本;e、 g.SHA-512散列输出的大小是SHA-256散列输出的两倍,占用的内存/存储量是SHA-256散列输出的两倍,处理开销也大得多

  • 顺便说一句,谢谢@Hans Z,如果我的密钥包含unicode字符串,如
    ξưệ这将使“猜测”变得更加困难?我不会让139到154 MiB/s的处理开销大得多,慢了约11%,因此更难“猜测”。生成摘要慢了11%,同意,但生成摘要需要更多的处理collision@HansZ. 据我们所知,你不会制造碰撞,目前还没有人这样做。找到一个,然后成名。很好,你同意很难找到SHA512的冲突。选择哪个哈希算法不会在安全性或性能上产生任何真正的差异,它们本质上都是安全的。攻击将来自另一个方向,这是一个有趣的问题,请考虑一下。这更多的是一个实现论坛,Crypto StackExchange更多的是关于密码学。这不是关于散列密码,HS256/HS512是关于密钥散列消息身份验证代码,以实现完整性和身份验证;正如所说:“HMAC的加密强度取决于底层散列函数的加密强度、散列输出的大小以及密钥的大小和质量。”假设散列函数和密钥是固定的,SHA 512更强大,因此“更难破解”.3DES有一个168位的密钥,但它的安全性不如AES有一个128位的密钥。@HansZ。没有人在攻击散列,这是不可能的,他们在攻击潜在的消息,消息可能是密码。