title: BCryptHelper.CheckPassword always returns false
body: <p>I'm implementing password hashing using BCrypt, which should be pretty straight forward to use.
  However when the password is checked against the hashed password using</p>
  
  <pre><code>BCryptHelper.CheckPassword(Password, hashedDBPassword)
  </code></pre>
  
  <p>this always return false.</p>
  
  <p>Here is my hasher class:</p>
  
  <pre><code>public static class BCryptHasher
      {
          public static string EncryptPassword(string password)
          {
              var passwordToHash = password;
              var hashedPassword = BCryptHelper.HashPassword(passwordToHash, BCryptHelper.GenerateSalt(6));
  
              return hashedPassword;
          }
  
          public static bool CheckPasswordMatch(string userPassword, string hashedDBPassword)
          {
              return BCryptHelper.CheckPassword(userPassword, hashedDBPassword);
          }
      }
  </code></pre>
  
  <p>I have debugged to check if the password and hashedPassword are correct.
  Not many other cases of this problem exist so there must be something I am doing wrong.</p>
  
  <p>I found the same question here: <a href="https://stackoverflow.com/questions/6222268/asp-net-mvc-3-app-bcrypt-checkpassword-failing">ASP.NET MVC 3 app, BCrypt.CheckPassword failing</a> but no solution has been found yet.</p>
  
  <p>Maybe there are other and better solutions for hashing?</p>
  
  <p>thanks</p>