Synergy Home Page

au.edu.swin.synergy.lib
Class UnixCrypt

java.lang.Object
  |
  +--au.edu.swin.synergy.lib.UnixCrypt

public class UnixCrypt
extends Object

Contains static methods to encrypt and compare passwords with Unix encrypted passwords.

See John Dumas's Java Crypt page for the original source.

Author:
jdumas@zgs.com (John Dumas)

Method Summary
static String crypt(String original)
          Encrypt a password given the cleartext password.
static String crypt(String salt, String original)
          Encrypt a password given the cleartext password and a "salt".
static boolean matches(String encryptedPassword, String enteredPassword)
          Check that enteredPassword encrypts to encryptedPassword.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

crypt

public static final String crypt(String salt,
                                 String original)

Encrypt a password given the cleartext password and a "salt".

Parameters:
salt - A two-character string representing the salt used to iterate the encryption engine in lots of different ways. If you are generating a new encryption then this value should be randomised.
original - The password to be encrypted.
Returns:
A string consisting of the 2-character salt followed by the encrypted password.

crypt

public static final String crypt(String original)

Encrypt a password given the cleartext password. This method generates a random salt using the 'java.util.Random' class.

Parameters:
original - The password to be encrypted.
Returns:
A string consisting of the 2-character salt followed by the encrypted password.

matches

public static final boolean matches(String encryptedPassword,
                                    String enteredPassword)

Check that enteredPassword encrypts to encryptedPassword.

Parameters:
encryptedPassword - The encryptedPassword. The first two characters are assumed to be the salt. This string would be the same as one found in a Unix /etc/passwd file.
enteredPassword - The password as entered by the user (or otherwise aquired).
Returns:
true if the password should be considered correct.

Synergy Home Page