问题标签 [jose]
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.
jwt - 为什么客户端需要解密JWE?
如果我使用 JWE 发送加密的 JSON 消息,该消息将存储在客户端,用于授权,为什么客户端需要解密此消息?
客户端将 JWE 令牌附加到所有请求。服务器使用 JWE 令牌识别客户端并响应或拒绝请求。自始至终,只有服务器可以解密。
如果这个结构没有问题,那么最好的实现方式是什么?我应该使用非对称加密而不提供公钥(这在 JWE 规范中是否可行)?
沿着这些思路,确保 JWE 令牌没有被截获并且虽然没有被解密但附加到恶意服务器请求的最佳方法是什么,从而有效地允许攻击者冒充客户端?
另外,我还缺少其他安全问题吗?
javascript - 使用 node-jose,我如何解密我刚刚加密的数据?
我正在JOSE
encrypt
尝试decrypt
使用node-jose
.
我的代码如下(使用Node 8.2.1编写)
因此,通过此代码测试事物的加密方面工作正常
encrypted
结果是
但是当我尝试解密时,我得到了
使用示例很少,node-jose
因此我不确定以下内容
- 我假设我应该用私钥解密。但这只是一个假设。没有一个例子显示使用公钥/私钥对,只有一个密钥。
- 我假设加密的结果可以被字符串化并变成一个缓冲区并传递给
decrypt
但也许事实并非如此。
这真的如何运作?
c# - .NET Core 2.0 上的 JWT
我一直在冒险让 JWT 在 DotNet 核心 2.0 上工作(今天达到最终版本)。有大量的文档,但所有示例代码似乎都在使用已弃用的 API,并且对 Core 来说是新鲜的,弄清楚它应该如何实现确实令人眼花缭乱。我尝试使用 Jose,但应用程序。UseJwtBearerAuthentication 已被弃用,并且没有关于下一步做什么的文档。
有没有人有一个使用 dotnet core 2.0 的开源项目,它可以简单地从授权标头解析 JWT 并允许我授权对 HS256 编码的 JWT 令牌的请求?
下面的类没有抛出任何异常,但没有请求被授权,我也没有得到任何迹象表明它们为什么是未经授权的。响应是空的 401,所以对我来说这表明没有例外,但秘密不匹配。
一件奇怪的事情是,我的令牌是使用 HS256 算法加密的,但我没有看到任何指标告诉它强制它在任何地方使用该算法。
这是我到目前为止的课程:
jwt - Java 库以 JWE JSON 序列化格式解析 JWT 令牌
哪些开源 Java 库可用于解析/解密 JWE JSON 序列化格式的 JWT 令牌,如下所示
我在看 nimbus-jose ( https://connect2id.com/products/nimbus-jose-jwt/ ) 但我找不到任何相关的例子。我想使用一些开源库,它需要很少的编码,并且开箱即用地支持不同的加密算法。
node.js - 如何从nodejs中的jks密钥库中提取密钥
节点应用程序需要能够从 .jks 密钥库中获取不同的密钥,并使用它们来签署、验证、加密和解密 JWE 令牌。node-keytool 库允许我加载密钥库,但我不能在 node-jose 库中使用它来执行需要 JWK 集的操作。
有没有办法将 .jks 转换为 JWK 集?如果没有,我如何访问密钥库以便它在 node-jose 中可用?
webcrypto-api - JOSE:签名请求
JOSE 标准引入了签名 (JWS) 和加密数据 (JWE),它们描述了已签名或加密的数据包。但是我找不到“签名请求”或“加密请求”(可以使用 JWE 作为解密请求)。
我想问一个远程端,作为共享秘密所有权的证明,“使用这个算法和这个密钥给我签名这些字节”,其响应是一个 JWS 以及“使用这个密钥加密这些字节”,响应是 JWE。
我试图不在这里重新发明轮子,在阅读 JOSE 规范时,我找不到任何可能有用的东西。这似乎是一种常见的请求类型,我想知道为什么/如何将其排除在外。
javascript - node-jose 解释/示例?
我想将基于令牌的身份验证与 JWT 一起使用(如果可能,请签名并加密)。我在服务器端使用 NodeJS。
我正在尝试使用这个 node-jose 模块:https ://github.com/cisco/node-jose
我不太了解生成/存储密钥和加密算法。即使文档看起来很清楚,我也不了解部分密钥和密钥存储(直到签名部分): https ://github.com/cisco/node-jose#keys-and-key-stores
- 我需要如何生成以及需要在我的服务器节点应用程序中存储密钥的位置,然后才能允许我签署和验证我的令牌?我需要使用对称密钥或不对称公钥私钥对吗?
我想这取决于我需要什么,但由于我的加密水平,我不知道我需要什么......
然后在签名部分,当我需要使用密钥时,我不太了解这部分https://github.com/cisco/node-jose#keys-used-for-signing-and-verifying
- 我如何知道 OCT、EC、RSA 等之间使用哪一种?最后,他们在签名部分谈论的输入缓冲区是什么?
我可以对这些问题进行解释/举例吗?
先感谢您。
spring - 如何在 Spring Security 5.xx 应用程序中为 OpenId Connect 客户端配置 JWE 密钥?
是否可以使用 spring security 5.xx 为 spring boot 2.0 应用程序配置或自动连接 JWE 密钥选择器,以便能够解密从 OpenId 连接提供程序接收到的 id_oken?
JWS 密钥可以由 spring security oauth2客户端注册属性定义。但是我没有找到为spring security oauth使用的 JWTDecoder 指定JWEKeySelector的方法。
提前致谢!
依赖项:
php - Spomkylabs 何塞 PHP
我需要使用内容加密密钥 + IV 解密我的 cipherText,并根据 AAD 验证它并使用 A128CBC-HS256 进行标记。我发现这个图书馆正在这样做。但是,我会使用它吗?我搜索了其他 jwe 库,但它们只解密密文而不使用 aad 和标签进行验证。
我已经尝试实现该库,但我遇到了错误,并且文档对像我这样的新手没有帮助。
我也尝试过 php 的 openssl_decrypt,但它只适用于 GCM 和 CCM,不适用于 CBC。