title: Migrating Parse.com passwords to Django
body: <p>I am trying to migrate the data from Parse.com to our own servers. In order to do this, user passwords have to be migrated too.
  Parse.com uses standard bcrypt password encryption and passwords appear in the following format (<a href="https://www.parse.com/questions/how-would-i-move-passwords-out-of-parse-to-another-server" rel="nofollow">How would I move passwords out of Parse to another server?</a>):</p>
  
  <pre><code>$2a$10$UpoNYQ0YE/FRVrh3xt6QQeQ3HmTmskbW2Sfg5DX9fDQJnIHQd1LqG
  </code></pre>
  
  <p>How do I move this string to Django auth_user table so it will be accepted by Django</p>
  
  <p><strong>EDIT:</strong>
  I've tried adding BCrypt password hashers to settings according to <strong>shtuff.it</strong> suggestion below:</p>
  
  <pre><code>PASSWORD_HASHERS = (
      'django.contrib.auth.hashers.BCryptSHA256PasswordHasher',
      'django.contrib.auth.hashers.BCryptPasswordHasher',
      'django.contrib.auth.hashers.PBKDF2PasswordHasher',
      'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher',
      'django.contrib.auth.hashers.SHA1PasswordHasher',
      'django.contrib.auth.hashers.MD5PasswordHasher',
      'django.contrib.auth.hashers.CryptPasswordHasher',
  )
  </code></pre>
  
  <p>And tried adding <em>bcrypt</em> to the beginning of the string: <code>bcrypt$2a$10$UpoNYQ0YE/FRVrh3xt6QQeQ3HmTmskbW2Sfg5DX9fDQJnIHQd1LqG</code>
  This gives me "invalid salt" message from bcrypt hasher. I also tried playing with the string and bringing it to the form <code>bcrypt$&lt;iterations&gt;$&lt;salt&gt;$hash</code> form or some other combinations, but could not make the "invalid salt" message go away.</p>