Wilmer Jesús Cuevas Perdomo
PreguntaHay algo que no entiendo y que no pude encontrar en ninguna pagina web ya que todos dicen lo mismo. ¿Por qué la clave publica si funciona para cifrar pero no funciona para descifrar? ¿Cómo logran que esto ocurra? si es la misma clave lo lógico es que con la misma clave que se creó el mensaje cifrado se pueda descifrar y no con una clave externa que sería la privada

Leif Ferreira
Una llave pública en realidad es una función matemática que tiene una solución de un solo sentido...es decir puedes tomar una información agregarla a la función matemática y esta función genera el mensaje cifrado.
El sistema contrario (descifrar el mensaje) es imposible por dos cosas:
1.- Cada llave pública es distinta, de hecho una llave privada puede generar infinitas claves publicas para que asi puedas compartirla con infinitas personas, y al ser distintas cada una es imposible realizar el descifrado del resto de claves (porque son distintas).
2.- La función matemática usada NO es reversible, es una función de conjunto que necesita de dos partes para tal hazaña. Como la clave privada y publica son separadas, el descifrado es imposible de realizar a menos que tengas ambas funciones, y eso solo lo tiene quien generó la clave (el tiene la clave privada y de ella se derivan las claves públicas, así que tiene acceso a todo).
Wilmer Jesús Cuevas Perdomo
Te agradezco la respuesta, pero no entendiste mi pregunta, entiendo cómo es el sistema, pero lo que no entiendo es cómo funciona, ¿cómo hacen que una llave pública pueda encriptar algo pero después no pueda hacer el mismo proceso al revés y necesite una llave diferente a esa para obtener el contenido?
Mauricio Moreno Morales
Supongamos yo tengo la llave (<a> = privada) y la llave (<b> = publica) y tu tienes la clave([x] = privada) y ([z] = publica), lo que pasará es que tu me yo te doy la llave (<b>) y tu me das tu llave ([z]), cuando intercambiemos mensajes yo voy a encriptar el mensaje con la llave ([z]) y tu la descifrarás con tu llave ([x]) y cuándo tu me quieras escribir un mensaje la escribes con la llave (<b>) y yo la descifro con la llave (<a>) las únicas llaves que pueden descifrar los códigos son las privadas por que si en algún momento alguien roba la información al ser transferida no podrá desencriptar el mensaje ya que la única persona que puede abrir el mensaje es quien tenga la llave privada