🔐 Cripto App

Diffie-Hellman

Simulación de intercambio de llaves entre A y B con números pequeños.

Calculando…
¿Por qué funciona esto matemáticamente?

La razón de que A y B lleguen al mismo secreto es pura aritmética de exponentes: elevar a una potencia y luego a otra es lo mismo sin importar el orden.

secreto_A = B^a mod p = (g^b)^a mod p = g^(ab) mod p = (g^a)^b mod p = A^b mod p = secreto_B

Ambas partes calculan literalmente g^(ab) mod p, solo que llegando por caminos distintos (uno eleva primero a "b" y luego a "a", el otro al revés) — y la multiplicación en el exponente es conmutativa. La seguridad depende de que ir "hacia adelante" (calcular g^a mod p conociendo a) es rápido, pero ir "hacia atrás" (recuperar a conociendo solo g^a mod p) —el logaritmo discreto— no tiene un algoritmo eficiente conocido para p grande.

En el mundo real: DH real usa primos de 2048 bits o más. La seguridad depende de que calcular el logaritmo discreto (recuperar a partir de g^a mod p) sea computacionalmente inviable a ese tamaño, aunque calcular g^a mod p sí sea rápido.