Το διαδίκτυο: Κρυπτογράφηση και Δημόσια Κλειδιά
Γεια με λένε Μία Τζιλ-Επνερ, σπουδάζω Επιστήμη Υπολογιστών και δουλεύω για το
Υπουργείο Άμυνας, όπου προσπαθώ να είναι πληροφορίες ασφαλείς. Το Διαδίκτυο είναι
ένα ανοιχτό και δημόσιο σύστημα. Όλοι ανεξαιρέτως στέλνουν και λαμβάνουν
πληροφορίες με κοινά καλώδια και συνδέσεις και ανταλλάζουν ακόμα πολλά προσωπικά
δεδομένα όπως αριθμούς πιστωτικών καρτών, τραπεζικές πληροφορίες, κωδικούς και
μηνύματα ηλεκτρονικού ταχυδρομείου. Πώς λοιπόν όλα αυτά παραμένουν κρυφά; Μέσω
της διαδικασίας της κρυπτογράφησης, της κωδικοποίησης ή αλλαγής του μηνύματος για
την απόκρυψη του αυθεντικού κειμένου. Η αποκρυπτογράφηση είναι η διαδικασία
αποκωδικοποίησης αυτού του μηνύματος για να μπορούμε να το διαβάσουμε. Μία από τις
πρώτες γνωστές μεθόδους κρυπτογράφησης ήταν Caesar's Cipher από τον Ιούλιο
Καίσαρα,
έναν στρατηγό
που κρυπτογράφησε τις στρατιωτικές εντολές του για να εξασφαλίσει τη
μυστικότητα του μηνύματος αν παρεμβαλλόταν από εχθρούς.
Caesar's Cipher είναι ένας αλγόριθμος που αντικαθιστά
κάθε γράμμα στο αρχικό μήνυμα με ένα γράμμα κάποιες σκάλες πιο κάτω στο
αλφάβητο. Αν ο αριθμός είναι γνωστός μόνο στον αποστολέα και στο λήπτη, τότε
ονομάζεται το κλειδί. Για παράδειγμα, αν το αρχικό μήνυμα
λέει "ΓΕΙΑ" τότε με τη χρήση του αλγορίθμου Caesar Cipher με ένα κλειδί
των 5 το κρυπτογραφημένο μήνυμα
θα ήταν αυτό...Για την αποκρυπτογράφηση του, ο λήπτης
θα χρησιμοποιούσε
απλώς το κλειδί για να αντιστρέψει
την διαδικασία. Το πρόβλημα με Caesar Cipher είναι ότι όλοι μπορούν
εύκολα
να σπάσουν
ή να παραβιάζουν το κρυπτογραφημένο μήνυμα, δοκιμάζοντας
κάθε πιθανό κλειδί στο αλφάβητο.
Ας κάνουμε λοιπόν το εύκολο έργο τους δυσκολότερο,αλλάζοντας κάθε γράμμα
με διαφορετικό ποσό.
Σε αυτό το παράδειγμα, ένα κλειδί δέκα ψηφίων δείχνει πόσες
θέσεις κάθε διαδοχικό γράμμα θα αλλάζει για να κρυπτογραφηθεί ένα
μακρύτερο μήνυμα. Η κρυπτογράφηση με 10 ψηφία δυσκολεύει πραγματικά καθώς θα
μπορούσαν να υπάρχουν 10 δισεκατομμύρια πιθανές λύσεις για να βρεθεί το κλειδί.
Προφανώς, θα χρειάζονταν αιώνες για την επίλυση του από άνθρωπο.
Αλλά ένας μέσος υπολογιστής σήμερα χρειάζεται μόνο μερικά δευτερόλεπτα
για να δοκιμάσει όλες τις 10 δισεκατομμύρια πιθανότητες.
Άρα, τώρα που οι "κακοί" είναι οπλισμένοι με υπολογιστές αντί για μολύβια πώς
μπορούμε να κρυπτογραφήσουμε μηνύματα που να είναι δύσκολο να παραβιαστούν;
Τώρα δύσκολο σημαίνει ότι υπάρχουν υπερβολικά πολλές πιθανότητες για
υπολογισμό σε ένα εύλογο χρονικό διάστημα. Οι σημερινές ασφαλείς επικοινωνίες
είναι κρυπτογραφημένες με τη χρήση 256 μπιτ κλειδιά. Αυτό σημαίνει ότι ο
υπολογιστής του "κακού" που
παρεμβάλλεται θα χρειαστεί να χρησιμοποιήσει τόσο πολλές εναλλακτικές...
μέχρι να ανακαλύψουν
το κλειδί και να παραβιάσουν το μήνυμα. Ακόμα και αν υπήρχαν 100.000 υπερ
υπολογιστές και
μπορούσαν να δοκιμάσουν ένα εκατομμύριο δισεκατομμύριο κλειδιά θα χρειάζονταν
τρισεκατομμύρια τρισεκατομμυρίων
χρόνια για να δοκιμάσουν κάθε εναλλακτική,
για να παραβιάσουν μόνο ένα μήνυμα με 256 μπιτ κρυπτογράφηση.
Βέβαια τα τσιπ υπολογιστών γίνονται δύο φορές πιο γρήγορα
και μικραίνουν στο μισό μέγεθος κάθε χρόνο περίπου.
Αν αυτός ο ρυθμός της ραγδαίας ανάπτυξης συνεχίσει,
τα σημερινά αδύνατα προβλήματα θα είναι επιλύσιμα
μόνο μερικά χρόνια στο μέλλον και 256 μπιτ δεν θα είναι αρκετά για την ασφάλειά μας.
Έχουμε ήδη αυξήσει το μήκος του τυπικού κλειδιού
για να φτάσουμε την ταχύτητα των υπολογιστών.
Τα καλά νέα είναι ότι η χρήση ενός μεγαλύτερου κλειδιού δεν κάνει την
κρυπτογράφηση και την αποκρυπτογράφηση
του μηνύματος πολύ δυσκολότερη, αλλά
αυξάνει τον αριθμό που χρειάζεται για να παραβιαστεί ένα κρυπτογραφημένο κείμενο.
Όταν ο αποστολέας και ο λήπτης μοιράζονται το ίδιο κλειδί για την αλλαγή
και την αποκρυπτογράφηση του μηνύματος ονομάζεται
Συμμετρική Κρυπτογράφηση, όπως του Caesar Cipher, το μυστικό κλειδί πρέπει
είναι συμφωνημένο εκ των προτέρων από δύο άτομα ιδιωτικά. Κατάλληλο για άτομα μεν
, αλλά ακατάλληλο για το διαδίκτυο δε,
καθώς είναι ανοιχτό και δημόσιο και δύο υπολογιστές δεν μπορούν να
"συναντηθούν" ιδιωτικά να συμφωνήσουν
το μυστικό κλειδί. Για αυτό οι υπολογιστές
χρησιμοποιούν κλειδιά Ασυμμετρικής Κρυπτογράφησης,
ένα δημόσιο κλειδί που είναι κοινό και ένα ιδιωτικό κλειδί που δεν είναι κοινό.
Το Δημόσιο Κλειδί χρησιμοποιείται για να κρυπτογραφεί δεδομένα
και όλοι μπορούν να το χρησιμοποιήσουν για να δημιουργήσουν ένα μυστικό κείμενο,
αλλά το μυστικό μπορεί να αποκρυπτογραφηθεί μόνο
από έναν υπολογιστή με πρόσβαση στο ιδιωτικό κλειδί.
Δείτε το κάπως έτσι, φανταστείτε ότι έχετε ένα ιδιωτικό ταχυδρομικό κουτί
που όλοι μπορούν να καταθέσουν αλληλογραφία
αλλά χρειάζονται ένα κλειδί για να το κάνουν. Τώρα μπορείτε να κάνετε πολλά
αντίγραφα
του κλειδιού και να στείλετε ένα σε φίλους σας ή
ακόμα να το κάνετε δημοσίως διαθέσιμο.
Φίλοι ή ακόμα και ξένοι μπορούν να χρησιμοποιήσουν το δημόσιο κλειδί
για να έχουν πρόσβαση στην
υποδοχή του κουτιού και να ρίχνουν ένα
μήνυμα μέσα, αλλά μόνο εσείς μπορείτε να ανοίξετε το κουτί με το ιδιωτικό κλειδί
σας, για να έχετε πρόσβαση σε όλα από τα
μυστικά μηνύματα που λάβατε. Και μπορείτε να στείλετε ασφαλή μηνύματα στο φίλο σας
με τη χρήση του δημοσίου κλειδιού στο ταχυδρομικό κουτί του. Κατά αυτόν τον
τρόπο, οι άνθρωποι μπορούν να ανταλλάξουν ασφαλή μηνύματα
χωρίς ποτέ να χρειαστεί να συμφωνήσουν σε ένα ιδιωτικό κλειδί.
Η κρυπτογραφεία Δημοσίου Κλειδιού μαζί με τα Πρωτόκολλα Ασφαλείας
γνωστά ως SSL και TSL, που μας προστατεύουν όταν πλοηγούμαστε
στο διαδίκτυο, εξασφαλίζουν την ασφάλεια των μηνυμάτων μας στο ανοιχτό διαδίκτυο.
Ο υπολογιστής, όταν εμφανίζει μια μικρή κλειδαριά,
ή τα γράμματα https στην μπάρα διευθύνσεων
τότε εξασφαλίζεται μια ασφαλής σύνδεση επικοινωνίας.
Αυτό σημαίνει ότι ο υπολογιστής σας χρησιμοποιεί μια κρυπτογράφηση
δημόσιου κλειδιού
για να ανταλλάξει δεδομένα με ασφάλεια με τον ιστότοπο που βρίσκεστε. Καθώς όλο
και περισσότεροι άνθρωποι μπαίνουν στο διαδίκτυο και όλο και περισσότερα ιδιωτικά
δεδομένα θα μεταδίδονται,
η ανάγκη για ασφάλεια αυτών των δεδομένων θα γίνεται ολοένα και πιο σημαντική
Και καθώς οι υπολογιστές γίνονται όλο και γρηγορότεροι, θα πρέπει να αναπτύξουμε
νέους τρόπους για να κάνουμε την κρυπτογράφηση πολύ
πιο δυσκολότερη για να την σπάσουν οι υπολογιστές.
Αυτό είναι που κάνω με την εργασία μου και πάντα αλλάζει.