12345678910111213141516171819202122232425262728 |
- #if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
- #pragma warning disable
- using System;
- using System.IO;
- namespace BestHTTP.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
|