Η κρυπτογραφία είναι παντού γύρω μας – από τις online τραπεζικές συναλλαγές μας μέχρι το ψίθυρο στο διπλανό μας για να μην μας ακούσουν τρίτοι σε ένα μέσο μαζικής μεταφοράς, όλα αποτελούν μια απλούστερη ή πιο πολύπλοκη μέθοδο κρυπτογράφησης δεδομένων.
Όμως, αυτή που πραγματικά ήρθε να σώσει το παιχνίδι ήταν η κρυπτογράφηση δημοσίου κλειδιού καθώς επέτρεψε στο δίκτυο των υπολογιστών που χρησιμοποιούμε καθημερινά, το internet, να ανταλλάζει πληροφορίες μυστικά.
Κάποιος ίσως αναρωτηθεί γιατί η λέξη “κρυπτογραφία” και “δημόσιο” να βρίσκονται στην ίδια πρακτική αλλά εδώ είναι το παράδοξο.
Καθώς το δίκτυο των υπολογιστών ήταν αδύνατο να συμφωνήσει εκ των προτέρων κάποιον μυστικό κώδικα, που θα του επέτρεπε να επικοινωνεί δίχως κάποιος τρίτος να τον γνωρίζει, χρειάστηκε να επινοηθεί κάτι το οποίο θα μετέφερε τα μυνήματα με ασφάλεια και μπροστά στα μάτια όλων. Ταυτόχρονα, αυτό το σύστημα θα έπρεπε να είναι ίδιο για όλους αλλά να δίνει στον καθένα κάτι μοναδικό για να υπάρχει ως ξεχωριστή οντότητα.
Έτσι, γεννήθηκε η κρυπτογράφηση δημοσίου κλειδιού.
Πρώτα απ ‘όλα, ας δούμε πώς λειτουργεί η “συμμετρική” κρυπτογραφία.
Ο Γιάννης έχει ένα κουτί με μια κλειδαριά. Ως συνήθως, η κλειδαριά έχει ένα κλειδί που μπορεί να κλειδώσει και να ξεκλειδώσει το κιβώτιο. Έτσι, εάν ο Γιάννης θέλει να προστατεύσει κάτι, το βάζει στο κουτί και το κλειδώνει. Προφανώς, μόνο αυτός ή κάποιος άλλος με ένα αντίγραφο του κλειδιού του μπορεί να ανοίξει το κιβώτιο.
Αυτή είναι η συμμετρική κρυπτογράφηση: έχετε ένα κλειδί και το χρησιμοποιείτε για να κρυπτογραφήσετε (“κλειδώσετε”) και να αποκρυπτογραφήσετε (“ξεκλειδώσετε”) τα δεδομένα σας.
Τώρα ας δούμε πώς λειτουργεί ασύμμετρη κρυπτογράφηση ή κρυπτογράφηση με δημόσιο κλειδί.
Αυτή η κλειδαριά έχει τρεις καταστάσεις: A (κλειδωμένη), B (ξεκλείδωτη) και C (κλειδωμένη).
Και έχει δύο ξεχωριστά (ναι, δύο) κλειδιά. Το πρώτο κλειδί μπορεί να γυρίσει μόνο δεξιόστροφα (από το Α στο Β έως το C) και το δεύτερο μπορεί να γυρίσει μόνο αριστερόστροφα (από το C στο B στο A).
Η Άννα παίρνει το πρώτο από τα κλειδιά και το κρατάει για τον εαυτό της. Θα ονομάσουμε αυτό το κλειδί, το “ιδιωτικό” κλειδί της – γιατί μόνο η Άννα το έχει.
Θα αποκαλέσουμε το δεύτερο κλειδί, το “δημόσιο” κλειδί της: η Άννα κάνει εκατό αντίγραφα, και δίνει μερικά στους φίλους και την οικογένειά της, αφήνει μια αρμαθιά στο γραφείο της στη δουλειά, κρεμάει ένα ζευγάρι έξω από την πόρτα της, κλπ. Αν κάποιος της ζητήσει μια επαγγελματική κάρτα, του δίνει και ένα αντίγραφο του κλειδιού.
Ετσι, η Άννα έχει το ιδιωτικό της κλειδί που μπορεί να το γυρίσει από το Α στο Β στο C. Και όλοι οι άλλοι έχουν το δημόσιο κλειδί που μπορεί να γυριστεί από το C στο Β στο Α.
Μπορούμε να κάνουμε αρκετά ενδιαφέροντα πράγματα με αυτό το κουτί.
Πρώτα απ ‘όλα, φανταστείτε ότι θέλετε να στείλετε στην Άννα ένα πολύ προσωπικό έγγραφο. Τοποθετείτε το έγγραφο στο κουτί και χρησιμοποιείτε ένα αντίγραφο του δημόσιου κλειδιού για να το κλειδώσετε. Θυμηθείτε ότι το δημόσιο κλειδί της Άννας γυρίζει μόνο αριστερόστροφα, γι ‘αυτό το γυρίζετε στη θέση Α. Τώρα το κουτί είναι κλειδωμένο. Το μόνο κλειδί που μπορεί να γυρίσει από το Α στο Β είναι το ιδιωτικό κλειδί της Άννας, αυτό που κρατά για τον εαυτό της.
Αυτό είναι! Αυτή είναι η αποκαλούμενη κρυπτογράφηση δημόσιου κλειδιού: Όλοι όσοι έχουν το δημόσιο κλειδί της Άννας (και είναι εύκολο να βρει κανείς ένα αντίγραφό του), μπορεί να βάλει έγγραφα στο κουτί της, να το κλειδώσει και να γνωρίζει ότι το μόνο άτομο που μπορεί να το ξεκλειδώσει είναι η Άννα.
Υπάρχει μια ακόμα ενδιαφέρουσα χρήση αυτού του κουτιού.
Ας υποθέσουμε ότι η Άννα βάζει ένα έγγραφο σε αυτό. Και χρησιμοποιεί το ιδιωτικό κλειδί για να κλειδώσει το κουτί, δηλαδή γυρνά το κλειδί στη θέση (C).
Γιατί να το κάνει αυτό; Αφού, οποιοσδήποτε με το δημόσιο κλειδί της, μπορεί να το ξεκλειδώσει! Περιμένετε, όμως…
Κάποιος μου ταχυδρομεί αυτό το κουτί και μου λέει ότι είναι από την Άννα. Δεν τον πιστεύω, αλλά με το δημόσιο κλειδί της Άννας στο συρτάρι, όπου κρατώ όλα τα δημόσια κλειδιά των φίλων μου, το δοκιμάζω. Στρίβω δεξιά, τίποτα. Στρίβω αριστερά και ανοίγει το κουτί! “Χμμ”, λέω. “Αυτό μπορεί να σημαίνει μόνο ένα πράγμα: το κουτί κλειδώθηκε χρησιμοποιώντας το ιδιωτικό κλειδί της Άννας, αυτό που μόνο εκείνη έχει.”
Έτσι, είμαι βέβαιος ότι η Άννα, και κανένας άλλος, δεν έβαλε τα έγγραφα στο κουτί. Το αποκαλούμε “ψηφιακή υπογραφή”.
Στον ψηφιακό κόσμο τα πράγματα είναι πολύ πιο εύκολα.
Τα “κλειδιά” είναι απλώς αριθμοί – μεγάλοι, τεράστιοι αριθμοί με πολλά ψηφία. Μπορείτε να κρατήσετε το ιδιωτικό σας κλειδί, που είναι ένας αριθμός, σε ένα αρχείο κειμένου ή σε μια ειδική εφαρμογή. Μπορείτε να βάλετε το δημόσιο κλειδί σας, ο οποίος είναι και ένας πολύ μεγάλος αριθμός, στην υπογραφή του ηλεκτρονικού σας ταχυδρομείου, στον ιστότοπό σας κ.λπ. Και δεν χρειάζονται ειδικά κουτιά, απλά κλειδώνετε και ξεκλειδώνετε αρχεία (ή δεδομένα).
Αν κάποιος, ακόμη και εσείς, κρυπτογραφήσει (“κλειδώσει”) κάτι με το δημόσιο κλειδί σας, μόνο εσείς μπορείτε να το αποκρυπτογραφήσετε (“ξεκλειδώσετε”) με το μυστικό, ιδιωτικό σας κλειδί.
Αν κρυπτογραφήσετε (“κλειδώσετε”) κάτι με το ιδιωτικό σας κλειδί, ο καθένας μπορεί να το αποκρυπτογραφήσει (“ξεκλειδώσει”), αλλά αυτό αποτελεί απόδειξη ότι εσείς το κρυπτογραφήσατε: είναι “ψηφιακά υπογεγραμμένο” από εσάς.
Ακολουθήστε το Techmaniacs.gr στο Google News για να διαβάζετε πρώτοι όλα τα τεχνολογικά νέα. Ένας ακόμα τρόπος να μαθαίνετε τα πάντα πρώτοι είναι να προσθέσετε το Techmaniacs.gr στον RSS feeder σας χρησιμοποιώντας τον σύνδεσμο: https://techmaniacs.gr/feed/.