Org.BouncyCastle.Tls.Crypto.Impl.AbstractTlsSecret
Base class for a TlsSecret implementation which captures common code and fields.
namespace Org.BouncyCastle.Tls.Crypto.Impl
{
public abstract class AbstractTlsSecret : TlsSecret
{
protected byte[] m_data;
protected abstract AbstractTlsCrypto Crypto { get; }
public virtual int Length { get; }
protected static byte[] CopyData(AbstractTlsSecret other);
protected AbstractTlsSecret(byte[] data);
protected virtual void CheckAlive();
public virtual byte[] CalculateHmac(int cryptoHashAlgorithm, byte[] buf, int off, int len);
public abstract TlsSecret DeriveUsingPrf(int prfAlgorithm, string label, byte[] seed, int length);
public virtual void Destroy();
public virtual byte[] Encrypt(TlsEncryptor encryptor);
public virtual byte[] Extract();
public abstract TlsSecret HkdfExpand(int cryptoHashAlgorithm, byte[] info, int length);
public abstract TlsSecret HkdfExtract(int cryptoHashAlgorithm, TlsSecret ikm);
public virtual bool IsAlive();
}
}