¿Qué es el cifrado homomórfico y para qué se usa?

Todos los días, las organizaciones manejan una gran cantidad de información confidencial, como información de identificación personal (PII) y datos financieros, que deben cifrarse tanto cuando se almacenan (datos en reposo) como cuando se transmiten (datos en tránsito). Los algoritmos de cifrado modernos son prácticamente irrompibles, al menos hasta la llegada de la computación cuántica, porque requieren demasiada potencia de procesamiento para romperlos. En otras palabras, el proceso de romperlos es demasiado costoso y lento para ser factible.

El problema con el cifrado de datos es que, tarde o temprano, hay que descifrarlos. Y descifrar los datos los hace vulnerables a los piratas informáticos. Puedes mantener tus archivos en la nube criptográficamente codificados usando una clave secreta, pero tan pronto como desees hacer algo con esos archivos, ya sea editar un documento de Word o consultar una base de datos de datos financieros, debes desbloquear los datos y dejarlos vulnerables. El cifrado homomórfico, un avance en la ciencia de la criptografía, podría cambiar eso.

En este artículo analizamos qué es el cifrado homomórfico, cómo funciona y qué lo hace diferente de otros tipos de encriptación.

¿Qué es el cifrado homomórfico?

El cifrado homomórfico (HE) es un método de cifrado que permite realizar cálculos en datos cifrados sin descifrarlos primero con una clave secreta. Los resultados de los cálculos también permanecen cifrados y solo pueden ser descifrados por el propietario de la clave privada.

El propósito del cifrado homomórfico es permitir el calculo de datos cifrados. Por lo tanto, los datos pueden permanecer confidenciales mientras se procesan, lo que permite realizar tareas útiles con datos que residen en entornos no confiables. En un mundo de computación distribuida y redes heterogéneas, esta es una capacidad necesaria.

Un criptosistema homomórfico es como otras formas de encriptación pública en el sentido de que utiliza una clave pública para encriptar datos y permite que solo la persona con la clave privada correspondiente acceda a sus datos no encriptados. Sin embargo, lo que lo diferencia de otras formas de encriptación es que utiliza un sistema algebraico que te permite a ti u otras personas realizar una variedad de cálculos u operaciones en los datos encriptados.

En matemáticas, homomórfico describe la transformación de un conjunto de datos en otro conservando las relaciones entre los elementos de ambos conjuntos. El término se deriva de las palabras griegas para «misma estructura». Debido a que los datos en un esquema de cifrado homomórfico conservan la misma estructura, las matemáticas idénticas, ya sea que se realicen en datos cifrados o descifrados, se obtendrán resultados equivalentes.

En la práctica, la mayoría de los esquemas de encriptación homomórfica funcionan mejor con datos representados como números enteros y al usar la suma y la multiplicación como funciones operativas. Esto significa que los datos grabados se pueden manipular y analizar como si estuvieran en formato de texto sin formato sin descifrarlos. Pueden calcular y procesar los datos cifrados para obtener una respuesta cifrada, pero solo tu puedes descifrar el texto cifrado y comprender lo que significa. El cifrado homomórfico requiere pocas rondas de interacciones y utiliza funciones aritméticas que se centran en sumas y multiplicaciones, en lugar de funciones booleanas como otros métodos de cálculo seguro.

Orígen

La historia de los Criptosistemas Homomórficos se remonta a finales de la última década. En 2010, Craig Gentry, un estudiante de posgrado apoyado por la Fundación Nacional de Ciencias de los Estados Unidos, propuso un nuevo método de cifrado de datos que hoy se conoce como cifrado totalmente homomórfico o FHE. Si bien su esquema inicial era un esquema de cifrado algo homomórfico, ya que solo permitía realizar operaciones de suma y multiplicación en el texto cifrado, era posible construir circuitos basados ​​​​en él que podían realizar cálculos arbitrarios, lo que resultaba en un esquema de cifrado totalmente homomórfico. Ese esquema se conoce como First Generation FHE.

Desde entonces, la investigación y el desarrollo de FHE continúan y se han desarrollado dos generaciones más de FHE bajo la dirección de Gentry. El FHE de segunda generación llegó en 2012 y el FHE de tercera generación en 2013, que se mejoró aún más en 2014 con el lanzamiento del esquema FHEW y en 2016 con el esquema TFHE.

