cryptix.provider.md

Class SHA1

Implemented Interfaces:
Cloneable

public final class SHA1
extends BlockMessageDigest
implements Cloneable

This class implements the SHA-1 message digest algorithm.

BUG: The update method is missing.

References:

  1. Bruce Schneier, "Section 18.7 Secure Hash Algorithm (SHA)," Applied Cryptography, 2nd edition, John Wiley & Sons, 1996

  2. NIST FIPS PUB 180-1, "Secure Hash Standard", U.S. Department of Commerce, May 1993.
    http://www.itl.nist.gov/div897/pubs/fip180-1.htm

Copyright © 1995-1997 Systemics Ltd on behalf of the Cryptix Development Team.
All rights reserved.

$Revision: 1.7 $

Authors:
Systemics Ltd
David Hopwood
Since:
Cryptix 2.2.2

Constructor Summary

SHA1()
Constructs a SHA-1 message digest.

Method Summary

Object
clone()
Returns a copy of this MD object.
protected byte[]
engineDigest(byte[] in, int length)
Returns the digest of the data added and resets the digest.
protected int
engineGetDataLength()
Returns the length of the data (in bytes) hashed in every transform.
protected int
engineGetDigestLength()
Returns the length of the hash (in bytes).
protected void
engineReset()
Initializes (resets) the message digest.
protected void
engineTransform(byte[] in)
Adds data to the message digest.
static void
main(argv[] )
Entry point for self_test.
static void
self_test()
Do some basic tests.

Methods inherited from class cryptix.provider.md.BlockMessageDigest

bitcount, engineDigest, engineDigest, engineGetDataLength, engineReset, engineTransform, engineUpdate, engineUpdate

Constructor Details

SHA1

public SHA1()
Constructs a SHA-1 message digest.

Method Details

clone

public Object clone()
Returns a copy of this MD object.

engineDigest

protected byte[] engineDigest(byte[] in,
                              int length)
Returns the digest of the data added and resets the digest.
Overrides:
engineDigest in interface BlockMessageDigest
Returns:
the digest of all the data added to the message digest as a byte array.

engineGetDataLength

protected int engineGetDataLength()
Returns the length of the data (in bytes) hashed in every transform.
Overrides:
engineGetDataLength in interface BlockMessageDigest

engineGetDigestLength

protected int engineGetDigestLength()
Returns the length of the hash (in bytes).

engineReset

protected void engineReset()
Initializes (resets) the message digest.
Overrides:
engineReset in interface BlockMessageDigest

engineTransform

protected void engineTransform(byte[] in)
Adds data to the message digest.
Overrides:
engineTransform in interface BlockMessageDigest
Parameters:

main

public static final void main(argv[] )
Entry point for self_test.

self_test

public static final void self_test()
            throws Exception
Do some basic tests. Three of the known/validation data are included only, no output, success or exception. If you want more, write a test program!