<PackageReference Include="NETStandard.Library" Version="2.0.3" />

System.Security.Cryptography.SymmetricAlgorithm

public abstract class SymmetricAlgorithm : IDisposable
namespace System.Security.Cryptography { public abstract class SymmetricAlgorithm : IDisposable { protected int BlockSizeValue; protected int FeedbackSizeValue; protected byte[] IVValue; protected int KeySizeValue; protected byte[] KeyValue; protected KeySizes[] LegalBlockSizesValue; protected KeySizes[] LegalKeySizesValue; protected CipherMode ModeValue; protected PaddingMode PaddingValue; public virtual int BlockSize { get; set; } public virtual int FeedbackSize { get; set; } public virtual byte[] IV { get; set; } public virtual byte[] Key { get; set; } public virtual int KeySize { get; set; } public virtual KeySizes[] LegalBlockSizes { get; } public virtual KeySizes[] LegalKeySizes { get; } public virtual CipherMode Mode { get; set; } public virtual PaddingMode Padding { get; set; } protected SymmetricAlgorithm(); public void Clear(); public static SymmetricAlgorithm Create(); public static SymmetricAlgorithm Create(string algName); public virtual ICryptoTransform CreateDecryptor(); public abstract ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV); public virtual ICryptoTransform CreateEncryptor(); public abstract ICryptoTransform CreateEncryptor(byte[] rgbKey, byte[] rgbIV); public void Dispose(); protected virtual void Dispose(bool disposing); public abstract void GenerateIV(); public abstract void GenerateKey(); public bool ValidKeySize(int bitLength); } }