Public Const PART_3 As String = "16RANDOMBYTESOne"
Public Const PART_4 As String = "16RANDOMBYTESTwo"
Public Sub AES_Encrypt(DataToEncrypt As String) As String
Dim poKG As KeyGenerator
Dim poCy As Cipher
Dim poBC As ByteConverter
Dim poData() As Byte
poCy.Initialize("AES/CBC/PKCS7Padding")
poCy.InitialisationVector = poBC.StringToBytes(Starter.PART_3, "utf8")
poKG.Initialize("AES")
poKG.KeyFromBytes(poBC.StringToBytes(Starter.PART_4, "utf8"))
poData = poCy.Encrypt(poBC.StringToBytes(DataToEncrypt, "utf8"), poKG.Key, True)
Return poBC.HexFromBytes(poData)
End Sub
Public Sub AES_Decrypt(HexEncodedString As String) As String
Dim poKG As KeyGenerator
Dim poCy As Cipher
Dim poBC As ByteConverter
Dim poData() As Byte
poData = poBC.HexToBytes(HexEncodedString)
poCy.Initialize("AES/CBC/PKCS7Padding")
poCy.InitialisationVector = poBC.StringToBytes(Starter.PART_3, "utf8")
poKG.Initialize("AES")
poKG.KeyFromBytes(poBC.StringToBytes(Starter.PART_4, "utf8"))
poData = poCy.Decrypt(poBC.HexToBytes(HexEncodedString), poKG.Key, True)
Return BytesToString(poData, 0, poData.Length, "utf8")
End Sub