Κοινή χρήση τεχνολογίας

[Κρυπτογραφία] Βασικές έννοιες των κρυπτογράφων ροής

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Πριν εισαγάγουμε τους κρυπτογράφους ροής, ας κατανοήσουμε πρώτα μια βασική προαπαιτούμενη γνώση σημείου-λειτουργία XOR.

1. Αποκλειστική λειτουργία OR (XOR)

Κανόνες λειτουργίας: Ίδιο με το 0, διαφορετικό με το 1

Χαρακτηριστικά: Ένα bit έχει XORed δύο φορές και μπορεί να επαναφερθεί στο αρχικό bit.

Απλό κείμενο: 1100

Κλειδί: 0101 (κρυπτογραφημένο)

Κείμενο κρυπτογράφησης: 1001

Κλειδί: 0101 (αποκρυπτογράφηση)

Απλό κείμενο: 1100

πλεονέκτημα:Αυτή η αναστρεψιμότητα επιτρέπει τη χρήση της λειτουργίας XOR τόσο για μετασχηματισμούς κρυπτογράφησης όσο και για αποκρυπτογράφηση.

έλλειψη:Εάν ένας εισβολέας μπορεί να μαντέψει ή να συλλάβει το κλειδί, μπορεί εύκολα να αποκρυπτογραφηθεί μέσω XOR.

Ο λόγος για τον οποίο η λειτουργία XOR μπορεί να χρησιμοποιηθεί για κρυπτογράφηση και αποκρυπτογράφηση ταυτόχρονα έγκειται στην αναστρεψιμότητα της, αλλά αυτό είναι και το μειονέκτημά της Η ασφάλεια βασίζεται πλήρως στην απόκρυψη κλειδιών.

2. Αλγόριθμος One-Time Pad (OTP)

(1) Ορισμός

Το One-Time Pad (OTP) είναι ένας αλγόριθμος κρυπτογράφησης ροής, ο οποίος θεωρείται μια από τις πιο ασφαλείς μεθόδους κρυπτογράφησης θεωρητικά, υπό την προϋπόθεση ότι η εφαρμογή του ακολουθεί αυστηρά διάφορες βασικές αρχές:

1.  Το κλειδί πρέπει να είναι τόσο μακρύ όσο το απλό κείμενο: Αυτό σημαίνει ότι κάθε κρυπτογράφηση χρησιμοποιεί ένα κλειδί που έχει ακριβώς το ίδιο μήκος με το μήνυμα που κρυπτογραφείται.

2.  Το κλειδί πρέπει να είναι πραγματικά τυχαίο: Κάθε κομμάτι του κλειδιού πρέπει να δημιουργείται τυχαία, χωρίς κανένα μοτίβο ή προβλεψιμότητα.

3.  Το κλειδί πρέπει να χρησιμοποιείται μόνο μία φορά: Δεν πρέπει να χρησιμοποιείται το ίδιο κλειδί για την κρυπτογράφηση πολλαπλών μηνυμάτων, διαφορετικά η συσχέτιση μεταξύ των κρυπτογραφημένων κειμένων μπορεί να χρησιμοποιηθεί για να συναχθεί το περιεχόμενο του μηνύματος.

4.  Το κλειδί πρέπει να κρατηθεί μυστικό: Η διανομή και η αποθήκευση των κλειδιών πρέπει να είναι εξαιρετικά ασφαλής για να αποτρέπεται η πρόσβαση τρίτων.

(2) Πλεονεκτήματα και μειονεκτήματα

πλεονέκτημα:

  • Το κλειδί δημιουργείται τυχαία και χρησιμοποιείται μόνο μία φορά
  • Ασφαλές άνευ όρων
  • Η κρυπτογράφηση και η αποκρυπτογράφηση είναι λειτουργίες προσθήκης, οι οποίες είναι πιο αποτελεσματικές.

έλλειψη:

  • Το μήκος του κλειδιού είναι τουλάχιστον όσο το μήκος του απλού κειμένου, καθιστώντας την κοινή χρήση κλειδιού δύσκολη και όχι πρακτική.

3. Ορισμός κρυπτογράφησης ροής

Όταν οι άνθρωποι μελετούν αλγόριθμους κρυπτογράφησης πληκτρολογίου μίας χρήσης, προσπαθούν να λύσουν τα προβλήματα διαχείρισης και μήκους κλειδιών. Εάν υπήρχε τρόπος να δημιουργηθούν όλα τα κλειδιά για την κρυπτογράφηση απλού κειμένου παρέχοντας μόνο ένα μικρό τμήμα του κλειδιού, οι κρυπτογράφηση ροής αναπτύχθηκαν με βάση αυτήν την ιδέα.

(1) Βασική ιδέα της κρυπτογράφησης ροής

         Σε έναν κρυπτογράφηση ροής, ένα μικρό κλειδί (συχνά αποκαλούμενο διάνυσμα σπόρου ή αρχικοποίησης) χρησιμοποιείται μέσω μιας γεννήτριας ψευδοτυχαίων αριθμών (PRNG) για τη δημιουργία μιας ροής ψευδοτυχαίων κλειδιών του ίδιου μήκους με το απλό κείμενο. Αυτή η ροή κλειδιών στη συνέχεια XORed με το απλό κείμενο για την παραγωγή του κρυπτογραφημένου κειμένου. Ομοίως, η διαδικασία αποκρυπτογράφησης είναι να XOR το κρυπτογραφημένο κείμενο με την ίδια ροή κλειδιού για να ανακτηθεί το απλό κείμενο.

