--- title: RandomSource.getRandomValues() slug: Web/API/RandomSource/getRandomValues tags: - АПИ - Криптография - Справка - метод translation_of: Web/API/Crypto/getRandomValues ---
{{APIRef("Web Crypto API")}}
Метод RandomSource.getRandomValues()
позволяет вам получать криптографически стойкие числа. Массив, переданный как параметр, заполняется случайными числами (случайными в криптографическом смысле).
Для того, чтобы гарантировать достаточную производительность, реализации используют не настоящий генератор случайных чисел (RNG, en - Random Number Generator), а генератор псевдо-случайных чисел, которому предоставлено начальное зерно (wiki - https://en.wikipedia.org/wiki/Random_seed) с достаточной энтропией (http://cryptography.ru/ref/энтропия). Реализация генератора псевдо-случайных чисел (PRNG, en - PseudoRandom Number Generator) отличается от других реализаций RNG, но она больше подходит для использования в криптографии. Реализации также требуют использование начального зерна с достаточной энтропией, как источник системно-уровневой энтропии.
cryptoObj.getRandomValues(typedArray);
typedArray
/* Предполагается что функция window.crypto.getRandomValues доступна */ var array = new Uint32Array(10); window.crypto.getRandomValues(array); console.log("Ваше счастливое число:"); for (var i = 0; i < array.length; i++) { console.log(array[i]); }
Спецификация | Статус | Комментарий |
---|---|---|
{{SpecName('Web Crypto API', '#RandomSource-method-getRandomValues')}} | {{Spec2('Web Crypto API')}} | Изначальное определение |
{{Compat("api.Crypto.getRandomValues")}}