org.apache.felix.useradmin.impl
Class MessageDigesterImpl

java.lang.Object
  extended by org.apache.felix.useradmin.impl.MessageDigesterImpl
All Implemented Interfaces:
MessageDigester

public class MessageDigesterImpl
extends Object
implements MessageDigester

This class MessageDigesterImpl implements MessageDigester. Used for encrypting credentials with MessageDigest.

Version:
$Rev$ $Date$

Constructor Summary
MessageDigesterImpl(String algorithm, String randomGenerator)
          Constructs new MessageDigester.
 
Method Summary
 byte[] encrypt(Object credential, byte[] salt)
          Encrypting provided value with one of available algorithms like SHA-1.
 byte[] generateSalt(int lengthBytes)
          Generate salt used by digester to digest message.
 void setCharset(String charset)
          Setting char set for digester.
 boolean verify(Object plainCredential, byte[] digest, int lenghBytes)
          Verify not encoded credential against encoded one.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MessageDigesterImpl

public MessageDigesterImpl(String algorithm,
                           String randomGenerator)
                    throws NoSuchAlgorithmException
Constructs new MessageDigester.

Parameters:
algorithm - name of algorithm to use.
Throws:
NoSuchAlgorithmException
Method Detail

encrypt

public byte[] encrypt(Object credential,
                      byte[] salt)
Description copied from interface: MessageDigester
Encrypting provided value with one of available algorithms like SHA-1.

Specified by:
encrypt in interface MessageDigester
Parameters:
credential - to be encrypted.
salt - will be use to encrypts the value.
Returns:
encrypted value.
See Also:
org.apache.felix.useradmin.MessageDigester#encryptCredential(java.lang.Object, byte[])

verify

public boolean verify(Object plainCredential,
                      byte[] digest,
                      int lenghBytes)
Description copied from interface: MessageDigester

Verify not encoded credential against encoded one. This method is encoding provided value and compare generated hash with provided hash(digest param).

Specified by:
verify in interface MessageDigester
Parameters:
plainCredential - not encoded value to be verified.
digest - encoded value (hash).
lenghBytes - length of salt byte value.
Returns:
true if hash of provided value matches digest param.
See Also:
MessageDigester.verify(java.lang.Object, byte[], int)

generateSalt

public byte[] generateSalt(int lengthBytes)
Description copied from interface: MessageDigester
Generate salt used by digester to digest message.

Specified by:
generateSalt in interface MessageDigester
Parameters:
lengthBytes - length of salt.
Returns:
salt value.
See Also:
MessageDigester.generateSalt(int)

setCharset

public void setCharset(String charset)
Description copied from interface: MessageDigester
Setting char set for digester.

Specified by:
setCharset in interface MessageDigester
Parameters:
charset - char set.
See Also:
MessageDigester.setCharset(String)


Copyright © 2013 The Apache Software Foundation. All Rights Reserved.