public void perform(String user, char[] password) throws Exception
{
CRAMMD5HexInitialiser initialiser = new CRAMMD5HexInitialiser();
PrincipalDatabase db = new Base64MD5PasswordFilePrincipalDatabase();
db.open(_file);
initialiser.initialise(db);
PasswordCallback passwordCallback = new PasswordCallback("password:", false);
NameCallback usernameCallback = new NameCallback("user:", user);