Kaynağa Gözat

Use crypto module for token generation

Shane Kilkelly 9 yıl önce
ebeveyn
işleme
6feedf5520

+ 3 - 3
services/web/app/coffee/Features/Project/ProjectTokenGenerator.coffee

@@ -1,12 +1,12 @@
+crypto = require 'crypto'
+
 module.exports = ProjectTokenGenerator =
 
 	readOnlyToken: () ->
 		length = 12
 		tokenAlpha = 'bcdfghjkmnpqrstvwxyz'
 		result = ''
-		for _n in [1..length]
-			i = Math.floor(Math.floor(Math.random() * tokenAlpha.length))
-			result += tokenAlpha[i]
+		crypto.randomBytes(length).map( (a) -> result += tokenAlpha[a % tokenAlpha.length] )
 		return result
 
 	readAndWriteToken: () ->