For the latest news and information visit
The GNU Crypto project

gnu.crypto.sasl.srp
Class SRPClient

java.lang.Object
  |
  +--gnu.crypto.sasl.ClientMechanism
        |
        +--gnu.crypto.sasl.srp.SRPClient
All Implemented Interfaces:
SaslClient

public class SRPClient
extends ClientMechanism
implements SaslClient

The SASL-SRP client-side mechanism.


Field Summary
 
Fields inherited from class gnu.crypto.sasl.ClientMechanism
authorizationID, channelBinding, complete, handler, mechanism, properties, protocol, serverName, state
 
Constructor Summary
SRPClient()
           
 
Method Summary
protected  byte[] engineUnwrap(byte[] incoming, int offset, int len)
           
protected  byte[] engineWrap(byte[] outgoing, int offset, int len)
           
 byte[] evaluateChallenge(byte[] challenge)
          Evaluates the challenge data and generates a response.
protected  java.lang.String getNegotiatedQOP()
           
protected  java.lang.String getNegotiatedRawSendSize()
           
protected  java.lang.String getNegotiatedStrength()
           
protected  java.lang.String getReuse()
           
 boolean hasInitialResponse()
          Determines if this mechanism has an optional initial response.
protected  void initMechanism()
           
protected  void resetMechanism()
           
 
Methods inherited from class gnu.crypto.sasl.ClientMechanism
dispose, getAuthorizationID, getMechanismName, getNegotiatedMaxBuffer, getNegotiatedPolicyForwardSecrecy, getNegotiatedPolicyNoActive, getNegotiatedPolicyNoAnonymous, getNegotiatedPolicyNoDictionary, getNegotiatedPolicyNoPlainText, getNegotiatedPolicyPassCredentials, getNegotiatedProperty, getNegotiatedServerAuth, init, isComplete, reset, unwrap, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.security.sasl.SaslClient
dispose, getMechanismName, getNegotiatedProperty, isComplete, unwrap, wrap
 

Constructor Detail

SRPClient

public SRPClient()
Method Detail

initMechanism

protected void initMechanism()
                      throws SaslException
Specified by:
initMechanism in class ClientMechanism
SaslException

resetMechanism

protected void resetMechanism()
                       throws SaslException
Specified by:
resetMechanism in class ClientMechanism
SaslException

hasInitialResponse

public boolean hasInitialResponse()
Description copied from interface: SaslClient
Determines if this mechanism has an optional initial response. If true, caller should call SaslClient.evaluateChallenge(byte[]) with an empty array to get the initial response.

Specified by:
hasInitialResponse in interface SaslClient
Specified by:
hasInitialResponse in class ClientMechanism
Returns:
true if this mechanism has an initial response.

evaluateChallenge

public byte[] evaluateChallenge(byte[] challenge)
                         throws SaslException
Description copied from interface: SaslClient
Evaluates the challenge data and generates a response. If a challenge is received from the server during the authentication process, this method is called to prepare an appropriate next response to submit to the server.

Specified by:
evaluateChallenge in interface SaslClient
Specified by:
evaluateChallenge in class ClientMechanism
Parameters:
challenge - the non-null challenge sent from the server. The challenge array may have zero length.
Returns:
the possibly null reponse to send to the server. It is null if the challenge accompanied a "SUCCESS" status and the challenge only contains data for the client to update its state and no response needs to be sent to the server. The response is a zero-length byte array if the client is to send a response with no data.
Throws:
SaslException - if an error occurred while processing the challenge or generating a response.

engineUnwrap

protected byte[] engineUnwrap(byte[] incoming,
                              int offset,
                              int len)
                       throws SaslException
Overrides:
engineUnwrap in class ClientMechanism
SaslException

engineWrap

protected byte[] engineWrap(byte[] outgoing,
                            int offset,
                            int len)
                     throws SaslException
Overrides:
engineWrap in class ClientMechanism
SaslException

getNegotiatedQOP

protected java.lang.String getNegotiatedQOP()
Overrides:
getNegotiatedQOP in class ClientMechanism

getNegotiatedStrength

protected java.lang.String getNegotiatedStrength()
Overrides:
getNegotiatedStrength in class ClientMechanism

getNegotiatedRawSendSize

protected java.lang.String getNegotiatedRawSendSize()
Overrides:
getNegotiatedRawSendSize in class ClientMechanism

getReuse

protected java.lang.String getReuse()
Overrides:
getReuse in class ClientMechanism

For the latest news and information visit
The GNU Crypto project

Copyright © 2001, 2002, 2003, 2004 Free Software Foundation, Inc.