Ir al contenido

¡Se acercan los certificados de 47 días! ¿Estás preparado?

Actúa ahora →

Cifrado homomórfico: conceptos básicos

Cifrado homomórfico: conceptos básicos

Las organizaciones que almacenan datos en entornos de nube se enfrentan a un problema fundamental: para realizar cálculos sobre datos cifrados, los proveedores de servicios en la nube (CSP) deben descifrarlos primero , exponiendo el texto plano a entornos que la organización no controla por completo. El cifrado homomórfico (HE) resuelve este problema al permitir realizar cálculos directamente sobre el texto cifrado , de modo que el CSP nunca ve los datos subyacentes. La acción recomendada es: evaluar el cifrado homomórfico parcial (PHE) para casos de uso que solo requieren suma o multiplicación; evaluar el cifrado homomórfico completo (FHE) para casos de uso de cálculo arbitrarios, teniendo en cuenta su sobrecarga de rendimiento actual (10⁶ veces más lento que el cálculo en texto plano); y evaluar si las alternativas que preservan la privacidad, como los enclaves seguros o la privacidad diferencial, satisfacen sus necesidades a un menor coste.

Respuesta rápida: ¿Qué es el cifrado homomórfico y por qué es importante?

El cifrado homomórfico (HE) es un esquema de cifrado en el que los cálculos realizados sobre un texto cifrado producen un resultado cifrado que, al descifrarse con la clave privada adecuada, es igual al resultado de realizar los mismos cálculos sobre el texto original sin cifrar. La propiedad algebraica se expresa formalmente como: HE(a + b) = HE(a) + HE(b) y HE(a * b) = HE(a) * HE(b). Esta propiedad permite que un proveedor de servicios en la nube ejecute análisis, inferencias de aprendizaje automático o consultas de bases de datos sobre datos que permanecen cifrados durante todo el cálculo, y devuelva el resultado cifrado al propietario de los datos, quien es el único que posee la clave privada para descifrarlo. Esto es importante porque permite el cumplimiento de normativas como GDPR , PCI DSS , HIPAA y FIPS, incluso cuando la infraestructura de terceros procesa datos confidenciales.

Por qué el cifrado estándar no puede resolver el problema de la computación en la nube.

El cifrado estándar protege los datos tanto en reposo como en tránsito. Cuando una organización envía datos cifrados a un proveedor de servicios en la nube y solicita que se procesen, el proveedor debe descifrarlos para poder procesarlos. Esto genera un problema de confidencialidad estructural: el texto sin cifrar queda expuesto en el entorno del proveedor de servicios en la nube durante el procesamiento, donde puede ser visible para los sistemas, el personal o un atacante que haya comprometido la infraestructura del proveedor.

Esta restricción limita lo que las organizaciones pueden delegar a los proveedores de servicios en la nube cuando los datos involucrados son confidenciales. Las organizaciones de atención médica no pueden delegar análisis de registros de pacientes sin exponer información de salud protegida (PHI). Las instituciones financieras no pueden usar aprendizaje automático basado en la nube con datos de transacciones sin exponer datos de cuentas y comportamiento. Las organizaciones sujetas a requisitos de residencia o soberanía de datos enfrentan restricciones sobre qué cálculos pueden realizarse en entornos de nube fuera de su jurisdicción.

El cifrado homomórfico aborda este problema directamente: el proveedor de la nube recibe únicamente el texto cifrado, realiza cálculos sobre él utilizando las propiedades homomórficas del esquema y devuelve un resultado cifrado. En ningún momento el proveedor almacena datos en texto plano. La organización descifra el resultado utilizando su clave privada, que permanece siempre bajo su control.

¿Qué es el cifrado homomórfico?

El cifrado homomórfico permite realizar cálculos mientras los datos permanecen cifrados. El término homomórfico proviene de las matemáticas: una función de cifrado E es homomórfica con respecto a una operación * si E(a) * E(b) = E(a * b), lo que significa que la operación se puede aplicar a los valores cifrados y producir el mismo resultado que si se aplicara a los valores en texto plano antes del cifrado.