¿Como funciona?

Así es cómo funciona el cifrado homomórfico:

  • El proceso comienza con los datos en su forma descifrada (es decir, texto sin formato). El propietario de los datos quiere que otra parte realice una operación matemática (p. ej., alguna función o un modelo de ML) sobre ellos sin revelar su contenido.
  • El propietario cifra los datos y los envía a la otra parte.
  • La otra parte recibe datos cifrados, realiza operaciones con ellos y envía el resultado cifrado al propietario.
  • El propietario de los datos los descifra con una clave privada y revela el resultado de la operación matemática prevista en los datos.

Tipos

El cifrado homomórfico o HE, como se le conoce popularmente, viene en varios tipos. Y todos esos tipos funcionan de manera ligeramente diferente. Sin embargo, el método básico de su función es el mismo: utilizan un circuito aritmético para realizar cálculos en lugar de un curso booleano, que se utiliza en otros métodos informáticos. El uso de un circuito aritmético permite que los datos se presenten en un formato de número entero en lugar del formato de texto sin formato. Y luego, los cálculos se realizan en esos enteros. De esa manera, tus empleados pueden trabajar en él sin conocer el contenido real de los datos. Comprenderás esto mejor cuando te expliquemos cómo funcionan tres tipos diferentes de cifrado homomórfico, así que profundicemos en esos detalles ahora:

Cifrado parcialmente homomórfico

Este tipo de cifrado homomórfico permite realizar ciertas funciones matemáticas (es decir, suma, multiplicación, etc.) sin descifrar los datos, mientras que para otras funciones es necesario descifrarlos.

Cifrado algo homomórfico

Este tipo de encriptación permite realizar ciertas funciones matemáticas ilimitadamente sobre los datos encriptados. Por el contrario, otras funciones se pueden realizar solo un número fijo de veces, o hasta un cierto nivel de complejidad.

Cifrado completamente homomórfico

Como su nombre indica, este tipo de cifrado permite realizar todas las funciones de forma ilimitada y hasta cualquier nivel de complejidad sin necesidad de descifrar los datos. Es el tipo de cifrado homomórfico más seguro que puede obtener hoy.

¿Qué es el cifrado completamente homomórfico?

Ya explicamos qué es el cifrado completamente homomórfico. Ahora vamos a entenderlo con la ayuda de un ejemplo. Supón que diriges una empresa que presta dinero en función del historial crediticio y la situación financiera de las personas. Debe verificar sus ingresos durante un año fiscal y su puntaje de crédito para determinar si podrán pagar el préstamo o no. Por lo tanto, extraes su puntaje crediticio de la oficina de crédito y les pides que presenten sus declaraciones de impuestos sobre la renta del último año fiscal para tomar una decisión. Te traen los datos en un formato cifrado y tu también los almacenas en tus sistemas de forma cifrada.

Hasta aquí todo bien. Pero cuando necesites analizar su situación financiera, los datos deberán descifrarse. Y no deseas confiar a tus empleados algo tan confidencial como los datos financieros de tus clientes. Temes que se lo filtren a tus competidores, quienes luego pueden usar los datos para robarte a tus clientes. Entonces, ¿Qué haces? Aquí está la solución:

  • Extraes los ingresos de tu cliente y la puntuación crediticia en un formato encriptado homomórficamente.
  • Extraes el importe total de sus préstamos existentes en forma encriptada similar.
  • Envías estos datos encriptados a tus empleados para su procesamiento. Lo ejecutan a través de las fórmulas y algoritmos de elegibilidad de préstamos de tu empresa. El algoritmo hace su trabajo y genera una puntuación en el rango predeterminado establecido por ti. La puntuación resultante (que es un resultado encriptado homomórficamente debido a entradas encriptadas de manera similar) se la envían tus empleados.
  • Descifras el resultado a través de tu clave privada y averiguas si el puntaje generado por tus algoritmos encontró a alguien elegible o no elegible para el préstamo.

Durante todo el proceso, tus empleados no saben de quién son los datos, cuáles fueron los ingresos exactos, el puntaje de crédito y el historial de préstamos de la persona, y cuál fue el resultado de los cálculos realizados por el algoritmo. Solo tu sabes que eliminando así todas las posibilidades de robo de datos.

