Gerador de números aleatórios grátis
Gere números aleatórios em qualquer intervalo, crie listas de números exclusivos ou jogue dados. Usa aleatoriedade criptograficamente segura.
🔒 Cada número usa a aleatoriedade criptograficamente segura do seu navegador (crypto.getRandomValues) — genuinamente justa, não o previsível Math.random(). Nada é enviado a lugar algum. Mesmo assim, não use esses números para geração de chaves criptográficas, tokens de segurança ou aplicações regulamentadas de loteria/jogo, que exigem fontes de aleatoriedade certificadas por hardware.
Usos comuns
- Gerar Números de LoteriaEscolha números de loteria aleatórios para Powerball, Mega Millions, EuroMillions e outros sorteios.
- Escolher um Vencedor Aleatório para SorteiosSelecione equitativamente um vencedor aleatório de uma lista de entrada numerada para concursos e sorteios.
- Rolar Dados para Jogos de TabuleiroRole qualquer combinação de dados — d4, d6, d8, d10, d12, d20, d100 — para D&D e RPGs de tabuleiro.
- Amostragem Aleatória para PesquisaGere amostras aleatórias, atribua IDs aleatórios ou selecione um subconjunto aleatório de um conjunto de dados numerado.
- Gerar Números Aleatórios para Dados de TesteCrie grandes listas de números aleatórios para testar algoritmos, preencher bancos de dados e fazer testes de carga do sistema.
Como funciona
Todo número que esta ferramenta gera vem de crypto.getRandomValues — a fonte aleatória criptograficamente segura do navegador, a mesma usada para geração de chaves TLS. Um algoritmo de amostragem por rejeição escrito à mão fica por cima para eliminar o viés de módulo que afeta implementações simples de Math.random() % intervalo, incluindo intervalos mais largos que 2^32 via aritmética BigInt.
- 1Defina o seu intervalo e modoEscolha entre um único número, uma lista em lote (até 1000), ou dados poliédricos (d4 a d100). Para listas também pode exigir valores únicos e opcionalmente ordenar a saída ascendentemente.
- 2crypto.getRandomValues extrai entropia brutaCada número é extraído de um Uint32Array (ou BigUint64Array para intervalos mais largos que 2^32) preenchido pelo RNG criptográfico do navegador — não Math.random(). A amostragem por rejeição depois descarta valores que distorceriam a distribuição, para que cada inteiro no seu intervalo tenha exatamente igual probabilidade.
- 3O modo de valor único usa Fisher-Yates ou acompanhamento de rejeiçãoQuando o modo único está ativado e o intervalo cabe em memória (até 100.000 valores), a ferramenta materializa o conjunto completo e baralha-o com Fisher-Yates. Para intervalos muito grandes extrai valores um de cada vez, saltando repetições — evitando o custo de memória de construir um array de milhares de milhões de entradas.
- 4Os resultados aterram com feedback animado e permanecem no histórico da sessãoOs valores finais se animam para o lugar (um rolo de máquina caça-níqueis para números, dados tombando para o modo de dados) usando requestAnimationFrame, depois aparecem em um registro de histórico deslizável que você pode copiar a qualquer momento. Nada sai do seu navegador.
Ferramentas relacionadas
Lançador de dados
Jogue de 1 a 10 dados (d4, d6, d8, d10, d12, d20 ou d100) com uma animação curta, veja o total e cada resultado e mantenha uma lista das últimas jogadas.
Gerador de cores aleatórias
Gere cores aleatórias uma de cada vez ou em uma paleta de cinco, bloqueie as que você gostar, copie valores HEX, RGB ou HSL e exporte a paleta como PNG ou CSS.
Jogar moeda e roda giratória
Lance uma moeda virtual, gire uma roda personalizável ou selecione aleatoriamente em uma lista de opções. Usa a aleatoriedade criptograficamente segura do seu navegador — não é um sorteio publicamente verificável, então evite concursos regulados.