Я понял, что это будет довольно прямолинейно, но у меня есть проблема с получением моей функции шифрования AES для возврата Hex String. Я могу заставить его работать, когда я конвертирую его в Base64, но я не могу получить String с значениями Hex. Вот мой код. Любая помощь будет оценена по достоинству.AES Encryption Output Hex vb.net
Dim AES_ENCRYPTION As New System.Security.Cryptography.RijndaelManaged
Dim CODE_AES As New System.Security.Cryptography.MD5CryptoServiceProvider
Dim encrypted As String = ""
Try
Dim hash(31) As Byte
Dim temp As Byte() = CODE_AES.ComputeHash(System.Text.ASCIIEncoding.ASCII.GetBytes(pass))
Array.Copy(temp, 0, hash, 0, 16)
Array.Copy(temp, 0, hash, 15, 16)
AES_ENCRYPTION.Key = hash
AES_ENCRYPTION.Mode = CipherMode.ECB
Dim AES_ENCRYPTOR As System.Security.Cryptography.ICryptoTransform = AES_ENCRYPTION.CreateEncryptor
Dim Buffer As Byte() = System.Text.ASCIIEncoding.ASCII.GetBytes(input)
encrypted = (Conversion.Hex(AES_ENCRYPTOR.TransformFinalBlock(Buffer, 0, Buffer.Length)))
Catch ex As Exception
End Try
Return encrypted
Выберите ответ из [Как преобразовать байт-массив в шестнадцатеричную строку и наоборот?] (Http://stackoverflow.com/questions/311165/how-do-you-convert-byte-array-to- hexadecimal-string-and-vice versa) и конвертировать его в vb.net – CodesInChaos
Я также хочу отметить, что ваш криптовый слаб (ECB, без MAC, нет IV) и то, как вы относитесь к ключевому бессмысленному. Вы не используете соответствующий засоленный и медленный хэш пароля, например PBKDF2. Я не знаю, что должно сделать ваше странное копирование. Вы беззвучно испортили данные Unicode вне диапазона ASCII. – CodesInChaos
И вот почему я пришел в StackOverFlow. Это не проектный или производственный код. С этим нужно поиграть. Спасибо за ссылку. –