This commit is contained in:
2020-07-09 08:50:24 +08:00
parent 13d25f4707
commit c523462b82
1818 changed files with 174940 additions and 582 deletions

View File

@@ -0,0 +1,58 @@
#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
using System;
using System.IO;
namespace Org.BouncyCastle.Crypto.Tls
{
/// <summary>
/// A generic interface for key exchange implementations in (D)TLS.
/// </summary>
public interface TlsKeyExchange
{
void Init(TlsContext context);
/// <exception cref="IOException"/>
void SkipServerCredentials();
/// <exception cref="IOException"/>
void ProcessServerCredentials(TlsCredentials serverCredentials);
/// <exception cref="IOException"/>
void ProcessServerCertificate(Certificate serverCertificate);
bool RequiresServerKeyExchange { get; }
/// <exception cref="IOException"/>
byte[] GenerateServerKeyExchange();
/// <exception cref="IOException"/>
void SkipServerKeyExchange();
/// <exception cref="IOException"/>
void ProcessServerKeyExchange(Stream input);
/// <exception cref="IOException"/>
void ValidateCertificateRequest(CertificateRequest certificateRequest);
/// <exception cref="IOException"/>
void SkipClientCredentials();
/// <exception cref="IOException"/>
void ProcessClientCredentials(TlsCredentials clientCredentials);
/// <exception cref="IOException"/>
void ProcessClientCertificate(Certificate clientCertificate);
/// <exception cref="IOException"/>
void GenerateClientKeyExchange(Stream output);
/// <exception cref="IOException"/>
void ProcessClientKeyExchange(Stream input);
/// <exception cref="IOException"/>
byte[] GeneratePremasterSecret();
}
}
#endif