jcifs.ntlmssp

Class Type3Message

public class Type3Message extends NtlmMessage

Represents an NTLMSSP Type-3 message.
Constructor Summary
Type3Message()
Creates a Type-3 message using default values from the current environment.
Type3Message(Type2Message type2)
Creates a Type-3 message in response to the given Type-2 message using default values from the current environment.
Type3Message(Type2Message type2, String password, String domain, String user, String workstation)
Creates a Type-3 message in response to the given Type-2 message.
Type3Message(int flags, byte[] lmResponse, byte[] ntResponse, String domain, String user, String workstation)
Creates a Type-3 message with the specified parameters.
Type3Message(byte[] material)
Creates a Type-3 message using the given raw Type-3 material.
Method Summary
static StringgetDefaultDomain()
Returns the default domain from the current environment.
static intgetDefaultFlags()
Returns the default flags for a generic Type-3 message in the current environment.
static intgetDefaultFlags(Type2Message type2)
Returns the default flags for a Type-3 message created in response to the given Type-2 message in the current environment.
static StringgetDefaultPassword()
Returns the default password from the current environment.
static StringgetDefaultUser()
Returns the default user from the current environment.
static StringgetDefaultWorkstation()
Returns the default workstation from the current environment.
StringgetDomain()
Returns the domain in which the user has an account.
byte[]getLMResponse()
Returns the LanManager/LMv2 response.
static byte[]getLMResponse(Type2Message type2, String password)
Constructs the LanManager response to the given Type-2 message using the supplied password.
static byte[]getLMv2Response(Type2Message type2, String domain, String user, String password, byte[] clientChallenge)
byte[]getNTResponse()
Returns the NT/NTLMv2 response.
static byte[]getNTResponse(Type2Message type2, String password)
Constructs the NT response to the given Type-2 message using the supplied password.
byte[]getSessionKey()
Returns the session key.
StringgetUser()
Returns the username for the authenticating user.
StringgetWorkstation()
Returns the workstation from which authentication is being performed.
voidsetDomain(String domain)
Sets the domain for this message.
voidsetLMResponse(byte[] lmResponse)
Sets the LanManager/LMv2 response for this message.
voidsetNTResponse(byte[] ntResponse)
Sets the NT/NTLMv2 response for this message.
voidsetSessionKey(byte[] sessionKey)
Sets the session key.
voidsetUser(String user)
Sets the user for this message.
voidsetWorkstation(String workstation)
Sets the workstation for this message.
byte[]toByteArray()
StringtoString()

Constructor Detail

Type3Message

public Type3Message()
Creates a Type-3 message using default values from the current environment.

Type3Message

public Type3Message(Type2Message type2)
Creates a Type-3 message in response to the given Type-2 message using default values from the current environment.

Parameters: type2 The Type-2 message which this represents a response to.

Type3Message

public Type3Message(Type2Message type2, String password, String domain, String user, String workstation)
Creates a Type-3 message in response to the given Type-2 message.

Parameters: type2 The Type-2 message which this represents a response to. password The password to use when constructing the response. domain The domain in which the user has an account. user The username for the authenticating user. workstation The workstation from which authentication is taking place.

Type3Message

public Type3Message(int flags, byte[] lmResponse, byte[] ntResponse, String domain, String user, String workstation)
Creates a Type-3 message with the specified parameters.

Parameters: flags The flags to apply to this message. lmResponse The LanManager/LMv2 response. ntResponse The NT/NTLMv2 response. domain The domain in which the user has an account. user The username for the authenticating user. workstation The workstation from which authentication is taking place.

Type3Message

public Type3Message(byte[] material)
Creates a Type-3 message using the given raw Type-3 material.

Parameters: material The raw Type-3 material used to construct this message.

Throws: IOException If an error occurs while parsing the material.

Method Detail

getDefaultDomain

public static String getDefaultDomain()
Returns the default domain from the current environment.

Returns: The default domain.

getDefaultFlags

public static int getDefaultFlags()
Returns the default flags for a generic Type-3 message in the current environment.

Returns: An int containing the default flags.

getDefaultFlags

public static int getDefaultFlags(Type2Message type2)
Returns the default flags for a Type-3 message created in response to the given Type-2 message in the current environment.

Returns: An int containing the default flags.

getDefaultPassword

public static String getDefaultPassword()
Returns the default password from the current environment.

Returns: The default password.

getDefaultUser

public static String getDefaultUser()
Returns the default user from the current environment.

Returns: The default user.

getDefaultWorkstation

public static String getDefaultWorkstation()
Returns the default workstation from the current environment.

Returns: The default workstation.

getDomain

public String getDomain()
Returns the domain in which the user has an account.

Returns: A String containing the domain for the user.

getLMResponse

public byte[] getLMResponse()
Returns the LanManager/LMv2 response.

Returns: A byte[] containing the LanManager response.

getLMResponse

public static byte[] getLMResponse(Type2Message type2, String password)
Constructs the LanManager response to the given Type-2 message using the supplied password.

Parameters: type2 The Type-2 message. password The password.

Returns: A byte[] containing the LanManager response.

getLMv2Response

public static byte[] getLMv2Response(Type2Message type2, String domain, String user, String password, byte[] clientChallenge)

getNTResponse

public byte[] getNTResponse()
Returns the NT/NTLMv2 response.

Returns: A byte[] containing the NT/NTLMv2 response.

getNTResponse

public static byte[] getNTResponse(Type2Message type2, String password)
Constructs the NT response to the given Type-2 message using the supplied password.

Parameters: type2 The Type-2 message. password The password.

Returns: A byte[] containing the NT response.

getSessionKey

public byte[] getSessionKey()
Returns the session key.

Returns: A byte[] containing the session key.

getUser

public String getUser()
Returns the username for the authenticating user.

Returns: A String containing the user for this message.

getWorkstation

public String getWorkstation()
Returns the workstation from which authentication is being performed.

Returns: A String containing the workstation.

setDomain

public void setDomain(String domain)
Sets the domain for this message.

Parameters: domain The domain.

setLMResponse

public void setLMResponse(byte[] lmResponse)
Sets the LanManager/LMv2 response for this message.

Parameters: lmResponse The LanManager response.

setNTResponse

public void setNTResponse(byte[] ntResponse)
Sets the NT/NTLMv2 response for this message.

Parameters: ntResponse The NT/NTLMv2 response.

setSessionKey

public void setSessionKey(byte[] sessionKey)
Sets the session key.

Parameters: sessionKey The session key.

setUser

public void setUser(String user)
Sets the user for this message.

Parameters: user The user.

setWorkstation

public void setWorkstation(String workstation)
Sets the workstation for this message.

Parameters: workstation The workstation.

toByteArray

public byte[] toByteArray()

toString

public String toString()