Расшифровка закодированного base64 в токен для извлечения утверждений с использованием AES-CBC в C#C#

Место общения программистов C#
Ответить
Гость
 Расшифровка закодированного base64 в токен для извлечения утверждений с использованием AES-CBC в C#

Сообщение Гость »


В настоящее время я работаю над аутентификацией от внешней третьей стороны, которая отправляет нам закодированную строку base64, которую мы, в свою очередь, должны декодировать, а затем расшифровать, чтобы получить утверждения пользователя. Вот метод, который я создал на C# для расшифровки значения, которое мы получаем от них:

var key = Encoding.UTF8.GetBytes(_secretKey); байт [] iv; используя (var aesAlg = Aes.Create()) { вар decodedBytes = Convert.FromBase64String(_jwtEncryptedToken); iv = новый байт[16]; Array.Copy(decodedBytes, 0, iv, 0, iv.Length); aesAlg.Key = ключ; aesAlg.IV = iv; aesAlg.Mode = CipherMode.CBC; aesAlg.Padding = PaddingMode.PKCS7; Декриптор ICryptoTransform = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV); используя (var msDecrypt = новый MemoryStream(decodedBytes)) { используя (var csDecrypt = новый CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)) { используя (var srDecrypt = новый StreamReader(csDecrypt)) { вернуть srDecrypt.ReadToEnd(); } } } } Когда я пытаюсь протестировать его вместе с полученным закодированным кодом Base64, он всегда возвращает ошибку: «Входные данные не являются полным блоком»

П.С. Секретный ключ состоит из 16 символов, а _jwtEncryptedToken — это закодированный код base64, который я получаю

Может ли кто-нибудь помочь с этим?

Заранее спасибо.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»