ForHosting KIT · Matemática

Verificador de primo seguro

Verifica se um primo p é seguro, ou seja, se (p − 1)/2 também é primo: 23 é seguro porque sua metade, 11, é prima, o que faz de 11 um primo de Sophie Germain. A metade sempre aparece, para você conferir. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Potência (W)
23
Você obtém
Q
11

O verificador de primo seguro recebe um inteiro primo p e determina se o valor relacionado q = (p − 1) / 2 também é primo. Quando ambos são primos, p é um primo seguro e q é seu primo de Sophie Germain. Entradas compostas são rejeitadas em vez de receberem falso, mantendo a resposta fiel à definição e tornando erros de entrada visíveis em fluxos automatizados.

O que significa um primo ser seguro

Um primo seguro é um número primo p cujo valor associado q = (p − 1) / 2 também é primo. De forma equivalente, p pode ser escrito como 2q + 1 com q primo; esse q menor é chamado de primo de Sophie Germain. Por exemplo, 23 é seguro porque é primo e seu candidato metade é 11, que também é primo.

Já 13 é primo, mas não seguro, pois (13 − 1) / 2 é 6, um número composto. Este verificador mantém os dois testes separados. Primeiro, ele confirma a premissa fornecida por você: p precisa ser primo.

Só então calcula e testa q. O primo excepcional 2 é aceito, porém não é seguro: seu candidato é 0.5, que não é inteiro e, portanto, não pode ser primo. Esse tratamento segue a definição sem restringir silenciosamente entradas válidas a primos ímpares.

Como funciona a verificação determinística

A capacidade valida que p seja um inteiro entre 2 e o maior inteiro seguro do JavaScript. Depois executa um teste exato de primalidade com aritmética BigInt, verificações de divisibilidade por primos pequenos, exponenciação modular e um conjunto fixo de testemunhas Miller–Rabin determinístico em todo o intervalo suportado. Testemunhas fixas impedem que chamadas repetidas sigam caminhos diferentes ou forneçam apenas uma resposta probabilística.

Para um primo ímpar válido, subtrair um produz um inteiro par, então a divisão por dois é exata. O verificador aplica a mesma rotina de primalidade a q e retorna a decisão booleana. Todo cálculo ocorre localmente, sem rede, tabela externa, aleatoriedade ou relógio.

A saída numérica permanece exata porque p e q ficam limitados a valores representáveis com segurança por números JavaScript.

Como usar o resultado em estudos e software

Use o verificador quando a distinção entre um primo comum e um primo seguro for a questão central. Em aulas de teoria dos números, ele demonstra de forma concisa a relação entre o par e mostra q para que estudantes confiram a aritmética. Na geração de dados de teste, ele pode validar um candidato escolhido em outro sistema antes de incluí-lo em um exercício de protocolo ou benchmark.

A capacidade ajuda na validação e no ensino, porém não gera primos, não fatora compostos, não produz certificados portáteis e não garante adequação criptográfica. Parâmetros criptográficos grandes costumam exceder o limite de inteiro seguro e exigem bibliotecas especializadas e revisão do protocolo.

Conferir exercícios de teoria dos números

Teste um primo seguro proposto e mostre o candidato de Sophie Germain correspondente para revisar cada parte da definição.

Validar dados de teste gerados

Confirme que um primo escolhido por outro gerador determinístico é realmente seguro antes de salvá-lo em testes de protocolos ou algoritmos.

Separar primos de primos seguros

Classifique valores já primos pela primalidade do candidato metade, sem confundir entrada composta com um resultado negativo válido.

Quanto custa o verificador de primo seguro?

A mesma verificação determinística pode ser executada gratuitamente na interface do navegador.

Por que 23 é um primo seguro?

23 é primo, e (23 − 1) / 2 é igual a 11, que também é primo.

Posso usar isto para gerar primos seguros criptográficos?

Não. A ferramenta apenas verifica um valor no intervalo de inteiros seguros; não gera parâmetros nem os certifica para um protocolo criptográfico.

Por que 13 não é um primo seguro?

13 é primo, mas (13 − 1)/2 dá 6, que é composto. Um primo seguro exige que os dois números sejam primos, então a resposta é não, mesmo que o número digitado seja primo.

O que acontece se eu digitar um número que não é primo?

Ele é recusado com uma mensagem em vez de um simples não, porque um número composto não pode ser primo seguro. Corrija o número e tente de novo, sem tratar isso como um resultado negativo.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/numth/safe-prime

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/numth/safe-prime \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"p":23}'
{
  "p": 23
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.safe_prime",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

O resultado devolve p, o q calculado e o booleano direto safe_prime.

O que significa um primo ser seguro

A resposta repete p, informa q e define safe_prime como verdadeiro ou falso, evitando que você tenha de reconstruir o valor intermediário.

Como funciona a verificação determinística

A mesma entrada sempre gera o mesmo resultado JSON. Se p for composto, o processamento para com um erro invalid_input que identifica a premissa inválida; safe_prime não é retornado como falso, pois isso sugeriria incorretamente que um composto seria um primo não seguro.

Como usar o resultado em estudos e software

No código da aplicação, trate invalid_input como uma correção necessária na chamada, não como resultado negativo nem falha transitória para repetir. Uma resposta bem-sucedida com safe_prime falso informa que p passou no teste, mas q não; verdadeiro indica que ambos passaram. A mesma implementação funciona gratuitamente no navegador e por automação de API a US$ 0,002 por solicitação, com regras idênticas de entrada e saída.

O que acontece se p for composto?

A solicitação retorna invalid_input porque primos seguros só são definidos para p primo. Ela não retorna safe_prime falso para uma entrada composta.

2 é considerado um primo seguro?

Não. Embora 2 seja primo, (2 − 1) / 2 é 0.5, que não é um primo inteiro; por isso, safe_prime é falso.

Ver a documentação completa do KIT →