Seguridad

La seguridad de los esquemas de cifrado homomórfico se basa en el problema Ring-Learning With Errors (RLWE), que es un problema matemático difícil relacionado con redes de alta dimensión. Un gran número de investigaciones revisadas por pares que confirman la dureza del problema RLWE nos da confianza que estos esquemas son al menos tan seguros como cualquier esquema de cifrado estandarizado.

Además, RLWE y, posteriormente, la mayoría de los esquemas de cifrado homomórfico se consideran seguros contra las computadoras cuánticas, lo que los hace más seguros que la factorización y los sistemas basados ​​​​en logaritmos discretos como RSA y muchas formas de criptografía de curva elíptica. De hecho, el proyecto de estandarización de criptografía poscuántica organizado por NIST tuvo varias presentaciones basadas en problemas de celosía dura similares a los que usa el grabado homomórfico moderno.

Aplicaciones

El cifrado totalmente homomórfico tiene numerosas aplicaciones. Por ejemplo, permite realizar consultas privadas a un motor de búsqueda: el usuario envía una consulta cifrada y el motor de búsqueda calcula una respuesta cifrada sucinta sin siquiera ver la consulta en claro. También permite buscar datos grabados: un usuario almacena archivos grabados en un servidor de archivos remoto y luego puede hacer que el servidor recupere solo los archivos que (cuando se descifran) satisfaga alguna restricción booleana, aunque el servidor no puede descifrar los archivos por sí solo. En términos más generales, el cifrado totalmente homomórfico mejora la eficiencia de la computación segura de múltiples partes.

Los investigadores ya han identificado varias prácticas de aplicaciones de FHE, algunas de las cuales se analizan aquí:

Protección de datos almacenados en la nube

Con el grabador homomórfico, puedes proteger los datos que almacenas en la nube y al mismo tiempo conservar la capacidad de calcular e información cifrada que luego puedes descifrar sin buscar construir la integridad de los datos en su conjunto.

Habilitación del análisis de datos en industrias reguladas

El cifrado homomórfico permite que los datos se cifren y subcontraten a entornos comerciales en la nube con fines de investigación e intercambio de datos, al mismo tiempo que protege la privacidad de los datos de los usuarios o pacientes. Se puede usar para empresas y organizaciones en una variedad de industrias, incluidos servicios financieros, comercio minorista, tecnología de la información y atención médica para permitir que las personas usen datos sin ver sus valores sin cifrar.

Ejemplos incluyen analisis predictivo de datos medicos sin poner en riesgo la privacidad de los datos, preservar la privacidad del cliente en publicidad personalizada, privacidad financiera para funciones como algoritmos de predicción del precio de las acciones y reconocimiento forense de imágenes.

Mejorar la seguridad y transparencia electoral

Los investigadores están trabajando en cómo usar el cifrado homomórfico para hacer que las elecciones democráticas sean más seguras y transparentes. Por ejemplo, el esquema de encriptación de Paillier, que utiliza operaciones suma, sería más adecuado para aplicaciones relacionadas con la votación porque permite a los usuarios sumar varios valores de manera imparcial y mantener sus valores privados. Esta tecnología no solo podría proteger los datos de la manipulación, sino que podría permitir que terceros autorizados los verificaran de forma independiente.

Bancos y otras instituciones financieras

Los bancos son otras instituciones financieras que también guardan y procesan una gran cantidad de datos confidenciales a diario. Si sus empleados pueden hacer lo que quieran con los datos sin tener que descubrir primero su información financiera necesariamente, entonces puede ser una situación revolucionaria para toda la industria financiera. Por ejemplo, un empleado del banco puede determinar si calificas para un préstamo o no sin revisar tu información financiera confidencial, como tu número de cuenta bancaria o la cantidad de dinero disponible en tu cuenta.

Administradores de contraseñas

El ejemplo reciente más notable proviene de Google Chrome y Microsoft Edge. Ambos navegadores introdujeron recientemente el cifrado homomórfico para sus herramientas de administración de contraseñas en el navegador, junto con un generador de contraseñas en el navegador para Microsoft Edge.

Los navegadores como Chrome y Edge son ampliamente utilizados. Lo más probable es que tu o alguien que conoces use uno de ellos a diario y tal vez incluso les confíe las contraseñas y otra información de inicio de sesión.

