Εισαγωγή στην Κρυπτογραφία

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Αλγόριθμοι σχεδίασης βασικών 2D σχημάτων (ευθεία)
Advertisements

Γραφήματα & Επίπεδα Γραφήματα
Βασικές έννοιες αλγορίθμων
ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Απαντήσεις Προόδου II.
Διαχείριση Δικτύων Ευφυή Δίκτυα
Πιθανοκρατικοί Αλγόριθμοι
Ασκήσεις Συνδυαστικής
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
Η Μέθοδος RSA  Υποθέτουμε πως δυο άτομα ο Α και ο Β θέλουν να ανταλλάξουν μεταξύ τους κάποιο μήνυμα Μ, το οποίο θέλουν να κρυπτογραφήσουν για λόγους ασφαλείας.
Ασφάλεια Ηλεκτρονικού Εμπορίου
Μέθοδοι Υδατοσήμανσης για την Προστασία της Πνευματικής Ιδιοκτησίας
Ανάλυση του λευκού φωτός και χρώματα
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΟ ΔΙΑΔΙΚΤΥΟ
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Ασφάλεια Επικοινωνιακών Συστημάτων Κρυπτογραφία
Ζητήματα Κρυπτογραφίας- Κέρβερος
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Κ. Μόδη: Γεωστατιστική και Εφαρμογές της (Κεφάλαιο 5) 1 Τυχαία συνάρτηση Μία τυχαία συνάρτηση (ΤΣ) είναι ένας κανόνας με τον οποίο σε κάθε αποτέλεσμα ζ.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Henric Johnson1 Κεφάλαιο 3 Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση αυθεντικότητας μηνυμάτων Henric Johnson Blekinge Institute of Technology, Sweden.
ΙΣΧΥΣ Η χρονική συνάρτηση της στιγμιαίας ισχύος προκύπτει από τη σχέση
Αποκεντρωμένη Διοίκηση Μακεδονίας Θράκης ∆ιαχείριση έργων επίβλεψης µε σύγχρονα µέσα και επικοινωνία C2G, B2G, G2G Γενική Δ/νση Εσωτερικής Λειτουργίας.
Ηλεκτρονική Ενότητα 5: DC λειτουργία – Πόλωση του διπολικού τρανζίστορ
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
Τμήμα Αρχειονομίας- Βιβλιοθηκονομίας Ιόνιο Πανεπιστήμιο
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
Εισαγωγή στη Κρυπτογραφία
Μεταβλητές – εντολές εκχώρησης- δομή ακολουθίας
Ασφάλεια δικτύων.
Ασφάλεια στο Διαδίκτυο Τεχνολογίες Διαδικτύου National Technical University of Athens.
ΗΜΥ 007 – Τεχνολογία Πληροφορίας Διάλεξη 18
1 T.Ε.Ι. ΠΕΙΡΑΙΑ Τ ΜΗΜΑ Η/Υ Σ ΥΣΤΗΜΑΤΩΝ ΟΜΑΔΑ ΜΑΘΗΜΑΤΩΝ μΥ/Σ Εργαστήριο Περιφερειακών Μονάδων και Δικτύων Η/Υ PeLAB ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Σπουδαστής : ΓΚΑΔΟΛΟΣ.
Ανάπτυξη Πρωτοτύπου Λογισμικού
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος Εξάμηνο: Η’ Ασφάλεια Πληροφοριακών Συστημάτων Ενότητα Γ: Απομακρυσμένη Αυθεντικοποίηση.
Cryptography and Network Security Chapter 9
Επικοινωνίες δεδομένων
Κρυπτογραφία Διαχείριση Κλειδιού Πρωτόκολλα Εδραίωσης Κλειδιού (Key Establishment Protocols) Κέρκυρα, 2010 Δρ. Ε. Μάγκος.
Μαθηματικά και Κρυπτογραφία
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Διαχείριση Ψηφιακών Πνευματικών Δικαιωμάτων Ηλεκτρονική Δημοσίευση Στέλλα Λάμπουρα Ιούνιος 2004.
Άσκηση 6 Ασφάλεια Δικτύων.
Ασφάλεια Δικτύων (Computer Security). Τι Εννοούμε με τον Όρο Ασφάλεια Δικτύων; Ασφάλεια  Μόνο ο αποστολέας και ο προοριζόμενος παραλήπτης μπορούν να.
ΗΜΥ 007 – Τεχνολογία Πληροφορίας Διάλεξη 18 TΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Ασφάλεια Πληροφοριών.
ΠΜΣ 36 / 2007 Δρ. Μαριάς Ιωάννης 1 ΠΜΣ36 Ασφάλεια Πληροφοριακών Συστημάτων Αν. Καθ. Π. Γεωργιάδης Δρ. Μαριάς Ιωάννης Υπ. Δρ. Παπαπαναγιώτου Κωνσταντίνος.
Φροντιστήριο – Συμπληρωματικές Ασκήσεις
Internet & Ηλεκτρονικό Εμπόριο Μάϊος 2001 NETMODE Network Management & Optimal Design Lab.
Ασφάλεια Δικτύων. “Αγαθά” πληροφοριακού συστήματος Δεδομένα Πληροφορίες Υπολογιστικοί πόροι.
Κρυπτογραφία Ρεύματος «Οι Αλγόριθμοι SEAL, RC4 και A5/1»
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Κρυπτογραφία Ψηφιακά Πιστοποιητικά
Φεβρουάριος 2004Οικονομικό Πανεπιστήμιο Αθηνών 1 Ιδιωτική και Ανώνυμη Αυθεντικοποίηση Χρήστη σε Κινητά Δίκτυα Σανίνας Κωνσταντίνος Επιβλέπων καθηγητής:
Εισαγωγή στην Κρυπτογραφία Εργαστηριακό σεμινάριο Άνοιξη 2007.
Ενότητα 2 η Σήματα και Συστήματα. Σήματα Γενικά η πληροφορία αποτυπώνεται και μεταφέρεται με την βοήθεια των σημάτων. Ως σήμα ορίζουμε την οποιαδήποτε.
Η Κρυπτογραφία στην ζωή μας. Η Κρυπτογραφία ασχολείται με την μελέτη της ασφαλούς επικοινωνίας. Ο κύριος στόχος της είναι να παρέχει μηχανισμούς για 2.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.5 Πρωτόκολλο ΙΡ (Internet Protocol)
Εισαγωγή στην Επιστήμη των Υπολογιστών Κωδικός Μαθήματος: 2895 Κωδικός Διαφανειών: MKT110 Γεωπονικό Πανεπιστήμιο Αθηνών Γενικό Τμήμα Εργαστήριο Πληροφορικής.
Κρυπτογραφία Η επιστήμη της κρυπτογραφίας αποτελεί το σύνολο των τεχνικών και των εφαρμογών μέσω των οποίων προστατεύεται η πληροφορία που ανταλλάσσεται.
S/MIME Στα πρώτα στάδια ανάπτυξης η εφαρμογή υποστήριζε αποκλειστικά τη μεταφορά κειμένου μεταξύ των χρηστών Το πρωτόκολλο MIME (Multipurpose Internet.
1 Πληροφορική Ι Ενότητα 10 : Ασφάλεια Δρ. Γκόγκος Χρήστος Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
Β. Μάγκλαρης 14/11/2016 ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Διαχείριση Ασφαλείας (Ι) Απειλές Ασφαλείας Δημόσια & Ιδιωτικά Κλειδιά.
Προχωρημένα Θέματα Δικτύων
Secure Sockets Layer (SSL)
Διδάσκων: Δρ. Γενειατάκης Δημήτρης
Λύσεις Ασφάλειας στο Επίπεδο Διασύνδεσης
Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.9: Δρομολόγηση
Κεφάλαιο 7: Διαδικτύωση-Internet
Μεταγράφημα παρουσίασης:

Εισαγωγή στην Κρυπτογραφία Γενική επισκόπηση

Επισκόπηση ύλης Στόχοι της κρυπτογραφίας – Ιστορικό – Γενικά χαρακτηριστικά Κλασσική κρυπτογραφία Συμμετρικού κλειδιού (block ciphers – stream ciphers) Δημοσίου κλειδιού (στηριγμένη στη θεωρία υπολογισμού) Είδη κρυπτανάλυσης Εγκαθίδρυση και διαχείριση κλειδιού Ελλειπτικές καμπύλες και κρυπτογραφία Νέες τάσεις Κβαντική κρυπτογραφία Κρυπτογραφία πλέγματος

Βιβλιογραφία Διδακτικό βιβλίο: “Σύγχρονη Κρυπτογραφία”, Π. Νάστου, Π. Σπυράκη, Γ. Σταματίου, Εκδόσεις Ελληνικά Γράμματα “Handbook of Applied Cryptography”, A. J. Menezes, P. C. Van Oorschot και S. A. Vanstone, CRC Press, 1996 (διαθέσιμο από το διαδίκτυο: http://www.cacr.math.uwaterloo.ca/hac/) ‘’Κρυπτογραφία: Η Επιστήμη της Ασφαλούς Επικοινωνίας’’, Δ.Μ. Πουλάκης, Εκδόσεις Ζήτη ‘’Τεχνικές Κρυπτογραφίας & Κρυπτανάλυσης’’, Β.Α. Κάτος και Γ.Χ. Στεφανίδης, Εκδόσεις Ζυγός

Βασικοί όροι Με τον όρο κρυπτογραφία εννοούμε τη μελέτη μαθηματικών τεχνικών που στοχεύουν στην εξασφάλιση θεμάτων που άπτονται της ασφάλειας μετάδοσης της πληροφορίας, όπως εμπιστευτικότητα, πιστοποίηση ταυτότητας του αποστολέα και διασφάλιση του αδιάβλητου της πληροφορίας. Ανοικτό μήνυμα (Plaintext) : Το αρχικό μήνυμα πληροφορίας Κρυπτόγραμμα (ciphertext): Το κρυπτογραφημένο μήνυμα Encryption: Η διαδικασία της κρυπτογράφησης ενός μηνύματος Decryption: η διαδικασία αποκρυπτογράφησής του

Κρυπτογραφική Ορολογία Εμπιστευτικότητα ή μυστικότητα (privacy): η διατήρηση της πληροφορίας κρυφής από όλους, εκτός από εκείνους που είναι εξουσιοδοτημένοι να τη δουν Ακεραιότητα των δεδομένων (data integrity): διασφάλιση του ότι η πληροφορία δεν έχει παραποιηθεί από μη εξουσιοδοτημένο μέσο Πιστοποίηση ταυτότητας (entity authentication ή identification): επιβεβαίωση της ταυτότητας ενός χρήστη Πιστοποίηση μηνύματος (message authentication): Επιβεβαίωση της πηγής της πληροφορίας Υπογραφή (signature): ένα μέσο προσάρτησης πληροφορίας ενός χρήστη στα μεταδιδόμενα δεδομένα, με στόχο την πιστοποίηση ταυτότητας Εξουσιοδότηση (authorization): Έγκριση σε μία οντότητα να κάνει κάτι Επικύρωση (validation): Μέσο για την απόδοση έγκρισης σε μία οντότητα, ώστε να έχει πρόσβαση στην πληροφορία ή γενικότερα σε μέσα

Κρυπτογραφική Ορολογία (II) Έλεγχος πρόσβασης (access control): περιορισμός της πρόσβασης στην πληροφορία και στα μέσα γενικότερα σε εξουσιοδοτημένες οντότητες Πιστοποίηση (certification): Υποστήριξη της πληροφορίας από μία έμπιστη οντότητα “Σφραγίδα χρόνου” (timestamping): καταγραφή της χρονικής στιγμής δημιουργίας της πληροφορίας Μαρτυρία (witnessing): επιβεβαίωση της δημιουργίας ή της ύπαρξης της πληροφορίας από μία οντότητα διαφορετική από αυτήν που δημιούργησε την πληροφορία Απόδειξη λήψης (receipt): Παραδοχή της λήψης της πληροφορίας Επιβεβαίωση (confirmation): παραδοχή ότι έχουν προσφερθεί όλες οι κρυπτογραφικές υπηρεσίες Κυριότητα (ownership): η παροχή νόμιμου δικαιώματος σε μία οντότητα να χρησιμοποιήσει ή να μεταδώσει πόρους σε άλλους Ανωνυμία (anonymity): Απόκρυψη της ταυτότητας μιας οντότητας Άρνηση αποκήρυξης (non-repudiation): η διαδικασία του να μην επιτρέπεται η άρνηση προηγούμενων ενεργειών ή η αποκήρυξη προηγούμενων δεσμεύσεων Ανάκληση (revocation): αναίρεση της πιστοποίησης

Στόχοι της κρυπτογραφίας Τα μηνύματα πρέπει να φτάνουν στο σωστό προορισμό Εμπιστευτικότητα: Μόνο ο παραλήπτης τους να μπορεί να τα λάβει και να τα δει (confidentiality) Πιστοποίηση της ταυτότητας του αποστολέα (authentication) Το μήνυμα δεν πρέπει να αλλοιωθεί κατά τη μεταφορά από μη εξουσιοδοτημένη οντότητα (data integrity) Όποια ενέργεια κάνει κάποιος (π.χ. πιστοποίηση ταυτότητας) δεν πρέπει αργότερα να μπορεί να την αρνηθεί (Non-repudiation) Προσοχή! Η κρυπτογραφία δεν λύνει τα παραπάνω, απλά προσπαθεί να τα ικανοποιήσει

Κρυπτογραφικά εργαλεία Σχήματα κρυπτογράφησης: χρησιμοποιούνται με στόχο να επιτύχουν την εμπιστευτικότητα Σχήματα υπογραφών: σε αυτά, τα δεδομένα «υπογράφονται». Η υπογραφή βοηθά στην εξασφάλιση τόσο της ακεραιότητας των δεδομένων όσο και στην πιστοποίηση ταυτότητας του αποστολέα. Μπορεί επίσης να χρησιμοποιηθεί για την άρνηση αποκήρυξης. Κώδικες πιστοποίησης μηνύματος (Message Authentication Codes – MACs): παρέχουν ακεραιότητα των δεδομένων Κρυπτογραφικές συναρτήσεις κατακερματισμού: μία συνάρτηση κατακερματισμού εισάγει τυχαίο και μη προβλέψιμο πλεονασμό στα δεδομένα

Κρυπτογραφικά εργαλεία (II) Πρωτόκολλα συμφωνίας κλειδιού: χρησιμοποιούνται με στόχο την εγκαθίδρυση ενός κοινού μυστικού κλειδιού ανάμεσα σε δύο ή περισσότερες οντότητες. Αυτό το κλειδί αργότερα χρησιμοποιείται για κρυπτογραφικούς σκοπούς όπως κρυπτογράφηση συμμετρικού κλειδιού ή πιστοποίηση μηνύματος. Σχήματα πιστοποίησης: παρέχουν πιστοποίηση της ταυτότητας των χρηστών Γεννήτριες ψευδοτυχαίων αριθμών: Συσκευές που από μία μικρή αρχική εντελώς τυχαία σειρά bits παράγουν μία πολύ μεγάλη σειρά bits, που εμφανίζουν υψηλή τυχαιότητα (με βάση κάποια σαφώς ορισμένα κριτήρια τυχαιότητας). Χρησιμοποιούνται για την παραγωγή κλειδιών.

Περιοριστικοί αλγόριθμοι (restricted algorithms) Η ασφάλεια ενός τέτοιου αλγορίθμου εξασφαλίζεται μόνο αν ο αλγόριθμος παραμένει κρυφός! Ανεφάρμοστοι στην πράξη (μη ασφαλείς)

Ένας απλός περιοριστικός αλγόριθμος Κρυπτογράφηση Πολλαπλασιασμός του αρχικού μηνύματος επί 2 Αποκρυπτογράφηση Διαίρεση του κρυπτογράμματος δια 2 plaintext = SECRET = 19 5 3 18 5 20 Ciphertext = 38 10 6 35 10 40

Αλγόριθμοι βασισμένοι σε κλειδιά Οι αλγόριθμοι κρυπτογράφησης χρησιμοποιούν ένα ή περισσότερα κλειδιά (keys). Υποκλοπέας Encryption Key Decryption Key Original plaintext Plaintext Ciphertext Encryption Decryption Α Β Η ασφάλεια έγκειται στο ότι δεν είναι γνωστό το κλειδί – οι αλγόριθμοι κρυπτογράφησης και αποκρυπτογράφησης μπορούν να είναι ευρέως γνωστοί

Ένας απλός αλγόριθμος βασισμένος σε κλειδί Κρυπτογράφηση Πολλαπλασίασε το ανοικτό μήνυμα επί 2 και πρόσθεσε το κλειδί Αποκρυπτογράφηση Αφαίρεσε το κλειδί και διαίρεσε το κρυπτόγραμμα δια 2 plaintext = SECRET = 19 5 3 18 5 20 Key = 3 Ciphertext = 41 13 9 39 13 43

Κατηγορίες αλγορίθμων ως προς το είδος του κλειδιού Αλγόριθμοι συμμετρικού (ή κρυφού) κλειδιού (symmetric key algorithms) Χρησιμοποιείται το ίδιο κλειδί τόσο για την κρυπτογράφηση όσο και για την αποκρυπτογράφηση Αλγόριθμοι ασύμμετρου (ή δημοσίου) κλειδιού (Asymmetric (or public key) algorithms) Χρησιμοποιούνται διαφορετικά κλειδιά για την κρυπτογράφηση και την αποκρυπτογράφηση Το κλειδί κρυπτογράφησης δεν μπορεί να εξαχθεί από το κλειδί αποκρυπτογράφησης

Μαθηματικός φορμαλισμός Αν E και D συμβολίζουν τις συναρτήσεις κρυπτογράφησης και αποκρυπτογράφησης αντίστοιχα, τότε: EK1(m) = c DK2(c) = m όπου m και c υποδηλώνουν το ανοικτό και το κρυπτογραφημένο μήνυμα αντίστοιχα. Οι δείκτες Ki υποδηλώνουν την εξάρτηση των συναρτήσεων από το κλειδί. Οι συναρτήσεις έχουν την ιδιότητα: DK2(EK1(m)) = m Σε αλγόριθμους συμμετρικού κλειδιού, ισχύει K1 = K2

Κρυπτογραφικές συναρτήσεις Συνάρτηση μίας κατεύθυνσης (one-way function) για την οποία είναι εύκολο να υπολογιστεί η τιμή της, αλλά δύσκολο να αντιστραφεί (δηλαδή, για δοθέν yi, δεν μπορεί να βρεθεί xi τέτοιο ώστε: f(xi)=yi Παράδειγμα: ο μετασχηματισμός k  Ek(m) για σταθερό μήνυμα m H πρόσθετη πληροφορία που χρειάζεται κανείς για να αντιστρέψει μία τέτοια συνάρτηση ονομάζεται καταπακτή (trapdoor) Τέτοιες συναρτήσεις είναι η βάση των συστημάτων Δημοσίου Κλειδιού

Συστήματα κρυπτογράφησης Ee M C Dd M ciphertext plaintext plaintext Dd(Ee(m))=m Απαιτήσεις του συστήματος: Οι διαδικασίες κρυπτογράφησης – αποκρυπτογράφησης να συντελούνται γρήγορα Εύκολη υλοποίηση Η ασφάλεια του συστήματος να εξαρτάται μόνο από τα κλειδιά και όχι από τη μυστικότητα των μετασχηματισμών Ee ή Dd

«Επιθέσεις» εναντίον κρυπτογραφικών αλγορίθμων (Κρυπτανάλυση) «Επιθέσεις» εναντίον κρυπτογραφικών αλγορίθμων (Κρυπτανάλυση) Κρυπτανάλυση είναι η μελέτη μαθηματικών τεχνικών που στοχεύουν στην ακύρωση των κρυπτογραφικών μεθόδων, καθιστώντας τις έτσι μη κατάλληλες για κρυπτογραφικούς σκοπούς. Ένας αλγόριθμος θεωρείται μη ασφαλής αν είναι δυνατή η ανάκτηση του αρχικού μηνύματος ή του κλειδιού από το κρυπτόγραμμα, ή αν είναι δυνατή η ανάκτηση του κλειδιού από ζευγάρια plaintext-ciphertext. Είδη «επιθέσεων» Ciphertext attack o επιτιθέμενος γνωρίζει το κρυπτόγραμμα: στόχος η εύρεση είτε του αρχικού μηνύματος είτε του κλειδιού Known-plaintext attack ο επιτιθέμενος γνωρίζει το κρυπτόγραμμα και το αντίστοιχο μήνυμα – στόχος του η εύρεση του κλειδιού Chosen-plaintext attack Ο επιτιθέμενος είναι σε θέση να επιλέξει συγκεκριμένα ζεύγη «ανοικτό μήνυμα – κρυπτόγραμμα» που θα γνωρίζει. Στόχος του η εύρεση του κλειδιού.

Ασφαλή συστήματα κρυπτογράφησης Απεριόριστα ασφαλές (Unconditionally secure) Ένα σύστημα κρυπτογράφησης χαρακτηρίζεται απεριόριστα ασφαλές αν, ανεξάρτητα του πόσο μεγάλου τμήματος του κρυπτογράμματος είναι γνωστό, δεν υπάρχει αρκετή πληροφορία για την ανάκτηση του αρχικού μηνύματος κατά μοναδικό τρόπο, όση υπολογιστική ισχύ κι αν διαθέτει ο επιτιθέμενος (δεν μπορεί να υπάρξει). Υπολογιστικά ασφαλές (Computationally secure) Ένα σύστημα κρυπτογράφησης χαρακτηρίζεται υπολογιστικά ασφαλές αν είναι υπολογιστικά αδύνατο να «σπάσει». (Πρακτικά σημαίνει ότι δεν μπορεί να υπάρξει αλγόριθμος πολυωνυμικού χρόνου για την ανάκτηση είτε του μηνύματος είτε του κλειδιού).

Θεωρία Shannon Εντροπία μίας τυχαίας μεταβλητής X που παίρνει τιμές στο σύνολο x1, x2, …, xn με αντίστοιχες πιθανότητες p1, p2, …, pn ορίζεται ως: Το κλειδί πρέπει να έχει μήκος τουλάχιστον όσο η εντροπία του αρχικού μηνύματος και δεν πρέπει να επαναχρησιμοποιείται (“Communication Theory of Secrecy Systems”, Claude Shannon, Bell Syst. Tech. J. 28, 656-715, 1949) Συνεπώς, η ασφάλεια που παρέχει ένα κρυπτογραφικό σύστημα εξαρτάται από το μέγεθος του κλειδιού. Τέτοια ιδανικά συστήματα είναι απεριόριστα ασφαλή

Βασικές αρχές του Shannon Διάχυση (Diffusion): κάθε γράμμα του αρχικού μηνύματος πρέπει να καθορίζει πολλά γράμματα του κρυπτογράμματος. Έτσι, ο πλεονασμός (όπως ορίζεται από τη Θεωρία Πληροφορίας) του αρχικού μηνύματος, δεν πρέπει να είναι παρόν στο κρυπτόγραμμα (ισοδύναμα, κάθε αλλαγή σε κάποιο μέρος της εισόδου να επηρεάζει θέσεις στο κωδικοποιημένο μήνυμα που βρίσκονται αρκετά μακριά από τη θέση που έγινε η αλλαγή) Σύγχυση (Confusion): Η σχέση μεταξύ αρχικού μηνύματος και κρυπτογράμματος πρέπει να είναι σύνθετη (δηλ., διαισθητική επιθυμητή ιδιότητα να εμποδίζεται οποιαδήποτε στατιστική πληροφορία που αφορά το ανοικτό μήνυμα κατά τη μεταφορά του στο κρυπτόγραμμα. Οι αρχές αυτές εφαρμόζονται στην πράξη, αφού λαμβάνονται υπόψη στην κατασκευή κρυπτογραφικών αλγορίθμων

Απαιτήσεις ασφάλειας M Ee C Dd M M Πρέπει να είναι υπολογιστικά αδύνατος ο πλήρης καθορισμός του μετασχηματισμού Dk όταν έχουμε γνωστό ένα τμήμα του κρυπτογράμματος c, ακόμα κι αν το αντίστοιχο ανοικτό μήνυμα m είναι γνωστό. Κάτι τέτοιο θα σήμαινε δυνατότητα ανάκτησης του κλειδιού αποκρυπτογράφησης. Πρέπει να είναι υπολογιστικά αδύνατος ο καθορισμός του αρχικού μηνύματος m για γνωστό κρυπτόγραμμα c. προστατευμένο M Ee C Dd M Να μην επιτρέπεται M

Απαιτήσεις για εξασφάλιση πιστοποίησης ταυτότητας του αποστολέα (entity authentication) Αφορά κυρίως τα συστήματα δημοσίου κλειδιού Πρέπει να είναι υπολογιστικά αδύνατος ο πλήρης καθορισμός του μετασχηματισμού Ee για γνωστό κρυπτόγραμμα c, ακόμα κι αν το αντίστοιχο ανοικτό μήνυμα m είναι γνωστό. Κάτι τέτοιο θα σήμαινε δυνατότητα ανάκτησης του κλειδιού κρυπτογράφησης. Πρέπει να είναι υπολογιστικά αδύνατη η συστηματική εύρεση c’ τέτοιων ώστε το Dd(c’) να είναι μήνυμα που να ανήκει στο σύνολο μηνυμάτων M. M Ee C Dd M προστατευμένο Να μην επιτρέπεται M

Συμμετρικά κρυπτοσυστήματα P C P Αποστολέας Encryption Decryption Παραλήπτης Ασφαλής μετάδοση του κλειδιού Ο αποστολέας και ο παραλήπτης πρέπει από την αρχή να συμφωνήσουν στη χρήση ενός κοινού κλειδιού, πριν ξεκινήσει η μεταφορά των μηνυμάτων Ένα ασφαλές κανάλι επικοινωνίας πρέπει να υπάρχει μεταξύ αποστολέα και παραλήπτη, για την μεταφορά του κλειδιού

Κρυπτοσυστήματα Δημοσίου κλειδιού P C P Αποστολέας Encryption Decryption Παραλήπτης Ee Dd Προτάθηκαν το 1976 Κάθε συμμετέχων στο σύστημα κατέχει ένα ζευγάρι κλειδιών e και d, αντίστροφα μεταξύ τους: Dd(Ee(m))=m Διαφορετικές συναρτήσεις χρησιμοποιούνται για κρυπτογράφηση και αποκρυπτογράφηση. Ένα από τα δύο κλειδιά μπορεί να είναι γνωστό, υπό την προϋπόθεση ότι η γνώση αυτή δεν μπορεί να οδηγήσει στην ανάκτηση του άλλου κλειδιού. Το e μπορεί να είναι δημόσιο (γνωστό), αλλά το d κρατείται μυστικό. Η ανταλλαγή κλειδιών μεταξύ αποστολέα και παραλήπτη αντικαθίσταται από την ύπαρξη ενός διαφανούς καταλόγου, στον οποίο όλοι έχουν πρόσβαση, και περιέχει τα κλειδιά e όλων των συμμετεχόντων.

Τρόπος λειτουργίας συστημάτων δημοσίου κλειδιού Όταν ένα πρόσωπο A θέλει να στείλει ένα μήνυμα m σε ένα πρόσωπο B, το δημόσιο κλειδί κρυπτογράφησης του παραλήπτη B χρησιμοποιείται για τη δημιουργία του κρυπτογράμματος Ee(m). Αφού το Ee είναι πλήρως διαθέσιμο σε κάποιον δημόσιο κατάλογο στον οποίο έχουν όλοι πρόσβαση, ο οποιοσδήποτε μπορεί να κρυπτογραφήσει ένα μήνυμα με προορισμό τον B. Ωστόσο, μόνο ο B, ο οποίος έχει πρόσβαση στο ιδιωτικό του κλειδί αποκρυπτογράφησης Dd μπορεί να ανακατασκευάσει το ανοικτό μήνυμα, εφαρμόζοντας τον αντίστροφο μετασχηματισμό Dd(Ee(m)).

Μειονέκτημα συστημάτων δημοσίου κλειδιού O οποιοσδήποτε μπορεί να προσποιηθεί ότι είναι κάποιος άλλος χρήστης! Αν ο επιτιθέμενος «σταματήσει» το μήνυμα που στέλνει ο A στον B, γράψει ένα δικό του και το στείλει στον Β κρυπτογραφημένο με το δημόσιο κλειδί του B, o Β δεν θα γνωρίζει τον πραγματικό αποστολέα του μηνύματος που λαμβάνει. Άρα Ανάγκη πιστοποίησης της ταυτότητας κάθε χρήστη.

Σχηματική αναπαράσταση υποκλοπής σε σύστημα Δημοσίου Κλειδιού Ο επιτιθέμενος ξεγελά τον A ότι είναι ο B, στέλνοντάς του το δικό του δημόσιο κλειδί e’. Έτσι, ο A στέλνει τα μηνύματα κρυπτογραφημένα ως προς το e’. Συνεπώς, ο επιτιθέμενος μπορεί και «διαβάζει» όλα τα μηνύματα που στέλνει ο A στον B O Β δεν μπορεί να αντιληφθεί την παρουσία του επιτιθέμενου, μια που αυτός του στέλνει κανονικά το μήνυμα. Ο B, λαμβάνοντας ένα μήνυμα, δεν μπορεί να ξέρει με σιγουριά ποιος του το έστειλε.

Ψηφιακή υπογραφή (Digital Signature) Εξασφαλίζει πιστοποίηση της ταυτότητας. Έστω ότι ο A στέλνει ένα υπογεγραμμένο μήνυμα στον Β. Η υπογραφή του A πρέπει να ικανοποιεί τα εξής: O B να είναι σε θέση να επικυρώσει το γνήσιο της υπογραφής. Πρέπει να είναι αδύνατη η πλαστογράφηση της υπογραφής του A

Χρήση συστημάτων δημοσίου κλειδιού για υπογραφή μηνυμάτων Ο A υπογράφει το m με το ιδιωτικό του κλειδί dA, υπολογίζοντας το c=DdA(m) [και στέλνει (m,c)] Ο B ελέγχει το γνήσιο της υπογραφής του A με το δημόσιο κλειδί eA,,υπολογίζοντας το EeA(c) =m Σαν επαλήθευση, το EeA(c) πρέπει να ανακτά το ίδιο m με αυτό που ανακτά ο B. Απαιτήσεις: DdA(EeA(m))=EeA(DdA(m))=m για κάθε m Το παραπάνω καλείται αναστρέψιμο σχήμα Δημοσίου Κλειδιού

Ταυτόχρονη μυστικότητα και έλεγχος υπογραφής σε ένα κρυπτοσύστημα Δημοσίου κλειδιού Έστω χρήστες A, B με δημόσια και ιδιωτικά κλειδιά eA,dA, eB,dB αντίστοιχα. Με Ε και D συμβολίζουμε γενικότερα τις διαδικασίες κρυπτογράφησης και αποκρυπτογράφησης αντίστοιχα m DA(m)=s EB(s)=c DB(c)=s EA(s)=m m Μετασχηματισμοί που λαμβάνουν χώρα από τον αποστολέα Μετασχηματισμοί που λαμβάνουν χώρα από τον παραλήπτη Αποκρυπτογράφηση: EeA(s) = EeA(DdB(c)) = = EeA(DdB(EeB(s))) = = EeA(DdB(EeB(DdA(m)))) = = EeA(DdA(m)) = m

Ιστορική αναδρομή – Αλγόριθμοι αντικατάστασης και μετάθεσης Πριν την εμφάνιση των υπολογιστών, η κρυπτογραφία εφαρμοζόταν σε μηνύματα αποτελούμενα από γράμματα της αλφαβήτου Αλγόριθμοι αντικατάστασης (substitution ciphers): κάθε γράμμα του αρχικού μηνύματος αντικαθίσταται από κάποιο άλλο συγκεκριμένο του αλφαβήτου του κρυπτογράμματος. Αλγόριθμοι μετάθεσης (transposition (permutation) ciphers): το κρυπτόγραμμα είναι αναγραμματισμός του αρχικού μηνύματος. Είναι αλγόριθμοι συμμετρικού κλειδιού Αυτές οι τεχνικές είναι παρούσες σχεδόν σε όλους τους σύγχρονους αλγορίθμους κρυπτογράφησης.

Αλγόριθμοι αντικατάστασης Αντικαθιστούν bits, χαρακτήρες, ή blocks από χαρακτήρες. Παράδειγμα: Caesar cipher Κάθε γράμμα αντικαθίσταται από εκείνο που βρίσκεται 3 θέσεις (modulo 26) δεξιά του. Ένας απλός αλγόριθμος αντικατάστασης είναι εύκολο να σπάσει, με ελέγχους της συχνότητας εμφάνισης των γραμμάτων.

Caesar Cipher - Παραδείγματα Παράδειγμα 1 Plaintext: ABCXYZ Ciphertext: DEFABC Παράδειγμα 2 Plaintext: This is not secure Ciphertext: Wklv iv qrw vhfxuh

Ειδική περίπτωση: Πολυαλφαβητικοί αλγόριθμοι αντικατάστασης Κάθε γράμμα του αρχικού μηνύματος δεν αντικαθίσταται από κάποιο συγκεκριμένο, αλλά το από ποιο θα αντικατασταθεί καθορίζεται από κάποιο κλειδί Αν και δείχνει πιο ασφαλής από έναν απλό αλγόριθμο αντικατάστασης, εν τούτοις αν βρεθεί το μήκος του κλειδιού υπόκειται στις ίδιες μεθόδους κρυπτανάλυσης, βασισμένες στις συχνότητες εμφάνισης των γραμμάτων Παράδειγμα: Vigenere Cipher

Vigenere Cipher Aανακαλύφτηκε από τον Γάλλο κρυπτογράφο Blaise de Vigenere Χρησιμοποιεί μία φράση-κλειδί για να κρυπτογραφήσει ένα μήνυμα Κάθε χαρακτήρας του κλειδιού αποφασίζει το πόσες θέσεις θα ολισθήσει ο αντίστοιχος χαρακτήρας του αρχικού κειμένου. Για παράδειγμα: A: shifts 0 position to the right B: shifts 1 position to the right C: shifts 2 positions to the right … Αν η φράση-κλειδί έχει μικρότερο μήκος από το ανοικτό μήνυμα, η φράση-κλειδί επαναλαμβάνεται. Όχι πολύ ασφαλής αλγόριθμος.

Παράδειγμα Κλειδί: lucky ανοικτό μήνυμα: simple message Κλειδί μετά την επανάληψη: luckyl uckyluc Πλήθος θέσεων ολίσθησης: 11 (l), 20(u), 2(c), 10(k), 24 (y), 11(l), 20(u), 2(c), 10(k), 24(y), 11(l), 20(u), 2(c) Ολίσθηση των χαρακτήρων: sd, ic, mo, pz, lj, … Κρυπτόγραμμα: dcozjpggcqlag

Αλγόριθμοι μετάθεσης INFORMATION TECHNIQUES FOR IPR I R I T N E R «Ανακάτωμα» των bits ή των χαρακτήρων του μηνύματος, με βάση κάποια συνάρτηση ‘1-1’ και επί πάνω στο αλφάβητο. (Η συνάρτηση αυτή αποτελεί και το κλειδί) Επίσης όχι ασφαλείς (π.χ. Κρυπτανάλυση Kasiski) . INFORMATION TECHNIQUES FOR IPR I R I T N E R N O M T O E H I U S O I R F A N C Q F P IRITNERNOMTOEHIUSOIRFANCQFP

Συνδυασμός αντικατάστασης και μετάθεσης – Product Cipher Ένα product κρυπτογραφικό σύστημα αποτελείται από σύνθεση συναρτήσεων F1,…,Ft, όπου κάθε Fi μπορεί να είναι είτε αλγόριθμος αντικατάστασης (substitution) είτε αλληλομεταθεσης (permutation). Παραδείγματα (ευρέως χρησιμοποιούμενα) DES, AES (θα τους δούμε αργότερα) P S P Η αντικατάσταση εισάγει «σύγχυση» (confusion) Η μετάθεση εισάγει διάχυση (diffusion)

Κατηγοριοποίηση κρυπτογραφικών συστημάτων Block ciphers Το ανοικτό μήνυμα χωρίζεται σε τμήματα (blocks), όπου το καθένα κρυπτογραφείται ξεχωριστά. Stream ciphers Το μήνυμα κρυπτογραφείται bit προς bit (ή byte προς byte)