Al igual que otros esquemas de cifrado asimétrico, HE cifra los datos mediante una clave pública. El resultado cifrado (texto cifrado) solo puede descifrarse con la clave privada correspondiente. Sin embargo, de forma singular, mientras los datos están cifrados, se pueden realizar operaciones matemáticas definidas sobre el texto cifrado, y el resultado del descifrado coincide con el resultado de realizar esas operaciones sobre el texto original.

HE(a + b) = HE(a) + HE(b) y HE(a * b) = HE(a) * HE(b)

La suma y la multiplicación de valores en texto plano equivalen a la operación correspondiente sobre sus textos cifrados. Cualquier función computable puede expresarse como una combinación de suma y multiplicación, lo cual constituye la base de la afirmación del cifrado totalmente homomórfico de permitir cálculos arbitrarios sobre datos cifrados.

Tipos de cifrado homomórfico

Los esquemas de cifrado homomórfico se clasifican según las operaciones que admiten sobre el texto cifrado:

  1. Cifrado homomórfico parcial (PHE): Admite suma o multiplicación sobre el texto cifrado, pero no ambas. Los esquemas PHE son eficientes y prácticos para casos de uso específicos. El criptosistema RSA es homomórfico multiplicativo: RSA(a) * RSA(b) = RSA(a * b) mod n. El criptosistema Paillier es homomórfico aditivo. PHE es práctico hoy en día y se implementa en aplicaciones como la votación electrónica (donde el recuento de votos solo requiere suma) y ciertas consultas de bases de datos que preservan la privacidad.
  2. Cifrado algo homomórfico (SHE): Admite tanto la suma como la multiplicación, pero solo para un número limitado de operaciones antes de que el ruido introducido por cada operación se acumule hasta el punto de que falle el descifrado. SHE permite un cálculo más expresivo que PHE, pero impone un límite a la profundidad del circuito. Es un precursor de FHE y se utiliza en aplicaciones donde el número de operaciones se puede limitar de antemano.
  3. Cifrado totalmente homomórfico (FHE): Admite un número ilimitado de sumas y multiplicaciones en el texto cifrado. Craig Gentry propuso el primer esquema FHE plausible en 2009, basado en criptografía reticular. Los esquemas FHE utilizan una operación de arranque para actualizar el texto cifrado y eliminar el ruido acumulado, lo que permite una computación ilimitada. FHE es la forma más general y potente de HE, y la investigación activa está mejorando rápidamente su rendimiento práctico.

Servicios de cifrado personalizados

Evaluamos, elaboramos estrategias e implementamos soluciones y estrategias de cifrado.

Programas y bibliotecas actuales de FHE

Desde el artículo de Gentry de 2009, se han desarrollado varios esquemas FHE, cada uno optimizado para diferentes tipos de cálculo:

EsquemaIdeal paraTipo de operaciónDisponible en
BGV (Brakerski-Gentry-Vaikuntanathan)Aritmética de enteros; operaciones de bases de datos cifradasOperaciones de enteros por lotes al estilo SIMDHElib; OpenFHE
BFV (Brakerski-Fan-Vercauteren)Aritmética exacta de enteros; recuento de votos; búsqueda cifradaOperaciones con enteros basadas en el aprendizaje de anillos con errores (RLWE)Microsoft SEAL; OpenFHE
CKKS (Cheon-Kim-Kim-Song)Aritmética aproximada de números reales; inferencia de aprendizaje automáticoAritmética aproximada (útil para la inferencia en redes neuronales)Microsoft SEAL; HElib; OpenFHE
TFHE (FHE rápido sobre el toroide)Evaluación de circuitos booleanos; operaciones de comparaciónArranque rápido paso a paso; operaciones bit a bitOpenFHE; Biblioteca TFHE

Aplicaciones del cifrado homomórfico

  1. Análisis de datos sanitarios: Un hospital puede enviar historiales clínicos cifrados a una institución de investigación o a un proveedor de análisis. El proveedor realiza análisis estadísticos o modelos de aprendizaje automático sobre el texto cifrado y devuelve el resultado encriptado. El hospital descifra el resultado. La institución de investigación nunca tiene acceso a la información médica protegida de ningún paciente, cumpliendo así con los requisitos de la HIPAA incluso cuando el cálculo se realiza fuera del entorno de la entidad cubierta.
  2. Bases de datos cifradas: Una base de datos que almacena registros cifrados puede responder a consultas sin descifrarla. Mediante PHE o FHE, el sistema de base de datos evalúa los predicados de la consulta sobre valores cifrados y devuelve los registros coincidentes cifrados. Esto limita la exposición de la base de datos en caso de una brecha de seguridad: el texto cifrado robado no se puede consultar sin la clave privada del cliente. El cifrado estándar en las bases de datos no admite consultas sobre valores cifrados sin descifrarlos previamente.
  3. Recuperación de información privada (PIR): Un cliente puede recuperar un registro de una base de datos sin que el servidor sepa qué registro se recuperó. El cliente envía una consulta cifrada; el servidor la evalúa de forma homomórfica y devuelve un resultado cifrado. Esto es especialmente útil para consultas que requieren información confidencial, como comprobar si una contraseña se ha visto comprometida en una base de datos con antecedentes de filtraciones.
  4. Computación en la nube para datos sensibles: Las organizaciones pueden delegar el procesamiento a la infraestructura en la nube sin otorgar al proveedor acceso a los datos en texto plano. Los datos se cifran con un esquema HE antes de su carga; el procesamiento se realiza sobre el texto cifrado; el resultado se devuelve cifrado y la organización lo descifra. El proveedor de la nube funciona como un entorno de computación no confiable. Esto permite cumplir con los requisitos de soberanía y confidencialidad de los datos, incluso al utilizar infraestructura en la nube de terceros.
  5. Aprendizaje automático en datos privados: Con CKKS (que admite aritmética aproximada), se puede realizar inferencia de aprendizaje automático sobre entradas cifradas. Un modelo de diagnóstico médico, por ejemplo, puede evaluar un vector de síntomas de un paciente cifrado y devolver una clasificación cifrada, sin que el operador del modelo vea los datos del paciente ni este vea los parámetros del modelo. Esta tecnología se está implementando activamente en aplicaciones de IA que preservan la privacidad.

Compromisos entre rendimiento e interoperabilidad

La principal limitación práctica de FHE es la sobrecarga computacional. Las implementaciones actuales de FHE son al menos 10⁶ veces más lentas que el cálculo equivalente en texto plano para cálculos de propósito general. Esto significa que las operaciones que tardan milisegundos en texto plano pueden tardar cientos de segundos en FHE. Factores clave que determinan el rendimiento de HE:

Factor Impacto en el rendimientoMitigación
Tipo de esquema HEFHE (con arranque) es el más lento; PHE y SHE son más rápidos, pero tienen limitaciones en las operaciones compatibles.Elija la potencia HE mínima necesaria para el caso de uso: utilice PHE si solo se requiere suma o solo multiplicación.
Grado del módulo del polinomioUn módulo mayor permite realizar más operaciones antes de los límites de ruido, pero aumenta el tamaño del texto cifrado y el tiempo de operación.Parámetros de tamaño al mínimo requerido para la profundidad de cálculo
Agrupación SIMDMuchos esquemas HE admiten el empaquetado de múltiples textos planos en un único texto cifrado (procesamiento por lotes), amortizando el coste por elemento.Diseñar los cálculos para que utilicen operaciones por lotes siempre que sea posible.
Aceleracion de hardwareLas bibliotecas HE aceleradas por GPU proporcionan una aceleración de 10 a 100 veces con respecto a las implementaciones solo para CPU para los esquemas aplicables.Evaluar las bibliotecas FHE aceleradas por GPU (Intel HEXL, cuFHE) para implementaciones en producción.
Frecuencia de arranqueEl arranque (la operación de reducción de ruido de FHE) es la operación más costosa en FHE.Minimizar el arranque estructurando el cálculo para utilizar la profundidad mínima del circuito.

Para la mayoría de las aplicaciones de producción actuales, PHE o SHE son más prácticos que FHE. Los enclaves seguros (Trusted Execution Environments, como Intel SGX) ofrecen un enfoque alternativo para la computación en la nube con datos confidenciales, con una sobrecarga de rendimiento significativamente menor, aunque con un modelo de confianza diferente (se basa en la certificación del fabricante del hardware en lugar de la computación criptográfica). La privacidad diferencial proporciona garantías de privacidad estadística para análisis agregados con una sobrecarga de rendimiento mínima, pero no protege los registros individuales. La elección entre HE, enclaves seguros y privacidad diferencial depende del modelo específico de amenaza a la privacidad, el tipo de computación y la sobrecarga de rendimiento aceptable.

Ejemplos de implementación

Cálculo privado de riesgo financiero: una institución financiera busca un proveedor externo de análisis de riesgos para calcular las puntuaciones de riesgo crediticio de su cartera de clientes sin exponer los datos de las cuentas. Mediante el criptosistema Paillier (PHE, homomórfico aditivo), la institución cifra las métricas financieras relevantes de cada cliente. El proveedor de análisis calcula sumas ponderadas sobre los datos cifrados (solo operaciones de suma) y devuelve el resultado cifrado. La institución descifra el resultado para obtener las puntuaciones de riesgo. El proveedor nunca tiene acceso a los valores individuales de las cuentas. Este caso de uso es práctico hoy en día porque solo requiere sumas, que PHE admite de manera eficiente.

Búsqueda de palabras clave cifradas en una base de datos en la nube: una organización almacena documentos cifrados en una base de datos en la nube y necesita recuperar documentos que coincidan con una palabra clave sin revelar la palabra clave ni el contenido de los documentos que no coinciden al proveedor de la nube. Mediante un esquema de cifrado con capacidad de búsqueda (que combina propiedades de cifrado de palabras clave con indexación estructurada), la organización envía un token de consulta cifrado para la palabra clave. La base de datos en la nube evalúa el token de consulta comparándolo con las entradas del índice cifradas y devuelve las referencias de los documentos cifrados coincidentes. La organización descifra las referencias para recuperar los documentos de destino. El proveedor de la nube solo conoce qué textos cifrados coincidieron, no la palabra clave ni el contenido de los documentos.

Inferencia de aprendizaje automático sobre datos sanitarios cifrados con CKKS: un proveedor de IA para el sector sanitario ofrece un modelo de diagnóstico que clasifica el riesgo del paciente a partir de un conjunto de características clínicas. Mediante CKKS FHE, la organización sanitaria cifra el vector de características del paciente y lo envía al proveedor de IA. Este evalúa el cálculo de inferencia de la red neuronal sobre el vector cifrado mediante aritmética aproximada (operación nativa de CKKS) y devuelve la clasificación cifrada. La organización descifra la clasificación para obtener el resultado del diagnóstico. El proveedor de IA nunca ve los datos clínicos del paciente, y la organización nunca ve los pesos del modelo. Este tipo de implementación se está probando activamente en el sector sanitario y en los servicios financieros para casos de uso de inferencia de alto valor y que requieren especial atención a la privacidad.

Limitaciones e inconvenientes actuales

  • Sobrecarga computacional: El cálculo de FHE es al menos 10⁶ veces más lento que el cálculo en texto plano para operaciones de propósito general. Si bien la aceleración por hardware ha mejorado esto, FHE sigue siendo poco práctico para aplicaciones sensibles a la latencia y para cálculos en grandes conjuntos de datos que requieren muchas operaciones secuenciales.
  • Límites de profundidad del circuito (SHE/FHE sin arranque): Cada operación homomórfica introduce ruido en el texto cifrado. Sin el proceso de remuestreo (bootstrapping), el número de operaciones que se pueden realizar sobre un texto cifrado antes de que se vuelva indescifrable es limitado. El remuestreo amplía este límite, pero resulta computacionalmente costoso, lo que aumenta significativamente el tiempo total de procesamiento.
  • Limitación de clave única para bases de datos compartidas: Los esquemas HE estándar cifran los datos bajo una clave pública; solo el titular de la clave privada correspondiente puede descifrar los resultados. Para una base de datos a la que acceden varios usuarios independientes, cada uno con una clave privada diferente, se necesitaría una copia cifrada separada de los datos para cada usuario, lo cual resulta poco práctico a gran escala. Existen esquemas FHE de clave múltiple, pero añaden mayor complejidad y sobrecarga.
  • Complejidad de implementación: La elección del esquema HE, los tamaños de los parámetros y la estructura de cálculo adecuados requiere una considerable experiencia en criptografía. Una configuración incorrecta de los parámetros (un módulo o grado polinómico demasiado pequeño) puede provocar que el ruido sature el texto cifrado o que la seguridad se reduzca por debajo de los niveles requeridos. Las bibliotecas de código abierto están mejorando en usabilidad, pero siguen siendo más complejas de implementar correctamente que las bibliotecas criptográficas estándar.
  • Limitaciones aritméticas aproximadas de CKKS: CKKS admite cálculos con números reales, pero produce resultados aproximados, no exactos. Para aplicaciones que requieren aritmética entera exacta (como cálculos financieros donde se necesitan valores precisos), CKKS no es apropiado; en su lugar, se deben usar BGV o BFV.

Cómo puede ayudar la consultoría de cifrado

  • Servicios de asesoramiento sobre cifrado: nuestro mapa de Servicios de asesoramiento sobre cifrado Evaluamos si el cifrado homomórfico es el enfoque adecuado para su caso de uso específico, o si alternativas como los enclaves seguros, la privacidad diferencial o la tokenización satisfacen mejor sus requisitos de privacidad y rendimiento. Diseñamos arquitecturas de computación que preservan la privacidad, que son criptográficamente sólidas y operativamente viables.
  • Servicios de asesoramiento en materia de cumplimiento normativo: nuestro mapa de Servicios de asesoramiento sobre cumplimiento Ayudar a las organizaciones a comprender cómo la HE y los enfoques alternativos que preservan la privacidad abordan los requisitos de cumplimiento del RGPD, HIPAA, PCI DSS y FIPS, incluidos los requisitos de documentación para los reguladores que pueden no estar familiarizados con las arquitecturas de cumplimiento basadas en HE.
  • CBOM Seguro: CBOM seguro Descubre las implementaciones criptográficas existentes en su entorno, proporcionando el inventario necesario para evaluar si los enfoques de cifrado actuales exponen datos confidenciales a entornos de terceros y si HE debería evaluarse como reemplazo o complemento.
  • HSM como servicio: Los sistemas de cifrado de alta seguridad que utilizan cifrado de clave pública requieren una gestión segura de la clave privada de descifrado. HSM como servicio Proporciona almacenamiento de hardware validado según FIPS 140-3 para las claves privadas utilizadas en las implementaciones de HE, lo que garantiza que la clave privada (y la capacidad de descifrar los resultados de HE) no se vea comprometida incluso si se produce una brecha en la infraestructura de la nube o de la aplicación.

Conclusión

El cifrado homomórfico aborda un problema que el cifrado estándar no puede resolver: cómo permitir que un tercero realice cálculos significativos sobre datos confidenciales sin acceder al texto plano. El cifrado homomórfico físico (PHE) es práctico hoy en día para casos de uso que requieren un único tipo de operación. El cifrado homomórfico completo (FHE) permite realizar cálculos arbitrarios sobre datos cifrados y se está implementando en producción para aplicaciones de alto valor y sensibles a la privacidad en los sectores de salud, finanzas e inferencia de aprendizaje automático, a pesar de su actual sobrecarga de rendimiento.

Para la mayoría de las organizaciones que evalúan HE, el marco de decisión es el siguiente: si necesita delegar un cálculo específico y limitado a un tercero sin exponer el texto plano, evalúe si PHE o SHE admiten ese tipo de cálculo; si se requiere un cálculo arbitrario, evalúe FHE frente a la sobrecarga de rendimiento y compárelo con alternativas como los enclaves seguros y la privacidad diferencial. La arquitectura adecuada depende del modelo de amenazas específico, el tipo de cálculo, la sensibilidad de los datos y el presupuesto de rendimiento. Si desea orientación sobre si el cifrado homomórfico u otro enfoque de preservación de la privacidad se ajusta a su caso de uso, póngase en contacto con Encryption Consulting . Para temas relacionados, consulte Cifrado que preserva el formato y nuestro blog sobre la comparación de la seguridad y la privacidad de los datos.

Preguntas frecuentes

¿Qué es el cifrado homomórfico?

El cifrado homomórfico (HE) permite realizar cálculos directamente sobre el texto cifrado, obteniendo como resultado descifrado el mismo que se habría obtenido al realizar las mismas operaciones sobre el texto original. Esto permite a un proveedor de servicios en la nube procesar datos cifrados y devolver un resultado cifrado, sin necesidad de ver el texto original.

¿Cuál es la diferencia entre PHE y FHE?

El cifrado homomórfico parcial (PHE) admite la suma o la multiplicación sobre el texto cifrado, pero no ambas. Es práctico y eficiente para casos de uso específicos. El cifrado homomórfico completo (FHE) admite ambas operaciones en combinaciones ilimitadas, lo que permite realizar cálculos arbitrarios sobre datos cifrados, pero actualmente es 10⁶ veces más lento que el cálculo sobre texto plano para uso general.

¿Por qué no se puede utilizar el cifrado estándar para la computación en la nube?

El cifrado estándar requiere un proceso inverso (descifrado de los datos) antes de poder realizar cualquier cálculo. Esto expone el texto sin cifrar al entorno del proveedor de la nube durante el procesamiento, lo que genera problemas de cumplimiento y confidencialidad para los datos sensibles. HE elimina la necesidad de descifrar, ya que permite realizar cálculos sobre el texto cifrado.

¿Qué tan lento es el cifrado totalmente homomórfico en comparación con el cifrado estándar?

El cálculo de FHE es al menos 10⁶ veces más lento que el cálculo equivalente en texto plano. Una operación que tarda 1 milisegundo en texto plano puede tardar hasta 1,000 segundos en FHE. La aceleración por hardware (FHE basada en GPU) reduce significativamente esta diferencia para los esquemas aplicables, y el rendimiento sigue mejorando gracias a la investigación en curso.

¿Cuáles son las principales aplicaciones prácticas del cifrado homomórfico?

Actualmente, PHE se utiliza en votaciones electrónicas, consultas de bases de datos que preservan la privacidad y cálculos financieros específicos. FHE se está probando para la inferencia de aprendizaje automático encriptada en datos de atención médica, la recuperación de información privada y la computación en la nube en datos regulados. FHE basado en CKKS es el más práctico para la inferencia de aprendizaje automático debido a su compatibilidad con la aritmética aproximada de números reales.

¿Cuáles son los principales programas de educación superior y bibliotecas disponibles en la actualidad?

BGV y BFV se utilizan para aritmética de enteros; CKKS para cálculos aproximados de números reales (inferencia de aprendizaje automático); TFHE para evaluación de circuitos booleanos. Las bibliotecas incluyen Microsoft SEAL (BFV y CKKS), HElib (BGV y CKKS) y OpenFHE (BGV, BFV, CKKS, TFHE y FHEW). Todas son de código abierto y varían en su grado de madurez para la producción.