title: Nodejs crypto md5 hash gives me digest of size 24 bytes, instead of expected 16
body: <pre><code>var crypto = require('crypto');
  var key1 = crypto.createHash('md5').update('abcdefgh').digest();
  var key2 = crypto.createHash('md5').update('abcdefgh').digest('base64');
  var key3 = crypto.createHash('md5').update('abcdefgh').digest('hex');
  var key4 = crypto.createHash('md5').update('abcdefgh').digest('latin1');
  console.log('Key sizes :', key1.toString().length, key2.toString().length, key3.toString().length, key4.toString().length ); 
  //Key sizes : 16 24 32 16
  </code></pre>
  
  <p>Doesn't md5 supposed to return 16 byte digest always? </p>