You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.3 KiB
30 lines
1.3 KiB
1 year ago
|
#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.Signers
|
||
|
{
|
||
|
/// <summary>
|
||
|
/// An interface for different encoding formats for DSA signatures.
|
||
|
/// </summary>
|
||
|
public interface IDsaEncoding
|
||
|
{
|
||
|
/// <summary>Decode the (r, s) pair of a DSA signature.</summary>
|
||
|
/// <param name="n">The order of the group that r, s belong to.</param>
|
||
|
/// <param name="encoding">An encoding of the (r, s) pair of a DSA signature.</param>
|
||
|
/// <returns>The (r, s) of a DSA signature, stored in an array of exactly two elements, r followed by s.</returns>
|
||
|
BigInteger[] Decode(BigInteger n, byte[] encoding);
|
||
|
|
||
|
/// <summary>Encode the (r, s) pair of a DSA signature.</summary>
|
||
|
/// <param name="n">The order of the group that r, s belong to.</param>
|
||
|
/// <param name="r">The r value of a DSA signature.</param>
|
||
|
/// <param name="s">The s value of a DSA signature.</param>
|
||
|
/// <returns>An encoding of the DSA signature given by the provided (r, s) pair.</returns>
|
||
|
byte[] Encode(BigInteger n, BigInteger r, BigInteger s);
|
||
|
}
|
||
|
}
|
||
|
#pragma warning restore
|
||
|
#endif
|