diff options
Diffstat (limited to 'pkix/src/test/java/org/spongycastle/cms/test/SHA1DigestCalculator.java')
-rw-r--r-- | pkix/src/test/java/org/spongycastle/cms/test/SHA1DigestCalculator.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/pkix/src/test/java/org/spongycastle/cms/test/SHA1DigestCalculator.java b/pkix/src/test/java/org/spongycastle/cms/test/SHA1DigestCalculator.java new file mode 100644 index 00000000..f3d5fd72 --- /dev/null +++ b/pkix/src/test/java/org/spongycastle/cms/test/SHA1DigestCalculator.java @@ -0,0 +1,44 @@ +package org.spongycastle.cms.test; + +import java.io.ByteArrayOutputStream; +import java.io.OutputStream; + +import org.spongycastle.asn1.oiw.OIWObjectIdentifiers; +import org.spongycastle.asn1.x509.AlgorithmIdentifier; +import org.spongycastle.crypto.Digest; +import org.spongycastle.crypto.digests.SHA1Digest; +import org.spongycastle.operator.DigestCalculator; + + +class SHA1DigestCalculator + implements DigestCalculator +{ + private ByteArrayOutputStream bOut = new ByteArrayOutputStream(); + + public AlgorithmIdentifier getAlgorithmIdentifier() + { + return new AlgorithmIdentifier(OIWObjectIdentifiers.idSHA1); + } + + public OutputStream getOutputStream() + { + return bOut; + } + + public byte[] getDigest() + { + byte[] bytes = bOut.toByteArray(); + + bOut.reset(); + + Digest sha1 = new SHA1Digest(); + + sha1.update(bytes, 0, bytes.length); + + byte[] digest = new byte[sha1.getDigestSize()]; + + sha1.doFinal(digest, 0); + + return digest; + } +} |