NodeJS losowanie liczb mocno "losowych" + hash secret

0

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();
0

Nie, Math.random nie jest bezpieczne do zastosowań kryptograficznych.

https://stackoverflow.com/questions/4083204/secure-random-numbers-in-javascript

1 użytkowników online, w tym zalogowanych: 0, gości: 1