Pero, ¿cómo implementarán el cifrado homomórfico en sus administradores de contraseñas, que son esenciales para todos los usuarios de Internet, para aumentar la eficiencia y la seguridad?

Es posible que estés familiarizado con el «control de contraseña». De lo contrario, la supervisión de contraseñas es cuando tu administrador de contraseñas ejecuta continuamente tus contraseñas en listas públicas de inicios de sesión violados o filtrados recientemente. De esa manera, puede alertarte cada vez que detecte una de tus contraseñas flotando en línea.

Anteriormente, y con los métodos de cifrado tradicionales, tu administrador de contraseñas tenía que descifrar tus inicios de sesión para compararlos con esas enormes listas en constante crecimiento de credenciales comprometidas, lo que, en sí mismo, reduce drásticamente tu privacidad y pone en riesgo tus contraseñas.

Pero con el cifrado homomórfico, conservas total privacidad mientras tu administrador de contraseñas compara tus contraseñas aún cifradas con esas listas.

Proveedores de aplicaciones web y SaaS

Tanto las aplicaciones web como los proveedores de SaaS tienen que recopilar y procesar grandes cantidades de datos que, en la mayoría de los casos, son datos privados de los usuarios. La necesidad de un cifrado seguro aumenta según el tipo de datos en cuestión, ya sean archivos generales o información confidencial, como registros financieros e información de tarjetas de crédito.

En esos dos escenarios, los datos deben estar seguros pero también disponibles para la nube del proveedor de servicios y los recursos de TI para almacenar y procesar.

El uso de cifrado homomórfico en lugar de sus alternativas puede garantizar tanto la privacidad como la capacidad de procesar, calcular y modificar datos sin descifrarlos. Es una victoria tanto para el proveedor de servicios, ya que aumenta su confiabilidad, como para ti, porque tus datos se vuelven privados y seguros al mismo tiempo.

Beneficios

Estos son los principales beneficios del cifrado homomórfico:

  • Permite un uso seguro y eficiente de la nube: el cifrado homomórfico puede permitir a las empresas aprovechar los servicios de computación y almacenamiento en la nube de forma segura. Elimina la compensación entre la seguridad de los datos y la usabilidad. Las empresas no tienen que depender de los servicios en la nube con respecto a la seguridad de sus datos privados mientras conservan la capacidad de realizar cálculos en ellos.
  • Permite la colaboración: HE permite a las organizaciones compartir datos comerciales confidenciales con terceros sin revelarles los datos o los resultados del cálculo. Esto puede acelerar la colaboración y la innovación sin el riesgo de que la información confidencial se vea comprometida.
  • Asegura el cumplimiento normativo: HE puede permitir que las empresas que operan en industrias fuertemente reguladas, como la atención médica y las finanzas, obtengan servicios de subcontratación para fines analíticos y de investigación sin el riesgo de incumplimiento.

Limitaciones

Quizás te estés preguntando, si FHE es tan bueno, ¿por qué no lo utilizan todas las organizaciones del mundo? ¿Por qué no es el método predeterminado de encriptación? Bueno, siempre hay dos caras de la moneda. FHE es bueno, pero tiene dos limitaciones severas, que puedes ver a continuación:

Es lento

La primera limitación de FHE es que es bastante lento. Es tan lento en este momento que no se le puede dar ningún uso práctico. La sobrecarga computacional de FHE es enorme en este momento, lo que se refiere al tiempo consumido al realizar cálculos en la versión cifrada frente a la versión descifrada de los datos. Para hacer que FHE se generalice, IBM lanzó la primera versión de su biblioteca HElib C ++ en 2016, pero los informes sugieren que funcionó 100 billones de veces más lento que los cálculos realizados en texto sin formato. Si algo como esto se utiliza en entornos empresariales complejos, la potencia informática sobre la faz de la tierra no alcanzará a satisfacer sus requisitos.

Soporte limitado para múltiples usuarios

La segunda deficiencia de FHE es el soporte limitado para múltiples usuarios. Vale la pena señalar que todos los criptosistemas FHE funcionan mediante el establecimiento de una base de datos que se utiliza para el cálculo y el descifrado de los resultados calculados. La seguridad de la base de datos depende de la seguridad de esta base de datos porque si alguien puede acceder a esta base de datos, también puede encontrar el resultado de texto sin formato descifrado de cualquier cálculo.

