Diffie-Hellman

Diffie-Hellman

Difícil

Instrucciones

Intercambio de claves Diffie-Hellman.

Alice y Bob usan el intercambio de claves Diffie-Hellman para compartir secretos. Empiezan con números primos, eligen claves privadas, generan y comparten claves públicas y, por último, generan una clave secreta compartida.

Paso 0

El programa de prueba proporciona los números primos p y g.

Paso 1

Alice elige una clave privada, a, mayor que 1 y menor que p. Bob hace lo mismo para elegir una clave privada b.

Paso 2

Alice calcula una clave pública A.

A = gᵃ mod p

Con los mismos p y g, Bob calcula de forma similar una clave pública B a partir de su clave privada b.

Paso 3

Alice y Bob intercambian sus claves públicas. Alice calcula la clave secreta s.

s = Bᵃ mod p

Bob calcula

s = Aᵇ mod p

¡Los cálculos producen el mismo resultado! Ahora Alice y Bob comparten el secreto s.

Pistas

Este ejercicio requiere que hagas cálculos con números grandes. Para representar correctamente los números grandes, el BigInteger.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Visual Basic Exercism

¿Todo listo para empezar Diffie-Hellman?

Regístrate en Exercism para aprender y dominar Visual Basic con 113 ejercicios y mentoría humana real, todo gratis.