Llegamos a ustedes gracias a:



Reportajes y análisis

Cifrado homomórfico: Percepciones de los datos cifrados

[26/09/2020] ¿Qué hace cuando necesita realizar cálculos en grandes conjuntos de datos preservando su confidencialidad? En otras palabras, le gustaría reunir el análisis, por ejemplo, en los datos de los usuarios, sin revelar el contenido al motor de cómputo que va a calcular los análisis; o usted es un proveedor de servicios en la nube que apoya el almacenamiento cifrado de documentos, pero quiere permitir a sus usuarios editar sus documentos sin tener que descifrarlos primero.

Aquí es donde el cifrado homomórfico podría venir a su rescate. Este proporciona la capacidad de "externalizar" el almacenamiento y el cómputo de datos a entornos de nubes convirtiéndolos primero en una forma cifrada.

Lo que cabe destacar de esta técnica es que se consiguen los mismos resultados (en forma cifrada) realizando las operaciones y cálculos deseados en los datos cifrados que se obtendrían si son realizadas en su forma no cifrada.

De acuerdo con la Homomorphic Encryption Standardization, el consorcio de normas de la industria que mantiene las normas, los estándares, las guías y la información "oficial sobre las novedades en la materia, "el cifrado homomórfico difiere de los métodos de cifrado típicos, ya que permite realizar el cálculo directamente sobre los datos cifrados, sin necesidad de tener acceso a una clave secreta. El resultado de ese cómputo permanece en forma cifrada y puede ser revelado posteriormente por el propietario de la clave secreta". Esto permite utilizar las mismas soluciones de análisis computacional sin comprometer la confidencialidad de los datos en ninguna etapa.

La idea de diseñar tales conjuntos de cifrado fue en gran parte experimental y se propuso a finales de los años 70. Se necesitaron tres décadas para que un primer concepto práctico fuera ideado en el 2009 por Craig Gentry.

Lo que es diferente sobre el cifrado homomórfico

Cuando se piensa en la criptografía en un contexto estándar de la industria, como HTTPS (hecho posible por SSL/TLS) o en la mensajería de chat de extremo a extremo, se asume que toda la criptografía es intrínsecamente segura, y que garantiza la confidencialidad e integridad. Esto es algo que diferencia al cifrado homomórfico de los típicos criptosistemas.

Para que el cifrado homomórfico funcione, sus suites de cifrado están diseñadas para ser maleables, lo que significa que no pueden garantizar la integridad de los datos. No se trata de un defecto, sino de una característica planeada que facilita el funcionamiento de los datos cifrados.

La maleabilidad es una propiedad de los algoritmos criptográficos que permite transformar un texto cifrado en otro texto cifrado válido, que cambia el significado del texto original. Además, el usuario que transforma los datos no necesitaría ni siquiera saber o deducir cuál era el dato original no cifrado.

En pocas palabras, si le envía un correo electrónico cifrado al editor de CSO diciendo, "CSO es increíble", un atacante man-in-the-middle (MitM) puede robar ese texto cifrado y transformarlo en otra cadena cifrada, que cuando el editor descifre diga, "¡Odio CSO!"

Por supuesto, los sistemas prácticos de cifrado de correo electrónico tienen contramedidas para proteger la integridad de los datos y hacen que este escenario sea prácticamente imposible, siempre y cuando no haya vulnerabilidades en los algoritmos o en su implementación.

Por ejemplo, el criptosistema RSA, que es parcialmente homomórfico, utiliza lo que se conoce como función de "acolchado" para minimizar el impacto de la maleabilidad. Además, las sumas de verificación de la autenticación de los mensajes (por ejemplo, los hashes MD5 o SHA) ayudan a validar la integridad de los datos.

Esto no es tanto motivo de preocupación, ya que la confidencialidad de los datos no se vería afectada por la maleabilidad. La preocupación surge cuando, por ejemplo, el motor de cómputo que trabaja con datos cifrados introduce un error en los datos o en el resultado cifrado debido a un algoritmo defectuoso. La naturaleza del cifrado homomórfico podría hacer particularmente difícil descubrir estos errores.

Tipos de cifrado homomórfico

Todos los datos son números (las computadoras trabajan en binario). La criptografía, al ser una rama matemática, trabaja directamente con los números. Esto significa que el cifrado y el descifrado no son más que un complejo juego de operaciones numéricas.

