blob: 8e2daa28a2e411bcea1a6f412d4e32e9d281ab5b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_24) on Mon Apr 11 23:10:54 CEST 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
NTLMResponses (Apache MINA 2.0.3 API)
</TITLE>
<META NAME="date" CONTENT="2011-04-11">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="NTLMResponses (Apache MINA 2.0.3 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/NTLMResponses.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMConstants.html" title="interface in org.apache.mina.proxy.handlers.http.ntlm"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMUtilities.html" title="class in org.apache.mina.proxy.handlers.http.ntlm"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../../index.html?org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="NTLMResponses.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.mina.proxy.handlers.http.ntlm</FONT>
<BR>
Class NTLMResponses</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.mina.proxy.handlers.http.ntlm.NTLMResponses</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>NTLMResponses</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
NTLMResponses.java - Calculates the various Type 3 responses. Needs an MD4, MD5 and DES
crypto provider (Please note that default provider doesn't provide MD4).
Copyright (c) 2003 Eric Glass
Permission to use, copy, modify, and distribute this document for any purpose and without
any fee is hereby granted, provided that the above copyright notice and this list of
conditions appear in all copies.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>MINA 2.0.0-M3</DD>
<DT><B>Author:</B></DT>
<DD><a href="http://mina.apache.org">Apache MINA Project</a></DD>
<DT><B>See Also:</B><DD><CODE>http://curl.haxx.se/rfc/ntlm.html</CODE></DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#LM_HASH_MAGIC_CONSTANT">LM_HASH_MAGIC_CONSTANT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#NTLMResponses()">NTLMResponses</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getLMResponse(java.lang.String, byte[])">getLMResponse</A></B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the LM Response for the given challenge, using the specified
password.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[])">getLMv2Response</A></B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the LMv2 Response for the given challenge, using the
specified authentication target, username, password, and client
challenge.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getNTLM2SessionResponse(java.lang.String, byte[], byte[])">getNTLM2SessionResponse</A></B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the NTLM2 Session Response for the given challenge, using the
specified password and client nonce.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getNTLMResponse(java.lang.String, byte[])">getNTLMResponse</A></B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the NTLM Response for the given challenge, using the
specified password.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getNTLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[], byte[])">getNTLMv2Response</A></B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;targetInformation,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the NTLMv2 Response for the given challenge, using the
specified authentication target, username, password, target information
block, and client nonce.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#getNTLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[], byte[], long)">getNTLMv2Response</A></B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;targetInformation,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce,
long&nbsp;time)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the NTLMv2 Response for the given challenge, using the
specified authentication target, username, password, target information
block, and client nonce.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;byte[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html#hmacMD5(byte[], byte[])">hmacMD5</A></B>(byte[]&nbsp;data,
byte[]&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calculates the HMAC-MD5 hash of the given data using the specified
hashing key.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="LM_HASH_MAGIC_CONSTANT"><!-- --></A><H3>
LM_HASH_MAGIC_CONSTANT</H3>
<PRE>
public static byte[] <B>LM_HASH_MAGIC_CONSTANT</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="NTLMResponses()"><!-- --></A><H3>
NTLMResponses</H3>
<PRE>
public <B>NTLMResponses</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getLMResponse(java.lang.String, byte[])"><!-- --></A><H3>
getLMResponse</H3>
<PRE>
public static byte[] <B>getLMResponse</B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the LM Response for the given challenge, using the specified
password.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>password</CODE> - The user's password.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.
<DT><B>Returns:</B><DD>The LM Response.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getNTLMResponse(java.lang.String, byte[])"><!-- --></A><H3>
getNTLMResponse</H3>
<PRE>
public static byte[] <B>getNTLMResponse</B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the NTLM Response for the given challenge, using the
specified password.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>password</CODE> - The user's password.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.
<DT><B>Returns:</B><DD>The NTLM Response.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getNTLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[], byte[])"><!-- --></A><H3>
getNTLMv2Response</H3>
<PRE>
public static byte[] <B>getNTLMv2Response</B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;targetInformation,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the NTLMv2 Response for the given challenge, using the
specified authentication target, username, password, target information
block, and client nonce.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - The authentication target (i.e., domain).<DD><CODE>user</CODE> - The username.<DD><CODE>password</CODE> - The user's password.<DD><CODE>targetInformation</CODE> - The target information block from the Type 2
message.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.<DD><CODE>clientNonce</CODE> - The random 8-byte client nonce.
<DT><B>Returns:</B><DD>The NTLMv2 Response.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getNTLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[], byte[], long)"><!-- --></A><H3>
getNTLMv2Response</H3>
<PRE>
public static byte[] <B>getNTLMv2Response</B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;targetInformation,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce,
long&nbsp;time)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the NTLMv2 Response for the given challenge, using the
specified authentication target, username, password, target information
block, and client nonce.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - The authentication target (i.e., domain).<DD><CODE>user</CODE> - The username.<DD><CODE>password</CODE> - The user's password.<DD><CODE>targetInformation</CODE> - The target information block from the Type 2
message.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.<DD><CODE>clientNonce</CODE> - The random 8-byte client nonce.<DD><CODE>time</CODE> - The time stamp.
<DT><B>Returns:</B><DD>The NTLMv2 Response.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getLMv2Response(java.lang.String, java.lang.String, java.lang.String, byte[], byte[])"><!-- --></A><H3>
getLMv2Response</H3>
<PRE>
public static byte[] <B>getLMv2Response</B>(java.lang.String&nbsp;target,
java.lang.String&nbsp;user,
java.lang.String&nbsp;password,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the LMv2 Response for the given challenge, using the
specified authentication target, username, password, and client
challenge.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>target</CODE> - The authentication target (i.e., domain).<DD><CODE>user</CODE> - The username.<DD><CODE>password</CODE> - The user's password.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.<DD><CODE>clientNonce</CODE> - The random 8-byte client nonce.
<DT><B>Returns:</B><DD>The LMv2 Response.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getNTLM2SessionResponse(java.lang.String, byte[], byte[])"><!-- --></A><H3>
getNTLM2SessionResponse</H3>
<PRE>
public static byte[] <B>getNTLM2SessionResponse</B>(java.lang.String&nbsp;password,
byte[]&nbsp;challenge,
byte[]&nbsp;clientNonce)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the NTLM2 Session Response for the given challenge, using the
specified password and client nonce.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>password</CODE> - The user's password.<DD><CODE>challenge</CODE> - The Type 2 challenge from the server.<DD><CODE>clientNonce</CODE> - The random 8-byte client nonce.
<DT><B>Returns:</B><DD>The NTLM2 Session Response. This is placed in the NTLM
response field of the Type 3 message; the LM response field contains
the client nonce, null-padded to 24 bytes.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="hmacMD5(byte[], byte[])"><!-- --></A><H3>
hmacMD5</H3>
<PRE>
public static byte[] <B>hmacMD5</B>(byte[]&nbsp;data,
byte[]&nbsp;key)
throws java.lang.Exception</PRE>
<DL>
<DD>Calculates the HMAC-MD5 hash of the given data using the specified
hashing key.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>data</CODE> - The data for which the hash will be calculated.<DD><CODE>key</CODE> - The hashing key.
<DT><B>Returns:</B><DD>The HMAC-MD5 hash of the given data.
<DT><B>Throws:</B>
<DD><CODE>java.lang.Exception</CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/NTLMResponses.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMConstants.html" title="interface in org.apache.mina.proxy.handlers.http.ntlm"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../../org/apache/mina/proxy/handlers/http/ntlm/NTLMUtilities.html" title="class in org.apache.mina.proxy.handlers.http.ntlm"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../../index.html?org/apache/mina/proxy/handlers/http/ntlm/NTLMResponses.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="NTLMResponses.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2004-2011 <a href="http://mina.apache.org/">Apache MINA Project</a>. All Rights Reserved.
</BODY>
</HTML>