This commit is contained in:
2026-06-15 18:18:16 +08:00
parent 97c9fba14e
commit 2b9f134e5f
4164 changed files with 386922 additions and 79 deletions

View File

@@ -0,0 +1,28 @@
#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
#pragma warning disable
using System;
using System.IO;
namespace Best.HTTP.SecureProtocol.Org.BouncyCastle.Tls.Crypto
{
/// <summary>Base interface for ephemeral key agreement calculator.</summary>
public interface TlsAgreement
{
/// <summary>Generate an ephemeral key pair, returning the encoding of the public key.</summary>
/// <returns>a byte encoding of the public key.</returns>
/// <exception cref="IOException"/>
byte[] GenerateEphemeral();
/// <summary>Pass in the public key for the peer to the agreement calculator.</summary>
/// <param name="peerValue">a byte encoding of the peer public key.</param>
/// <exception cref="IOException"/>
void ReceivePeerValue(byte[] peerValue);
/// <summary>Calculate the agreed secret based on the calculator's current state.</summary>
/// <returns>the calculated secret.</returns>
/// <exception cref="IOException"/>
TlsSecret CalculateSecret();
}
}
#pragma warning restore
#endif