Removes the padding from a hex-encoded encryption block.
VB6/VBA
Debug.Print "Testing PAD_UnpadHex ..."
Dim strInputHex As String
Dim strOutputHex As String
strInputHex = "FFFFFFFFFF030303"
Debug.Print "Input data= '" & strInputHex & "'"
strOutputHex = unpadHexString(strInputHex, API_BLK_TDEA_BYTES)
Debug.Print "Result= '" & strOutputHex & "'"
strInputHex = "0808080808080808"
Debug.Print "Input data= '" & strInputHex & "'"
strOutputHex = unpadHexString(strInputHex, API_BLK_TDEA_BYTES)
Debug.Print "Result= '" & strOutputHex & "'"
' Bad input data results in the same data being returned
strInputHex = "FFFFFFFFFFFFFFFF"
Debug.Print "Input data= '" & strInputHex & "'"
strOutputHex = unpadHexString(strInputHex, API_BLK_TDEA_BYTES)
Debug.Print "Result= '" & strOutputHex & "'"
If Len(strOutputHex) = Len(strInputHex) Then
Debug.Print "DECRYPTION ERROR"
End If
Output
Testing PAD_UnpadHex ... Input data= 'FFFFFFFFFF030303' Result= 'FFFFFFFFFF' Input data= '0808080808080808' Result= '' Input data= 'FFFFFFFFFFFFFFFF' Result= 'FFFFFFFFFFFFFFFF' DECRYPTION ERROR
VB.NET
Console.WriteLine("Testing PAD_UnpadHex ...") Dim strInputHex As String Dim strOutputHex As String strInputHex = "FFFFFFFFFF030303" Console.WriteLine("Input data= '" & strInputHex & "'") strOutputHex = Tdea.Unpad(strInputHex) Console.WriteLine("Result= '" & strOutputHex & "'") strInputHex = "0808080808080808" Console.WriteLine("Input data= '" & strInputHex & "'") strOutputHex = Tdea.Unpad(strInputHex) Console.WriteLine("Result= '" & strOutputHex & "'") ' Bad input data results in the same data being returned strInputHex = "FFFFFFFFFFFFFFFF" Console.WriteLine("Input data= '" & strInputHex & "'") strOutputHex = Tdea.Unpad(strInputHex) Console.WriteLine("Result= '" & strOutputHex & "'") If Len(strOutputHex) = Len(strInputHex) Then Console.WriteLine("DECRYPTION ERROR") End If
[Contents]