Calculadora de Probabilidade de Colisão de Hash (Paradoxo do Aniversário)
Calcule a probabilidade de pelo menos uma colisão de hash ou ID para um tamanho de hash e número de itens determinados, usando a fórmula do paradoxo do aniversário — além de quantos itens são necessários para atingir um risco de colisão de 50%, 1%, 0,01% ou personalizado.
Entrada
O número de valores distintos possíveis que o hash ou ID pode assumir (2^bits).
Quantos hashes/IDs aleatórios são gerados. Aceita números simples ou notação científica como 1e12.
Os limites de 50% / 1% / 0,01% abaixo também são sempre mostrados.
Saída
Resultados de Probabilidade de Colisão
| Métrica | Valor |
|---|---|
| No data yet | |
Mais formas de usar esta ferramenta
API REST
curl -X POST https://api.iotools.cloud/v1/tool/hash-collision-probability-calculator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"hashSize": "256",
"items": "1000000",
"targetProbability": "50"
}'Troque pela sua própria chave, da sua conta. Os campos da ferramenta viram o corpo da requisição — sem envelope.
Peça a um agente de IA
Use the IOTools `hash-collision-probability-calculator` tool (Hash Collision Probability Calculator (Birthday Problem)) on this input:
YOUR_INPUT_HERECole isto em qualquer agente conectado ao servidor MCP do IOTools e depois adicione sua entrada.
Widget para incorporar
<iframe
src="https://iotools.cloud/embed/hash-collision-probability-calculator/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="Calculadora de Probabilidade de Colisão de Hash (Paradoxo do Aniversário) — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>Coloque isso na sua própria página — grátis, sem chave, só um link de volta.
| Custo por chamada de API/MCP | A partir de 5 créditos |
|---|---|
| Precisa de mais créditos? | Ver preços |
Também disponível via
Guias
O que faz
Esta calculadora responde à pergunta por trás do "paradoxo do aniversário": se você gerar muitos hashes ou IDs aleatórios, qual é a probabilidade de que dois deles sejam idênticos? Ele usa a aproximação padrão do paradoxo do aniversário
P(collision) ≈ 1 - e^(-n(n-1) / 2H)onde n é o número de itens que você gera e H é o tamanho do espaço de hash ou ID (2^bits — por exemplo 2^256 para SHA-256, ou 2^122 para os bits aleatórios em uma UUID v4). O resultado costuma ser muito diferente da intuição: com um espaço de 128 bits, você precisa de apenas cerca de 2^64 (aproximadamente 18 quintilhões) valores aleatórios antes de haver 50% de chance de dois deles corresponderem — muito menos do que os 2^128 que você poderia esperar.
Como usar
- Escolha um tamanho de hash na lista suspensa (MD5, SHA-1, SHA-256, SHA-512, UUID v4, CRC32) ou escolha Tamanho de bit personalizado e defina sua própria largura de bit.
- Digite o número de itens que você planeja gerar. Números simples e notação científica funcionam — digite
1e9para um bilhão. - Leia a probabilidade de pelo menos uma colisão para esse número de itens.
- A tabela também sempre mostra quantos itens são necessários para atingir um risco de colisão de 50%, 1% ou 0,01%, além de um controle deslizante para procurar a contagem de itens para qualquer outra probabilidade alvo.
Por que a matemática exige cuidado
Trabalhar isso à mão (ou pedir a um assistente de bate-papo para "apenas calcular") geralmente falha em escala: 2^256 tem 78 dígitos e uma calculadora ingênua quer tem overflow ou silenciosamente trunca o expoente, dando uma probabilidade sem sentido. Esta ferramenta mantém cada cálculo no espaço log2 — o próprio espaço hash nunca é materializado como um número gigantesco — portanto permanece preciso não importa quão grande o tamanho do hash seja, e usa expm1 internamente para que probabilidades de colisão muito pequenas não sejam arredondadas para zero.
Quantos itens até um SHA-1 de confirmação git ou ID de banco de dados curto colidir?
A mesma fórmula, espaço menor. Um hash git curto de 7 caracteres tem 28 bits — escolha Tamanho de bit personalizado e defina como 28 para ver quantas confirmações são necessárias antes que colisões de hash curto se tornem prováveis. A mesma abordagem funciona para qualquer espaço de ID com incremento automático, comprimento de token de sessão ou tamanho de slug de link curto que você estiver dimensionando.
Privacidade
Tudo é executado em seu navegador — os números que você insere nunca são enviados para lugar nenhum.
Ferramentas relacionadas
Se você está escolhendo um tamanho de hash para evitar esse tipo de colisão em um sistema real, dimensionar seu orçamento de bit real para uma taxa de falso positivo intencional é um problema relacionado — consulte a Calculadora de Parâmetros do Filtro Bloom. Para gerar os hashes em si, use o Gerador de Hash ou Gerador de UUID.