Как правильно получить jwt токен?
Использую либу jose-jwt. При отправке на сервер ругается - говорит malformed jwt. Подскажите где я допустим ошибку
string PrivKey = "{" +
"\"kty\":\"EC\",\"alg\":\"ES256\",\"crv\":\"P-256\"," +
"\"x\":\"pSH0jvbtVZiseTpJZk0_yfudEIv86uwjeH_gr1qmOGA\"," +
"\"y\":\"eGdC9EIGmhCheM_T8vhS4Qwk7RfaPRBxF3W5omgBc_M\"," +
"\"d\":\"DuSjR5eZBp5S-9HNKA8kRQFA_3Akkept-dTbwFoq_3w\"" +
"}";
var js = new JavaScriptSerializer();
var jwk = js.Deserialize<IDictionary<string, string>>(PrivKey);
byte[] x = Base64Url.Decode(jwk["x"]);
byte[] y = Base64Url.Decode(jwk["y"]);
byte[] d = Base64Url.Decode(jwk["d"]);
var headers = new Dictionary<string, object>()
{
{ "kid", 2}
};
var payload = new Dictionary<string, object>()
{
{ "email", "[email protected]" },
{ "aud", "usr" },
{ "iat", ts},
{ "jti", Guid.NewGuid().ToString() },
};
var privateKey = EccKey.New(x, y, d);
string token = Jose.JWT.Encode(payload, privateKey, JwsAlgorithm.ES256,headers);