using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Hazel.Crypto
{
public static class CryptoProvider
{
public delegate IAes CreateAesOverrideDelegate(ByteSpan key);
///
/// Override the default AES creation function
///
public static CreateAesOverrideDelegate OverrideCreateAes = null;
///
/// Create a new AES cipher
///
/// Encrtyption key
public static IAes CreateAes(ByteSpan key)
{
if (OverrideCreateAes != null)
{
IAes result = OverrideCreateAes(key);
if (null != result)
{
return result;
}
}
return new DefaultAes(key);
}
}
}