Ahora, una forma para que el proveedor del sistema criptográfico homomórfico garantice la seguridad de esta base de datos es tener una base de datos separada para cada usuario. Sin embargo, si la cantidad de usuarios es enorme, mantener una base de datos separada para todos ellos puede volverse poco práctico e inviable. Es por eso que algunos investigadores están trabajando en criptosistemas FHE de múltiples claves.

Es debido a estas limitaciones que FHE no se ha convertido en un método de encriptación convencional en este momento. Sin embargo, los investigadores están trabajando arduamente para solucionar ambos, de modo que FHE pueda convertirse en el método de encriptación del futuro.

Implementaciones

Algunas de las compañías de tecnología más grandes del mundo han iniciado programas para avanzar en el cifrado homomórfico para hacerlo más universalmente disponible y fácil de usar.

Microsoft, por ejemplo, ha creado SEAL (Biblioteca aritmética cifrada simple), un conjunto de bibliotecas de audio que permiten realizar cálculos directamente en datos grabados. Impulsado por la tecnología de cifrado homomórfico de código abierto, el equipo SEAL de Microsoft se está asociando con empresas como IXUP para crear servicios de computación y almacenamiento de datos cifrados de extremo a extremo. Las empresas pueden usar SEAL para crear plataformas para realizar análisis de datos sobre la información mientras aún está encriptada, y los propietarios de los datos nunca tienen que compartir su clave de encriptación con nadie más.

Google también ha anunciado su respaldo al cifrado homomórfico al revelar su herramienta criptográfica de código abierto, unión privada y cálculo. La herramienta de Google se enfoca en analizar datos en su forma encriptada, con solo los conocimientos derivados del análisis visibles, y no los datos subyacentes en sí.

Finalmente, con el objetivo de generalizar el grabado homomórfico, IBM lanzó su primera versión de su biblioteca HElib C++ en 2016, pero, según se informa, «funcionó 100 billones de veces más lento que las operaciones de texto sin formato». Desde entonces, IBM ha continuado trabajando para combatir este problema y ha llegado a una versión 75 veces más rápida, pero todavía va a la zaga de las operaciones de texto sin formato.

¿Por qué es importante el cifrado homomórfico ahora?

Compartir datos privados con terceros, como servicios en la nube u otras empresas, es un desafío debido a las normas de privacidad de datos como GDPR y CCPA. El incumplimiento de estas normas puede dar lugar a multas graves y dañar la reputación empresarial.

Los métodos de encriptación tradicionales brindan una forma eficiente y segura de almacenar datos privados en la nube de forma encriptada. Sin embargo, para realizar cálculos sobre datos cifrados con estos métodos, las empresas deben descifrar los datos en la nube, lo que puede generar problemas de seguridad, o descargar los datos, descifrarlos y realizar cálculos, lo que puede ser costoso y llevar mucho tiempo.

El cifrado homomórfico permite a las empresas compartir datos privados con terceros para obtener servicios informáticos de forma segura. Con HE, el servicio en la nube o la empresa de subcontratación solo tiene acceso a datos cifrados y realiza cálculos sobre ellos. Estos servicios luego devuelven el resultado cifrado al propietario, quien puede descifrarlo con una clave privada.

Conclusión

En una era en la que el enfoque en la privacidad es cada vez más importante, principalmente debido a las normas como GDPR, el concepto de cifrado homomórfico es muy prometedor para las aplicaciones del mundo real en una variedad de industrias. Y quizás uno de los aspectos más emocionantes es cómo combina la necesidad de proteger la privacidad con la necesidad de proporcionar un análisis más detallado. El cifrado homomórfico se ha transformado de un talón de Aquiles en un regalo de los dioses.

Los esquemas de cifrado totalmente homomórfico pueden tener sus limitaciones a partir de hoy, pero los investigadores de la industria informática están trabajando arduamente para solucionarlo. No hay duda de que FHE será el estándar de encriptación del futuro. Debes vigilar su desarrollo y, a medida que se vuelva cada vez más aplicable en la práctica a tu negocio, debes considerar la opción de usarlo lo antes posible.