title: Quick 64-bit deterministic hash in python
body: <p>I have previously been using a <code>adler32</code> to produce a 32-bit hash of blocks of text (which i then use as a filename for saving a cache of the processed version of that text). e.g.</p>
  
  <pre><code>  hashed_file_name = adler32(pragraph.encode())
  </code></pre>
  
  <p>I am looking to increase the hash size, to reduce the likelihood of collisions [i.e. two different blocks of text getting the same hashed-code, which given I have around 10-million text bocks, i think would give a collisions in about 0.2% of cases - i.e. 10 million / 2^32 ]</p>
  
  <p>My question is, what is the fastest hash generator which produces at least a  64-bit hash? Would sha1 be an efficient option [which produces a 160-bit hash]? i.e.</p>
  
  <pre><code>  hashed_file_name  = hashlib.sha1(pragraph.encode()).hexdigest()
  </code></pre>
  
  <p>While this is a over-kill for my neads, are other versions/options more efficient in terms of processing time?</p>