diff options
Diffstat (limited to 'files/es/web/api/randomsource')
-rw-r--r-- | files/es/web/api/randomsource/index.html | 110 | ||||
-rw-r--r-- | files/es/web/api/randomsource/obtenervaloresaleatorios/index.html | 75 |
2 files changed, 185 insertions, 0 deletions
diff --git a/files/es/web/api/randomsource/index.html b/files/es/web/api/randomsource/index.html new file mode 100644 index 0000000000..7c68f85c01 --- /dev/null +++ b/files/es/web/api/randomsource/index.html @@ -0,0 +1,110 @@ +--- +title: RandomSource +slug: Web/API/RandomSource +tags: + - API + - Interface + - NeedsTranslation + - RandomSource + - Reference + - TopicStub + - Web Crypto API +translation_of: Web/API/Crypto/getRandomValues +--- +<p>{{APIRef("Web Crypto API")}}</p> + +<p><strong><code>RandomSource</code></strong> represents a source of cryptographically secure random numbers. It is available via the {{domxref("Crypto")}} object of the global object: {{domxref("Window.crypto")}} on Web pages, {{domxref("WorkerGlobalScope.crypto")}} in workers.</p> + +<p><code>RandomSource</code> is a not an interface and no object of this type can be created.</p> + +<h2 id="Properties">Properties</h2> + +<p><em><code>RandomSource</code> neither defines nor inherits any property.</em></p> + +<dl> +</dl> + +<h2 id="Methods">Methods</h2> + +<dl> + <dt>{{ domxref("RandomSource.getRandomValues()") }}</dt> + <dd>Fills the passed {{ domxref("ArrayBufferView") }} with cryptographically sound random values.</dd> +</dl> + +<h2 id="Specification" name="Specification">Specification</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Specification</th> + <th scope="col">Status</th> + <th scope="col">Comment</th> + </tr> + <tr> + <td>{{SpecName('Web Crypto API', '#dfn-RandomSource')}}</td> + <td>{{Spec2('Web Crypto API')}}</td> + <td>Initial definition</td> + </tr> + </tbody> +</table> + +<h2 id="Browser_Compatibility">Browser Compatibility</h2> + +<p>{{ CompatibilityTable() }}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Chrome</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Basic support</td> + <td>11.0 {{ webkitbug("22049") }}</td> + <td>{{CompatGeckoDesktop(21)}} [1]</td> + <td>11.0</td> + <td>15.0</td> + <td>3.1</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Android</th> + <th>Chrome for Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{ CompatNo() }}</td> + <td>23</td> + <td>{{CompatGeckoMobile(21)}}</td> + <td>{{ CompatNo() }}</td> + <td>{{ CompatNo() }}</td> + <td>6</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] Although the transparent <code>RandomSource</code> is only available since Firefox 26, the feature was available in Firefox 21.</p> + +<h2 id="See_also">See also</h2> + +<ul> + <li>{{ domxref("Window.crypto") }} to get a {{domxref("Crypto")}} object.</li> + <li>{{jsxref("Math.random")}}, a non-cryptographic source of random numbers.</li> +</ul> diff --git a/files/es/web/api/randomsource/obtenervaloresaleatorios/index.html b/files/es/web/api/randomsource/obtenervaloresaleatorios/index.html new file mode 100644 index 0000000000..b6e09439a9 --- /dev/null +++ b/files/es/web/api/randomsource/obtenervaloresaleatorios/index.html @@ -0,0 +1,75 @@ +--- +title: Crypto.getRandomValues() +slug: Web/API/RandomSource/Obtenervaloresaleatorios +tags: + - API + - Criptografía + - Referencia + - metodo +translation_of: Web/API/Crypto/getRandomValues +--- +<p>{{APIRef("Web Crypto API")}}</p> + +<p>El método <code><strong>Crypto.getRandomValues()</strong></code> permite obtener valores aleatorios criptográficamente fuertes. El array que se pasa como parámetro se rellena con números aleatorios (entiéndase aleatorios en el sentido criptográfico).</p> + +<p>Con el fin de garantizar un rendimiento razonable, las distintas implementaciones no utilizan un generador de numeros aleatorios puro, sino que utilizan un generador numérico pseudo-aleatorio, sembrado con un valor con suficiente entropía. Los generadores numéricos pseudo-aleatorios utilizados difieren entre {{Glossary("user agent", "user agents")}}, pero son adecuados para usos criptográficos. Se require también que las distintas implementaciones usen una semilla con suficiente entropía, como una fuente de entropía a nivel de sistema.</p> + +<h2 id="Sintaxis">Sintaxis</h2> + +<pre class="syntaxbox"><em>cryptoObj</em>.getRandomValues(<em>typedArray</em>);</pre> + +<h3 id="Parámetros">Parámetros</h3> + +<dl> + <dt><em>typedArray</em></dt> + <dd>Es un entero {{jsxref("TypedArray")}}, que puede ser un {{jsxref("Int8Array")}}, un {{jsxref("Uint8Array")}}, un {{jsxref("Int16Array")}}, un {{jsxref("Uint16Array")}}, un {{jsxref("Int32Array")}}, o un {{jsxref("Uint32Array")}}. Todos los elementos dentro del array seran sobreescritos con números aleatorios.</dd> +</dl> + +<h3 id="Excepciones">Excepciones</h3> + +<ul> + <li>Una {{exception("QuotaExceededError")}} {{domxref("DOMException")}} es lanzada si la longitud solicitada es mayor a 65536 bytes.</li> +</ul> + +<h2 id="Ejemplo">Ejemplo</h2> + +<pre class="brush: js">/* Asumiendo que window.crypto.getRandomValues está disponible */ + +var array = new Uint32Array(10); +window.crypto.getRandomValues(array); + +console.log("Tus numeros de la suerte:"); +for (var i = 0; i < array.length; i++) { + console.log(array[i]); +} +</pre> + +<h2 id="Specification" name="Specification">Especificación</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificación</th> + <th scope="col">Estado</th> + <th scope="col">Comentario</th> + </tr> + <tr> + <td>{{SpecName('Web Crypto API', '#RandomSource-method-getRandomValues')}}</td> + <td>{{Spec2('Web Crypto API')}}</td> + <td>Definición Inicial</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidad_del_navegador">Compatibilidad del navegador</h2> + +<p>La tabla de compatibilidad de esta página se genera a partir de datos estructurados. Si desea contribuir a los datos, por favor, compruebe <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> y envianos un pull request.</p> + +<p>{{Compat("api.Crypto.getRandomValues")}}</p> + +<h2 id="Ver_también">Ver también</h2> + +<ul> + <li>{{ domxref("Window.crypto") }} para obtener un objeto tipo {{domxref("Crypto")}}.</li> + <li>{{jsxref("Math.random")}}, una fuente no criptográfica de números aleatorios.</li> +</ul> |