Diffie-Hellman

Diffie-Hellman

Δύσκολο

Οδηγίες

Ανταλλαγή κλειδιών Diffie-Hellman.

Η Alice και ο Bob χρησιμοποιούν την ανταλλαγή κλειδιών Diffie-Hellman για να μοιραστούν μυστικά. Ξεκινούν με πρώτους αριθμούς, επιλέγουν ιδιωτικά κλειδιά, δημιουργούν και ανταλλάσσουν δημόσια κλειδιά και έπειτα δημιουργούν ένα κοινό μυστικό κλειδί.

Βήμα 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 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.