问题标签 [json-web-signature]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1406 浏览

jwt - 什么时候使用不受保护的 JWS 标头?

我不明白为什么存在 JWS 不受保护的标头。

对于某些上下文:JWS 未受保护的标头包含不受完整性保护的参数,并且只能在 JSON 序列化的每个签名中使用。

如果它们可以用作顶级标题,我可以理解为什么有人可能想要包含一个可变参数(这不会改变签名)。然而,这种情况并非如此。

谁能想到一个用例或知道它们为什么包含在规范中?

谢谢!

JWS 规范

0 投票
1 回答
1049 浏览

json - 在使用 JWS JSON 序列化的 JWS 中具有多个签名的用例是什么?

我阅读了可以在此处找到的 JSON Web 签名规范。该规范为 JSON Web 签名定义了两种序列化表示。一种是 JWS 紧凑序列化方法,另一种是 JWS JSON 序列化方法。JWS JSON 序列化表示允许一个人拥有多个签名。使用 JWS JSON 序列化的 JWS 示例如下:

该规范暗示有时拥有多个签名可能是有益的。但是,我一辈子都想不出一个你需要不止一个的理由。

那么,话虽如此,在 JWS 中拥有多个签名的用例是什么?

0 投票
0 回答
1139 浏览

php - 验证自定义创建令牌的 JWT 令牌签名

我是 PHP 新手(Laravel),我正在使用tymon JWT library. 我生成了一个自定义令牌,现在我想要一种方法来验证它的签名,知道令牌不会被提取headerrequest对象它就像一个独立的令牌ex:eyJ0eXAiOiJK.eyJzddSwsd.C1PCr4D

JWT tokens用于身份验证以外的其他目的,因此这种验证凭据的方法无济于事或middlewares

0 投票
1 回答
278 浏览

node.js - 使用任何签名验证节点 jsonwebtoken

我正在使用 jsonwebtoken 库来签名和创建用于 API 安全的 JWT,

当我尝试使用有效验证签名并JWT_SECRET_TOKEN在使用错误时引发错误时,代码看起来工作正常JWT_WRONG_TOKEN

但是,当我复制令牌并将其放入https://jwt.io/时,
它会显示Signature Verified我输入的任何秘密。

以下是我的代码 -

参考 -
1. https://www.npmjs.com/package/jsonwebtoken
2. https://jwt.io/

我究竟做错了什么?
我该如何解决?

0 投票
1 回答
1031 浏览

java - 如何验证标头中有“crit”值的 JWSObject?

我正在尝试编写一些代码来使用我在 Java 中遵循 JOSE 标准的私钥/公钥来签名和验证有效负载。我需要为此使用 PS256 加密算法。

我正在使用 connect2id 的库Nimbus JOSE + JWT。我能够使用从文件系统加载的私钥对有效负载进行签名,并且还可以对其进行验证。但是,作为我要求的一部分,我的标头需要有一个“crit”值(解释为RFC-7515的一部分)。

我的问题如下:只要我在标题中有一个“crit”值,我的令牌验证就会失败(即使“crit”数组中的值存在于我的 jws 标题中,按照标准的要求)。如果我取出“crit”,则签名被正确验证。

我希望签名能够得到正确验证,因为“crit”中的值存在于给定的令牌中。一旦我删除带有 的行.criticalParams(crit),验证就会毫无问题地通过。

有人可以帮我解决这个问题吗?我是否误解了某些东西或遗漏了一些明显的细节?

0 投票
1 回答
124 浏览

node.js - 这是令牌认证的更好方法。JWT 或任何其他方法

我在我的网站上使用 JWT 身份验证来获取登录数据。看起来我们可以在没有密钥的情况下解码 JWT 令牌。试试下面的网站。这让我很震惊。那么除了 JWT Token 身份验证之外,还有没有更好的令牌身份验证方法。

http://calebb.net/

您可以尝试使用任何键。来自站点https://medium.com/@siddharthac6/json-web-token-jwt-the-right-way-of-implementing-with-node-js-65b8915d550e的示例

Token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhMSI6IkRhdGEgMSIsImRhdGEyIjoiRGF0YSAyIiwiZGF0YTMiOiJEYXRhIDMiLCJkYXRhNCI6IkRhdGEgNCIsImlhdCI6MTUyNTE5MzM3NywiZXhwIjoxNTI1MjM2NTc3LCJhdWQiOiJodHRwOi8vbXlzb2Z0Y29ycC5pbiIsImlzcyI6Ik15c29mdCBjb3JwIiwic3ViIjoic29tZUB1c2VyLmNvbSJ9.ID2fn6t0tcoXeTgkG2AivnG1skctbCAyY8M1ZF38kFvUJozRWSbdVc7FLwot-bwV8k1imV8o0fqdv5sVY0Yzmg

0 投票
1 回答
1856 浏览

python - TimedJSONWebSignatureSerializer vs URLSafeTimedSerializer:我什么时候应该使用什么?

我发现TimedJSONWebSignatureSerializerURLSafeTimedSerializer。我想知道为什么存在这两种方法。作为该库的用户,选择其中一个的原因是什么?

我试过的

我什至没有TimedJSONWebSignatureSerializer文档中找到,但只有一些关于 JSON Web Signatures 的一般信息

查看继承没有帮助:

  • TimedJSONWebSignatureSerializer继承自JSONWebSignatureSerializer
  • URLSafeTimedSerializer继承自URLSafeSerializerMixin,TimedSerializer

查看构造函数,我的印象是两者可能适用于相同的用例,但也许 JSON Web 签名是标准化的,而另一个不是?

用法

然后

因此 JSON Web 签名要长得多。拥有它你会赢得什么?

0 投票
1 回答
1682 浏览

c# - 如何解码 JSON Web Token 的签名部分

我有以下 JSON Web 令牌:-

现在,如果我对它进行 base64 解码,我会得到:-

它的最后一部分,即签名没有被解码。它显示了一些奇怪的字符(�T;�O��9��VU��( \���!�B��W�)。我也想对其进行解码,以便知道它的确切值。

我怎样才能解码它?

0 投票
1 回答
4257 浏览

c# - 如何在 ASP.NET MVC 和 C# 中创建 JSON Web 签名 (JWS)

我是 JWS 概念的新手,并被要求在 C# 中为 JSON 签名创建一个片段。我们将有多个签名,因此每次对 JSON 有效负载进行签名时,都会将其添加到签名中。

我检查了 JWS JSON 序列化以及如何在多个签名的情况下使用它。

以下是用于签名和加密的代码:

但是我们如何实现 JSON 签名呢?

我需要帮助实现我们如何使用 SignedXML 逻辑,以使用 x509 证书签署 XML 文档。

0 投票
1 回答
485 浏览

.net-core - 从 JSON 创建一个 JsonWebKey

我有一个包含我的 jwks 值的 url。看起来像这样

我尝试获取该 json,并将其输入到 JsonWebKey 构造函数中,如下所示:

当我这样做时,类中的任何值都不会被填充。获得值的东西是 AdditionalData 字段。它得到了所有的 json 放在那里。

有没有办法让 JsonWebKey 构造函数真正解析出 Json?