Kurzusok
/
Rust
Rust
/
Feladatok
/
Diffie-Hellman
Diffie-Hellman

Diffie-Hellman

Könnyű

Utasítások

Diffie-Hellman kulcscsere.

Alice és Bob a Diffie-Hellman kulcscsere segítségével oszt meg titkokat. Prímszámokból indulnak ki, privát kulcsokat választanak, nyilvános kulcsokat generálnak és osztanak meg, végül pedig közös titkos kulcsot állítanak elő.

0. lépés

A tesztprogram megadja a p és g prímszámokat.

1. lépés

Alice választ egy a privát kulcsot, amely nagyobb 1-nél és kisebb p-nél. Bob ugyanígy választ egy b privát kulcsot.

2. lépés

Alice kiszámítja az A nyilvános kulcsot.

A = gᵃ mod p

Ugyanazt a p-t és g-t használva Bob is kiszámítja a B nyilvános kulcsot a b privát kulcsából.

3. lépés

Alice és Bob kicserélik egymással a nyilvános kulcsaikat. Alice kiszámítja az s titkos kulcsot.

s = Bᵃ mod p

Bob kiszámítja:

s = Aᵇ mod p

A számítások eredménye ugyanaz! Alice és Bob mostantól osztozik az s titkon.

A feladat egyik lehetséges megoldása, hogy megírod a saját moduláris hatványozó függvényedet. Ha többet szeretnél megtudni róla, nézd meg a következő oldalt.

Bónuszpontokért

Sok implementáció nem működik a bemenetek teljes tartományán. Vannak további opcionális tesztek, amelyek segítenek biztosítani, hogy minden érvényes bemenet érvényes eredményt adjon.

A bónusztesztek futtatásához távolítsd el a #[ignore] jelzőt, és futtasd a teszteket a big-primes feature bekapcsolásával, így:

$ cargo test --features big-primes
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Rust Exercism

Készen állsz elkezdeni a(z) Diffie-Hellman feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Rust nyelvet 99 feladat segítségével, valódi emberi mentorálással, mindez ingyen.