title: How to create and store password hashes with Blowfish in PHP
body: <p><strong>1) How do you create secure Blowfish hashes of passwords with crypt()?</strong></p>
  
  <pre><code>$hash = crypt('somePassword', '$2a$07$nGYCCmhrzjrgdcxjH$');
  </code></pre>
  
  <p>1a) What is the significance of "$2a"? Does it just indicate that the Blowfish algorithm should be used?<br>
  1b) What is the significance of "$07"? Does a higher value imply a more secure hash?<br>
  1c) What is the significance of "$nGYCCmhrzjrgdcxjH$"? Is this the salt that will be used? Should this be randomly generated? Hard-coded?  </p>
  
  <p><strong>2) How do you store Blowfish hashes?</strong></p>
  
  <pre><code>echo $hash;
  //Output: $2a$07$nGYCCmhrzjrgdcxjH$$$$.xLJMTJxaRa12DnhpAJmKQw.NXXZHgyq
  </code></pre>
  
  <p>2a) What part of this should be stored in the database?<br>
  2b) What data type should be used for the column (MySQL)?  </p>
  
  <p><strong>3) How should one verify a login attempt?</strong></p>