Witam.
Potrzebuję uzyskać liczby, że tak powiem mocno losowe, których nie będzie dało się w jakiś czarodziejski sposób ustalić przed losowaniem tak jak w przypadku standardowych pseudolosowych. Coś takiego jak choćby stronki typu ruletki csgo, które mają jakiś ten kod do ustalenia losowania z tym hashem i secretem.
Czy taki kod generuje wystarczająco "losowe" liczby, których jakieś hakiery nie odgadną ?
Math.floor(Math.random() * (max - min + 1)) + min;
Znalazłem też npm'a "crypto-random-int" (https://www.npmjs.com/package/crypto-random-int) oraz "http://chancejs.com/" i nie wiem, która opcja byłaby najlepsza.
Na koniec bym to wsadził do crypto, uzyskiwał z tego hash i secret, żeby było "Provalby Fair"
const crypto = require('crypto');
const hmac = crypto.createHmac('sha256', 'a secret');
hmac.on('readable', () => {
const data = hmac.read();
if (data) {
console.log(data.toString('hex'));
}
});
hmac.write('' + (Math.floor(Math.random() * (10 - 1 + 1)) + 1)); // lub inaczej losowana liczba
hmac.end();