2016-08-18 69 views
1

是否可以在没有签名的情况下创建JWT令牌?创建没有签名的JWT令牌?

我们有一个情况,我们不需要签名,但是需要令牌的其余部分。那么是否有可能在没有签名的情况下创建JWT令牌?

根据相关文档,创建令牌:

var token = jwt.sign 

命令,所以那种暗示的秘密是强制性的。

回答

2

根据RFC 7519

为了支持其中JWT内容由不同于(例如在数据上的签名的签名和/或加密包含在JWT 内的其他的装置 固定用例包含JWT的结构),JWT 也可以在没有签名或加密的情况下创建。不安全 JWT是JWS,其使用“alg”标题参数值“none”和 JWS签名值的空字符串,如JWA 规范[JWA]中所定义的;它是JWS声明集合 作为其JWS有效载荷的无担保JWS。

由于您没有提及您正在使用哪个库,我想您使用的是一个from auth0。虽然我没有测试它,但它似乎设置algorithmnone,使“无数字签名或MAC值”:

var token = jwt.sign({ foo: 'bar' }, cert, { algorithm: 'none'}); 
+0

这是否意味着你可以创建它没有签名,或不? –

+0

@ VilleMiekk-oja如此说文档! >没有数字签名或MAC值 –