As informações codificadas com um bloco único podem ser distinguidas do ruído aleatório?
-
22-09-2019 - |
Pergunta
Entendo que o CypherText de um cypher de correr devidamente usado revela absolutamente nenhum dados sobre a mensagem criptografada.
Isso significa que não há como distinguir uma mensagem criptografada com um bloco único de ruído completamente aleatório? Ou existe alguma maneira teórica de determinar que há uma mensagem, mesmo que você não possa aprender nada sobre isso?
Solução
Não há como determinar se uma string foi criptografada com um OTP. Você pode produzir qualquer corda do mesmo tamanho escolhendo uma chave apropriada.
Por exemplo (do Wikipedia One Time Pad Artigo), o texto simples "Hello" pode ser criptografado com a chave "XMCKL", dando ao CipherText "Eqnvz". Mas é possível encontrar teclas que produzem qualquer texto sem formatação de 5 caracteres, como "mais tarde". Não há como determinar o texto simples original sem a chave original.
Um OTP pode ser 'quebrado' se for reutilizado (e, portanto, não for mais um um tempo almofada). o Projeto Venona é um exemplo do que pode acontecer quando os OTPs são reutilizados.
Uma grande desvantagem do OTPS é que você deve distribuir com segurança uma chave igual em tamanho ao texto simples a ser codificado.
Outras dicas
Se o seu bloco único for completamente aleatório, qualquer coisa também é (assumindo que sua mensagem não tenha ou baixa correlação com o conteúdo do bloco único).