protected override void SetPassword(byte[] value)
{
if (_usernameByteCount == Byte.MinValue) _usernameByteCount = (byte)Encoding.ASCII.GetByteCount(_username.ToUpper() + ":");
byte[] source = new byte[_usernameByteCount + value.Length];
Encoding.ASCII.GetBytes(_username.ToUpper() + ":", 0, _username.Length + 1, source, 0);
Buffer.BlockCopy(value, 0, source, _usernameByteCount, value.Length);
_password = SecureRemotePassword.GenerateCredentialsHash(source);
}
#endregion