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.
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.
Partimos de RS = 7, N = 11, e = 3, y queremos añadir x4 = 8 sin recomputar el producto completo.
8³ = 512RS anterior: 7 × 512 = 358411: 3584 = (325 × 11) + 9 → RS' = 9RS' = 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).
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.
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.
RSContexto: 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).
| 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) |
p y q; calcular n = p × q; de ahí derivar la clave pública (e, n) y privada (d, n).m (= RS) se firma con la clave privada:
firma = m^d mod n
La firma viaja junto al mensaje.firma^e mod n == m → firma válida, mensaje íntegro
Si los resultados coinciden con RS original, se confirma autenticidad e integridad.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.
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).
Nota técnica académica con datos de laboratorio, verificada y corregida. Sin datos de producción.