Se P = NP, existem sistemas de criptografia que exigiriam n ^ 2 tempo para quebrar?

13

Se P for igual a NP, ainda será possível projetar um sistema de criptografia em que o algoritmo ideal de análise de criptografia leve, digamos, o quadrado do tempo gasto pelos algoritmos legítimos de criptografia e descriptografia? Algum algoritmo já existe?

S.LAKSHMINARAYAN
fonte
6
Esta pergunta parece ter sido copiada palavra por palavra do Quora , até o erro gramatical ("design possível do design"). Isso equivale a plágio, o que não é legal e não é bem-vindo neste site. Lembre-se de sempre adicionar atribuição de destaque ao usar outras fontes.
DW
1
Além disso, procuramos perguntas escritas com suas próprias palavras - elas devem ser mais do que uma cópia e pasta de material disponível em outro lugar. Não queremos ser apenas um lugar que copie e cole perguntas ou respostas inteiras do Quora. Não há problema em usar pequenas citações de outros lugares, se você indicar claramente qual parte é uma cotação e vincular à fonte e creditar a fonte, mas a maioria deve ser seu próprio conteúdo. Veja também cs.stackexchange.com/help/referencing e stackexchange.com/legal .
DW
n ^ 2 está em P. Portanto, P = NP não afeta a resposta à pergunta.
Taemyr

Respostas:

14

Sim - de fato, o primeiro algoritmo de chave pública que foi inventado fora de uma agência de inteligência funcionou assim! A primeira publicação que propôs criptografia de chave pública foi "Secure Communications over Insecure Channels", de Ralph Merkle , onde ele propôs usar "quebra-cabeças" . Este é um protocolo de acordo chave.

  1. Alice envia mensagens criptografadas (chamadas de quebra-cabeças), cada uma contendo um identificador exclusivo I ie uma chave de sessão K i , com as chaves para cada mensagem escolhida entre um conjunto de n chaves. Isso leva tempo O ( n ) ( O ( 1 ) por mensagem).nIiKinO(n)O(1)
  2. Bob descriptografa uma das mensagens por força bruta e envia de volta criptografada com K i . Isso leva tempo O ( n ) ( O ( 1 ) por tecla, vezes n teclas possíveis).IiKiO(n)O(1)n
  3. Alice tenta todas as chaves para descriptografar a mensagem. Isso leva novamente tempo.O(n)

Cada uma das partes requer apenas a computação, mas um intruso que deseja encontrar K i precisa experimentar metade dos puzzles em média para calcular a tecla direita (o intruso não sabe qual mensagem Bob escolheu para descriptografar), assim o intruso requer Θ ( N 2 ) a computação em média.O(n)KiΘ(n2)

Depois que Merkle inventou seus quebra-cabeças, Diffie e Hellman publicaram um protocolo-chave de acordo com base no problema discreto do logaritmo . Este protocolo ainda é usado hoje.

O problema com os quebra-cabeças Merkle, ou qualquer coisa em que a quantidade de trabalho a ser realizado pelo invasor só aumenta conforme o quadrado da parte legítima, é que são necessários grandes tamanhos de chave e quantidades de computação para obter uma margem de segurança decente.

De qualquer forma, não está claro que apenas provar que P = NP invalide os algoritmos criptográficos existentes. Se o aumento polinomial for uma potência suficientemente alta, pode não ser tão importante na prática. Consulte Como a segurança precisará ser alterada se P = NP? , Podemos dizer que, se P = NPP = NP, não houver criptografia de chave pública segura por CPA? , P = NP e sistemas criptográficos atuais ,…

Gilles 'SO- parar de ser mau'
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
DW
1

https://en.m.wikipedia.org/wiki/One-time_pad

O One Time Pad é seguro, independentemente da complexidade, desde que seus números sejam realmente aleatórios.

Mesmo se você puder tentar todas as teclas rapidamente, é inútil, pois isso revelará todas as mensagens possíveis e não há como saber qual foi a desejada.

Pelo que você descreve, se a análise levasse apenas o quadrado do tempo de criptografia, seria considerada insegura pelos padrões modernos. A criptografia precisa ocorrer em segundos ou até menos, portanto, um aumento quadrático permitiria que as mensagens fossem decodificadas em poucas horas.

jmite
fonte
3
Não há algoritmo de criptoanálise para OTP, muito menos um ótimo. A questão era especificamente sobre isso, não se seria possível qualquer criptografia segura.
precisa saber é o seguinte