Hay tres tipos de cifrado homomórfico:

  • El cifrado parcialmente homomórfico (PHE) permite solo un tipo de operación matemática (como la multiplicación) en un determinado conjunto de datos por un número ilimitado de veces.
  • El cifrado algo homomórfico (SHE) es más permisivo, pero sigue siendo restrictivo, permitiendo tanto la suma como la multiplicación en un conjunto de datos dado solo unas pocas veces.
  • El cifrado totalmente homomórfico (FHE) es lo mejor de ambos mundos, permitiendo diferentes tipos de operaciones en los datos por un número ilimitado de veces, pero con un importante trade-off en el rendimiento.

Cada enfoque se inclina a ofrecer ya sea rendimiento, utilidad o protección, siendo el FHE altamente intensivo y actualmente ineficiente (y por lo tanto ofreciendo un pobre rendimiento en un escenario del mundo real).

Los actuales desarrollos de cifrado homomórfico son un constante acto de equilibrio entre los tres para lograr una solución óptima. Una vez desbloqueado, el potencial del FHE ofrecerá posibilidades innovadoras, como la posibilidad de que un operador de nubes realice diversas operaciones matemáticas con datos cifrados.

Casos de uso de cifrado homomórfico

Industrias reguladas y centradas en la privacidad: El almacenamiento de datos e información de identificación personal (PII) en industrias altamente reguladas como la salud, las finanzas, el derecho y la banca es un desafío. El almacenamiento cifrado es una medida de seguridad que esas industrias aplican, pero otro desafío surge cuando deben descifrar los datos del usuario primero para obtener información sobre ellos.

Por ejemplo, la derivación del análisis predictivo, que utiliza el aprendizaje automático, de los expedientes de los pacientes puede ayudar a los médicos a identificar las curas de las enfermedades. Con el cifrado homomórfico, la necesidad de descifrar primero los archivos de los pacientes desaparecería. Los algoritmos analíticos podrían adaptarse para funcionar con datos de pacientes cifrados y producir resultados también en forma cifrada. Este resultado al ser descifrado proporcionaría las mismas percepciones que se habrían obtenido de los archivos no cifrados de pacientes.

Este caso de uso se extiende también a la publicidad en línea. Con las crecientes restricciones que impone una legislación como el Reglamento General de Protección de Datos (GDPR), ofrecer anuncios personalizados y al mismo tiempo proteger la privacidad de los usuarios es un desafío. El cifrado homomórfico permite derivar análisis y conocimientos de los datos cifrados del usuario, sin comprometer la confidencialidad de la información de este en el proceso.

Almacenamiento en nube externalizado: La externalización del almacenamiento de datos puede ser una estrategia rentable cuando se trata de reducir los costos de personal y eliminar los dolores de cabeza asociados con el mantenimiento de un centro de datos completo y seguro. Además, a veces los proyectos pueden necesitar externalizar las bases de datos más allá de las fronteras, porque no se dispone de suficientes protecciones legales en su propia jurisdicción. Considere WikiLeaks, una organización activista sin fines de lucro que aloja sus servidores principales en Suecia, como un ejemplo del mundo real. 

El cifrado resuelve el problema de almacenamiento de datos, pero añadir o modificar datos cifrados en su forma cifrada es un problema que el cifrado homomórfico puede resolver. Esto puede aplastar la posibilidad de incidentes como cuando un antiguo ingeniero de Google hizo un mal uso de los privilegios para acosar a algunos de los usuarios de la plataforma.

Con el cifrado homomórfico, los datos son almacenados de forma segura en la nube, permitiendo al mismo tiempo la capacidad de calcular y buscar información cifrada. En un entorno ideal, solo el usuario que posee los datos en la nube tendría la capacidad de descifrar los datos y los resultados del cifrado homomórfico.

Si quiere experimentar con la tecnología, el sitio web de la Homomorphic Encryption Stadarization ofrece muchas implementaciones de código abierto de cifrado homomórfico. Microsoft SEAL proporciona, "bibliotecas de cifrado que permiten realizar cálculos directamente sobre datos cifrados" para ayudar a los desarrolladores a construir servicios de almacenamiento y cálculo de datos cifrados de extremo a extremo.