<PackageReference Include="BouncyCastle.Cryptography" Version="2.3.0" />

Org.BouncyCastle.Tls.TlsServerProtocol

namespace Org.BouncyCastle.Tls { public class TlsServerProtocol : TlsProtocol { protected TlsServer m_tlsServer; protected int[] m_offeredCipherSuites; protected TlsKeyExchange m_keyExchange; protected CertificateRequest m_certificateRequest; public TlsServerProtocol(); public TlsServerProtocol(Stream stream); public TlsServerProtocol(Stream input, Stream output); public void Accept(TlsServer tlsServer); protected virtual bool ExpectCertificateVerifyMessage(); protected virtual ServerHello Generate13HelloRetryRequest(ClientHello clientHello); protected virtual ServerHello Generate13ServerHello(ClientHello clientHello, HandshakeMessageInput clientHelloMessage, bool afterHelloRetryRequest); protected virtual ServerHello GenerateServerHello(ClientHello clientHello, HandshakeMessageInput clientHelloMessage); protected virtual void Handle13HandshakeMessage(short type, HandshakeMessageInput buf); protected virtual void NotifyClientCertificate(Certificate clientCertificate); protected virtual void Receive13ClientCertificate(MemoryStream buf); protected void Receive13ClientCertificateVerify(MemoryStream buf); protected virtual void Receive13ClientFinished(MemoryStream buf); protected virtual void ReceiveCertificateMessage(MemoryStream buf); protected virtual void ReceiveCertificateVerifyMessage(MemoryStream buf); protected virtual ClientHello ReceiveClientHelloMessage(MemoryStream buf); protected virtual void ReceiveClientKeyExchangeMessage(MemoryStream buf); protected virtual void Send13EncryptedExtensionsMessage(IDictionary<int, byte[]> serverExtensions); protected virtual void Send13ServerHelloCoda(ServerHello serverHello, bool afterHelloRetryRequest); protected virtual void SendCertificateRequestMessage(CertificateRequest certificateRequest); protected virtual void SendCertificateStatusMessage(CertificateStatus certificateStatus); protected virtual void SendHelloRequestMessage(); protected virtual void SendNewSessionTicketMessage(NewSessionTicket newSessionTicket); protected virtual void SendServerHelloDoneMessage(); protected virtual void SendServerHelloMessage(ServerHello serverHello); protected virtual void SendServerKeyExchangeMessage(byte[] serverKeyExchange); protected virtual void Skip13ClientCertificate(); protected virtual void Skip13ClientCertificateVerify(); } }