|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.security.MessageDigestSpi
java.security.MessageDigest
public abstract class MessageDigest
Message digests are secure one-way hash functions that take arbitrary-sized data and output a fixed-length hash value.
MessageDigestSpi
Constructor Summary | |
---|---|
protected |
MessageDigest(String algorithm)
Constructs a new instance of MessageDigest representing the
specified algorithm. |
Method Summary | |
---|---|
Object |
clone()
Returns a clone of this instance if cloning is supported. |
byte[] |
digest()
Computes the final digest of the stored data. |
byte[] |
digest(byte[] input)
Computes a final update using the input array of bytes, then computes a final digest and returns it. |
int |
digest(byte[] buf,
int offset,
int len)
Computes the final digest of the stored bytes and returns the result. |
String |
getAlgorithm()
Returns the name of message digest algorithm. |
int |
getDigestLength()
Returns the length of the message digest. |
static MessageDigest |
getInstance(String algorithm)
Returns a new instance of MessageDigest representing the
specified algorithm. |
static MessageDigest |
getInstance(String algorithm,
Provider provider)
Returns a new instance of MessageDigest representing the
specified algorithm from a designated Provider . |
static MessageDigest |
getInstance(String algorithm,
String provider)
Returns a new instance of MessageDigest representing the
specified algorithm from a named provider. |
Provider |
getProvider()
Returns the Provider of this instance. |
static boolean |
isEqual(byte[] digesta,
byte[] digestb)
Does a simple byte comparison of the two digests. |
void |
reset()
Resets this instance. |
String |
toString()
Returns a string representation of this instance. |
void |
update(byte input)
Updates the digest with the byte. |
void |
update(byte[] input)
Updates the digest with the bytes of an array. |
void |
update(byte[] input,
int offset,
int len)
Updates the digest with the bytes from the array starting from the specified offset and using the specified length of bytes. |
void |
update(ByteBuffer input)
Updates the digest with the remaining bytes of a buffer. |
Methods inherited from class java.security.MessageDigestSpi |
---|
engineDigest, engineDigest, engineGetDigestLength, engineReset, engineUpdate, engineUpdate, engineUpdate |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
protected MessageDigest(String algorithm)
MessageDigest
representing the
specified algorithm.
algorithm
- the name of the digest algorithm to use.Method Detail |
---|
public static MessageDigest getInstance(String algorithm) throws NoSuchAlgorithmException
MessageDigest
representing the
specified algorithm.
algorithm
- the name of the digest algorithm to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by any
provider.
IllegalArgumentException
- if algorithm
is
null
or is an empty string.public static MessageDigest getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
MessageDigest
representing the
specified algorithm from a named provider.
algorithm
- the name of the digest algorithm to use.provider
- the name of the provider to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by the
named provider.
NoSuchProviderException
- if the named provider was not found.
IllegalArgumentException
- if either algorithm
or
provider
is null
or empty.public static MessageDigest getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
MessageDigest
representing the
specified algorithm from a designated Provider
.
algorithm
- the name of the digest algorithm to use.provider
- the Provider
to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by
Provider
.
IllegalArgumentException
- if either algorithm
or
provider
is null
, or if
algorithm
is an empty string.Provider
public final Provider getProvider()
Provider
of this instance.
Provider
of this instance.public void update(byte input)
input
- byte to update the digest with.public void update(byte[] input, int offset, int len)
input
- bytes to update the digest with.offset
- the offset to start at.len
- length of the data to update with.public void update(byte[] input)
input
- bytes to update the digest with.public final void update(ByteBuffer input)
input
- The input byte buffer.public byte[] digest()
public int digest(byte[] buf, int offset, int len) throws DigestException
buf
- an array of bytes to store the result in.offset
- an offset to start storing the result at.len
- the length of the buffer.
DigestException
public byte[] digest(byte[] input)
update(byte[])
and then
digest(byte[])
.
input
- an array of bytes to perform final update with.
public String toString()
toString
in class Object
Object.getClass()
,
Object.hashCode()
,
Class.getName()
,
Integer.toHexString(int)
public static boolean isEqual(byte[] digesta, byte[] digestb)
digesta
- first digest to compare.digestb
- second digest to compare.
true
if both are equal, false
otherwise.public void reset()
public final String getAlgorithm()
public final int getDigestLength()
public Object clone() throws CloneNotSupportedException
CloneNotSupportedException
is thrown. Cloning depends on
whether the subclass MessageDigestSpi
implements Cloneable
which contains the actual implementation of the appropriate algorithm.
clone
in class MessageDigestSpi
CloneNotSupportedException
- the implementation does not support cloning.Cloneable
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |