El uso de claves o el uso de un algoritmo secreto es el mismo . Permítame repetir que: usar claves en un algoritmo de cifrado bien conocido o usar un algoritmo inteligente especial de su invención es lo mismo: en ambos sentidos, hay un secreto compartido que se puede medir en bits de información sin procesar.
Todos los métodos de cifrado se basan en 'oscuridad' , lo que básicamente es la protección del secreto compartido . Básicamente, se trata de mantener en secreto secreto compartido . El secreto de su clave se correlaciona con la aleatoriedad de la misma (su entropía). Cuanto menos aleatorio sea, más podría adivinar parte de tu secreto. Como estas partes adivinadas ya no son un secreto, y podríamos decir que el secreto compartido es un fragmento de información en bruto.
Y, tiene toda la razón, en el sentido de que puede idear una manera que sea irrompible siempre que tenga un secreto precomprimido lo suficientemente largo.
Sin embargo, no es necesario que se complique demasiado con el algoritmo: si utiliza un cifrado con clave estándar y su clave es lo suficientemente larga (más larga que el mensaje, por ejemplo), es bastante fácil comprender que su protección es perfecta .
Solo como recordatorio: un simple cifrado XOR con una clave verdaderamente aleatoria más larga que el mensaje es irrompible. Pero no olvide lo siguiente: necesita un secreto previamente compartido lo suficientemente largo (y uno nuevo para cada comunicación).
Entonces, ¿dónde está el problema? ¿Por qué no hacemos esto? Porque su secreto compartido se desgasta cada vez que lo usa . Y eventualmente te quedarás sin ella. El uso de su clave proporciona una parte sutil de la misma: por ejemplo, observar qué produce su algoritmo proporciona algunas sugerencias sutiles. Cuanto más veamos salir de su algoritmo, más se notarán los patrones.
Entonces, en la mayoría de los casos prácticos, nos gusta comenzar desde el punto en que Alicia y Bob no comparten al principio un secreto , o al menos este secreto no es suficiente para cubrir su comunicación. Recuerde que en su caso, el secreto es el algoritmo, y en el caso estándar, a menudo es una clave y lo llamamos secreto compartido .
Por lo tanto, en el caso criptográfico estándar, las preocupaciones se desvían hacia la creación de (más) secreto compartido . Entonces, la mayor parte del esfuerzo se gasta para encontrar la forma de crear una clave que luego llevará al punto en el que Bob y Alice están protegidos por la teoría y un cifrado estándar irrompible: tener un secreto lo suficientemente largo .
La mayoría de las comunicaciones criptográficas de hoy en día funcionarán de esta manera: cree una clave compartida sobre la marcha (a menudo a intervalos regulares en comunicación continua), luego use cualquier trivial pero perfecto algoritmo de cifrado (como el XOR por ejemplo) con esta clave. Diffie Hellman es uno de estos algoritmos. Por lo general, la primera parte es la más complicada y puede llevar mucha potencia de la computadora, y la segunda es trivial.
Por lo tanto, lo difícil es tener (o generar) suficiente secreto compartido para cifrar sus datos.