κλειδί κδημιουργήσετε μια ροή κλειδιών z=z_0z_1z_2...Και χρησιμοποιήστε τους ακόλουθους κανόνες για να συγκρίνετε συμβολοσειρές απλού κειμένου x=x_0x_1x_2...Για κρυπτογράφηση:
y=y_0y_1y_2...=Ez_0(x_0)Ez_1(x_1)Ez_2(x_2)...

Ένας καταχωρητής μετατόπισης γραμμικής ανάδρασης χρησιμοποιείται γενικά για τη δημιουργία ψευδοτυχαίων κλειδιών. Η αρχή δεν θα συζητηθεί εδώ.

(2) Διαδικασία αλγορίθμου

Η διαδικασία κρυπτογράφησης και αποκρυπτογράφησης μπορεί να περιγραφεί ως εξής:

  • Δημιουργία ροής κλειδιού: Και τα δύο μέρη κρυπτογράφησης και αποκρυπτογράφησης χρησιμοποιούν το ίδιο κλειδί και το ίδιο διάνυσμα αρχικοποίησης (IV) για να αρχικοποιήσουν μια γεννήτρια ψευδοτυχαίων αριθμών (PRNG). Το PRNG δημιουργεί μια σειρά ψευδοτυχαίων δυαδικών ψηφίων με βάση την εσωτερική του κατάσταση για να σχηματίσει μια ροή κλειδιού.
  • Διαδικασία κρυπτογράφησης: Ο αποστολέας εκτελεί μια λειτουργία αποκλειστικού OR (XOR) κατά bit στη ροή κλειδιού που δημιουργείται και στο απλό κείμενο για να αποκτήσει το κρυπτογραφημένο κείμενο. Λόγω της φύσης της λειτουργίας XOR, η ίδια λειτουργία είναι αναστρέψιμη σε διαφορετικά bit.
  • Διαδικασία αποκρυπτογράφησης: Ο δέκτης επανεκκινεί το PRNG με το ίδιο κλειδί και IV και δημιουργεί την ίδια ροή κλειδιού όπως όταν κρυπτογραφείται. Στη συνέχεια, ο δέκτης εκτελεί μια λειτουργία XOR στο κρυπτογραφημένο κείμενο και στη ροή του κλειδιού για να ανακτήσει το αρχικό απλό κείμενο.

(3) Αρχές σχεδίασης κρυπτογράφησης ροής

Οι αρχές σχεδιασμού των κρυπτογράφησης ροής επικεντρώνονται πραγματικά στη δημιουργία μιας γεννήτριας ροής κλειδιών που μπορεί να παράγει μια ροή κλειδιών με συγκεκριμένες ιδιότητες ασφαλείας. Η ακολουθία ροής κλειδιών πρέπει να έχει τις ακόλουθες ιδιότητες:

  1. τεράστιος κύκλος : Η περίοδος της ροής κλειδιών θα πρέπει να είναι αρκετά μεγάλη ώστε να αποτρέπεται η επαναχρησιμοποίηση του ίδιου τμήματος της ροής κλειδιών, η οποία θα αποκάλυπτε μοτίβα στα κρυπτογραφημένα δεδομένα και θα επέτρεπε στους κρυπτοαναλυτές να πραγματοποιούν επιθέσεις συγκρίνοντας τις ομοιότητες και τις διαφορές διαφορετικών μηνυμάτων. Θεωρητικά, για έναν χώρο κλειδιού n-bit, το ιδανικό μήκος κύκλου θα πρέπει να είναι 2n-1. Στην πράξη, μεγαλύτερες περίοδοι σημαίνουν ότι η ροή κλειδιών επαναλαμβάνεται λιγότερο συχνά, αυξάνοντας έτσι την ασφάλεια του κρυπτοσυστήματος.

  2. καλές στατιστικές ιδιότητες : Η ροή κλειδιών θα πρέπει να μοιάζει με μια πραγματικά τυχαία ακολουθία bit, που σημαίνει ότι θα πρέπει να ικανοποιεί διάφορες στατιστικές δοκιμές όπως ίση κατανομή 0 και 1, ανεξαρτησία μεταξύ δύο ή περισσότερων διαδοχικών μπιτ και χωρίς προβλεπόμενα μοτίβα ή περιοδικότητες. Οι καλές στατιστικές ιδιότητες βοηθούν στη διασφάλιση της μη προβλεψιμότητας της ροής κλειδιού, η οποία είναι ένα σημαντικό στοιχείο της ασφάλειας κρυπτογράφησης ροής.

  3. Αντοχή στη γραμμική ανάλυση : Ένας κρυπτογράφος ροής θα πρέπει να είναι ανθεκτικός στη γραμμική ανάλυση, όπου ο κρυπτοαναλυτής προσπαθεί να ανακτήσει το κλειδί ή το απλό κείμενο βρίσκοντας μια γραμμική συσχέτιση μεταξύ της ροής κλειδιού και του απλού κειμένου ή κρυπτοκειμένου. Αυτό συνήθως απαιτεί η έξοδος της γεννήτριας ροής κλειδιών να είναι μη γραμμική, ή τουλάχιστον να περιέχει αρκετά μη γραμμικά στοιχεία για να αποτρέψει τις απλές μεθόδους επίλυσης γραμμικού συστήματος από το να συμπεράνουν τη ροή κλειδιού ή το ίδιο το κλειδί.