INNER CODE UNIT · C#
paddingLength
sdrapkin/SecurityDriven.Inferno · EtM_CBC.cs:32
int paddingLength = AES_IV_LENGTH - finalBlockLength;
return CONTEXT_BUFFER_LENGTH + plaintext.Count + paddingLength + MAC_LENGTH;
}
static void ValidateAes(Aes aes) // detect & fix any Mode/Padding deviation
{
if (aes.Mode == CipherMode.CBC && aes.Padding == PaddingMode.PKCS7) return;
aes.Mode = CipherMode.CBC;
aes.Padding = PaddingMode.PKCS7;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
static void ClearKeyMaterial()
{
Array.Clear(_encKey.Value, 0, ENC_KEY_LENGTH);
Array.Clear(_macKey.Value, 0, MAC_KEY_LENGTH);
Array.Clear(_sessionKey.Value, 0, HMAC_LENGTH);
}