private string GetRandomIV(int size = 16)
{
byte[] ivBytes = GetRandomData(size);
// Note that BitConverter.ToString returns the data as a Hex string but uses '-' in between
// each Hex digit (like 00-0F-ED). We don't want that so remove the dashes.
return BitConverter.ToString(ivBytes).Replace("-", string.Empty);
}