VB.net расшифровывает зашифрованную строку rinjdael-128

Я пишу приложение VB.Net, которое читает и расшифровывает ответ от веб-службы JSON. У меня есть секретная фраза-пароль, и я могу без проблем расшифровать зашифрованную строку, используя инструменты онлайн-дешифрования и тому подобное. Однако мне еще предстоит выяснить, как писать код в VB.Net.

Ниже приведен пример зашифрованной строки, возвращаемой веб-службой JSON:

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

Ключ:

d40da16b8bc6b5e33ef3ae5f704edb2b

Я знаю, что это шифрование Rinjdael-128 и что строка должна быть декодирована Base64. Я просто не могу понять, код для этого в VB.Net. Я попробовал несколько примеров подобных лайков, но ничего, что я делаю, не дает ожидаемого результата. Ожидается, что JSON должен быть строкой в ​​формате JSON.

Вот моя последняя попытка, которая с треском провалилась:

Dim rmt As RijndaelManaged = New RijndaelManaged()

   Using rmt
       rmt.KeySize = 128
       rmt.Mode = CipherMode.CBC
       rmt.Padding = PaddingMode.ISO10126

       Dim ciphertext() As Byte = Convert.FromBase64String(json)

       Dim plaintext() As Byte = rmt.CreateDecryptor(Convert.FromBase64String(key), System.Text.Encoding.ASCII.GetBytes(InitialVector)).TransformFinalBlock(ciphertext, 0, ciphertext.Length)

       Dim decryptedtext As String = System.Text.Encoding.UTF8.GetString(plaintext)
                        Console.WriteLine(decryptedtext)
   End Using

Я был бы очень признателен за любую информацию или помощь, которую может предложить каждый.

Спасибо

2 ответа

Решение

Ответ, как и в большинстве случаев, заключается не столько в шифровании, сколько в (символьных) кодировках и знании того, как применяются IV и заполнение. Если вы исправите кодировку ключа, IV и используете правильное заполнение, то сообщение должно расшифроваться.

Этот ответ более или менее суммирует предложения в комментариях, которым удалось получить простой текст; самое главное, ключ был в шестнадцатеричном формате вместо base64.

Я построил эту DLL давно. Это работает для расшифровки Rijndael. Я надеюсь, что это решит вашу проблему:

Imports Microsoft.VisualBasic
Imports System.Security.Cryptography
Imports System.IO
Imports System.Text
Imports Microsoft.Win32

Public Class GateKeeper


    Public Function Decipher(ByVal vstrStringToBeDecrypted As String, ByVal vstrDecryptionKey As String) As String

        Dim bytDataToBeDecrypted() As Byte
        Dim bytTemp() As Byte
        Dim bytIV() As Byte = {121, 241, 10, 1, 132, 74, 11, 39, 255, 91, 45, 78, 14, 211, 22, 62}
        Dim objRijndaelManaged As New RijndaelManaged
        Dim objMemoryStream As MemoryStream
        Dim objCryptoStream As CryptoStream
        Dim bytDecryptionKey() As Byte

        Dim intLength As Integer
        Dim intRemaining As Integer
        Dim intCtr As Integer
        Dim strReturnString As String = String.Empty
        Dim achrCharacterArray() As Char
        Dim intIndex As Integer
        Dim StripNullCharactersFunc As New StringHandler

        bytDataToBeDecrypted = Convert.FromBase64String(vstrStringToBeDecrypted)

        intLength = Len(vstrDecryptionKey)


        If intLength >= 32 Then
            vstrDecryptionKey = Strings.Left(vstrDecryptionKey, 32)
        Else
            intLength = Len(vstrDecryptionKey)
            intRemaining = 32 - intLength
            vstrDecryptionKey = vstrDecryptionKey & Strings.StrDup(intRemaining, "X")
        End If

        bytDecryptionKey = Encoding.ASCII.GetBytes(vstrDecryptionKey.ToCharArray)

        ReDim bytTemp(bytDataToBeDecrypted.Length)

        objMemoryStream = New MemoryStream(bytDataToBeDecrypted)

        Try

            objCryptoStream = New CryptoStream(objMemoryStream, _
               objRijndaelManaged.CreateDecryptor(bytDecryptionKey, bytIV), _
               CryptoStreamMode.Read)

            objCryptoStream.Read(bytTemp, 0, bytTemp.Length)

            objCryptoStream.FlushFinalBlock()
            objMemoryStream.Close()
            objCryptoStream.Close()

        Catch

        End Try

        Return StripNullCharactersFunc.StripNullCharacters(Encoding.ASCII.GetString(bytTemp))

    End Function

End Class



Imports Microsoft.VisualBasic
Imports System.Text.RegularExpressions

Public Class StringHandler

    'lets get rid oof spaces
    Public Function StripNullCharacters(ByVal vstrStringWithNulls As String) As String
        'This function removes spaces from strings

        Dim intPosition As Integer
        Dim strStringWithOutNulls As String

        intPosition = 1
        strStringWithOutNulls = vstrStringWithNulls

        Do While intPosition > 0
            intPosition = InStr(intPosition, vstrStringWithNulls, vbNullChar)

            If intPosition > 0 Then
                strStringWithOutNulls = Left$(strStringWithOutNulls, intPosition - 1) & _
                                  Right$(strStringWithOutNulls, Len(strStringWithOutNulls) - intPosition)
            End If

            If intPosition > strStringWithOutNulls.Length Then
                Exit Do
            End If
        Loop

        Return strStringWithOutNulls

    End Function

End Class
Другие вопросы по тегам