public static byte[] EncryptData(byte[] data, ToxEncryptionKey key, out ToxErrorEncryption error)
{
if (data == null)
throw new ArgumentNullException("data");
if (key == null)
throw new ArgumentNullException("key");
byte[] output = new byte[data.Length + EncryptionExtraLength];
var pass = key.ToPassKey();
error = ToxErrorEncryption.Ok;
if (!ToxEncryptionFunctions.PassKeyEncrypt(data, (uint)data.Length, ref pass, output, ref error) || error != ToxErrorEncryption.Ok)
return null;
return output;
}