Generador de Números Aleatorios
Herramienta de Números Criptográficamente Aleatorios
Genera una lista de enteros o decimales aleatorios dentro de un rango personalizado, con la potencia del generador de números aleatorios criptográficamente seguro de tu navegador.
Entendiendo la Generación de Números Aleatorios
No todos los números "aleatorios" son iguales. La fuente de aleatoriedad importa mucho dependiendo del uso que le des a los números — desde elegir un ganador de rifa hasta sembrar una simulación científica.
La función integrada de JavaScript Math.random() es un generador pseudoaleatorio rápido — su salida está determinada por una semilla y un algoritmo interno, por lo que no está diseñada para resistir la predicción. crypto.getRandomValues(), que esta herramienta utiliza, obtiene entropía del generador de números aleatorios criptográficamente seguro del sistema operativo, produciendo valores impredecibles incluso para un atacante que haya visto salidas anteriores.
Los generadores de números aleatorios se usan para rifas y sorteos, extraer una muestra aleatoria de un conjunto de datos más grande, generar datos de prueba, mezclar elementos de juegos y elegir números estilo lotería. Siempre que la equidad importe, una fuente criptográficamente segura es la opción más segura.
¿Por qué crypto.getRandomValues?
Cada número que genera esta calculadora se obtiene usando la API crypto.getRandomValues() del navegador — la misma fuente criptográficamente segura que se usa para generar claves de cifrado y tokens de sesión. A diferencia de Math.random(), que prioriza la velocidad sobre la imprevisibilidad, crypto.getRandomValues() está construida específicamente para que su salida no pueda predecirse de forma factible, incluso por alguien que conozca el algoritmo y haya observado resultados anteriores. Eso la convierte en la opción correcta siempre que el resultado deba ser genuinamente justo, como elegir un ganador de rifa o mezclar una baraja para un juego con apuestas reales.
Eligiendo Tus Opciones
Usa el modo Entero para escenarios de números enteros como tiradas de dados, números de lotería o identificadores aleatorios. Usa el modo Decimal cuando necesites precisión fraccionaria, como generar mediciones de muestra o lecturas de sensores simuladas. Desmarcar Permitir Duplicados garantiza que cada valor de la lista sea distinto — útil para extraer boletos de rifa únicos o muestrear sin reemplazo — pero el rango debe contener al menos tantos valores distintos como la cantidad que solicites. Orden de Salida simplemente reordena la lista final; no tiene efecto sobre qué números se generan.
Puntos Clave
-
Criptográficamente seguro. Cada número se genera con
crypto.getRandomValues(), no con el predecibleMath.random(). - Enteros o decimales. Cambia de modo según necesites números enteros o precisión fraccionaria.
- Se admiten extracciones únicas. Desactiva los duplicados para muestreo sin reemplazo, siempre que el rango pueda contener suficientes valores distintos.
- ¿Necesitas las probabilidades? Usa la Calculadora de Probabilidad para calcular la probabilidad de un resultado específico.
Frequently Asked Questions
- Ingresa un valor Mínimo y Máximo para el rango.
- Ingresa Cuántos números quieres generar.
- Elige Entero o Decimal como Tipo de Número. Si eliges Decimal, define a cuántos decimales redondear.
- Opcionalmente desmarca Permitir Duplicados para forzar que cada número generado sea único, y elige un Orden de Salida.
- Haz clic en "Generar" para ver tu lista de números aleatorios.
Entero genera solo números enteros, redondeando el rango hacia adentro al número entero más cercano en cada extremo. Decimal genera números fraccionarios dentro del rango exacto que ingreses, redondeados a la cantidad de decimales que elijas (por ejemplo, 2 decimales da valores como 4.17).
Cuando está marcada (opción predeterminada), el mismo número puede aparecer más de una vez en la lista generada, como lanzar un dado varias veces. Cuando está desmarcada, cada número de la lista está garantizado a ser único. Desmarcarla requiere que el rango contenga suficientes valores distintos para la cantidad solicitada; de lo contrario, la calculadora muestra un error, ya que es matemáticamente imposible extraer más números únicos de los que existen en el rango.
Este generador obtiene su aleatoriedad de la API crypto.getRandomValues del navegador en lugar de la función integrada de JavaScript Math.random(). Math.random() es un generador pseudoaleatorio rápido que no está diseñado para ser impredecible — su estado interno puede potencialmente inferirse a partir de suficientes salidas. crypto.getRandomValues obtiene entropía del generador de números aleatorios criptográficamente seguro del sistema operativo, lo que lo hace adecuado para rifas, sorteos, muestreo, y cualquier caso de uso donde la equidad y la imprevisibilidad realmente importan.
Por defecto ("Ninguno"), los números se listan en el orden en que fueron generados. Elegir "Ascendente" ordena la lista resultante de menor a mayor antes de mostrarla, útil cuando quieres identificar de un vistazo el resultado más bajo o más alto, como al elegir números estilo lotería.
Sí. Los campos Mínimo y Máximo aceptan cualquier valor numérico, incluyendo números negativos y decimales. En modo Entero, el rango se redondea hacia adentro a los números enteros más cercanos antes de generar; en modo Decimal se usa el rango exacto que ingreses.