Todo lo que debe saber sobre la invención que cambió el mundo.
La criptografía ha existido durante miles de años. Uno de los primeros usos registrados de la criptografía lo llevó a cabo (supuestamente) Julio César. Este empleó el Cifrado César hace unos 2.000 años para enviar mensajes militares encriptados.
El cifrado era un cifrado de sustitución en el que cada letra del mensaje original se sustituye por una letra correspondiente a un cierto número de letras desplazadas hacia arriba o hacia abajo en el alfabeto. Únicamente los que poseían la clave - que en este caso es el número por el que se desplaza el alfabeto - podrían decodificar el mensaje. Por ejemplo, si la clave es tres, entonces A=D, B=E, C=F, y así sucesivamente.
La evolución de la criptografía fue gradual, pero enorme. Comenzó con simples cifras de sustitución, como la de César, o cifras de permutación (una en la que simplemente se reordenan las letras, como “hola” convirtiéndose en “laoh”). Pero conforme pasó el tiempo y la criptografía se hizo más ampliamente usada y entendida, las cifras naturalmente se volvieron más complejas. Actualmente la criptografía es un campo robusto con muchos actores industriales, aplicaciones modernas y herramientas.
La mayoría de la gente ha oído hablar de las famosas máquinas Enigma empleadas a principios o mediados del siglo XX para proteger la comunicación diplomática y militar, y especialmente utilizadas por los alemanes durante la Segunda Guerra Mundial.
Las máquinas Enigma utilizan sustituciones definidas por cableados de ruedas de 26 caracteres. Cada letra estaba encriptada por una sustitución diferente porque las ruedas siempre giraban. Esa es la razón por la que la máquina Enigma fue tan difícil de descifrar.
El mayor desarrollo de las criptografía que cambió el mundo
A mediados de la década de 1970 se produjo un gran desarrollo de la criptografía que lo cambió todo: la criptografía de clave pública. Antes de este desarrollo, todo funcionaba de la siguiente forma: Bob encriptaba un mensaje para Alice, la clave que usaba para proteger ese mensaje era la misma clave que Alice usaría para desencriptar el mensaje. Esto se denomina algoritmo de clave simétrica.
La criptografía de clave pública, sin embargo, utiliza un algoritmo de clave asimétrica. En estos sistemas, Bob podía usar una clave pública para encriptar un mensaje para Alice, pero Alice usaba una clave privada diferente para desencriptarlo.
Esto añade una nueva capa de seguridad ya que solo Alice puede descifrar el mensaje puesto que es la única que tiene la clave privada. Esto es lo que hace posible la compra online. Los detalles sobre la tarjeta de crédito son encriptados usando una clave pública, y el minorista es el único que posee la clave privada para descifrar esos detalles para finalizar la transacción.
Blockchain y computación en nube, la próxima frontera de la criptografía
Permitir el comercio electrónico es solo una de las muchas contribuciones importantes de la criptografía a nuestro mundo digital. A medida que la criptografía continúa evolucionando, los investigadores y tecnólogos encuentran continuamente nuevas formas de implementarla a medida que vemos el surgimiento de nuevas tecnologías. Tomemos el blockchain como ejemplo.
A estas alturas casi todo el mundo ha oído hablar sobre el blockchain, pero no todo el mundo lo entiende. En pocas palabras, el blockchain es esencialmente una base de datos compartida. La tecnología blockchain proporciona una forma segura y eficiente de crear un registro de actividad a prueba de manipulaciones. La aplicación más conocida del blockchain son el bitcoin y otras criptomonedas.
La criptografía se utiliza de dos maneras. La primera es a través de algoritmos llamados funciones de hash criptográficas.
El uso de una cadena de hashes de la base de datos garantiza que se mantenga el orden de las transacciones. Así, el blockchain crea un algo parecido a lo que en las finanzas se llama un libro mayor. Pero a diferencia de un libro mayor centralizado que se mantiene en un banco, un libro mayor blockchain se distribuye a través de muchos ordenadores, y cada ordenador posee la misma vista del libro mayor. Esa es la razón por la que se se suelen encontrar blockchains llamados como “registros distribuidos”.
Las funciones hash también son utilizadas en el protocolo bitcoin para asegurar que la vista de todos del libro mayor es la misma. Esto se hace mediante un proceso conocido como “minería”. Los mineros de bitcoin buscan valores de hash que satisfagan una propiedad determinada.
Este es un método muy ineficiente (en términos de consumo de energía) para asegurar que la opinión de todos sea la misma, por lo que otros tipos de blockchain adoptan diferentes enfoques para resolver este problema a fin de consumir menos recursos energéticos.
La segunda forma en la que se utiliza la criptografía en este caso es para crear firmas digitales, que se utilizan para proporcionar autenticación, integridad de datos y no repudio. La firma digital se genera combinando la clave privada de un usuario con los datos que desea firmar. Una vez son firmados los datos, la clave pública correspondiente puede ser utilizada para verificar que la firma es válida.
Estas firmas digitales son utilizadas para asegurar que los datos incluidos en el blockchain son válidos. En el bitcoin, las firmas digitales son utilizadas para asegurar que la cantidad correcta de valor es transferida de una cartera de bitcoin a otra. Por ejemplo, la firma digital asegura que Alice transfirió el valor de su cartera de bitcoin, y no de la cartera de Bob.
Todo esto puede sonar complicado, pero lo que realmente importa es lo siguiente: el blockchain y las criptomonedas no serían posibles sin la criptografía.
La nube
Otra tecnología que no podría haber evolucionado sin la criptografía hasta convertirse en lo que es a día de hoy es la nube. La nube podría existir sin criptografía, pero no de forma segura. Tal y como hemos visto durante los últimos años, la computación en la nube ofrece una amplia variedad de beneficios para las empresas, pero existe una gran cantidad de nuevos problemas de seguridad, incluyendo el inicio de sesión, el mantenimiento de credenciales seguras, la protección de datos en la nube, etc. Aquí es donde la criptografía entra en juego.
La criptografía se asegura de que las credenciales y los datos almacenados en la nube estén encriptados, de modo que nadie pueda tener acceso a ellos sin la clave. Incluso si alguien pudiera obtener sus credenciales, si los datos están debidamente encriptados, nadie podría acceder a estos sin la clave. Por lo tanto, también es muy importante proteger la propia llave.
Debido al aumento de la necesidad de cifrar los datos en la nube, se están desarrollando nuevas tecnologías para garantizar su eficiencia y sostenibilidad a largo plazo. Por ejemplo, la búsqueda cifrada se ha convertido en un desarrollo importante, ya que permite buscar datos en la nube, a la vez que los mantiene cifrados.
Sin esto, sería virtualmente imposible encontrar información a través de todos sus datos almacenados en la nube sin exponerlos.
Otra tecnología emergente que mejora la seguridad en la nube es la computación multipartita (MPC, por sus siglas en inglés), que proporciona una manera para que dos o más partes calculen conjuntamente una función sobre sus entradas mientras mantienen las entradas privadas.
Si dos partes quieren calcular una función sobre los datos X, entonces una parte tiene algunos datos (digamos Y) y la otra parte tiene otros datos (digamos Z), de tal forma que si conoce Y y Z puede recuperar X, pero si solo conoces Y, entonce no sabe nada sobre X.
Esta es una forma de encriptación, uno puede pensar en Y como la clave y Z como el texto encriptado (o viceversa). Por lo tanto, mediante el empleo de esta forma especial de encriptación las dos partes pueden averiguar X sin revelar a la otra parte el valor que poseen. Por lo tanto, la MPC permite trabajar con datos encriptados si los datos han sido encriptados por esta forma de “encriptación”, comúnmente llamada secret-sharing.
Conforme la adopción de la nube sigue aumentando, es importante que todo el mundo siga adoptando estas tecnologías rápidamente. A medida que la tecnología avance, seremos testigos del despliegue de conceptos de criptografía más complejos en entornos en la nube.
Las posibilidades son infinitas
Las aplicaciones futuras de la criptografía son ilimitadas, especialmente si tenemos en cuenta todo lo que nos permite hacer la MPC. Piense en lo que se podría hacer si combinara el aprendizaje automático y la MPC en el campo de la medicina. Los científicos podrían estudiar el genoma sin comprometer la privacidad.
Nuestro mundo avanza más rápido que nunca y es fácil perder de vista los elementos fundamentales de la tecnología que nos permiten vivir nuestras vidas de la manera en que lo hacemos. La criptografía ha pasado de ser una técnica utilizada para comunicarse con los militares a ser una de las piedras angulares del mundo moderno.
Puesto que esta afecta a la vida de las personas de una forma u otra, es importante comprender sus principios subyacentes y darse cuenta de que la criptografía puede ayudarnos a alcanzar cosas que ni siquiera imaginamos.