Brevísima introducción a las claves públicas y privadas


#1

Hola!

Sin duda alguna todos los que nos hemos empezado a meter cada día más en este fabuloso mundo de la tecnología Blockchain nos hemos encontrado con las palabras clave pública y clave privada, pero muy pocos comprenden qué es lo que se puede hacer con una clave pública y que se puede hacer con una clave privada, por lo que me gustaría intentar hacer una brevísima introducción al cifrado simétrico y asimétrico… ¡Vamos a ello!

Cifrado simétrico

El cifrado simétrico tiene como característica principal el uso de una sola clave tanto para cifrar un mensaje como para descifrarlo, lo que no es muy seguro a simple vista. Cuando existen solo 2 participantes en la comunicación podemos utilizar criptografía simétrica sin riesgo, ya que los mensajes enviados/recibidos por cada una de las partes no es algo secreto, pues ambos han enviado y recibido lo mismo, pero que pasaría si intentaramos una clave simétrica para 3 o más participantes? Cualquiera de los participantes podría leer la comunicación que han tenido los otros dos, ya que todos codifican y decodifican mensajes con la misma clave. ¿Cómo solucionamos esto? Respuesta: Cifrado asimétrico

Cifrado asimétrico

A diferencia del cifrado simétrico, el cifrado asimétrico utiliza una clave para codificar y una clave para decodificar. El cifrado asimétrico con algoritmos mundialmente conocidos (DSA, Criptografía de curva elíptica, RSA, entre otros) nos asegura que para cada clave pública existe solo una clave privada y que no puede haber una coincidencia entre otro par de claves. Te estarás preguntando… ¿Y para que sirve cada una?

Clave pública:

  • Es única e irrepetible.
  • Es la clave con la que cualquier persona puede cifrar un mensaje que solo tú podrás decodificar.
  • Da igual quién la tenga, pues con ella solo podrán cifrar mensajes que solo tú puedes decodificar.

Clave privada:

  • Es única e irrepetible.
  • Es la clave que no debes entregarle a nadie.
  • Con ella decodificamos los mensajes cifrados con nuestra clave pública.

Resumen

En el contexto de las criptomonedas las claves públicas son nuestras direcciones. Por ejemplo mi clave pública en Ethereum es 0xb3934da7e1f1b48d88745ae0e88afaef6bd7ab51. Si alguien posee mi clave pública, solo podrá depositarme ETHER… Para autorizar o firmar una transacción de una cuenta -clave pública- (o demostrar que eres el propietario de la clave pública) 0xb3934da7e1f1b48d88745ae0e88afaef6bd7ab51 debes si o si tener la clave privada (única) asociada a ella, por lo que es de suma importancia nunca la compartas con nadie.


Cualquier feedback sobre el post es bienvenido :smiley:

Saludos!


#2

A modo de complementar,

Contenido Avanzado:

If you are interest on more free online course info, welcome to: http://opencourseonline.com/
Professor Dan Boneh is offering a free online course on Cryptography starting in March 12, 2012. https://www.coursera.org/course/crypto

Saludos.