Como se mencionó en la sección referente a hashes, la encriptación es un método para convertir información en un código secreto que oculte el significado verdadero de dicha información. Dos de los métodos más comunes de encriptación es la encriptación simétrica y asimétrica.
Tanto en la encriptación simétrica y asimétrica se emplean códigos especiales denominados llaves para encriptar y desencriptar la información. La encriptación simétrica es la forma de encriptación más sencilla que tan solo emplea una llave, llamada llave pública, para encriptar y desencriptar la información. Dicha llave puede ser una combinación de números, letras o ambos. Esta llave es combinada con un mensaje en formato de texto para modificar su contenido en una forma particular y difícil de discernir.
De esta manera, cuando una persona desee enviarle un mensaje encriptado a otra persona, tanto el emisor como el receptor deben de conocer la llave pública. Así, el emisor encripta el mensaje con la llave y envía dicho mensaje; y el receptor realiza el proceso de desencriptado con la misma llave para obtener el mensaje. Algunos de los algoritmos de encriptación simétrica más populares son AES-128, AES-192 y AES-256.
En la encriptación simétrica, el emisor emplea la llave pública (clave secreta) para encripta un mensaje y el receptor emplea la misma llave para desencriptarlo.
La ventaja principal que ofrece la encriptación simétrica es que todos los involucrados únicamente necesitan disponer de la misma llave para encriptar y desencriptar los mensajes.
La encriptación asimétrica emplea dos llaves distintas para encriptar los mensajes enviados: una pública y otra privada. En este proceso, cada individuo genera una llave pública con la cual los demás pueden encriptarle mensajes dirigidos a sí y emplean una llave privada para desencriptarlos. De esta manera, se hace necesario que dos individuos que deseen hacer uso de la encriptación asimétrica para comunicarse intercambien llaves públicas para el proceso de encriptación y empleen sus llaves privadas para desencriptar los mensajes.
De esta forma, es posible evitar que otros usuarios decodifiquen fácilmente los mensajes, al no contar con las llaves privadas, aún si interceptan los mensajes. Cabe mencionar que también es posible hacer uso de las llaves privadas para encriptar mensajes y luego emplear las públicas para desencriptarlos. De tal forma, no es necesario preocuparse por la seguridad de la llave pública, ya que se encuentran disponibles a todos los usuarios; por otro lado, es necesario resguardar las llaves privadas, ya que sin ellas no se podría llevar a cabo el proceso.
En la actualidad, la encriptación asimétrica es una de las formas de encriptación más populares utilizadas en los canales de comunicación, así como en Blockchain. Algunos de los algoritmos más populares para ello son: RSA, DSA, Criptografía de Curva Elíptica y PKCS.
En la encriptación asimétrica, se emplean dos llaves: una privada (única para cada usuario) y otra pública (la cual es accesible por todos). Una de ellas es empleada para encriptar el mensaje y la otra es utilizada para desencriptarlo
Existen distintos tipos de algoritmos de encriptación utilizados para generar llaves públicas utilizadas en la encriptación simétrica; o bien, para generar pares de llaves pública y privada en la encriptación asimétrica. El algoritmo de encriptación utilizado para la encriptación asimétrica en el proceso de transacciones en distintas criptomonedas, y el cual será utilizado en esta página, es el RSA (Rivest - Shamir - Adleman).
El algoritmo RSA es un criptosistema que se emplear para transmitir datos de forma segura. Las criptomonedas utilizan el algoritmo RSA u otro similar para la creación y cifrado de las billeteras de Blockchain (en este contexto una billetera es similar a una cuenta bancaria). Al crear una billetera de criptomoneda se genera una dirección (llave) pública y privada:
La dirección pública se utiliza para recibir criptomonedas y consultar el saldo en el Blockchain.
Por otro lado, la llave privada se emplear en correlación con la llave pública para acceder y utilizar la criptomoneda. Es necesario tomar en cuenta que es una buena práctica realizar una copia de seguridad de la llave privada, ya que, si se llegara a extraviar, le sería imposible acceder a su billetera.
Cabe agregar que cada algoritmo de encriptación y generador de llaves públicas y privadas utiliza encabezados para distinguir las llaves de su tipo. Esto quiere decir que todas las llaves RSA comienzan con la misma secuencia de caracteres. Adicionalmente, las llaves privadas tienden a contar con una mayor cantidad de caracteres que las públicas, aunque esto varía de un algoritmo de encriptación a otro.
Instrucciones: A continuación, se le presenta un par de llaves: una privada y una pública generadas a partir del algoritmo RSA. Puede presionar el botón para generar aleatoriamente un par de llaves correspondientes de este tipo.
Preste atención a que cuando presiona el botón de "Aleatorizar", el encabezado de las llaves permanece, mientras que el resto de la llave cambia de una iteración a otra.
Llave Pública:
Llave Privada: