30 lines
574 B
C#
30 lines
574 B
C#
using System;
|
|
|
|
using Org.BouncyCastle.Crypto;
|
|
using Org.BouncyCastle.Security;
|
|
|
|
namespace Org.BouncyCastle.Cms
|
|
{
|
|
internal class CounterSignatureDigestCalculator
|
|
: IDigestCalculator
|
|
{
|
|
private readonly string alg;
|
|
private readonly byte[] data;
|
|
|
|
internal CounterSignatureDigestCalculator(
|
|
string alg,
|
|
byte[] data)
|
|
{
|
|
this.alg = alg;
|
|
this.data = data;
|
|
}
|
|
|
|
public byte[] GetDigest()
|
|
{
|
|
IDigest digest = CmsSignedHelper.Instance.GetDigestInstance(alg);
|
|
digest.BlockUpdate(data, 0, data.Length);
|
|
return DigestUtilities.DoFinal(digest);
|
|
}
|
|
}
|
|
}
|