#if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
#pragma warning disable
using System;
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto
{
/// Interface for classes implementing the Digital Signature Algorithm
public interface IDsa
{
/// The algorithm name.
string AlgorithmName { get; }
/// Initialise the signer for signature generation or signature verification.
/// true if we are generating a signature, false otherwise.
/// key parameters for signature generation.
void Init(bool forSigning, ICipherParameters parameters);
/// Sign the passed in message (usually the output of a hash function).
/// the message to be signed.
/// two big integers representing the r and s values respectively.
BigInteger[] GenerateSignature(byte[] message);
/// The order of the group that the r, s values in signatures belong to.
BigInteger Order { get; }
/// Verify the message message against the signature values r and s.
/// the message that was supposed to have been signed.
/// the r signature value.
/// the s signature value.
bool VerifySignature(byte[] message, BigInteger r, BigInteger s);
}
}
#pragma warning restore
#endif