twitst4tz

twitter statistics web application
Log | Files | Refs | README | LICENSE

sha1.js (579B)


      1 'use strict';
      2 
      3 var crypto = require('crypto');
      4 
      5 function sha1(bytes) {
      6   if (typeof Buffer.from === 'function') {
      7     // Modern Buffer API
      8     if (Array.isArray(bytes)) {
      9       bytes = Buffer.from(bytes);
     10     } else if (typeof bytes === 'string') {
     11       bytes = Buffer.from(bytes, 'utf8');
     12     }
     13   } else {
     14     // Pre-v4 Buffer API
     15     if (Array.isArray(bytes)) {
     16       bytes = new Buffer(bytes);
     17     } else if (typeof bytes === 'string') {
     18       bytes = new Buffer(bytes, 'utf8');
     19     }
     20   }
     21 
     22   return crypto.createHash('sha1').update(bytes).digest();
     23 }
     24 
     25 module.exports = sha1;