UNPKG

uuid5

Version:

UUID v5 generator (SHA1 hash into 128 bits)

22 lines (16 loc) 459 B
'use strict'; let crypto = require('crypto'); let uuid5 = function(str) { let out = crypto.createHash('sha1').update(str).digest(); out[8] = out[8] & 0x3f | 0xa0; // set variant out[6] = out[6] & 0x0f | 0x50; // set version let hex = out.toString('hex', 0, 16); return [ hex.substring(0, 8), hex.substring(8, 12), hex.substring(12, 16), hex.substring(16, 20), hex.substring(20, 32) ].join('-'); }; module.exports = uuid5;