Du kan inte välja fler än 25 ämnen
Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
Den här utvecklingskatalogen är arkiverad. Du kan se filer och klona katalogen, men inte öppna ärenden eller genomföra push- eller pull-förfrågningar.
|
- 'use strict'
- var crypto = require('crypto')
- var MurmurHash3 = require('imurmurhash')
-
- module.exports = function (uniq) {
- if (uniq) {
- var hash = new MurmurHash3(uniq)
- return ('00000000' + hash.result().toString(16)).substr(-8)
- } else {
- // Called without a callback, because this interface should neither block
- // nor error (by contrast with randomBytes which will throw an exception
- // without enough entropy).
- //
- // However, due to a change in Node 0.10.27+, pseudoRandomBytes is now the
- // same as randomBytes, and may in fact block in situations where
- // insufficent entropy is available.
- return crypto.pseudoRandomBytes(4).toString('hex')
- }
- }
|