Tip:
Highlight text to annotate it
X
δρ. James Grime: Λοιπόν, έχω να σας δείξω έναν πολύ μεγάλο αριθμό
που χρησιμοποιείται σήμερα από τη NatWest Bank ώστε να μπορείτε να τους στείλετε
τα μυστικά σας τραπεζικά στοιχεία.
Ξεκινά από 2 3 4 5 3 6 7 6 2 8--
[κλιπς από ταυτόχρονη
καταμέτρηση αριθμών]
9--7.
Το σημειώσατε, ή θέλετε να το επαναλάβω;
Ο αριθμός που διαβάσαμε
έχει μήκος 617 ψηφία.
Όλες οι τράπεζες έχουν παρόμοιους αριθμούς όταν θέλεις να τους στείλεις
τα στοιχεία της πιστωτικής σου κάρτας.
Δεν είναι μυστικός ο αριθμός αυτός.
Στην ουσία, ο υπολογιστής σας θα κατεβάσει τον αριθμό αυτό
όταν θέλει να στείλει τα στοιχεία της πιστωτικής σας κάρτας.
Ο αριθμός είναι εκεί ελεύθερα προσβάσιμος.
Είναι δημόσιος.
Αυτός ο κώδικας που χρησιμοποιείται στο internet ονομάζεται RSA.
Πήρε την ονομασία του από τους τρεις ανθρώπους που τον εφηύραν
που ήταν οι Rivest, Shamir, Adleman.
Να σας δείξω πώς δουλεύει;
BRADY HARAN: Παρακαλώ!
DR. JAMES GRIME: Ωραία!
Φανταστείτε ότι έχετε ένα μυστικό το οποίο θέλετε
να στείλετε στην τράπεζα.
Η τράπεζα σας δίνει ένα κουτί και σας δίνει επίσης
κι ένα κλειδί για να κλειδώστε το κουτί.
Οπότε μπορείτε να βάλετε μέσα το μυστικό σας και να το κλειδώσετε.
Κι έπειτα μπορείτε να στείλετε το μυστικό σας στην τράπεζα.
Αυτό είναι καλό, σωστά;
Το πρόβλημα όμως είναι ότι η τράπεζα δίνει σε όλο τον κόσμο ένα
από αυτά τα κουτιά και το κλειδί που έρχεται μαζί, το οποίο σημαίνει ότι
κάποιος θα μπορούσε να κλέψει το κουτί κάποιου άλλου και
να χρησιμοποιήσει το κλειδί για να το ξεκλειδώσει και να διαβάσει τα μυστικά του.
Αυτό θα ήταν τρομερό!
Δεν μπορούμε να το κάνουμε αυτό!
Οπότε, αυτό που κάνουν οι τράπεζες είναι στην ουσία σχεδόν η ίδια ιδέα, αλλά αντί
να δίνουν κλειδιά, δίνουν λουκέτα.
Οπότε, δίνουν ένα κουτί στον καθένα.
Έχεις ένα μυστικό.
Το βάζεις μέσα στο κουτί.
Το κλειδώνεις, όχι με ένα κλειδί, αλλά με ένα λουκέτο.
Κάνει "κλικ".
Έχει κλειδώσει.
Εφόσον κλείσει και κλειδώσει, δεν έχεις το
κλειδί του λουκέτου, οπότε δεν μπορείς να το αντιστρέψεις.
Δεν μπορείς να το ανοίξεις.
Οπότε, αν κάποιος κλέψει το κουτί σου, δε θα
έχει ούτε εκείνος το κλειδί.
Έχει το λουκέτο, αλλά δεν έχει το
κλειδί να ανοίξει το λουκέτο.
Το μόνο πρόσωπο που το έχει είναι η ίδια η τράπεζα.
Κι είναι ένας τρόπος να στείλεις κρυφά μηνύματα χωρίς να χρειάζεται
να στέλνεις κλειδιά.
Είναι εύκολο να κλειδώσεις τον κώδικα, αλλά είναι δύσκολο
να ξεκλειδώσεις τον κώδικα.
Πρώτα απ' όλα, θα πρέπει να το εξηγήσω αυτό με το μικρότερο
παράδειγμα που μπορώ, κι έπειτα θα σας δείξω γιατί χρησιμοποιούμε
αυτόν τον τεράστιο αριθμό.
Ας πούμε ότι είσαι η τράπεζα και δίνεις προς τα έξω δύο αριθμούς.
Είναι δημόσιοι, οπότε μπορεί να τους γνωρίζουν όλοι.
Δεν είναι μυστικοί αριθμοί.
Θα διαλέξω τον αριθμό 3 και τον αριθμό 10.
Η τράπεζα έχει επίσης έναν μυστικό αριθμό.
Ο μυστικός αριθμός της τράπεζας, προς το παρόν, δεν ξέρεις
ποιος είναι.
Κανείς δεν ξέρει ποιος είναι.
Μόνο η τράπεζα ξέρει ποιος είναι ο μυστικός αριθμός.
Έφαγα ένα πολύ κακό πρωινό σήμερα το πρωί, οπότε
θα στείλω το μήνυμα BAD CHEF (κακός σεφ).
Το πρώτο πράγμα που κάνεις, αν έχεις ένα τέτοιο μήνυμα, είναι
να μετατρέψεις τα γράμματα σε αριθμούς.
Αυτό είναι ιδιαίτερα απλό.
Το Α είναι το 1, το B είναι το 2 και το Z είναι το 26.
Απλά πράγματα.
Το C είναι το 3, το D είναι το 4.
Τώρα θα το μετατρέψω σε κώδικα και θα χρησιμοποιήσω
τον αριθμό 3.
Υπάρχουν κάποιες κωδικοποιήσεις που απλώς θα πρόσθεταν το 3, ή άλλες
κωδικοποιήσεις που θα πολλαπλασίαζαν με 3.
Αυτό που θα κάνουμε είναι να υψώσουμε στην τρίτη δύναμη, οπότε
θα υψώσουμε αυτούς τους αριθμούς στον κύβο.
Ας το κάνουμε.
Οπότε έχω 2 στον κύβο, που κάνει 8.
1 στον κύβο κάνει 1.
5 στον κύβο κάνει 125.
Και 6 στον κύβο, 216.
Το τελικό βήμα είναι να χρησιμοποιήσω το δεύτερο αριθμό, τον αριθμό 10.
Θα διαιρέσω με 10
και θα κοιτάξω το υπόλοιπο.
Οπότε αν πάρω κάτι σαν το 512 και το διαιρέσω με 10,
θα είναι 51 δεκάδες και υπόλοιπο 2.
Οπότε μας κάνει απλώς 2.
5 εδώ, 1 και 4.
Και αυτός είναι ο κώδικάς σας.
Αυτό είναι αυτό που θα στέλνατε.
Η τράπεζα, ή το άτομο που θα αποκωδικοποιήσει αυτό το μήνυμα
έχει έναν μυστικό αριθμό.
Ο μυστικός αριθμός σε αυτό το παράδειγμα θα είναι ο αριθμός 3.
Υπάρχει τύπος για να βρεις αυτόν τον αριθμό.
Θα το προσπεράσω αυτό για λίγο
και θα σας δείξω τι χρειάζεται να γίνει για να αποκωδικοποιηθεί το μήνυμα.
Αυτός είναι ο κώδικάς μου.
Θα τον ξαναγράψω.
Θα κάνω το ίδιο πράγμα που έκανα και πριν.
Αυτή τη φορά, θα χρησιμοποιήσω τον μυστικό μου αριθμό.
Δε χρειάζεται να είναι το ίδιο με το 3, απλώς τυχαίνει
να είναι ίδιο με το 3 που χρησιμοποιήσαμε νωρίτερα.
Αλλά δεν έχει σημασία, δεν χρειάζεται να είναι το ίδιο.
Αλλά θα υψώσω πάλι στον κύβο.
Οπότε υψώνω στον κύβο αυτούς τους αριθμούς.
Κάνουμε ό,τι κάναμε και πριν.
Διαιρούμε με το 10 και βρίσκουμε το υπόλοιπο.
Κι έπειτα, ο αποκωδικοποιητής θα μετατρέψει αυτό σε γράμματα, που είναι Β
και παίρνει πίσω ξανά το μήνυμα, BAD CHEF.
Αυτό είναι μία γεύση του πώς δουλεύει.
Αυτή είναι η διαδικασία που ο υπολογιστής σας κάνει κάθε φορά που
θέλετε να αγοράσετε κάτι στο Amazon ή στο eBay.
Ένας από τους σημαντικούς αριθμούς σε αυτόν τον κώδικα ήταν αυτό το 10.
Αυτό το 10 προέκυψε πολλαπλασιάζοντας δύο
πρώτους αριθμούς μαζί --
2 επί 5 -- είναι πρώτοι αριθμοί.
Τους πολλαπλασιάζεις και παίρνεις το 10.
Αυτός ο τεράστιος αριθμός που σας έδειξα που χρησιμοποιεί η NatWest
αφορά την ίδια ιδέα.
Είναι δύο τεράστιοι πρώτοι αριθμοί πολλαπλασιασμένοι μεταξύ τους.
Περί αυτού πρόκειται.
Αν θες να βρεις το κλειδί της αποκωδικοποίησης, το μυστικό κλειδί,
θα πρέπει να ξέρεις τους αρχικούς αυτούς πρώτους αριθμούς.
Ο μόνος τρόπος για έναν κατάσκοπο που θέλει να σπάσει τον κώδικα
να μπορέσει να βρει τους αρχικούς πρώτους αριθμούς είναι
να πάρει αυτόν τον τεράστιο αριθμό και να τον παραγοντοποιήσει
για να τον σπάσει στους δύο αρχικούς πρώτους αριθμούς.
Αυτό είναι κάτι πολύ δύσκολο.
Τόσο δύσκολο που είναι πρακτικά αδύνατο να σπάσει με τη σημερινή
τεχνολογία.
Ο τεράστιος αριθμός που σας έδειξα ήταν ένας αριθμός των 2048 bits.
Αυτό σημαίνει ότι ισούται περίπου με 2 υψωμένο στην 2048.
Πριν μία δεκαετία, καταφέραμε να
σπάσουμε αριθμούς των 512 bits.
Μπορούσαμε να πάρουμε έναν τέτοιο αριθμό και να τον παραγοντοποιήσουμε
στους αρχικούς του πρώτους αριθμούς.
Πριν λίγα χρόνια, μία ομάδα ακαδημαϊκών κατάφερε να σπάσει
έναν αριθμό των 768 bits.
Η ομάδα αυτή χρειάστηκε, με όλους της τους πόρους,
2 χρόνια για να σπάσει ένα κλειδί των 768 bits.
Και είπαν ότι για να σπάσουν αυτά που χρησιμοποιούμε τώρα, που είναι
περίπου 1024, θα χρειαζόταν χιλιάδες φορές παραπάνω χρόνο.
Αλλά δεδομένης της ταχύτητας με την οποία προχωρά η τεχνολογία, θεωρούν
ότι αυτού του είδους ο κώδικας, 1.024-bit, θα μπορούσε να σπάσει σε
μερικά χρόνια, είπαν.
Αυτό το είπαν πριν μερικά χρόνια.
Οπότε αυτό θα πρέπει τώρα να αρχίσει να αντικαθίσταται.
Το Gmail χρησιμοποιεί ακόμα αυτό, αλλά θα αντικατασταθεί.
Όπως βλέπετε, η NatWest το έκανε ήδη.
Όλες οι τράπεζες το έχουν κάνει.
Πλέον χρησιμοποιούν αριθμούς των 2.048-bit, που ομοίως θα απαιτούνταν
από τους υπολογιστές --
κι εννοώ ακόμα και με μία σωστή επίθεση --
τους μεγάλους υπολογιστές, θα τους έπαιρνε και πάλι χιλιάδες χρόνια
για να παραγοντοποιήσουν αυτόν τον αριθμός στους αρχικούς του πρώτους.
Κρυμμένο στις λεπτομέρειες για τον κώδικα αυτόν βρίσκεται ένα μαθηματικό
θεώρημα που αναπτύχθηκε τον 17ο αιώνα
από τον Pierre de Fermat.
Είναι διάσημος για το Τελευταίο Θεώρημα του Fermat.
Ε, αυτό ήταν το Μικρό Θεώρημα του Fermat.
Αν πάρω έναν αριθμό, έναν ολόκληρο αριθμό, έναν
ακέραιο, οποιονδήποτε αριθμό --
ας τον πούμε x.
Θα τον υψώσω σε μία δύναμη.
Και θα πρόκειται για έναν πρώτο αριθμό, οπότε p για πρώτο (prime).
Θα τον υψώσω σε μία δύναμη και θα
αφαιρέσω x.
Αυτό είναι πολλαπλάσιο του p, του πρώτου αριθμού.
Ας κάνω ένα παράδειγμα.
Αυτό που εννοώ είναι πως αν πάρεις έναν αριθμό σαν το 4 και πάρεις
έναν πρώτο αριθμό σαν το 5, και μετά αφαιρέσω 4, θα πάρω
4 υψωμένο στην 5, που κάνει 1.024,
παίρνω 4, που κάνει 1.020.
Και αυτό είναι πολλαπλάσιο του 5, αλλά αυτό θα είναι εγγυημένο.
Έχεις εγγυημένα ένα πολλαπλάσιο του 5.
Τώρα, φαντάζεστε πως τον 17ο αιώνα, όταν ο Fermat
διατύπωσε αυτόν τον παράγοντα, ο κόσμος είπε "λοιπόν, πολύ ωραίο
θεώρημα, αλλά είναι σχεδόν άχρηστο".
"Τι χρήση θα έχεις για αυτό;"
Και ξαφνικά, έρχεται το internet
και γίνεται απίστευτα χρήσιμο.
Στην ουσία, όλος ο μοντέρνος μας κόσμος εξαρτάται από αυτό το θεώρημα.
Οπότε για να χρησιμοποιήσεις αυτόν τον κώδικα, το δημόσιο κλειδί έχει δύο αριθμούς.
Σας έδειξα τον απίστευτα μακρύ που χρησιμοποιεί η NatWest.
Ο άλλος αριθμός που χρειαζόμαστε, που είναι η δύναμη
στην οποία υψώνεις, δεν είναι τόσο μεγάλος.
Είναι το 65.537.
Αρκετά μεγάλος αριθμός.
Όταν τον συγκρίνεις με τον άλλο αριθμό, είναι μικρός.
BRADY HARAN: Αν ενδιαφέρεστε περισσότερο για τράπεζες
και πολύ μεγάλους αριθμούς, τότε δείτε το τελευταίο μου video από
το κανάλι Chemistry Channel Periodic Videos, όπου βρίσκομαι
μέσα στο χρηματοκιβώτιο της Τράπεζας της Αγγλίας, όπου
έχουν μερικές εκατοντάδεις δισεκατομμύρια λίρες
σε χρυσό εδώ κι εκεί.
Δεν είναι κάτι που βλέπεις κάθε μέρα.
Ο σύνδεσμος βρίσκεται εδώ στην οθόνη και κάτω από το video.