[VB6 equivalent: AES256_BytesMode]
Dim strOutput As String Dim strInput As String Dim sCorrect As String Dim abKey() As Byte Dim abInitV() As Byte Dim abResult() As Byte Dim abData() As Byte ' Set up input in byte arrays strInput = "Now is the time for all good men" sCorrect = "36161E5B4B62401A5B57996F7D6839D34E181930DEBBAEBE84AE01139E9581A6" abKey = _ Cnv.FromHex("000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f") abInitV = Cnv.FromHex("FEDCBA9876543210FEDCBA9876543210") abData = System.Text.Encoding.Default.GetBytes(strInput) ' Pre-dimension output array Console.WriteLine("KY=" & " " & Cnv.ToHex(abKey)) Console.WriteLine("IV=" & " " & Cnv.ToHex(abInitV)) Console.WriteLine("PT=" & " " & Cnv.ToHex(abData)) ' Encrypt in one-off process abResult = Aes256.Encrypt(abData, abKey, Mode.CBC, abInitV) Console.WriteLine("CT=" & " " & Cnv.ToHex(abResult)) Console.WriteLine("OK=" & " " & sCorrect) Debug.Assert(sCorrect = Cnv.ToHex(abResult)) ' Now decrypt back abResult = Aes256.Decrypt(abData, abKey, Mode.CBC, abInitV) strOutput = System.Text.Encoding.Default.GetString(abData) Console.WriteLine("P'=" & " " & strOutput) ' Check Debug.Assert(strOutput.ToLower = strInput.ToLower)
See Also:
Aes256.Decrypt Method (Byte[], Byte[], Mode, Byte[])
Aes256.Encrypt Method (Byte[], Byte[], Mode, Byte[])