public void setPassword ( final String password ) { this.passwords.clear (); for ( final List<PasswordEncoding> group : this.requestedTypes ) { if ( !group.isEmpty () ) { final PasswordEncoding encoding = group.get ( 0 ); try { // we encode only the first known type ... since this is best this.passwords.put ( encoding, encoding.encodeToHexString ( password ) ); } catch ( final Exception e ) { logger.debug ( "Failed to encode type: " + encoding, e ); } } } }
public void setPassword ( final String password ) { this.passwords.clear (); for ( final List<PasswordEncoding> group : this.requestedTypes ) { if ( !group.isEmpty () ) { final PasswordEncoding encoding = group.get ( 0 ); try { // we encode only the first known type ... since this is best this.passwords.put ( encoding, encoding.encodeToHexString ( password ) ); } catch ( final Exception e ) { logger.debug ( "Failed to encode type: " + encoding, e ); } } } }
@Override public boolean validatePassword ( final Map<PasswordEncoding, String> passwords, final String storedPassword ) throws Exception { for ( final PasswordEncoding encoding : ENCODINGS ) { final String providedPassword = passwords.get ( encoding ); if ( providedPassword == null ) { continue; } final String storedEncoded = encoding.encodeToHexString ( storedPassword ); return comparePassword ( providedPassword, storedEncoded ); } return false; }
@Override public boolean validatePassword ( final Map<PasswordEncoding, String> passwords, final String storedPassword ) throws Exception { for ( final PasswordEncoding encoding : ENCODINGS ) { final String providedPassword = passwords.get ( encoding ); if ( providedPassword == null ) { continue; } final String storedEncoded = encoding.encodeToHexString ( storedPassword ); return comparePassword ( providedPassword, storedEncoded ); } return false; }