QuercusVL Programming Manual
with an initialization vector included in the message.
An encrypted message is formatted as follows:
Where:
●
Original message: original message.
●
OriginalLen: size in bytes of the original message. This is a needed field as AES
encryption always uses 16 bytes blocks in order to round up the size of the original
message to the next integer multiple of 16.
●
IV: initialization vector used for message codification.
●
Encrypted m padding: original message enc necessary bytes to make
it multiple of 16.
The type of AES codification will depend on the password length. For passwords up to 16
characters AES-128 will be used, AES-192 for passwords between 17 and 24 characters and
AES 256 for passwords between 25 and 32 characters. The AES key will be obtained with the
password and the rest of bytes set to zero until the total length of the key is filled.
Quercus Technologies
226
1-16
Password
Padding(000...)
Padding(000...)
Padding(000...)
17-24
Password
25-32
Password
key
key
key
AES-128
AES-192
AES-256
4
OriginalLen
16
IV
16*n
Encrypted message Padding
Original message
AES