org.spongycastle.operator.DigestCalculator Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pkix Show documentation
Show all versions of pkix Show documentation
Spongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle
intended for the Android platform. Android unfortunately ships with a stripped-down version of
Bouncy Castle, which prevents easy upgrades - Spongy Castle overcomes this and provides a full,
up-to-date version of the Bouncy Castle cryptographic libs.
package org.spongycastle.operator;
import java.io.OutputStream;
import org.spongycastle.asn1.x509.AlgorithmIdentifier;
/**
* General interface for an operator that is able to calculate a digest from
* a stream of output.
*/
public interface DigestCalculator
{
/**
* Return the algorithm identifier representing the digest implemented by
* this calculator.
*
* @return algorithm id and parameters.
*/
AlgorithmIdentifier getAlgorithmIdentifier();
/**
* Returns a stream that will accept data for the purpose of calculating
* a digest. Use org.spongycastle.util.io.TeeOutputStream if you want to accumulate
* the data on the fly as well.
*
* @return an OutputStream
*/
OutputStream getOutputStream();
/**
* Return the digest calculated on what has been written to the calculator's output stream.
*
* @return a digest.
*/
byte[] getDigest();
}