## org.beepcore.beep.profile.sasl.otp.database
Interface UserDatabase

All Known Implementing Classes:
  UserDatabaseImpl

public interface UserDatabase

This interface represents all the information associated with a given user for SASL OTP, including password hashes, seeds, and the sequence number. It is designed to be implemented by classes that provide real-world storage for this information.

Method Summary
`java.lang.String` `getAlgorithmName()` Method getAlgorithmName returns the algorithm associated with this particular user and OTP database.
`java.lang.String` `getAuthenticator()` Method getAuthenticator
`byte[]` `getLastHash()` Method getLastHash
`java.lang.String` `getLastHashAsString()` Method getLastHashAsString
`java.lang.String` `getSeed()` Method getSeed
`int` `getSequence()` Method getSequence
`void` `updateLastHash(java.lang.String hash)` Method updateLastHash

Method Detail

### getAlgorithmName

    public java.lang.String getAlgorithmName()

  Method getAlgorithmName returns the algorithm associated with this particular user and OTP database.

  Returns:
    String the algorithm employed by the user of this database for SASL OTP authentication.

### getLastHash

    public byte[] getLastHash()
                       throws SASLException

  Method getLastHash

  Returns:
    byte[] the lastHash value generated the last time the user of this database performed SASL OTP authentication. The hash value is represented in binary form.
  Throws:
    `SASLException`

### getLastHashAsString

    public java.lang.String getLastHashAsString()

  Method getLastHashAsString

  Returns:
    String the lastHash value generated the last time the user of this database performed SASL OTP authentication. The hash is represented in hexadecimal form.

### getSeed

    public java.lang.String getSeed()

  Method getSeed

  Returns:
    String the seed used by the user of this database for SASL OTP authentication.

### getSequence

    public int getSequence()

  Method getSequence

  Returns:
    int the sequence to be used by the user of this database for SASL OTP authentication.

### getAuthenticator

    public java.lang.String getAuthenticator()

  Method getAuthenticator

  Returns:
    String the user of this database.

### updateLastHash

    public void updateLastHash(java.lang.String hash)
                        throws SASLException

  Method updateLastHash

  Parameters:
    `hash` - String is the new hash value to be stored in the user database.
  Throws:
    `SASLException`

Copyright ? 2001 Invisible Worlds, Inc. All Rights Reserved.