Beispiel #1
0
        public Token(THeader h, TPayload p, IBase64URL coder, IJSONSerialization serialization, ISignaturer signaturer)
        {
            Header = h;
            Base64Header = coder.Encode(serialization.SerializeObject(h));

            Payload = p;
            Base64Payload = coder.Encode(serialization.SerializeObject(p));

            var encodedClearText = $"{Base64Header}.{Base64Payload}";
            Signature = signaturer.GetDigest(encodedClearText);
            Base64Signature = coder.Encode(Signature);

            Jwt = $"{Base64Header}.{Base64Payload}.{Base64Signature}";

            AuthorizedToken = true;
        }
Beispiel #2
0
        public Token(string jwt, IBase64URL coder, IJSONSerialization serialization, ISignaturer signaturer)
        {
            Jwt = jwt;

            var arr = jwt.Split('.');

            Base64Header = arr[0];
            Header = serialization.DeserializeObject<THeader>(coder.Decode(Base64Header));

            Base64Payload = arr[1];
            Payload = serialization.DeserializeObject<TPayload>(coder.Decode(Base64Payload));

            Base64Signature = arr[2];
            Signature = coder.Decode(Base64Signature);

            AuthorizedToken = IsAuthorizedToken(signaturer);
        }
Beispiel #3
0
 public JwtFactory(IBase64URL b, IJSONSerialization s, ISignaturer c)
 {
     _base64            = b;
     _jSONSerialization = s;
     _crypter           = c;
 }