Diffie-Hellman

Diffie-Hellman

Складна

Вказівки

Обмін ключами Діффі-Геллмана.

Alice і Bob використовують обмін ключами Діффі-Геллмана, щоб ділитися секретами. Вони починають із простих чисел, обирають приватні ключі, генерують і обмінюються відкритими ключами, а потім генерують спільний секретний ключ.

Крок 0

Тестова програма надає прості числа p і g.

Крок 1

Alice обирає приватний ключ a, більший за 1 і менший за p. Bob робить те саме й обирає приватний ключ b.

Крок 2

Alice обчислює відкритий ключ A.

A = gᵃ mod p

Використовуючи ті самі p і g, Bob так само обчислює відкритий ключ B зі свого приватного ключа b.

Крок 3

Alice і Bob обмінюються відкритими ключами. Alice обчислює секретний ключ s.

s = Bᵃ mod p

Bob обчислює

s = Aᵇ mod p

Обчислення дають той самий результат! Тепер Alice і Bob мають спільний секрет s.

Підказки

У цій вправі потрібно виконувати обчислення з великими числами. Щоб правильно представити великі числа, використайте BigInteger.

Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
Visual Basic Exercism

Час розпочати Diffie-Hellman?

Зареєструйтеся на Exercism, щоб вивчати й опановувати Visual Basic, а також 113 вправ та справжнє наставництво від людей, і все це безкоштовно.