46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
#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
|
|
{
|
|
string AlgorithmName { get; }
|
|
|
|
/**
|
|
* initialise the signer for signature generation or signature
|
|
* verification.
|
|
*
|
|
* @param forSigning true if we are generating a signature, false
|
|
* otherwise.
|
|
* @param param key parameters for signature generation.
|
|
*/
|
|
void Init(bool forSigning, ICipherParameters parameters);
|
|
|
|
/**
|
|
* sign the passed in message (usually the output of a hash function).
|
|
*
|
|
* @param message the message to be signed.
|
|
* @return two big integers representing the r and s values respectively.
|
|
*/
|
|
BigInteger[] GenerateSignature(byte[] message);
|
|
|
|
/**
|
|
* verify the message message against the signature values r and s.
|
|
*
|
|
* @param message the message that was supposed to have been signed.
|
|
* @param r the r signature value.
|
|
* @param s the s signature value.
|
|
*/
|
|
bool VerifySignature(byte[] message, BigInteger r, BigInteger s);
|
|
}
|
|
}
|
|
#pragma warning restore
|
|
#endif
|