﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ChallengeResponse" FullName="Mono.Security.Protocol.Ntlm.ChallengeResponse"><TypeSignature Language="C#" Value="public class ChallengeResponse : IDisposable" Maintainer="auto" /><AssemblyInfo><AssemblyName>Mono.Security</AssemblyName><AssemblyPublicKey>[00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 79 15 99 77 D2 D0 3A 8E 6B EA 7A 2E 74 E8 D1 AF CC 93 E8 85 19 74 95 2B B4 80 A1 2C 91 34 47 4D 04 06 24 47 C3 7E 0E 68 C0 80 53 6F CF 3C 3F BE 2F F9 C9 79 CE 99 84 75 E5 06 E8 CE 82 DD 5B 0F 35 0D C1 0E 93 BF 2E EE CF 87 4B 24 77 0C 50 81 DB EA 74 47 FD DA FA 27 7B 22 DE 47 D6 FF EA 44 96 74 A4 F9 FC CF 84 D1 50 69 08 93 80 28 4D BD D3 5F 46 CD FF 12 A1 BD 78 E4 EF 00 65 D0 16 DF]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.IDisposable</InterfaceName></Interface></Interfaces><Docs><summary>Implements the Challenge Response mechanism for NTLM v1.</summary><remarks>This requires access to cryptographic algorithm <see cref="T:System.Security.Cryptography.DES" /> and <see cref="T:Mono.Security.Cryptography.MD4" />.</remarks></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ChallengeResponse ();" /><MemberType>Constructor</MemberType><ReturnValue /><Parameters /><Docs><summary>Creates an empty challenge/response object.</summary><remarks>To be added</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ChallengeResponse (string password, byte[] challenge);" /><MemberType>Constructor</MemberType><ReturnValue /><Parameters><Parameter Name="password" Type="System.String" /><Parameter Name="challenge" Type="System.Byte[]" /></Parameters><Docs><param name="password">a <see cref="T:System.String" /> representing the password.</param><param name="challenge">an array of bytes representing the challenge (random numbers).</param><summary>Creates a challenge/response object with the specified password and challenge.</summary><remarks>To be added</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Challenge"><MemberSignature Language="C#" Value="public byte[] Challenge { set; get; }" /><MemberType>Property</MemberType><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters /><Docs><summary>Set the challenge (random numbers) to calculate the response. </summary><value>null.</value><remarks>For security considerations get will always return null. Keep your own copy of the challenge if required.</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Dispose"><MemberSignature Language="C#" Value="public void Dispose ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><summary>Release the resources held by the class.</summary><remarks>There are no unmanaged resource held by this class (unless the cryptographic DES or MD4 objects use unmanaged resources). Dispose is used to ensure the instance can clean-up (zeroize) its informations.</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Finalize"><MemberSignature Language="C#" Value="~ChallengeResponse ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><summary>To be added</summary><remarks>To be added</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="LM"><MemberSignature Language="C#" Value="public byte[] LM { get; }" /><MemberType>Property</MemberType><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters /><Docs><summary>Return the LAN Manager (LM) part of the response.</summary><value>a <see cref="T:System.Byte[]" /> containing the LAN Manager (LM) response.</value><remarks><para>The LAN Manager response is calculated using DES two times. First time on the seven first characters of the password, then a second time on the last seven character of the password. This is why LAN Manager is historically limited to 14 characters passwords.</para><para>As you can guess it is also weak because having a 8 characters password doesn't help much with such a design.</para></remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="NT"><MemberSignature Language="C#" Value="public byte[] NT { get; }" /><MemberType>Property</MemberType><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters /><Docs><summary>Return the NT part of the response.</summary><value>a <see cref="T:System.Byte[]" /> containing the NT response.</value><remarks>The NT response is calculated using MD4 on the Unicode representation of the password. Passwords of any size will be digested in a 128 bits value.</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Password"><MemberSignature Language="C#" Value="public string Password { set; get; }" /><MemberType>Property</MemberType><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters /><Docs><summary>Set the password to calculate the response.</summary><value>null.</value><remarks>For security considerations get will always return null. Keep your own copy of the password if required.</remarks></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member></Members></Type>