JWT令牌的最佳密码/加密建议
问题描述:
我最近在我们的服务器上运行了一些负载测试,并注意到我们的JWT令牌序列化/反序列化似乎是一个相当严重的瓶颈。这可能是由于我们使用的是2048自签密钥。我想知道什么密码和加密大小可以接受安全明智,但也减少负载?JWT令牌的最佳密码/加密建议
所有针对我们的API的交易都已经是SSL'd,所以我正在做一个基本的假设,即一个较弱的密钥不会有问题。我们也经常过期令牌。
建议将不胜感激。
答
我猜你正在使用不对称的RSA密钥对。 RSA签名比HMAC慢。如果您不需要客户端验证令牌(可能因为您使用SSL而客户端已在检查服务器证书),您可以使用来提高性能,您可以用HMAC替换RSA而不影响安全。
请注意,JWT通常是签名的,而不是加密的。有效负载是base64编码的,因此任何拥有JWT的人都可以读取其内容。
签名确保发行人的身份并保护令牌免受更改。如果您想隐藏内容,则可以将JWE加密应用于智威汤逊,但您的性能会降低。检查你的库是否支持它。
security.stackexchange.com可能是一个更好的网站来问这个问题。除此之外,SSL只能防止在传输过程中嗅探或修改,这只是几种攻击媒介之一。 –
啊,谢谢你,好点=) – pilotguy
我猜你正在使用不对称的RSA密钥对。 RSA签名比HMAC慢。如果您不需要客户端验证令牌(可能因为使用SSL而客户端已在检查服务器证书),为了提高性能,您可以用HMAC替换RSA而不影响安全性。请注意,JWT已签名,未加密 – pedrofb