首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JWT最快算法

JWT最快算法
EN

Stack Overflow用户
提问于 2019-05-07 18:51:31
回答 1查看 559关注 0票数 4

我正在开发一个web应用程序,它使用这个JWT-库来实现安全。我注意到,处理令牌解密的JWT库占用了服务器的大量CPU。当前配置的定义如下所示。

代码语言:javascript
复制
JweAlgorithm.PBES2_HS512_A256KW, JweEncryption.A256CBC_HS512

在测试时,对此的1000个后续调用将使用87s。我找到的最快的替代方案是:JweAlgorithm.PBES2_HS256_A128KW, JweEncryption.A128GCM,采用27s

你能推荐比那更快的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-07 20:37:57

通常,与使用公钥/密钥对(非对称)的算法相比,具有共享秘密(对称)的算法速度更快。

算法PBES2-HS512+A256KW是一个对称的算法,但是它有一个专用性:它有一个salt和一个iteration count参数,而add computational expense要故意慢下来。

RFC7518建议最小值为1000个迭代,而OWASP需要“一个数字,表示目标系统上的计算时间必须至少1秒(例如1000.000 )”。

算法的效率主要取决于您使用的JWT实现和背后的密码工具。对于PHP,一些密钥加密算法只需要400 s(例如,X25519曲线上的ECDH),而另一些算法则需要超过2.5ms (PBES2 2+ES 384-A192KW,加上512位salt和4096迭代计数)。

我建议运行基准测试,为您的用例和环境找到最合适的算法。

“最快”并不意味着“最安全”

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

https://stackoverflow.com/questions/56028832

复制
相关文章

相似问题

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