BCMessageDigest.java revision e6bf3e8dfa2804891a82075cb469b736321b4827
1package org.bouncycastle.jcajce.provider.digest;
2
3import java.security.MessageDigest;
4
5import org.bouncycastle.crypto.Digest;
6
7public class BCMessageDigest
8    extends MessageDigest
9{
10    protected Digest  digest;
11
12    protected BCMessageDigest(
13        Digest digest)
14    {
15        super(digest.getAlgorithmName());
16
17        this.digest = digest;
18    }
19
20    public void engineReset()
21    {
22        digest.reset();
23    }
24
25    public void engineUpdate(
26        byte    input)
27    {
28        digest.update(input);
29    }
30
31    public void engineUpdate(
32        byte[]  input,
33        int     offset,
34        int     len)
35    {
36        digest.update(input, offset, len);
37    }
38
39    public byte[] engineDigest()
40    {
41        byte[]  digestBytes = new byte[digest.getDigestSize()];
42
43        digest.doFinal(digestBytes, 0);
44
45        return digestBytes;
46    }
47}
48