#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
#pragma warning disable
using System;
using System.IO;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Tls.Crypto
{
/// Interface providing the functional representation of a single X.509 certificate.
public interface TlsCertificate
{
/// Return an encryptor based on the public key in this certificate.
///
/// a based on this certificate's public key.
///
TlsEncryptor CreateEncryptor(int tlsCertificateRole);
///
///
TlsVerifier CreateVerifier(short signatureAlgorithm);
///
///
TlsVerifier CreateVerifier(int signatureScheme);
///
byte[] GetEncoded();
///
byte[] GetExtension(DerObjectIdentifier extensionOid);
BigInteger SerialNumber { get; }
/// the OID of this certificate's 'signatureAlgorithm', as a string.
string SigAlgOid { get; }
///
Asn1Encodable GetSigAlgParams();
///
///
short GetLegacySignatureAlgorithm();
///
/// true if (and only if) this certificate can be used to verify the given signature algorithm.
///
///
bool SupportsSignatureAlgorithm(short signatureAlgorithm);
///
bool SupportsSignatureAlgorithmCA(short signatureAlgorithm);
///
///
TlsCertificate CheckUsageInRole(int tlsCertificateRole);
}
}
#pragma warning restore
#endif