Public Sub AESEncrypt(dataToEncrypt As String, MyAESPW As String) As String
Dim SU As StringUtils
Dim kg As KeyGenerator
Dim C As Cipher
Dim md As MessageDigest
Dim encrypted() As Byte
kg.Initialize("AES")
kg.KeyFromBytes(md.GetMessageDigest(MyAESPW.GetBytes("UTF8"), "MD5"))
C.Initialize("AES/ECB/PKCS7Padding")
encrypted = C.Encrypt(dataToEncrypt.GetBytes("UTF8"), kg.Key, False)
Return SU.EncodeBase64(encrypted)
End Sub
Public Sub AESEncrypt(dataToEncrypt As String, MyAESPW As String) As String
Dim SU As StringUtils
Dim C As Cipher
Dim iOption As Int = Bit.Or(C.OPTION_PKCS7Padding,C.OPTION_ECBMode)
Dim bData() As Byte = C.Encrypt2(dataToEncrypt.GetBytes("utf8"),MyAESPW.GetBytes("utf8"),"AES",Null,iOption)
Return SU.EncodeBase64(bData)
End Sub
Public Sub AESEncrypt(dataToEncrypt As String, MyAESPW As String) As String
Dim SU As StringUtils
Dim md As MessageDigest
Dim C As Cipher
Dim bMD() As Byte = md.GetMessageDigest(MyAESPW.GetBytes("UTF8"),"MD5")
Dim iOption As Int = Bit.Or(C.OPTION_PKCS7Padding,C.OPTION_ECBMode)
Dim bData() As Byte = C.Encrypt2(dataToEncrypt.GetBytes("utf8"),bMD,"AES",Null,iOption)
Return SU.EncodeBase64(bData)
End Sub
Thanks. That did the trick. For anyone else that it might help:
B4X:Public Sub AESEncrypt(dataToEncrypt As String, MyAESPW As String) As String Dim SU As StringUtils Dim md As MessageDigest Dim C As Cipher Dim bMD() As Byte = md.GetMessageDigest(MyAESPW.GetBytes("UTF8"),"MD5") Dim iOption As Int = Bit.Or(C.OPTION_PKCS7Padding,C.OPTION_ECBMode) Dim bData() As Byte = C.Encrypt2(dataToEncrypt.GetBytes("utf8"),bMD,"AES",Null,iOption) Return SU.EncodeBase64(bData) End Sub
Public Function AES_Decrypt(ByVal input As String, ByVal pass As String) As String
Dim AES As New RijndaelManaged
Dim Hash_AES As New MD5CryptoServiceProvider
Dim decrypted As String = ""
Try
Dim hash(31) As Byte
Dim temp As Byte() = Hash_AES.ComputeHash(ASCIIEncoding.ASCII.GetBytes(pass))
' Array.Copy(temp, 0, hash, 0, 16)
' Array.Copy(temp, 0, hash, 15, 16)
' AES.Key = hash
AES.Key = temp ' Erel
AES.Mode = CipherMode.ECB
AES.Padding = PaddingMode.PKCS7
Dim DESDecrypter As ICryptoTransform = AES.CreateDecryptor
Dim Buffer As Byte() = Convert.FromBase64String(input)
decrypted = ASCIIEncoding.ASCII.GetString(DESDecrypter.TransformFinalBlock(Buffer, 0, Buffer.Length))
Return decrypted
Catch ex As Exception
Return "Error"
End Try
End Function
Thank youTry this ...
VB.NET code on the other end.
B4X:Public Function AES_Decrypt(ByVal input As String, ByVal pass As String) As String Dim AES As New RijndaelManaged Dim Hash_AES As New MD5CryptoServiceProvider Dim decrypted As String = "" Try Dim hash(31) As Byte Dim temp As Byte() = Hash_AES.ComputeHash(ASCIIEncoding.ASCII.GetBytes(pass)) ' Array.Copy(temp, 0, hash, 0, 16) ' Array.Copy(temp, 0, hash, 15, 16) ' AES.Key = hash AES.Key = temp ' Erel AES.Mode = CipherMode.ECB AES.Padding = PaddingMode.PKCS7 Dim DESDecrypter As ICryptoTransform = AES.CreateDecryptor Dim Buffer As Byte() = Convert.FromBase64String(input) decrypted = ASCIIEncoding.ASCII.GetString(DESDecrypter.TransformFinalBlock(Buffer, 0, Buffer.Length)) Return decrypted Catch ex As Exception Return "Error" End Try End Function
Public Function AES_Decrypt(ByVal input As String, ByVal pass As String) As String
Dim AES As New RijndaelManaged
Dim Hash_AES As New MD5CryptoServiceProvider
Dim decrypted As String = ""
Try
Dim hash(31) As Byte
Dim temp As Byte() = Hash_AES.ComputeHash(ASCIIEncoding.ASCII.GetBytes(pass))
' Array.Copy(temp, 0, hash, 0, 16)
' Array.Copy(temp, 0, hash, 15, 16)
' AES.Key = hash
AES.Key = temp ' Erel
AES.Mode = CipherMode.ECB
AES.Padding = PaddingMode.PKCS7
Dim DESDecrypter As ICryptoTransform = AES.CreateDecryptor
Dim Buffer As Byte() = Convert.FromBase64String(input)
decrypted = ASCIIEncoding.ASCII.GetString(DESDecrypter.TransformFinalBlock(Buffer, 0, Buffer.Length))
Return decrypted
Catch ex As Exception
Return "Error"
End Try
End Function
Thank you very much! I referred to thisHere you go.
B4X:Public Function AES_Decrypt(ByVal input As String, ByVal pass As String) As String Dim AES As New RijndaelManaged Dim Hash_AES As New MD5CryptoServiceProvider Dim decrypted As String = "" Try Dim hash(31) As Byte Dim temp As Byte() = Hash_AES.ComputeHash(ASCIIEncoding.ASCII.GetBytes(pass)) ' Array.Copy(temp, 0, hash, 0, 16) ' Array.Copy(temp, 0, hash, 15, 16) ' AES.Key = hash AES.Key = temp ' Erel AES.Mode = CipherMode.ECB AES.Padding = PaddingMode.PKCS7 Dim DESDecrypter As ICryptoTransform = AES.CreateDecryptor Dim Buffer As Byte() = Convert.FromBase64String(input) decrypted = ASCIIEncoding.ASCII.GetString(DESDecrypter.TransformFinalBlock(Buffer, 0, Buffer.Length)) Return decrypted Catch ex As Exception Return "Error" End Try End Function
Sub AESDecrypt(DataToDecrypt As String) As String
Dim SU As StringUtils
Dim MD As MessageDigest
Dim C As Cipher
Dim AES_PW As String = "xxxxx"
Dim bMD() As Byte = MD.GetMessageDigest(AES_PW.GetBytes("UTF8"), "MD5")
Dim iOption As Int = Bit.Or(C.OPTION_PKCS7Padding, C.OPTION_ECBMode)
Dim bData() As Byte = C.Decrypt2(SU.DecodeBase64(DataToDecrypt), bMD, "AES", Null, iOption)
Return BytesToString(bData, 0, bData.Length, "UTF8")
End Sub
Thank you anyway!I've been hanging around in here for twelve years and I think you are the first person I have ever actually helped.