I want to convert a decryted string to data string (that I can read the properties)
I tried code from here
string token ="eyJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJpc3N1ZXIiLCJzdWIiOiJzdWJqZWN0IiwiYXVkIjoiYXVkaWVuY2UiLCJleHAiOjE0NjAwMDIxNzEsIm5iZiI6MTQ1ODI3Mzg3MSwiaWRnSWQiOiIwMDAxNzI4MTcwIiwic2Vjb25kRmEiOiJmYWxzZSIsInJvbGVzIjoiW09OTElORV9UUkFESU5HLCBST0xFX09OTElORV9UUkFESU5HLCBPTkxJTkVfVklFV19BQ0NPVU5UX0lORk8sIFJPTEVfT05MSU5FX1ZJRVdfQUNDT1VOVF9JTkZPXSIsImN1c3RvbWVySWQiOiIwMDAxNzI4MTcwIiwidnRvc0F1dGhlbnRpY2F0ZWQiOiJmYWxzZSIsInVzZXJJZCI6IjUyNzY5IiwiY3VzdG9tZXJOYW1lIjoiTmd1eWVuIFZhbiBNIiwiZW1haWwiOiJtaW5odHE5MEBnbWFpbC5jb20iLCJ1c2VybmFtZSI6InRlc3QyMiIsInN0YXR1cyI6Ik9OTElORV9BQ1RJVkUifQ.CfcVsKidaHi6QEneYDfox9509SnIQUQZS6OUWf3jBN4OnTEQ-xFeHeIuQP6qgEK3b_0fLjWZ4OT7qnItLMKYg0vd68OxjDbHw79C4jQNnxq1EUgsEs72-gNNBV42n6I0R5VZy4t6AuKgHTFp6gN4fTisfA7vnX2Vq5Sg2faAoMl2nevN7F1P9YEWFPea9qoDqmPwGY72DvEauZNZmIb7OvtRvoBFAK_cIJvuRShIzUfQ5q4W4sMiRH92Ou_6S7k4NfqO8kOdoJkSqZCDlhJIdAmyW4IBsYc5TvgeoGIrzgKCVr2_1wM0RHXE3vq6oobe2rB68Rc8eQ0VYzH6fH4KQA";
var bytesToDecrypt = Convert.FromBase64String(token); // string to decrypt, base64 encoded
AsymmetricCipherKeyPair keyPair;
using (var reader = File.OpenText(@"c:\myprivatekey.pem")) // file containing RSA PKCS1 private key
keyPair = (AsymmetricCipherKeyPair) new PemReader(reader).ReadObject();
var decryptEngine = new Pkcs1Encoding(new RsaEngine());
decryptEngine.Init(false, keyPair.Private);
var decrypted = Encoding.UTF8.GetString(decryptEngine.ProcessBlock(bytesToDecrypt, 0, bytesToDecrypt.Length));
However, it throws exception in the 2nd line:
var bytesToDecrypt = Convert.FromBase64String(token); //exception
The exception is:
The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.
How to solve it?