Resolvedor de logaritmo discreto online
Calcula o menor x tal que g^x ≡ h (mod p). Pesquisa exaustiva até p=1.000.000. Exemplo: g=2, h=8, p=13 → x=3. O processamento é feito localmente no navegador.
Começar a usar
O que faz esta ferramenta?
Esta ferramenta resolve o problema do logaritmo discreto: dado um inteiro g, um inteiro h e um módulo p, encontra o menor expoente não negativo x tal que gx ≡ h (mod p). A pesquisa é exaustiva: testa todos os expoentes desde 0 até p-1, calculando gx mod p de forma iterativa.
Exemplo concreto
Com os valores predefinidos g=2, h=8 e p=13, a ferramenta devolve x=3, porque 23 = 8 e 8 mod 13 = 8. Pode verificar: 20=1, 21=2, 22=4, 23=8.
Parâmetros e processamento
- g: base inteira (sem restrição além do tamanho numérico).
- h: valor cujo logaritmo se procura; é normalizado módulo p, portanto aceita valores negativos ou superiores a p.
- p: módulo, limitado entre 2 e 1.000.000.
- A pesquisa começa com valor 1 (expoente 0) e multiplica por g a cada passo, reduzindo módulo p.
- Se nenhum expoente até p-1 produzir o valor pretendido, a ferramenta indica que não há solução.
Limitações
Este é um algoritmo educacional O(p), não um ataque criptográfico. O limite de 1.000.000 evita sobrecarga do navegador; módulos criptográficos reais são demasiado grandes para esta abordagem. O cálculo é local, sem servidor ou IA.
Perguntas frequentes
O que acontece se h for negativo ou maior que p?
A ferramenta normaliza h módulo p, ou seja, compara o resíduo de h (por exemplo, -5 mod 13 = 8). Assim, pode introduzir qualquer inteiro.
O módulo precisa de ser primo?
Não. A ferramenta funciona com qualquer módulo entre 2 e 1.000.000. Se g e p não forem coprimos, a sequência pode entrar num ciclo mais curto, mas a pesquisa exaustiva continua a encontrar o primeiro expoente que satisfaz a condição, se existir.
Esta ferramenta consegue quebrar chaves criptográficas?
Não. O limite de 1.000.000 torna impossível lidar com módulos criptográficos (tipicamente com centenas de dígitos). É apenas para fins educativos e de verificação.
O processamento é feito localmente no navegador.