我有一个由Amazon Cognito生产的JWT令牌。我想使用POCO C ++ JWT ultilites验证令牌,但是我不知道如何创建RSAKey对象。 JWT令牌使用RS256签名,AWS提供包含以下格式(relevant docs here)的公共密钥的文件:
{
"keys": [{
"alg": "RS256",
"e": "AQAB",
"kid": "abcdefghijklmnopqrsexample=",
"kty": "RSA",
"n": "lsjhglskjhgslkjgh43lj5h34lkjh34lkjht3example",
"use": "sig"
}, {
"alg":
"RS256",
"e": "AQAB",
"kid": "fgjhlkhjlkhexample=",
"kty": "RSA",
"n": "sgjhlk6jp98ugp98up34hpexample",
"use": "sig"
}]
}
我已经阅读过POCO C++ JWT docs来验证JWT令牌,但是他们使用HMAC密钥来验证令牌,而我(认为我没有)。
可以创建POCO :: JWT :: Signer类以使用RSA,但是我不知道如何将从AWS中获得的数据转换为RSAKey constructors接受的格式。