Skip to content

Malformed JWT #2

Description

@ahvahsky2008

Не могу использовать вашу либу, так как там net.core, а у меня net4.6. Использую 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", "bitzlato.demo@gmail.com" },
                    { "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);

            HttpClientHandler handler = new HttpClientHandler()
            {
                Proxy = new WebProxy("http://127.0.0.1:8888"),
                UseProxy = true,
            };
            var httpClient = new HttpClient(handler);
            httpClient.DefaultRequestHeaders.Authorization =
                new AuthenticationHeaderValue("Bearer", token);


            var who = Task.Run(async () => await
                httpClient.GetStringAsync("https://demo.bitzlato.com/api/auth/whoami")
            ).GetAwaiter().GetResult();

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions