Criptografía homomórfica agregada y firmas digitales con RSA

Tipo: Nota técnica (especialización en ciberseguridad — ejercicios de criptografía) Tema: RSA aplicado a representación compacta de conjuntos (agregación) · verificación de pertenencia · firma digital y no repudio Enfoque: matemática verificada paso a paso + marco conceptual (integridad, autenticidad, no repudio) y su mapeo a controles de la información.

Aviso: todos los números son de laboratorio (módulos y exponentes pequeños, didácticos). Los cálculos fueron re-verificados y corregidos sobre la versión original. El propósito es conceptual: cómo la agregación homomórfica permite compactar información y cómo la firma digital le da integridad y no repudio — dos piezas que un auditor técnico debe poder explicar a un no técnico.


1. Representación compacta de un conjunto (agregación con RSA)

Problema: con un flujo alto de información (muchos datos/transacciones), queremos que un único valor RS represente a todo un conjunto de elementos de forma compacta, sin almacenar todo el bloque y manteniendo la integridad de la información y la escalabilidad (p. ej. en cadenas de bloques).

Mecanismo: dado un módulo N y un exponente e, cada elemento x_i se eleva a e y los resultados se multiplican; el resultado se reduce mod N.

Ejemplo (valores de laboratorio): - Módulo N = 11, exponente e = 3, conjunto S = {3, 5, 7}.

Elevamos cada elemento a e = 3:

3³ = 27
5³ = 125
7³ = 343

Producto de todo el conjunto:

RS = 27 × 125 × 343 = 1 157 625

Reducción módulo N = 11:

1 157 625 ÷ 11 → cociente 105 238, residuo 7
1 157 625 = (105 238 × 11) + 7

Resultado: RS = 1 157 625 mod 11 = 7

El único número Rs = 7 representa compactamente al conjunto S = {3,5,7}. El beneficio: en lugar de procesar cada transacción/elemento de forma individual, un único valor unifica la referencia a todo el conjunto.

Por qué importa (nota de auditor): esta es la base del cifrado homomórfico agregado: se puede operar sobre el valor compactado sin descomponerlo. El costo computacional pasa de O(n) a O(1) para actualizaciones, con el trade-off de pertenencia que vemos en la sección 3.


2. Agregar un elemento sin reprocesar todo el conjunto

Partimos de RS = 7, N = 11, e = 3, y queremos añadir x4 = 8 sin recomputar el producto completo.

  1. Elevar el nuevo elemento: 8³ = 512
  2. Multiplicar por el RS anterior: 7 × 512 = 3584
  3. Reducir módulo 11: 3584 = (325 × 11) + 9 → RS' = 9

RS' = 9 representa ahora a S' = {3, 5, 7, 8} — se actualizó con una sola operación modular, sin reprocesar el conjunto completo.

Conclusión operativa: evitamos el desgaste de cómputo; la actualización es un producto + módulo, independiente del tamaño del conjunto ya representado (holgura para manejar el volumen de transacciones priorizando la eficiencia).


3. Verificación de pertenencia al conjunto (análisis de puntos fijos)

Dado S = {3,5,7,8} y ahora con exponente/clave pública e = 6, módulo N = 11, verificamos cuáles elementos pertenecen computando x^e mod N:

Elemento x^6 x^6 mod 11 ¿Pertecene?
3 729 3 ✅ (se conserva: x^e ≡ x)
5 15 625 5 ✅ (se conserva)
7 117 649 4 ❌ (cambia: 7^6 mod 11 = 4)
8 262 144 3 ❌ (cambia: 8^6 mod 11 = 3)

Corrección sobre el trabajo original: en el elemento 8 el residuo no puede ser 1003 (un residuo módulo 11 siempre está entre 0 y 10). El valor correcto es 262144 mod 11 = 3. Igualmente el resultado no contradice la conclusión: 8 tampoco es punto fijo.

Interpretación (concepto clave)

Un elemento pertenece al conjunto si su cifrado lo deja igual (x^e mod N = x) — es un punto fijo de la función de cifrado. En el ejemplo: - 3 y 5 son puntos fijos → elementos válidos para el ciclo cifrado/descifrado RSA. - 7 y 8 cambian al cifrarlos → no pertenecen al subconjunto de elementos "simétricos" para ese par de claves.

En la práctica: se trabajan módulos gigantes (factorización de primos grandes), estos valores pequeños solo demuestran la operativa: la pertenencia se razona con el comportamiento del residuo.

Nota de auditor: el cifrado RSA depende de la factorización de números grandes y de la operación de módulo como piedra angular. Dos claves: una pública (cifra) y una privada (descifra). Lo que hace seguro a RSA es el costo computacional de factorizar n = p×q.


4. Propuesta de Bob: firmas digitales para autenticar RS

Contexto: Alicia mantiene RS compactado y lo transmite. Bob propone firmar digitalmente ese valor para garantizar que no fue alterado y que proviene de una fuente legítima (no repudio).

Beneficios de la firma digital (los tres pilares)

Pilar Qué garantiza
Integridad Los datos firmados respaldan que no fueron alterados
Autenticidad La firma establece que los datos provienen de una fuente legítima
No repudio El firmante no puede negar haber emitido los datos (identidad responsable)

Proceso operativo (RSA)

  1. Generación de claves: partir de dos primos grandes p y q; calcular n = p × q; de ahí derivar la clave pública (e, n) y privada (d, n).
  2. Firma: el mensaje m (= RS) se firma con la clave privada: firma = m^d mod n La firma viaja junto al mensaje.
  3. Verificación: el destinatario usa la clave pública: firma^e mod n == m → firma válida, mensaje íntegro Si los resultados coinciden con RS original, se confirma autenticidad e integridad.

Conclusión de la sección

Las peticiones de Alicia se contemplan de forma segura y eficiente combinando: - Pertenencia por propiedades modulares de RSA (qué elementos son válidos para el par de claves). - No repudio/autenticidad por la firma digital — pieza orquestante para proteger los activos de información: integridad, autenticidad y no repudio.


5. Hash: la representación compacta que habilita todo

La función de hash transforma un conjunto de datos en un valor de longitud fija que lo representa sin alterar los valores originales.

Aplicación directa al caso: en vez de firmar un mensaje largo, firmamos su hash (el compactado). En aplicaciones con alta demanda de firma de mensajes, la representación compacta es de gran utilidad — es el mismo principio de RS, llevado al mundo de las funciones hash (SHA-256 y similares).


Lecciones (el qué se lleva un auditor técnico)

  1. Agregación homomórfica permite representar un conjunto con un solo valor y actualizarlo en O(1): eficiencia con un modelo matemático verificable.
  2. Pertenencia vs. firma: una cosa es qué elementos son cifrables (puntos fijos), otra es quién garantiza que el valor no fue tocado — eso último es la firma digital (integridad, autenticidad, no repudio).
  3. Notación verificable: en auditoría y documentación técnica, toda cuenta debe reproducirse; los residuos tienen que cumplir siempre el rango del módulo (0..N-1).
  4. Hash primero, firmar después: nunca firmamos datos largos directamente; hasheamos y firmamos el hash (eficiencia + integridad).

Nota técnica académica con datos de laboratorio, verificada y corregida. Sin datos de producción.