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.
- 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)
- 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
- 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 ,…