spring-security - 如何在 Spring Boot Oauth (spring-security-jwt) 中使用椭圆曲线签署 JWT?
问题描述
我曾经ssh-keygen -t ecdsa -b 521
创建一个示例 EC 密钥对。然后,我尝试将其连接到 spring oauth 流程中,但我无法弄清楚。
存在org.springframework.security.jwt.crypto.sign.EllipticCurveVerifier但没有 EC 签名者。此外,我找不到从字符串形式的静态 EC 密钥对创建 ECPublicKey 和 ECPrivateKey 的示例。
RSA 对签署 JWT 的支持很简单。org.springframework.security.jwt.crypto.sign.RsaSigner 和 RsaVerifier 类使得使用字符串形式的静态 RSA 密钥对签名和验证令牌变得非常容易。我期待着类似的东西。我错过了什么吗?
更新
我认为即使使用 Signer 和 SignatureVerifier 的自定义实现也不支持它 - https://github.com/spring-projects/spring-security-oauth/blob/master/spring-security-jwt/src/main/java/ org/springframework/security/jwt/JwtAlgorithms.java#L30-L34
您不能使用 JwtHelper 类,因为支持的算法是硬编码的。
我想知道如果不支持 ecdsa,EC* 类应该做什么?
解决方案
推荐阅读
- python - Keras:使用 predict_generator 预测新值
- django - 每次我想访问我的项目时都必须安装 django 吗?
- powershell - 如何在连接期间检查复制的域控制器是否处于活动状态
- angular - Angular 7 无法为 mat-select 表单控件设置值
- r - RPushbullet 不适用于计划任务
- sql - 识别计算列并从中读取值
- python-3.x - 如何连接序列 LSTM Keras 网络的两个输入?
- c# - 用户第一次没有更改注册表(Shell 值),但在第二次尝试远程更改时进行了更改
- swift - 如何动画显示以表格形式呈现的 NSViewController 的大小变化?
- javascript - jQuery-UI:即使鼠标在放置区域内,拖放有时也不起作用