Percursos
/
Kotlin
Kotlin
/
Exercícios
/
Diffie-Hellman
Diffie-Hellman

Diffie-Hellman

Difícil

Instruções

Troca de chaves Diffie-Hellman.

A Alice e o Bob usam a troca de chaves Diffie-Hellman para partilhar segredos. Começam por números primos, escolhem chaves privadas, geram e partilham chaves públicas e, em seguida, geram uma chave secreta partilhada.

Passo 0

O programa de testes fornece os números primos p e g.

Passo 1

A Alice escolhe uma chave privada, a, maior do que 1 e menor do que p. O Bob faz o mesmo para escolher uma chave privada b.

Passo 2

A Alice calcula uma chave pública A.

A = gᵃ mod p

Usando os mesmos p e g, o Bob calcula de forma semelhante uma chave pública B a partir da sua chave privada b.

Passo 3

A Alice e o Bob trocam as chaves públicas. A Alice calcula a chave secreta s.

s = Bᵃ mod p

O Bob calcula

s = Aᵇ mod p

Os cálculos produzem o mesmo resultado! A Alice e o Bob partilham agora o segredo s.

Editar via GitHub A ligação abre numa nova janela ou separador
Kotlin Exercism

Estás pronto para começar Diffie-Hellman?

Inscreve-te no Exercism para aprenderes e dominares Kotlin com 88 exercícios, e mentoria humana real, tudo grátis.