ΜΕΛΕΤΗ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΜΕΛΕΤΗ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ"

Transcript

1 Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Η/Υ Τοµέας Τηλεπικοινωνιών ιπλωµατική Εργασία Επιβλέπων Καθηγητής: ρ Μητράκος ηµήτρης 1 ος Εξεταστής: ρ Στρίντζης Μιχαήλ 2 ος Εξεταστής: ρ Πέτρου Λουκάς ΜΕΛΕΤΗ ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ Όνοµα Φοιτητή: Περδίκης Ιωάννης ΑΕΜ: 5209

2 Περιεχόµενα ΠΕΡΙΛΗΨΗ i Κεφάλαιο 1 Εισαγωγή Κρυπτογράφηση Ασφάλεια εδοµένων Ψηφιακές Υπογραφές Έξυπνες Κάρτες 5 Κεφάλαιο 2 ΑΛΓΟΡΙΘΜΟΙ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ 2.1 Κρυπτογραφήµατα Αντιµετάθεσης Απλά Κρυπτογραφήµατα Αντικατάστασης Οµόηχη Κρυπτογράφηση Αντικατάστασης Υψηλού Επιπέδου Οµόηχα Πολυαλφαβητική Αντικατάσταση Vigenere και Beaufort Το Σηµειωµατάριο Μιας Φοράς Polygram Αντικαταστάσεις Κρυπτογράφηση Playfair Κρυπτογράφηµα Hill Κρυπτογραφήµατα Γινοµένου Κρυπτογραφήµατα Αντικατάστασης Το Πρότυπο Κρυπτογράφησης εδοµένων Κρυπτογραφήµατα Εκθετικοποίησης Το Σχέδιο RSA 18-19

3 Κεφάλαιο 3 ΕΦΑΡΜΟΓΗ ΛΟΓΙΣΜΙΚΟΥ 19 Κεφάλαιο 4 ΑΠΟΤΕΛΕΣΜΑΤΑ 20 Κεφάλαιο 5 ΜΗΧΑΝΙΚΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ Προδιαγραφές και Σχέδια Συντήρηση ύναµη κλειδιού Χειρισµός κλειδιού 23 Κεφάλαιο 6 ΙΑΧΕΙΡΙΣΗ ΨΗΦΙΑΚΩΝ ΙΚΑΙΩΜΑΤΩΝ Κεφάλαιο 7 ΣΥΜΠΕΡΑΣΜΑΤΑ Σχήµατα Αναφορές Βιβλιογραφία Παραρτήµατα 37-39

4 1.0 ΕΙΣΑΓΩΓΗ 1.1 Κρυπτογράφηση «Οι συναλλαγές µέσω των ηλεκτρονικών υπολογιστών έχουν γίνει όλο και πιο δηµοφιλείς τα τελευταία 20 χρόνια ξεκινώντας µε τα τραπεζικά και τηλεφωνικά δίκτυα και προοδεύοντας µέσω της έκρηξης που συντελείται στο διαδίκτυο (internet) στις µέρες µας.» Η προβολή της εποχής της πληροφορίας οδήγησε σε ανησυχίες όσον αφορά την ασφάλεια και τα προσωπικά δεδοµένα. Σαν αποτέλεσµα, στις µέρες µας, οι αλγόριθµοι κρυπτογράφησης έχουν γίνει δηµοφιλείς και χρησιµοποιούνται σε κάθε ηλεκτρονική συναλλαγή. Στην αρχή το θέµα της ασφάλειας αφορούσε µόνο τις κυβερνήσεις. Αργότερα επεκτάθηκε, έγινε αντικείµενο µελέτης σε µεγάλους οργανισµούς και τώρα έχει φθάσει στο σηµείο όπου ο κάθε χρήστης ασχολείται προσωπικά µε αυτόν τον τοµέα. [5] Οι αλγόριθµοι κρυπτογράφησης είναι ένα σύνολο µαθηµατικών κανόνων που χρησιµοποιούνται για την κωδικοποίηση και αποκωδικοποίηση δεδοµένων. Μπορούν να εφαρµοσθούν τόσο στο λογισµικό (software) όσο και στο υλισµικό (hardware). Η επιστήµη και µελέτη της µυστικής γραφής ονοµάζεται κρυπτογραφία. Το κρυπτογράφηµα είναι µυστικός τρόπος γραφής. Η κωδικοποίηση ή κρυπτογράφηση είναι η διαδικασία µετατροπής του αποκρυπτογραφηµένου κειµένου σε κρυπτογραφηµένο. Η αποκωδικοποίηση ή αποκρυπτογράφηση είναι ακριβώς η αντίστροφη διαδικασία. Σε κάθε τεχνική κρυπτογράφησης ένα ή περισσότερα κλειδιά χρησιµοποιούνται για κρυπτογράφηση και αποκρυπτογράφηση (δείτε εικόνα 1.1 στη σελίδα 29). [4] Η βασική ιδέα της κρυπτογράφησης είναι στην πραγµατικότητα απλή. Να κρυπτογραφηθούν µηνύµατα ώστε µόνο ο παραλήπτης να µπορεί να τα ανακτήσει. Υπάρχουν δυο τρέχοντες τύποι αλγόριθµων. Οι συµµετρικοί αλγόριθµοι και οι αλγόριθµοι δηµοσίων κλειδιών. Οι πρώτοι χρησιµοποιούν το ίδιο κλειδί για κρυπτογράφηση και αποκρυπτογράφηση ενώ οι δεύτεροι χρησιµοποιούν ένα κλειδί (δηµόσιο) για κρυπτογράφηση και ένα άλλο (ιδιωτικό) για αποκρυπτογράφηση. Ας θεωρήσουµε Μ το µήνυµα που πρόκειται να κρυπτογραφηθεί. Χρησιµοποιούµε το e(m) για να υποδηλώσουµε τη διαδικασία κρυπτογράφησης και έστω d η διαδικασία αποκρυπτογράφησης. Η ισότητα d(e(m))=m είναι έγκυρη για όλα τα µηνύµατα Μ. Κάθε παράµετρος που χρησιµοποιείται για την κρυπτογράφηση του µηνύµατος

5 ονοµάζετε κλειδί Κ. Η συνάρτηση κωδικοποίησης C=e(M,K) καλείται κρυπτογράφηµα ή κρυπτοκείµενο. Με τον ίδιο τρόπο η αποκρυπτογράφηση υπακούει στον κανόνα M=d(C,K). [3] H ιστορία ξεκινά σχεδόν 2500 χρόνια πριν. Σύµφωνα µε τον Έλληνα βιογράφο Πλούταρχο η κυβέρνηση της Σπάρτης έστελνε µυστικά µηνύµατα στους στρατηγούς της µε τον ακόλουθο έξυπνο τρόπο. Ο αποστολέας και ο παραλήπτης είχαν από έναν κύλινδρο, που λεγόταν σκυτάλη, της ίδιας ακριβώς ακτίνας. Ο αποστολέας έδενε µια στενή κορδέλα από περγαµηνή γύρω από τον κύλινδρο και έπειτα έγραφε κατά µήκος της. Αφού ξετυλιγόταν η κορδέλα µόνο ένα άτοµο που είχε έναν κύλινδρο ακριβώς της ίδιας περιφέρειας µπορούσε να διαβάσει τη γραφή. Υποθέστε ότι έχουµε υποκλέψει µια λωρίδα χαρτιού η οποία φέρει την ακόλουθη σειρά γραµµάτων SYBLCRESEERACHTAYPUOHIPHRUEMTYILSOO!TDOFG Έστω c η περίµετρος του κυλίνδρου. Αν το c=5 και επαναταξινοµήσουµε το µήνυµα σε 5 στήλες παίρνουµε µόνο ακαταλαβίστικα ως ακολούθως: SRRAAHUI!G YEAYIELT BSCPPMSD LEHUHTOO CETORYOF Αν το µήνυµα τοποθετηθεί σε έξι στήλες γίνεται κατανοητό. SECURIT YSHOULD BETHESO LEAIMOF CRYPTOG RAPHY! Ο αλγόριθµος που περιγράφηκε εδώ είναι το πρωτότυπο του κρυπτογραφήµατος αντιµετάθεσης που πρόκειται να περιγραφεί αργότερα. [2]

6 1.2 Ασφάλεια δεδοµένων Η ανάγκη προστασίας των δεδοµένων έχει γίνει όλο και πιο δηµοφιλής καθώς αυξάνεται το ηλεκτρονικό εµπόριο και η συνδετικότητα χρησιµοποιώντας το παγκόσµιο διαδίκτυο. «Στην πραγµατικότητα οι περισσότερες αιτήσεις για κρυπτογράφηση σήµερα ζητούν αυθεντικά δεδοµένα παρά µυστικά δεδοµένα». Πρέπει να γίνει αντιληπτό ότι οι πληροφορίες στο Ιντερνετ µπορούν να γίνουν αντικείµενα εκµετάλλευσης από άλλους. [9] Η επιστήµη που µελετά τρόπους προστασίας των δεδοµένων σε συστήµατα ηλεκτρονικών υπολογιστών και επικοινωνίας καλείται ασφάλεια δεδοµένων. Επιπλέον τα εφαρµόζει στο λογισµικό και στο υλισµικό. Οι πληροφορίες που µεταδίδονται µέσω των ηλεκτρονικών γραµµών είναι ευάλωτες σε δυο είδη απειλών. Την παθητική και ενεργητική παγίδευση των ηλεκτρονικών συνδέσεων. Η παθητική παγίδευση αναφέρεται σε µηνύµατα που υποκλάπησαν και συνήθως δεν γίνεται αντιληπτή. Μπορεί επίσης να χρησιµοποιεί σε δίκτυα υπολογιστών για να καταγράψει τη ροή της κυκλοφορίας και να παρατηρήσει ποιος συνδέεται µε ποιον. Η ενεργητική παγίδευση αναφέρεται σε τροποποίηση των δεδοµένων. Οι συνέπειες είναι πραγµατικά πολύ σοβαρές αν κάποιος έχει τη δύναµη να τροποποιήσει δεδοµένα για ένα συγκεκριµένο σκοπό. [1] Ένας τύπος προβλήµατος που ανακύπτει είναι η συνοχή του µηνύµατος. Αυτή αναφέρεται στο κατά πόσο το µήνυµα έχει µεταδοθεί δίχως αλλαγές. Το δεύτερο είναι η αυθεντικότητα του µηνύµατος. Η ερώτηση είναι µε ποιον τρόπο ο αποδέκτης µπορεί να πεισθεί ότι το µήνυµα που του έχει σταλεί προέρχεται από το πρόσωπο που υποτίθεται ότι το έχει στείλει. Τελικά, το πρόβληµα της αυθεντικότητας του χρήστη αναφέρεται στην ερώτηση του τρόπου που µπορεί κάποιος να αποδείξει την ταυτότητα του. [2]

7 1.3 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ Η ψηφιακή υπογραφή είναι µια διαδικασία, ιδιωτική για ένα χρήστη, η οποία χρησιµοποιείται για την υπογραφή µηνυµάτων. Υποθέστε ότι ο Β είναι ο αποδέκτης του µηνύµατος Μ που υπογράφεται από τον Α. 1. Ο Β πρέπει να είναι σε θέση να επαληθέυσει την υπογραφή του Α στο Μ. 2. Πρέπει να είναι αδύνατο για οποιονδήποτε συµπεριλαµβανοµένου του Β να πλαστογραφήσει την υπογραφή του Α. 3. Στην περίπτωση που ο Α απαρνηθεί ένα µήνυµα Μ πρέπει να είναι δυνατό για ένα ουδέτερο δικαστή να επιλύσει µια διαµάχη ανάµεσα στον Α και Β. Εποµένως, µια ψηφιακή υπογραφή εξασφαλίζει την αυθεντικότητα του αποστολέα. Η αυθεντικότητα των δεδοµένων επίσης εξασφαλίζεται από τη συνθήκη 2. Οι ψηφιακές υπογραφές εφαρµόζονται εύκολα από συστήµατα δηµοσίων κλειδιών. Οι παρακάτω κανόνες επαληθεύουν το παραπάνω. 1. Ο Α υπογράφει το Μ πληκτρολογώντας C=Da(M). 2. Ο Β επαληθεύει την υπογραφή του Α ελέγχοντας ότι το Ea(C ) επαναφέρει Μ. 3. Ένας δικαστής επιλύει µια διαµάχη ανάµεσα στον Α και Β ελέγχοντας αν το Ea(C ) επαναφέρει Μ µε τον ίδιο τρόπο µε το Β. Ο παραλήπτης Β διαβεβαιώνεται για την αυθεντικότητα τόσο του αποστολέα όσο και των δεδοµένων. Στα συµβατικά συστήµατα η αυθεντικότητα του αποστολέα δεν παρέχεται. Επειδή τόσο ο αποστολέας όσο και ο παραλήπτης µοιράζονται το ίδιο κλειδί ο παραλήπτης θα µπορούσε εύκολα να πλαστογραφήσει την υπογραφή του αποστολέα. Μια τέτοια διένεξη θα είναι αδύνατο να επιλυθεί από κάποιον τρίτο. Οι ψηφιακές υπογραφές µπορούν να εφαρµοσθούν για προστασία λογισµικού. Υποθέστε ότι δηµιουργείται ένα δίκτυο υπολογιστών. Η διαδικασία της υπογραφής µπορεί να ελέγξει την εγκυρότητα του λογισµικού στους κόµβους. Η δεύτερη εφαρµογή αφορά την εφαρµογή προστατευµένων προγραµµάτων σε λειτουργούντα συστήµατα Αν το πρόγραµµα δεν υπογράφεται από κάποιον επαληθευτή προγραµµάτων το σύστηµα θα αρνηθεί να το εκτελέσει. [1]

8 1.4 ΕΞΥΠΝΕΣ ΚΑΡΤΕΣ Οι έξυπνες κάρτες είναι µια από τις πιο δηµοφιλείς εφαρµογές των αλγόριθµων κρυπτογράφησης. Αυτές είναι κάρτες περίπου στο µέγεθος µιας πιστωτικής κάρτας και φτιαγµένες από πλαστικό. Το όνοµα που τους δίνεται αναφέρεται στο µικροτσιπ που περιέχουν και το οποίο µπορεί να εκτελέσει διάφορες µαθηµατικές λειτουργίες. Οι έξυπνες κάρτες είναι ιδανικές για κρυπτολογία. Μπορούν να εκτελούν κρυπτο-αλγόριθµους και είναι σε θέση να αποθηκεύσουν κλειδιά µε µοναδικό τρόπο. Μπορούν να χρησιµοποιηθούν από τον οποιονδήποτε µε την προϋπόθεση ότι ο χρήστης θυµάται τον µυστικό αριθµό αυθεντικότητας του. Εποµένως, οι έξυπνες κάρτες δεν είναι δυσκολότερες στη χρήση από µια πιστωτική κάρτα και παρέχουν τεράστια ασφάλεια και ευκολία. Έξυπνες κάρτες για την πρόσβαση σε ελέγχους: Σε αυτά τα συστήµατα οι έξυπνες κάρτες χρησιµοποιούνται από το χρήστη για να αποδείξει την αυθεντικότητα του στο σύστηµα. Ο ευρείας χρήσης κωδικός πρόσβασης χωρίζεται σε δυο ανεξάρτητα µέρη. Ο χρήστης αποδεικνύει την αυθεντικότητα του στην κάρτα µέσω του ΡΙΝ (προσωπικός αριθµός αναγνώρισης) Η κάρτα πιστοποιεί την αυθεντικότητα της στο σύστηµα µέσω ενός δυναµικού πρωτοκόλλου πιστοποίησης Μόλις ο χρήστης δώσει το ΡΙΝ του αυτός ο αριθµός µεταφέρεται στην κάρτα και συγκρίνεται µε έναν αριθµό αναφοράς. Περαιτέρω υπηρεσίες παρέχονται µόνο αν οι δυο αριθµοί συµπίπτουν. Η κάρτα πιστοποιεί την αυθεντικότητα της στο σύστηµα µέσω ενός αλγόριθµου κρυπτογράφησης. Αυτό γίνεται ως ακολούθως. Η κάρτα και ο κεντρικός υπολογιστής έχουν ένα κοινό αλγόριθµο και µοιράζονται το ίδιο κλειδί Κ. Ο υπολογιστής στέλνει τον αλγόριθµο στην κάρτα µε έναν τυχαίο αριθµό ενώ η κάρτα στέλνει τον αλγόριθµο στον υπολογιστή. Και οι δυο πρέπει να υπολογίσουν το κρυπτογραφηµένο κείµενο χρησιµοποιώντας το κλειδί Κ και να εξακριβώσουν κατά πόσο οι αριθµοί συµπίπτουν µεταξύ τους. [2]

9 2.0 ΑΛΓΟΡΙΘΜΟΙ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ 2.1 ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ ΑΝΤΙΜΕΤΑΘΕΣΗΣ Στην αντιµετάθεση οι χαρακτήρες επαναδιευθετούνται σύµφωνα µε κάποιο σχέδιο. Τα γράµµατα παραµένουν εκεί που είναι αλλά όχι εκεί που ήταν. Πρώτα, το µήνυµα ή το µη κρυπτογραφηµένο κείµενο διευθετείται σε κάποιο σχήµα (δείτε εικόνα 2.1 στη σελίδα 29) σύµφωνα µε ένα µονοπάτι εισαγωγής µέσα. εύτερον, το κρυπτογραφηµένο κείµενο λαµβάνεται από αυτό το σχήµα σύµφωνα µε ένα µονοπάτι εξαγωγής έξω. Το γεωµετρικό σχήµα είναι συχνά µια διάταξη δυο διαστάσεων όπου το µη κρυπτογραφηµένο κείµενο διευθετείται σε έναν αριθµό γραµµών και στηλών. είτε το παρακάτω παράδειγµα όπου το µήνυµα ΑΝΑΓΕΝΝΗΣΗ γράφεται σε έναν πίνακα Α Ν Α Γ Ε Ν Ν Η Σ Η Αν οι στήλες ληφθούν µε µια σειρά το κρυπτογραφηµένο µήνυµα είναι ΝΝΗΓΗΑΕΣΑΝ. [1] 2.2 ΑΠΛΑ ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ Σε αυτόν τον αλγόριθµο τα γράµµατα του Αγγλικού αλφαβήτου αντικαθίστανται από τους αντίστοιχους χαρακτήρες του αλφάβητου κρυπτογράφησης. Θεωρείστε το παρακάτω παράδειγµα όπου στο Α αντιστοιχούν τα γράµµατα του Αγγλικού αλφάβητου και C είναι το αλφάβητο κρυπτογράφησης. A: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z C: H A R P S I C O D B E F G J K L M N Q T U V W X Y Z To κείµενο προς κρυπτογράφηση RENAISSANCE (ΑΝΑΓΕΝΝΗΣΗ) κρυπτογραφείται µε αυτόν τον τρόπο ως ακολούθως: Μ=RENAISSANCE Εk(M) =NSJHDQQHJRS

10 Ο αλγόριθµος είναι γνωστός σαν ΜΟΝΟΑΛΦΑΒΗΤΙΚΗ κρυπτογράφηση. Τέτοια συστήµατα είναι εξαιρετικά ευάλωτα σε επίθεση από µια ανάλυση της συχνότητας των γραµµάτων,... [1] 2.3 ΟΜΟΗΧΗ ΚΡΥΠΤΟΓΡΑΦΗΣΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ Σε αυτήν την κρυπτογράφηση κάθε χαρακτήρας στο αλφάβητο του κειµένου προς κρυπτογράφηση χαρτογραφείτε σε ένα πλαίσιο στοιχείων κρυπτογραφηµένου κειµένου που καλούνται οµόφωνα. Το ακρυπτογράφητο µήνυµα Μ=m1 m2 m3 κρυπτογραφείτε ως c1 c2 c3., όπου κάθε ci επιλέγεται τυχαία από το σύνολο των οµοφώνων. Ας υποθέσουµε ότι τα Αγγλικά γράµµατα κρυπτογραφούνται σαν ακέραιοι αριθµοί µεταξύ 0 και 99. Α Ι L Ν Ο Ρ Τ Το µήνυµα µπορεί να κρυπτογραφηθεί ως: Μ= P L A I N P I L O T C= Όσο περισσότερα τα στοιχεία του κρυπτογραφηµένου κειµένου για να κατανεµηθούν ανάµεσα στα γράµµατα τόσο ισχυρότερος ο αλγόριθµος. Αυτός είναι οπωσδήποτε ένας περισσότερο ασφαλής αλγόριθµος από την απλή κρυπτογράφηση αντικατάστασης ΥΨΗΛΟΥ ΕΠΙΠΕ ΟΥ ΟΜΟΗΧΑ Για να κατασκευασθεί ένα τέτοιο κρυπτογράφηµα εισάγετε τους αριθµούς 1 ως 99 σε ένα n n πίνακα Κ. Σε αυτό το κρυπτογράφηµα υπάρχουν δυο δυνατά µηνύµατα µη κρυπτογραφηµένου κειµένου το ένα από τα οποία παρίσταται από σειρές και το άλλο από στήλες. Η σειρά a του Κ καθορίζει µια οµάδα οµόηχων f1(a) και η στήλη a καθορίζει µια άλλη οµάδα οµόηχων f2(a). Εποµένως ένα πλήκτρο

11 παρίσταται από µια οµάδα σειρών και το άλλο από µια σειρά στηλών. Το µήνυµα Μ= m1m2 κρυπτογραφείτε µε ένα µήνυµα Χ=x1x2 για να ληφθεί το κρυπτογραφηµένο κείµενο C=c1c2 Το καθένα κρυπτογραφηµένο στοιχείο είναι µια διασταύρωση των οµάδων f1(m1) και f2(x2) και εποµένως αποκρυπτογραφείται είτε σε mi (υπό το πλήκτρο f1) ή xi (υπό το f2) E I L M S E I L M S Το µήνυµα SMILE κρυπτογραφείτε ως ακολούθως: Μ= S M I L E X= L I M E S C= ΠΟΛΥΑΛΦΑΒΗΤΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ Τα πολυαλφαβητικά κρυπτογραφήµατα αναπτύχθηκαν τον 16 ον αιώνα από τον Leon Battista Alberti, τον πατέρα της υτικής κρυπτογράφησης. Ο Alberti περιέγραψε έναν κύκλο που αποτελούνταν από έναν εξωτερικό και έναν εσωτερικό κύκλο (δείτε την εικόνα 2.4 στη σελίδα 30). Στον εξωτερικό κύκλο τοποθέτησε 20 γράµµατα κειµένου µη κρυπτογραφηµένου και τους αριθµούς 1 ως 4. Στον κινητό εσωτερικό κύκλο τοποθέτησε γράµµατα του Λατινικού αλφάβητου και το σύµβολο &. Αυτά τα κρυπτογραφήµατα κρυπτογραφούν ένα µήνυµα επαναλαµβάνοντας µια σειρά αντιστοιχιών κάθε d χαρακτήρες. Αν Μ=m1.md md+1 m2d.. τότε το µήνυµα κρυπτογραφείτε ως Ek(M) = f1(m1) fd(md)f1(md+1) fd(m2d). Αν d=1 το κρυπτογράφηµα είναι µονοαλφαβητικό και είναι ισοδύναµο µε απλή αντικατάσταση.

12 2.4.1 VIGENERE ΚΑΙ BEAUFORT ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ Ένα Vigenere κρυπτογράφηµα είναι µια µορφή περιοδικής αντικατάστασης και βασίζεται σε ένα µετατοπισµένο αλφάβητο. Αν το κλειδί Κ=k1.kd τότε το πλήθος των µετατοπίσεων στο αλφάβητο δίνεται από το fi(a)=(a+ki)modn (δείτε το παράρτηµα E) όπου το a αντιπροσωπεύει τους χαρακτήρες του µη κρυπτογραφηµένου κειµένου και το n αντιπροσωπεύει τα γράµµατα του Αγγλικού αλφάβητου. Η κρυπτογράφηση της λέξης SUBSTITUTION υπό το κλειδί BAND δίνεται παρακάτω. Μ= SUBS TITU TION K= BAND BAND BAND Ek(M)= TUOV UIGX UIBQ Το πρώτο γράµµα µετατοπίζεται στα δεξιά κατά µια θέση, το δεύτερο κατά 0, το τρίτο κατά 13 και το τέταρτο κατά 3. Η κρυπτογράφηση Beaufort είναι παρόµοια χρησιµοποιώντας την αντικατάσταση fi(a)=(ki-a)modn. Η κρυπτογράφηση Beaufort αναστρέφει τα γράµµατα στο αλφάβητο και έπειτα τα µετατοπίζει στα δεξιά κατά (Ki+1) θέσεις [1] Αν ki=d η µετατροπή από µη κρυπτογραφηµένο κείµενο σε κρυπτογραφηµένο φαίνεται παρακάτω: Α: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z C: D C B A Z Y X W V U T S R Q P O N M L K J I H G F E [1] ΤΟ ΣΗΜΕΙΩΜΑΤΑΡΙΟ ΜΙΑΣ ΦΟΡΑΣ Το σηµειωµατάριο µιας φοράς εισήχθη πρώτη φορά το 1917 από τον Αµερικάνο Μηχανικό της AT&T Gilbert S. Vernam. Στην αρχή χρησιµοποιούνταν µε γράµµατα στο σηµειωµατάριο και το ακρυπτογράφητο κείµενο κρυπτογραφήθηκε µε τη χρήση ενός Vigenere κρυπτογραφήµατος. Έτσι δηµιουργήθηκε ένα bit stream C= Ek(M)=c1,c2,, όπου ci= (mi+ki)mod2, i=1,2. Σήµερα αυτό το σύστηµα χρησιµοποιεί bit σε έναν υπολογιστή παρά γράµµατα. Αν τα mi και Ki είναι bits τότε το κρυπτογράφηµα αποκτάται µε τη χρήση µίας exclusive-or συνάρτησης όπου ci=mi(+) ki (δείτε εικόνα στη σελίδα 30). Η αποκρυπτογράφηση γίνεται

13 χρησιµοποιώντας την ίδια λειτουργία: ci(+)ki=mi(+)ki(+)ki=mi. Για την ασφάλεια του συστήµατος τα bit κλειδιά πρέπει να επιλέγονται τυχαία. Είναι οπωσδήποτε ένα τέλειο σύστηµα µόνο αν το κλειδί µεταδίδεται ξεχωριστά από το ακρυπτογράφητο κείµενο. Αν το κλειδί µεταδίδεται ταυτόχρονα τότε αυξάνει η πιθανότητα να υποκλαπούν τόσο το κλειδί όσο και το ακρυπτογράφητο κείµενο µιας και το κλειδί έχει το ίδιο µήκος µε το ακρυπτογράφητο κείµενο. Το κόστος αυτού του είδους της µυστικότητας είναι υψηλό από την πλευρά χρηµάτων και πόρων. Το σηµειωµατάριο µιας φοράς δηµιουργεί ένα τεράστιο όγκο χαρτιού που πρέπει να διαφυλαχθεί µυστικό απέναντι σε εισβολείς 24 ώρες την ηµέρα. [2] 2.5 POLYGRAM ΑΝΤΙΚΑΤΑΣΤΑΣΕΙΣ Σε όλα τα προηγούµενα παραδείγµατα ένα µόνο γράµµα κρυπτογραφείτε κάθε φορά. Στην polygram αντικατάσταση µεγαλύτερα συµπλέγµατα γραµµάτων κρυπτογραφούνται καθιστώντας την κρυπτανάλυση ακόµα δυσκολότερη. [1] ΚΡΥΠΤΟΓΡΑΦΗΣΗ PLAYFAIR Αυτός ο αλγόριθµος ονοµάζεται από έναν Άγγλο επιστήµονα που τον ανακάλυψε το Το πλήκτρο τοποθετείται σε έναν πίνακα 5 5 (δείτε εικόνα 2.5 σελίδα 11) 25 γραµµάτων ( το J δε χρησιµοποιήθηκε). Οι ακόλουθοι κανόνες χρησιµοποιούνται για να κωδικοποιήσουν ένα ζεύγος ακρυπτογράφητων γραµµάτων. 1. Αν m1 και m2 είναι στην ίδια γραµµή, τότε c1 και c2 είναι οι δυο χαρακτήρες στα δεξιά των m1 και m2, αντίστοιχα, όπου η πρώτη στήλη θεωρείτε ότι είναι στα δεξιά της τελευταίας στήλης. 2. Αν m1 και m2 είναι στην ίδια στήλη, τότε c1 και c2 είναι οι δυο χαρακτήρες κάτω από τα m1και m2, αντίστοιχα, όπου η πρώτη σειρά θεωρείται ότι είναι κάτω από την τελευταία σειρά. 3. Αν m1 και m2 είναι σε διαφορετικές σειρές και στήλες τότε c1 και c2 είναι οι άλλες δυο γωνίες του ορθογώνιου παραλληλόγραµµου που έχει τα m1 και m2 σαν γωνίες, όπου το c1 είναι στη σειρά που είναι το m1 και το c2 είναι στη σειρά που είναι το m2. 4. Αν m1=m2, το γράµµα µηδέν εισάγετε στο ακρυπτογράφητο κείµενο µεταξύ m1 και m2 για να εξαλειφθεί το διπλάσιο.

14 5. Αν το ακρυπτογράφητο κείµενο έχει µονό αριθµό χαρακτήρων τότε το γράµµα µηδέν προστίθεται στο τέλος του ακρυπτογράφητου κειµένου. Για να κρυπτογραφηθούν τα πρώτα δυο γράµµατα της λέξης SUBSTITUTION παρατηρήστε ότι το S και το U βρίσκονται στην ίδια στήλη. Εποµένως, κρυπτογραφούνται όπως τα δυο γράµµατα που βρίσκονται από κάτω τους, τα οποία είναι το Β και Ζ. [1] Κλεδί για τον αλγόριθµο playfair H A R P S I C O D B E F G K L M N Q T U V W X Y Z Εικόνα KΡΥΠΤΟΓΡΑΦΗΜΑ HILL Σε αυτό το σύστηµα η κρυπτογράφηση γίνεται σύµφωνα µε την εξίσωση C=Ek(M)=K M modn όπου Κ είναι το διάνυσµα του κλειδιού και το Μ το διάνυσµα του µηνύµατος. Η αποκρυπτογράφηση γίνεται µε τον αντίστροφο πίνακα K^-1 και Dk(C) = K^-1C modn. ουλέυοντας µε το αλφάβητο των 26 γραµµάτων υποθέστε ότι το κλειδί είναι ο πίνακας Κ = 3 2 και Κ^-1 = Υποθέστε ότι θέλαµε να κρυπτογραφήσουµε το µήνυµα ΑΒ το οποίο είναι το διάνυσµα (0,1). Για να υπολογίσουµε το κρυπτογραφηµένο κείµενο µπορούµε να γράψουµε c c2 = mod26 =

15 Μπορούµε εποµένως να πάρουµε το κρυπτογραφηµένο κείµενο C= (2,5) ή CF Για να αποκρυπτογραφήσουµε υπολογίζουµε : mod26= = M [1] 2.6 ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ ΓΙΝΟΜΕΝΟΥ Ένα παράγωγο κρυπτογράφηµα είναι αποτέλεσµα λειτουργίας αντικατάστασηςαντιµετάθεσης συνάρτησης F ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ- ΑΝΤΙΜΕΤΑΘΕΣΗΣ Αυτά τα κρυπτογραφήµατα δηµιουργούνται εφαρµόζοντας µια αντιµετάθεση ακολουθούµενη από µια εναλλακτική αλληλουχία αντικαταστάσεων και απλών γραµµικών λειτουργιών. Αυτή η προσέγγιση ενσωµατώνεται στο κρυπτογράφηµα Lucifer (δείτε εικόνα 2.6 στη σελίδα 31). Εφαρµόζει αυτήν την αρχή σε µήτρες 12- bit. Το κρυπτογράφηµα αυτού του αλγορίθµου είναι C=Ek(M)=St O Pt-1.. O S2 O P1O S1(M) όπου το S παριστά µια λειτουργία του κλειδιού Κ και το Ρ µια αντιµετάθεση bit. [1] TO ΠΡΟΤΥΠO ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ Ε ΟΜΕΝΩΝ (Data Encryption Standard) Τo πρότυπo κρυπτογράφησης δεδοµένων είναι ο πιο κοινός αλγόριθµος σε χρήση σήµερα. Αναπτύχθηκε από την ΙΒΜ και έχει γίνει το de facto πρότυπο για τουλάχιστον 20 χρόνια. Το DES έχει αντέξει καλά απέναντι στη δοκιµή νεότερων αλγορίθµων και θεωρείτε ένας από τους ασφαλέστερους τρόπους κρυπτογράφησης δεδοµένων σήµερα. Λειτουργεί σε µήτρες 64 bit δεδοµένων µε τη χρήση ενός κλειδιού µεγέθους 56 bit. Στο παρακάτω διάγραµµα της µήτρας εκτελούνται 16 γύροι ιδανικών λειτουργιών (ονοµάζεται λειτουργία f) όπου τα δεδοµένα συνδυάζονται µε το κλειδί. [7]

16 Σχήµα 1 : Αλγόριθµος DES

17 Κρυπτογράφηση: Η µήτρα των 64 bit πρώτα αντιµετατίθενται κάτω από έναν αρχικό συνδυασµό (IP) ο οποίος φαίνεται στον πίνακα Πίνακας 1 Η µήτρα έπειτα χωρίζεται σε δυο µισά, το καθένα µήκους 32 bit. Το δεξί µισό γίνεται το νέο αριστερό µισό του συστήµατος (Ri-1=Li) και το αριστερό µισό ενώνεται µε µία συνάρτηση f ((Li(+)f(Ri, Ki+1)) µέσω µίας πύλης exclusive-or η οποία πρόκειται να περιγραφεί αργότερα. Αυτό είναι τώρα το νέο δεξιό µισό του συστήµατος. Η τελική µήτρα αντιµετατίθενται κάτω από τον αντίστροφο συνδυασµό (δείτε πίνακα 2) για να δώσει το κωδικοποιηµένο µήνυµα Πίνακας 2

18 Αποκρυπτογράφηση: Η αποκρυπτογράφηση γίνεται εφαρµόζοντας ακριβώς τον ίδιο αλγόριθµο στο κωδικοποιηµένο µπλόκ. Συνάρτηση f: Η εικόνα παρακάτω δείχνει πως υπολογίζεται η λειτουργία F. Ri-1 E S1 S2 S3 S4 S5 S6 S7 S8 P F (Ri-1, Ki) Σχήµα 2: Συνάρτηση F

19 Αρχικά, το δεξιό µέρος της µήτρας επεκτείνεται στα 48 bit (δείτε πίνακα 3) µε χρήση της επιλογής bit Ε Πίνακας 3 Εν συνεχεία, η επεκταθήσα µήτρα και το κλειδί συνδυάζονται µε µία πύλη exclusive- OR και το αποτέλεσµα σπάει σε οκτώ µήτρες των 6 bit. Η κάθε µήτρα των 6-bit τοποθετείται έπειτα σε 8 κουτιά το κάθε ένα από τα οποία επιστρέφει ένα µπλοκ των 4-bit. (δείτε παράρτηµα Α για λεπτοµέρειες). Το προκύπτον µπλοκ των 32-bit συνδυάζεται µια φορά σύµφωνα µε τον πίνακα 4 για να δώσει την f Πίνακας 4 Υπολογισµός κλειδιού: το µπλοκ διάγραµµα για τον υπολογισµό του κλειδιού είναι στη σελίδα 13.

20 Στην αρχή εκτελείται η συνδυαστική επιλογή 1 (PC-1) η οποία απορρίπτει τα parity bits (δείτε πίνακα 5) Πίνακας 5 Το εναποµένον µπλοκ των 56 bit χωρίζεται σε δυο µισά. Τα µπλοκ έπειτα µετατοπίζονται αριστερά µια ή δυο φορές (δείτε παράρτηµα Β για λεπτοµέρειες) για να αντιµετατεθεί το κλειδί µια ακόµη φορά πριν να υπολογισθεί. Η επιλογή αντιµετάθεσης 2 φαίνεται στον παρακάτω πίνακα. [1] Πίνακας 6

21 2.7 ΚΡΥΠΤΟΓΡΑΦΗΜΑΤΑ ΕΚΘΕΤΙΚΟΠΟΙΗΣΗΣ Αυτοί οι αλγόριθµοι εφαρµόζουν τις αρχές ενός συστήµατος µε δηµόσιο κλειδί. Σε ένα κρυπτοσύστηµα µε δηµόσιο κλειδί κάθε χρήστης έχει µια δηµόσια µετατροπή κωδικοποίησης και µια ιδιωτική µετατροπή αποκωδικοποίησης. Εποµένως, ένα δηµόσιο κλειδί χρησιµοποιείται για κρυπτογράφηση και ένα ιδιωτικό κλειδί για αποκρυπτογράφηση Το σχέδιο RSA Το 1977 λίγο µετά την εισαγωγή της ιδέας του συστήµατος µε δηµόσιο κλειδί τρεις µαθηµατικοί ο Ron Rivest, o Adi Shamir και ο Len Adleman έδειξαν µε ποιο τρόπο θα µπορούσε να εφαρµοσθεί ένα τέτοιο σύστηµα. Η κρυπτογράφηση µπορεί να επιτευχθεί µε την ακόλουθη παράσταση. C=M^e modn όπου e και n είναι το κλειδί στην µετατροπή κρυπτογράφησης. Η αποκρυπτογράφηση είναι η ανάστροφη διαδικασία και µπορεί να εκφραστεί ως M=C^d modn όπου d είναι το κλειδί στην µετατροπή αποκρυπτογράφησης. To modulo-n είναι το γινόµενο δυο πρώτων αριθµών, p και q n=pq. [9] Σύµφωνα µε το θεώρηµα του Euler (δείτε παράρτηµα C) φ(n)=(p-1)(q-1). To e υπολογίζεται από την σχέση ed modφ(n)=1 όπου e και d είναι πολλαπλασιαστικοί ανάστροφοι (δείτε παράρτηµα D). Παράδειγµα: Έστω p=11 και q=10. Τότε n=110 και φ(n)=90 Αν θέσουµε d= 181 παίρνουµε e=1 Για να κωδικοποιήσουµε το µήνυµα M= RE NA UL T το σπάµε σε µπλοκ δυο χαρακτήρων ο καθένας όπου Α=00, Β=01,..., Ζ=25 και κενό=26 Το πρώτο µπλοκ κρυπτογραφείτε σαν 1704 mod110=54 Το υπόλοιπο µήνυµα κρυπτογραφείται σαν C=

22 3.0 ΕΦΑΡΜΟΓΗ ΛΟΓΙΣΜΙΚΟΥ Και τα δυο προγράµµατα C βρίσκονται στο παράρτηµα F. Στόχοι Να εφαρµοσθούν οι αλγόριθµοι του Πρότυπου Κρυπτογράφησης εδοµένων και του RSA µε τη χρήση ενός "κοµπάιλερ", (µεταγλωττιστής) Turbo C. DES: Προκειµένου να εφαρµοσθεί ένας τόσο µεγάλος και σύνθετος αλγόριθµος έπρεπε να διαιρεθεί σε δυο διαφορετικά µπλοκ. Το γράψιµο ενός ψευδοκώδικα είναι πολύ κοινό στην εφαρµογή λογισµικού και ήταν το επόµενο πράγµα στο µυαλό µου. Είναι ο κατάλληλος τρόπος για να γραφεί λογισµικό καθώς η κατανόηση του αλγόριθµου είναι το κλειδί για να µετατραπεί ο κώδικας σε µια γλώσσα υψηλού επιπέδου. Η µεγάλη έκταση του αλγόριθµου ήταν το κύριο πρόβληµα και εποµένως απαιτούσε πλήρη συγκέντρωση κάθε στιγµή. Η κρυπτογράφηση ήταν κάτι που επιτεύχθηκε τις πρώτες λίγες εβδοµάδες λόγω του σωστού καταµερισµού του χρόνου και της σκληρής δουλειάς. Η ανάκτηση του αρχικού µηνύµατος ήταν µια εύκολη εργασία µιας και η αποκρυπτογράφηση χρησιµοποιεί τον ίδιο αλγόριθµο. RSA: Σε σχέση µε τον αλγόριθµο DES αυτό ήταν πολύ πιο εύκολο να εφαρµοστεί µια και ο κώδικας ήταν έκτασης µόνο µιας σελίδας. Η εµπειρία και αυτοπεποίθηση που αποκτήθηκαν από τον προηγούµενο αλγόριθµο ήταν ζωτικές για να εξασφαλισθούν οι στόχοι της σχεδίασης οι οποίοι και τελικά επιτεύχθηκαν.

23 4.0 ΑΠΟΤΕΛΕΣΜΑΤΑ Για τα πραγµατικά αποτελέσµατα δείτε το παράρτηµα G. Τα αποτελέσµατα που λήφθηκαν επιβεβαιώνουν ότι το πρόγραµµα λειτουργεί κανονικά. Το αποκρυπτογραφηµένο µήνυµα είναι η λέξη των 64 bit messages (µηνύµατα) χρησιµοποιώντας το κλειδί των 64 bit H διαδικασία της προσοµοίωσης είναι γρήγορη λόγω της τεχνολογίας Pentium που χρησιµοποιήθηκε και επιδεικνύει όλη τη διαδικασία από την κρυπτογράφηση έως και την αποκρυπτογράφηση του µηνύµατος. Σε κάθε βρόγχο τα S-κουτιά επιστρέφουν µια τιµή 32-bit. (δείτε το παράρτηµα F για λεπτοµέρειες). Όταν φθάσουµε στο βρόγχο 16 το κρυπτογραφηµένο µήνυµα τυπώνεται. Πρώτα µια δυαδική τιµή 64 bit µετατρέπεται στο αντίστοιχο σύνολο χαρακτήρων ASCII και έπειτα το µήνυµα τυπώνεται µε κανονικούς χαρακτήρες. Η αποκρυπτογράφηση είναι ακριβώς η ίδια µιας και είναι η αντίστροφη διαδικασία. Η δεύτερη παραλλαγή του κώδικα αυτού έχει σχεδιαστεί για να δέχεται και εικόνες εκτός από text files. Οι εικόνες αυτές µπορεί να είναι οποιουδήποτε format. Η προβολή των κωδικοποιηµένων αποκωδικοποιηµένων εικόνων γίνεται µέσω ενός προγράµµατος επεξεργασίας εικόνας των Windows.

24 5.0 ΜΗΧΑΝΙΚΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ 5.1 Προδιαγραφές και σχέδια Πριν να σχεδιασθεί ο αλγόριθµος το πρώτο βήµα είναι να καθορισθεί τι πρέπει να κάνει το προϊόν. Αν είναι ένα προϊόν κρυπτογράφησης δε πρέπει να γίνονται υποθέσεις σχετικά µε τον τρόπο άφιξης του µηνύµατος στον προορισµό του επειδή φτιάχνεται κυρίως για κρυπτογράφηση και αποκρυπτογράφηση. Το επόµενο στάδιο αφορά τις προδιαγραφές του προϊόντος. Αυτό είναι το σηµείο που θα αποφασισθεί ποιος αλγόριθµος θα χρησιµοποιηθεί και πόσο ισχυρός θα είναι αυτός ο αλγόριθµος. Επίσης, αν ο αλγόριθµος έχει κάποια συγκεκριµένη ονοµασία θα πρέπει να απαιτείται άδεια χρήσης ώστε να χρησιµοποιείται και από άλλους ειδάλλως θα διανέµεται δωρεάν. Εν συνεχεία, κάποιος µπορεί να θελήσει να χρησιµοποιήσει υλισµικό ή λογισµικό ακόµα και έναν συνδυασµό των δύο. Επιπρόσθετα, πρέπει να καθορισθεί η υποτιθέµενη χρήση της εφαρµογής (ψηφιακή φωνή, fax, , φάκελοι κειµένων). Αυτές όλες είναι οι αποφάσεις που πρέπει να πάρει ο καθένας και οι οποίες θα επηρεάσουν την επιλογή του αλγορίθµου. Η ακριβής εφαρµογή του αλγορίθµου εξετάζεται στη φάση σχεδίασης. Πολλές ερωτήσεις γίνονται σε αυτή τη φάση όπως κατά πόσο ο αλγόριθµος πρέπει να αποδυναµωθεί (περιορίζοντας τα διαθέσιµα κλειδιά) ή να ενισχυθεί. Αυτό συµβαίνει επειδή η ασφάλεια έχει προτεραιότητα στις θεωρήσεις µας σχετικά µε τις εφαρµογές που αναφέρονται παραπάνω. [6] 5.2 Συντήρηση Στη µηχανική του λογισµικού η συντήρηση και ανανέωση ενός προϊόντος είναι απαραίτητη λόγω κύριων προβληµάτων. Το πρώτο είναι παρόµοιο αλλά περισσότερο προβλέψιµο. Η ταχύτητα της υπολογιστικής δύναµης είναι αυξανόµενη λόγω της ραγδαίας ανάπτυξης της τεχνολογίας και συνάµα το κόστος πέφτει. Αυτό καθιστά τους αλγορίθµους περισσότερο ευάλωτους σε µια προσπάθεια να τους σπάσει κάποιος. [6] 5.3 ύναµη κλειδιού Η δύναµη του κλειδιού καθορίζει πόσο ασφαλής είναι ο αλγόριθµος στις διάφορες προσπάθειες να σπάσει ένα κρυπτογράφηµα. Ο παρακάτω πίνακας δείχνει

25 τους µέσους υπολογισµούς χρόνου για µια επίθεση υλισµικού (hardware attack). Αυτό γίνεται δοκιµάζοντας κάθε κλειδί σε ένα διάστηµα κλειδιών. Μήκος του κλειδιού σε bit Cost $100K 2 seconds 35 hours 1 year 70,000 yrs 10^14 yrs 10^19 yrs $1M.2 seconds 3.5 hours 37 days 7000 yrs 10^13 yrs 10^18 yrs $10 M.02 sec 21 min 4 days 700 yrs 10^12 yrs 10^17 yrs $100 M 2 millisec 2 min 9 hours 70 yrs 10^11 yrs 10^16 yrs $1 B.2 millisec 13 sec 1 hour 7 yrs 10^10 yrs 10^15 yrs Πίνακας 7 Άλλες ανησυχίες είναι εξίσου σηµαντικές όταν καθορίζεται το µήκος του κλειδιού. Αυτές αφορούν τις ικανότητες και την ταυτότητα του πραγµατικού εχθρού όπως επίσης και το µέγιστο µήκος κλειδιού που είναι διαθέσιµο στην εφαρµογή. Τα συνιστώµενα µήκη δηµοσίων κλειδιών παρατίθενται στον παρακάτω πίνακα. Συνιστώµενα µήκη δηµόσιων κλειδιών (σε bit) Year Vs. Individual Vs. Corporation Vs. Government Πίνακας Χειρισµός του κλειδιού Μετά την εφαρµογή του λογισµικού του αλγορίθµου ο χειρισµός των κλειδιών παραµένει ένα πρόβληµα. Ο αποστολέας πρέπει να εξασφαλίσει ότι ο αποδέκτης λαµβάνει το κλειδί ώστε να επανακτηθεί το αρχικό µήνυµα. Αυτό µπορεί να γίνει µέσω ενός δικτύου ασφαλείας ή µπορεί να το στείλει ακόµα και µε το ταχυδροµείο.

26 Οι υβριδικές λύσεις είναι ένας ακόµα τρόπος για να λυθεί αυτό το πρόβληµα. Οι αλγόριθµοι δηµοσίων κλειδιών χρησιµοποιούνται πολύ συχνά. Ένα κλειδί συνεδρία (session key) αποστέλλεται στον παραλήπτη ο οποίος το αποκρυπτογραφεί µε τη χρήση δηµοσίου κλειδιού και ξεκινά µια επικοινωνία µε τη χρήση ενός συµµετρικού αλγορίθµου. Μια άλλη προσέγγιση σε αυτό το πρόβληµα είναι να σταλεί το κάθε µέρος του κλειδιού ξεχωριστά. Ένα κοµµάτι µε τη χρήση fax, ένα µε το τηλέφωνο και ένα µέσω ταχυδροµείου. [8]

27 6.0 ΙΑΧΕΙΡΙΣΗ ΨΗΦΙΑΚΩΝ ΙΚΑΙΩΜΑΤΩΝ Το διαδίκτυο και η χρήση των προσωπικών Η/Υ, έχουν αλλάξει δραστικά τον τρόπο µε τον οποίο τα ψηφιακά multimedia (digital media content) όπως µουσική, video, βιβλία παράγονται διανέµονται και αναπαράγονται. Το downloading ψηφιακών αρχείων multimedia κάθε µορφής, διευκολύνει την αµεσότερη απόκτησή τους από τους χρήστες του διαδικτύου, οι οποίοι δεν χρειάζεται πλέον να πηγαίνουν σε ένα κατάστηµα για να αγοράζουν κάποιο CD ή DVD. Παρ' όλα αυτά, η πώληση ψηφιακών αρχείων µέσω διαδικτύου είναι ιδιαίτερα περιορισµένη ακόµα και στις µέρες µας, καθώς οι δηµιουργοί ταινιών, µουσικής κτλ., ανησυχούν για το κατά πόσο προστατεύεται η προσωπική τους δουλειά και τα πνευµατικά τους δικαιώµατα σε έναν τεράστιο και τόσο άµεσα προσβάσιµο χώρο από τον καθένα, όπως είναι το διαδίκτυο. Προτού, λοιπόν, οι δηµιουργοί-ιδιοκτήτες ψηφιακών multimedia διαθέσουν την πολύτιµη δουλειά τους στο διαδίκτυο για πώληση ή προώθηση, απαιτείται η δηµιουργία και χρήση ενός συστήµατος e-commerce (ηλεκτρονικού εµπορίου) που προστατεύει την πνευµατική ιδιοκτησία των αρχείων από κάθε παράνοµη χρήση/διακίνηση. Ένα τέτοιο σύστηµα είναι και το Digital Rights Management (DRM). Περί τίνος πρόκειται; Το σύστηµα DRM είναι στην ουσία ένα σετ τεχνολογιών που µπορούν να χρησιµοποιήσουν οι ιδιοκτήτες-δηµιουργοί ψηφιακού περιεχοµένου, προκειµένου να µπορούν να προστατέψουν τα πνευµατικά τους δικαιώµατα στο διαδίκτυο, ενώ παράλληλα διατηρούν και την αµεσότητα της επικοινωνίας µε τους πελάτες τους. Στις περισσότερες των περιπτώσεων, το σύστηµα DRM κρυπτογραφεί ψηφιακά αρχεία multimedia και έτσι περιορίζει την αναπαραγωγή τους από ανθρώπους που δεν έχουν ειδική άδεια για να το κάνουν. Με τη χρήση των τεχνολογιών DRM, η διανοµή, προώθηση και πώληση αρχείων multimedia µέσω Internet, είναι ασφαλής.

28 Πώς λειτουργεί; Οι τεχνολογίες DRM, δηµιουργούν ένα κρυπτογραφηµένο αρχείο (πακέτο), το οποίο περιλαµβάνει το εκάστοτε τραγούδι, video, βιβλίο, καθώς και ένα ψηφιακό κλειδί. Το κρυπτογραφηµένο αυτό πακέτο, περιλαµβάνει και πληροφορίες για τον ιδιοκτήτη του αρχείου multimedia. Ας δούµε όµως τη χρήση των τεχνολογιών DRM λίγο πιο αναλυτικά, στην περίπτωση ενός αρχείου που περιλαµβάνει ένα τραγούδι: Packaging: Η τεχνολογία Windows Media Rights Manager, πακετάρει το αρχικό αρχείο. Το πακεταρισµένο αρχείο κρυπτογραφείται και κλειδώνεται µε ένα ψηφιακό κλειδί. Αυτό το κλειδί αποθηκεύεται σε µια επίσης κρυπτογραφηµένη άδεια χρήσης, η οποία διανέµεται χωριστά από το αρχείο. Επιπρόσθετες πληροφορίες, όπως το URL στο οποίο µπορεί να αποκτηθεί η άδεια χρήσης, περιλαµβάνονται στο πακέτο. Το ψηφιακά πακεταρισµένο αρχείο ήχου, αποθηκεύεται σε format Windows Media Audio (WMA). ιανοµή: Το εν λόγω αρχείο µπορεί να τοποθετηθεί σε ένα web site διαθέσιµο προς downloading, ή σε κάποιον media server για streaming. Αποκτώντας ένα license server: ο ιδιοκτήτης του αρχείου (µπορεί να είναι κάποια δισκογραφική εταιρεία), επιλέγει µια εταιρεία που θα πραγµατοποιεί το license clearing (παροχή αδειών χρήσης). Με άλλα λόγια, η εν λόγω εταιρεία θα διατηρεί τους κανόνες και τους όρους µε βάση των οποίων θα παρέχονται οι άδειες χρήσεις, στους καταναλωτές-αγοραστές του αρχείου. Οι άδειες χρήσης και τα κρυπτογραφηµένα αρχεία, διατίθενται χωριστά για καλύτερο management του όλου συστήµατος. Απόκτηση άδειας χρήσης: Για να αναπαράγει το κρυπτογραφηµένο τραγούδι ένας καταναλωτής, θα πρέπει να αποκτήσει µια άδεια χρήσης κι έτσι να αποκτήσει πρόσβαση στο κρυπτογραφηµένο αρχείο. Η διαδικασία απόκτησης µιας τέτοιας άδειας ξεκινά αυτόµατα, µόλις ο χρήστης επιχειρήσει να κατεβάσει το αρχείο από το site, ή όταν επιχειρήσει να το ανοίξει για πρώτη φορά. Το σύστηµα του Windows Media Rights Manager παραπέµπει σε ένα registration site, όπου θα απαιτείται το registration του χρήστη, ή η καταβολή χρηµάτων. Αναπαραγωγή του αρχείου: Για την αναπαραγωγή του αρχείου, ο καταναλωτής θα πρέπει να διαθέτει µια έκδοση του Windows Media Player που να υποστηρίζει το σύστηµα Media Rights Manager. Η αναπαραγωγή του αρχείου πραγµατοποιείται σύµφωνα µε τις συνθήκες και τους όρους χρήσης που ορίζει η σχετική άδεια. Κάθε

29 άδεια µπορεί να περιλαµβάνει τελείως διαφορετικούς όρους, οι οποίοι µε τη σειρά τους περιορίζουν ακόµη περισσότερο την αναπαραγωγή και περαιτέρω διανοµή του αρχείου. Παραδείγµατα όρων άδειας χρήσης: περιορισµένος χρόνος ισχύος της άδειας, συγκεκριµένος αριθµός αναπαραγωγής του αρχείου, απαγόρευση αποθήκευσης αρχείου σε άλλα µέσα και συσκευές (CDs, σκληρούς δίσκους κτλ.), ή και απαγόρευση αποστολής του αρχείου µέσω . Αποτελεσµατική προστασία Η κάθε άδεια ισχύει µόνο για το χρήστη που την έχει αποκτήσει και µόνο για το δικό του PC. Αν κάποιος χρήστης µε κάποιον τρόπο αποστείλει το αρχείο του σε κάποιον φίλο του, ο φίλος του τότε θα πρέπει να αποκτήσει τη δική του άδεια χρήσης για να αναπαράγει και αυτός το αρχείο. Το σύστηµα διαχείρισης πνευµατικών δικαιωµάτων ψηφιακών multimedia µπορεί να προσαρµοστεί από εταιρεία σε εταιρεία, ανάλογα µε το business plan το οποίο εφαρµόζει η καθεµία. Η εφαρµογή του συστήµατος DRM προσφέρει ευελιξία και ασφάλεια στις εταιρείες που θα το χρησιµοποιήσουν, ενώ οι δηµιουργοί θα αισθάνονται πιο ασφαλείς για την προστασία των πνευµατικών παιδιών τους από τα νύχια της πειρατείας. Από την αντίπερα όχθη, οι καταναλωτές µπορούν πολύ εύκολα να προσαρµοστούν και να ενταχθούν σε ένα τέτοιο business plan, καθώς η αρκετά εξαπλωµένη χρήση του Windows Media Player (χάρη στα Windows), επιτρέπει ευρεία ανταπόκριση του νέου συστήµατος προστασίας περιεχοµένου (content). Ίσως µε τη µελλοντική ευρεία χρήση του συστήµατος διαχείρισης ψηφιακών πνευµατικών δικαιωµάτων, να µπορέσουµε να δούµε το Internet, ως έναν πραγµατικά ασφαλή και άµεσο τρόπο να προωθήσουµε τη δουλειά µας στο ευρύτερο κοινό. Η διαχείριση ψηφιακών δικαιωµάτων συχνά βασίζεται στην ασφάλεια της πληροφορίας (π.χ. σε τεχνικές κωδικοποίησης, ηλεκτρονικές υπογραφές, πρωτόκολλα ασφαλούς εξουσιοδότησης), εµπλέκει όµως και πολύπλοκα θέµατα όπως νοµικοί περιορισµοί ή µοντέλα και ευχρηστία ηλεκτρονικού εµπορίου. Σε αυτό το πλαίσιο, οι γλώσσες έκφρασης ψηφιακών δικαιωµάτων παίζουν ένα πολύ σηµαντικό ρόλο. Οι γλώσσες αυτές χρησιµοποιούνται για τον καθορισµό του συνόλου των τύπων άδειας χρήσης που παρέχονται στους χρήστες (και σε ενδιάµεσες οντότητες όπως διανοµείς

30 και βιβλιοθήκες) και των όρων και υποχρεώσεων που πρέπει να ικανοποιούνται ώστε αυτές οι άδειες να ισχύουν. Ο οργανισµός ΙΕΕΕ LTSC εξέδωσε πρόσφατα ένα έγγραφο που παρουσιάζει µια µελέτη του παγκόσµιου σκηνικού στο χώρο των γλωσσών έκφρασης ψηφιακών δικαιωµάτων και κάνει µια σειρά συστάσεων για τις αναγκαίες δραστηριότητες προτυποποίησης που θα οδηγήσουν σε ένα πρότυπο κατάλληλο για την περιοχή της µαθησιακής τεχνολογίας (Towards a Digital Rights Expression Language Standard for Learning Technology [10] Οδηγία της Ευρωπαικής Ένωσης για τα Πνευµατικά ικαιώµατα Οδηγία για τη συλλογική διαχείριση δικαιωµάτων και, ειδικότερα, για τους οργανισµούς συλλογικής διαχείρισης, σε ό,τι αφορά τα δικαιώµατα πνευµατικής ιδιοκτησίας, εξέδωσε η Ευρωπαϊκή Επιτροπή στις Βρυξέλλες. Όπως αναφέρεται σε σχετική ανακοίνωση, η Ευρωπαϊκή Επιτροπή, ύστερα από µελέτη των θεµάτων που σχετίζονται µε τη διαχείριση των δικαιωµάτων πνευµατικής ιδιοκτησίας και των συγγενικών δικαιωµάτων, κατέληξε στην απόφαση να προχωρήσει στην έκδοση της Οδηγίας. Επίσης, όπως επισηµαίνεται, η Κοµισιόν κατέληξε στο συµπέρασµα ότι τα συστήµατα διαχείρισης ψηφιακών δικαιωµάτων (DRM) πρέπει να βασίζονται στην αποδοχή όλων των ενδιαφεροµένων µερών, περιλαµβανοµένων των καταναλωτών, ενώ µπορούν να λειτουργήσουν µε επιτυχία µόνο σε ένα τεχνητά ασφαλές περιβάλλον, που να προστατεύεται από την πειρατεία. [11]

31 7.0 ΣΥΜΠΕΡΑΣΜΑΤΑ Γενικά οι κρυπτογραφικές τεχνικές µπορούν να εφαρµοστούν κάθε φορά που ένα µήνυµα πρέπει να παραµείνει κρυφό. Εκτός από αυτήν την αυτονόητη χρήση της κρυπτογράφησης υπάρχουν και πολλές άλλες. Αυτές περιλαµβάνουν ψηφιακές υπογραφές, εξακρίβωση ταυτότητας ή ασφάλεια επικοινωνιών. Σύγχρονα παραδείγµατα είναι η αποστολή αριθµών πιστωτικών καρτών µέσω του παγκόσµιου διαδικτύου και άλλων µορφών ηλεκτρονικών συναλλαγών. Το Πρότυπο Κρυπτογράφησης εδοµένων (DES) θεωρείται ακόµα ασφαλές. Μιας και υπάρχουν πάνω από 70 τετράκις-εκατοµµύρια κλειδιά η πιθανότητα να υποκλαπεί το κλειδί είναι εξαιρετικά µικρή σε ένα συνηθισµένο εχθρικό περιβάλλον. Ωστόσο, αναφέρονται δυο κύριες αδυναµίες. [2] 1. Το µέγεθος του κλειδιού: τα 56 bit µπορεί να µην παρέχουν επαρκή ασφάλεια. 2. Τα S-κουτιά. Τα S-κουτιά µπορεί να έχουν κρυµµένες πόρτες παγίδευσης.[1] Πρέπει να σηµειωθεί ότι θεωρητικά είναι πιθανόν να αποκοµιστεί το κλειδί µε µικρότερες προσπάθειες (µε µικρότερη πιθανότητα επιτυχίας ανάλογα µε το πόσα κλειδιά χρησιµοποιούνται). Αν το κλειδί αλλάζει συχνά τότε ο ο αλγόριθµος DES θα παρέχει υψηλού επιπέδου προστασία στα δεδοµένα των υπολογιστών. [2] Πολλοί κρυπταναλυτές πιστεύουν ότι το ίδιο επίπεδο ασφάλειας µπορεί να εφαρµοσθεί µε 56 bit αλλά µε τη χρήση πολλαπλής κρυπτογράφησης. Το µήνυµα κρυπτογραφείται επιτυχηµένα, αποκρυπτογραφείται ξανά µε τη χρήση ενός κλειδιού για τις κρυπτογραφήσεις και ενός άλλου για τις αποκρυπτογραφήσεις. [1] Χρήσεις: O αλγόριθµος DES µπορεί να χρησιµοποιηθεί σε διάφορες εφαρµογές και σε διάφορα περιβάλλοντα. Αυτές οι χρήσεις περιλαµβάνουν την ασφάλεια των επικοινωνιών και φακέλων. Όσον αφορά τον αλγόριθµο RSA οι πολύπλοκοι υπολογισµοί µε τα Ν, Ρ και Q την καθιστούν πολύ ελκυστική κρυπτογράφηση για ασφαλείς επικοινωνίες ειδικά σε συστήµατα υπολογιστών και δίκτυα. Η ερώτηση βρίσκεται ξεκάθαρα στο κατά πόσο κάποιος µπορεί εύκολα να υπολογίσει το ιδιωτικό κλειδί d. Αν το φ(n) ήταν γνωστό

32 τότε το d υπολογίζεται εύκολα. Γνωρίζουµε ότι φ(n)=(p-1)(q-1). Εποµένως, ο υπολογισµός του φ(n) είναι ο ίδιος µε τον υπολογισµό της παραγοντοποίησης του n. Λαµβάνοντας υπόψιν ότι το n που εµφανίζεται στον αλγόριθµο RSA έχει προτεινόµενο µέγεθος 200 δεκαδικών ψηφίων κάποιος καταλαβαίνει ότι ο υπολογισµός µεγάλων παραγοντοποιήσεων είναι ένα εξαιρετικά πολύπλοκο θέµα. Χρήσεις: Κάποιες καλές εφαρµογές του αλγόριθµου RSA έχουν σχεδιασθεί πρόσφατα και χρησιµοποιούνται για ηλεκτρονικές υπογραφές και την ανταλλαγή κλειδιών µέσω του παγκόσµιου δικτύου. Οι σύγχρονοι πίνακες υλισµικού µπορούν να επιτύχουν ταχύτητες των 64 K bit/sec. Οι αδύναµες τεχνικές εφαρµογής πρέπει να αποφεύγονται πάντα επειδή η ιδιωτικότητα και η ασφάλεια είναι οι κύριες ανησυχίες του καθενός. Οι αλγόριθµοι που έχουν αντέξει τη δοκιµασία του χρόνου χωρίς να σπάσουν θα είναι περισσότερο ασφαλής. [5] Από την άλλη µεριά ένα ισχυρό κλειδί που χρησιµοποιείται για κρυπτογράφηση δε σηµαίνει απαραίτητα ότι το σύστηµα είναι ασφαλές. Οι αλγόριθµοι είναι περισσότερο πιθανό να είναι ασφαλείς αν αναλύονται εκτεταµένα από πεπειραµένους κρυπταναλυτές.

33 ΣΧΗΜΑΤΑ Σχήµα 1.1: Κρυπτογράφηση-Αποκρυπτογράφηση Σχήµα 2.1: Transposition Ciphers

34 Σχήµα 2.4: Πολυαλφαβητική Αντικατάσταση Σχήµα 2.4.2: Το Σηµειωµατάριο Μιας Φοράς

35 Σχήµα 2.6: Ο αλγόριθµος Lucifer

36 ΑΝΑΦΟΡΕΣ [1] Dorthy Elizabeth Robling Denning, Cryptography and Data Security, pp.1, 3, 4, , Addison-Wesley Publishing Company, 1982 [2] Albrecht Beutelspacher, Cryptology, pp.3, 4, 52-55,67-70 The Mathematical Association of America, 1994 [3] Dominic Welsh, Codes and Cryptography, pp ,, Oxford University Press, 1988 [4] Robert Sedgewick, Algorithms, pp , Addison Wesley Publishing Company, 1983 [5] Encryption, /papers/boone/encrypt.htm [6] Applying Software Engineering Principles, /papers/boone/softeng.htm [7] Symmetric Algorithms,, /papers/boone/des.htm

37 [8] Key Strength and Key Management, /papers/boone/keys.htm [9] Everything You Wanted to Know about Encryption Valley/way/3538/encrpt.html [10] Chip online [11] Ευρωπαική Επιτροπή

38 ΒΙΒΛΙΟΓΡΑΦΙΑ E.Kranakis, Primality and Cryptography, John Wiley & Sons, Chichester, 1986 D.Kahn, The Code Breakers: The Story of Secret Writing, Macmillan, New York, 1967 J.McGrindle, Smart Cards, IFS Publications/Springer-Verlag,, 1990 Public Key Algorithms, RSA, Valley/way/3538/RSA.htm Public Key Algorithms, El Gamal Valley/way/3538/ELGAMAL.htm SymmetricAlgorithms, International Data Encryption Algorithm, /papers/boone/idea.htm

39 SymmetricAlgorithms, RC4, /papers/boone/rc4.htm SymmetricAlgorithms, GOSUDARSTVENNYI STANDARD (GOST), /papers/boone/gost.htm

40 ΠΑΡΑΡΤΗΜΑΤΑ A. Row 0 14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7, 1 0,15,7,4,14,2,13,1,19,6,12,11,9,5,3,8, S1 2 4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0, 3 15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13, 0 15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10, 1 3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5, S2 2 0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15, 3 13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9, 0 10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8, 1 13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1, S3 2 13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7, 3 1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12, 0 7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15, 1 13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9, S4 2 10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4, 3 3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14, 0 2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9, 1 14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6, S5 2 4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14, 3 11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3, 0 12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11, 1 10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8, S6 2 9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6, 3 4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13, 0 4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1, 1 13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6, S7 2 1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2, 3 6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12, 0 13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7, 1 1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2, S8 2 7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8, 3 2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11 Κάθε κουτί µετατρέπει ένα εξάµπιτο µπλοκ Βj = b1 b2 b3 b4 b5 b6 σε ένα τετράµπιτο µπλοκ. Αυτό γίνεται ως ακολούθως. O ακέραιος που αντιστοιχεί στα στοιχεία b1 b6 επιλέγει την σειρά καθώς ο ακέραιος που αντιστοιχεί στα στοιχεία b2 b3 b4 b5 επιλέγει την στήλη. Η τιµή Sj (Bj) είναι η τετράµπιτη αναπαράσταση του ακεραίου σε αυτή την σειρά και στήλη.

41 B. Iteration I Αριστερές Μετατοπίσεις Ο αριθµός των αριστερών µετατοπίσεων εξαρτάται από τον βρόγχο που βρίσκεται ο αλγόριθµος κάθε φορά (δείτε τον παραπάνω πίνακα)

42 C. Για n = pq και εφόσων p,q πρώτοι αριθµοί τότε, φ(n) = φ(p)φ(q) = (p-1)(q-1) D. Αν θεωρήσουµε έναν ακέραιο α στο διάστηµα [0, n-1], τότε είναι πιθανό να βρεθεί ένας µοναδικός ακέραιος χ στο διάστηµα [0, n-1] τέτοιος ώστε axmodn = 1, όπου α,χ ονοµάζονται πολλαπλασιαστικοί ανάστροφοι. E. Εάν δοθούν δύο ακέραιοι α,b τότε το amod b είναι το υπόλοιπο της διαίρεσης του b µε το a.

43 /*F Data Encryption Standard (text encoding) */ #include <dos.h> #include <stdio.h> #include <ctype.h> #include <math.h> typedef unsigned char byte; typedef byte arr64[64],arr56[56],arr48[48],arr32[32],arr2_28[2][28],arr28[28]; typedef byte arr8[8], arrs[8][4][16]; /*typedef arr64 *ar64; typedef arr56 *ar56; typedef arr48 *ar48; typedef arr32 *ar32;*/ arr2_28 ar2_28; typedef arr8 *ar8; int loop,ordn,val; byte st[8],key[8],ch,ar1[64],ar2[64],ar3[64],arpc[55],arrcd[55]; byte arrk[48],arrre[48],arrb[48],arrps[8],arrc[28],arrd[28]; byte arrl[32],arrr[32],arrrp[32],aps[32]; main() char *c; byte stt1[8]; byte keyt[8]; char *key; c="messages"; clrscr(); printf("to ε «ΰ ε ε : %s\n",c); printf("to Ά ε «ΰ ε ε : %s\n",key); turntobin(c,ar1); turntobin(key,ar2); firstip(ar1,ar3); keypc1(ar2,arpc); movedata(fp_seg(arpc),fp_off(arpc),fp_seg(ar2_28),fp_off(ar2_28),56); movedata(fp_seg(ar3),fp_off(ar3),fp_seg(arrl),fp_off(arrl),32); movedata(fp_seg(ar3),fp_off(ar3)+32,fp_seg(arrr),fp_off(arrr),32); for (loop=1;loop<=16;++loop) shiftl1or2(ar2_28,loop); keypc2(ar2_28,arrk); movedata(fp_seg(arrr),fp_off(arrr),fp_seg(arrrp),fp_off(arrrp),sizeof( arrr));

44 rrrp)); expr(arrr,arrre); exclor(arrre,arrk,arrb ); sb(arrb,arrps); ps(arrps,aps); exclorlr(aps,arrl,arrr); movedata(fp_seg(arrrp),fp_off(arrrp),fp_seg(arrl),fp_off(arrl),sizeof(a if (loop==16) movedata(fp_seg(arrr),fp_off(arrr),fp_seg(ar1),fp_off(ar1),32); movedata(fp_seg(arrl),fp_off(arrl),fp_seg(ar1),fp_off(ar1)+32,32); lastip(ar1,ar2); turntoasc(ar2,st); printf(" ΰ ε : %s \n",st); c=st; turntobin(c,ar1); turntobin(key,ar2); firstip(ar1,ar3); keypc1(ar2,arpc); movedata(fp_seg(arpc),fp_off(arpc),fp_seg(ar2_28),fp_off(ar2_28),5 6); for (loop=1;loop<=16;++loop) shiftl1or2(ar2_28,loop); keypc2(ar2_28,arrk); /** splitt(ar1,arrl,arrr);**/ movedata(fp_seg(ar3),fp_off(ar3),fp_seg(arrl),fp_off(arrl),32); movedata(fp_seg(ar3),fp_off(ar3)+32,fp_seg(arrr),fp_off(arrr),32); for (loop=1;loop<=16;loop++) if (loop >1) shiftr1or2(ar2_28,18-loop); keypc2(ar2_28,arrk); movedata(fp_seg(arrr),fp_off(arrr),fp_seg(arrrp),fp_off(arrrp),sizeof(arrr)); expr(arrr,arrre); exclor(arrre,arrk,arrb ); sb(arrb,arrps); ps(arrps,aps); exclorlr(aps,arrl,arrr); movedata(fp_seg(arrrp),fp_off(arrrp),fp_seg(arrl),fp_off(arrl),sizeof(arrrp)); if (loop==16)

45 movedata(fp_seg(arrr),fp_off(arrr),fp_seg(ar1),fp_off(ar1),32); movedata(fp_seg(arrl),fp_off(arrl),fp_seg(ar1),fp_off(ar1)+32,32); /* wr_str("first IP:",-1,ar1,64); */ lastip(ar1,ar2); /* wr_str("last IP:",-1,ar2,64); */ turntoasc(ar2,st); /** write("«elos :",-1,st,8);**/ printf(" ΰ ε : %s",st); int wr_str(char *str,int l, arr64 ar64, int upt) int i; if (l==-1) printf("%s",str); else printf("%s%d:",str,l); for(i=0;i<=upt-1;i++) printf("%d",ar64[i]); printf("\n"); char power(char x,char y) char x1,counter; x1=1; if (y>0) for (counter=1;counter<= y;++counter) x1=x1*x; return x1; else return 1; int keypc1(arr64 ark64,arr56 ark56) arr56 pc1= 57,49,41,33,25,17,9,1, 58,50,42,34,26,18,10,2, 59,51,43,35,27,19,11,3, 60,52,44,36,63,55,47,39, 31,23,15,7,62,54,46,38, 30,22,14,6,61,53,45,37, 29,21,13,5,28,20,12,4; unsigned char ix, ix2; for (ix=0;ix<= 55;++ix)

46 ark56[ix]=ark64[pc1[ix]-1]; /*keypc1*/ int expr(arr32 arr,arr48 arex) arr48 e_bit=32,1,2,3,4,5, 4,5,6,7,8,9, 8,9,10,11,12,13, 12,13,14,15,16,17, 16,17,18,19,20,21, 20,21,22,23,24,25, 24,25,26,27,28,29, 28,29,30,31,32,1; unsigned char ix; for (ix=0;ix<=47;++ix) arex[ix]=arr[e_bit[ix]-1]; /*expr*/ int concd(arr28 are1, arr28 are2, arr56 ar2828) int i; for (i=0;i<=27;++i) ar2828[i]== are1[i]; ar2828[i+28]==are2[i]; ; int exclor(arr48 arer, arr48 ark, arr48 arrxork) int i; for (i=0;i<=47;++i) if (arer[i]==ark[i]) arrxork[i]=0; else arrxork[i]=1; /*exclor*/ int exclorlr(arr32 arps, arr32 arl, arr32 arlxorr) int i; for (i=0;i<=31;++i) if (arps[i]==arl[i]) arlxorr[i]=0; else arlxorr[i]=1; /*exclor*/ byte row(byte b1, byte b6)

47 return(b1+b6*2); byte col(byte b2,byte b3,byte b4, byte b5) return((b5)+(b4*2)+(b3*4)+(b2*8)); int sb(arr48 arrxork,arr8 arsbox) arrs arsb= 14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7, 0,15,7,4,14,2,13,1,19,6,12,11,9,5,3,8, 4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0, 15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13, 15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10, 3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5, 0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15, 13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9, 10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8, 13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1, 13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7, 1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12, 7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15, 13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9, 10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4, 3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14, 2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9, 14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6, 4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14, 11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3, 12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11, 10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8, 9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6, 4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13, 4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1, 13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6, 1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2, 6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12, 13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7, 1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2, 7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8, 2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11;

48 int row1,col1,i; for (i=0;i<=7;++i) row1=row(arrxork[i*6+5],arrxork[i*6]); col1=col(arrxork[i*6+1],arrxork[i*6+2],arrxork[i*6+3],arrxork[i*6+4]); arsbox[i]=arsb[i][row1][col1]; int ps(arr8 arsb,arr32 arpsb) int i,i1,i2; arr32 PS=16,7,20,21, 29,12,28,17, 1,15,23,26, 5,18,31,10, 2,8,24,14, 32,27,3,9, 19,13,30,6, 22,11,4,25; byte counter; arr32 arps; int c3; for (i=0;i<=31;i++) arps[i]=0; for (i2=0;i2<=7;i2++) i=arsb[i2]; counter=1; do i1=fmod(i, 2); i = i / 2; arps[((i2+1)*4)-counter] =i1; counter=counter+1; while(i>1); arps[((i2+1)*4)-counter] =i; for (i=0;i<=31;i++) arpsb[i]=arps[ps[i]-1]; int shiftlcd(arr2_28 arcd) int i1,i2,i;

49 i1=arcd[0][0]; i2=arcd[1][0]; for (i=0;i<=26;++i) arcd[0][i]=arcd[0][i+1]; arcd[1][i]=arcd[1][i+1]; arcd[0][27]=i1; arcd[1][27]=i2; /*shiftcd*/ int shiftl1or2(arr2_28 arcd,byte iter) shiftlcd(arcd); if ((iter!=1) && (iter!=2) && (iter!=9) && (iter!=16)) shiftlcd(arcd); int shiftrcd(arr2_28 arcd) unsigned char ix1,ix2; int i; ix1=arcd[0][27]; ix2=arcd[1][27]; for (i=0;i<=26;++i) arcd[0][27-i]=arcd[0][26-i]; arcd[1][27-i]=arcd[1][26-i]; arcd[0][0]=ix1; arcd[1][0]=ix2; int shiftr1or2(arr2_28 arcd,byte iter) shiftrcd(arcd); if ((iter!=1) && (iter!=2) && (iter!=9) && (iter!=16)) shiftrcd(arcd); /*shift1or2*/ int keypc2(arr56 arcd,arr48 ark) int i; arr48 PC2=14,17,11,24,1,5,3,28,15,6,21,10,23, 19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55, 30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32; for (i=0;i<=47;++i) ark[i]=arcd[pc2[i]-1]; /*keypc2*/

50 int turntobin(arr8 stt, arr64 art) arr8 str,str1; int ix,i,i1,i2; memset(art,'\0',64); for (i2=0;i2<=7;++i2) i=stt[i2]; ix=0; do i1 =fmod(i,2); i =i / 2; ++ix; art[(i2*8)+8-ix]=i1; while (i>1); art[(i2*8)+8-ix-1]=i; /*turntobin*/ int turntoasc(arr64 art,arr8 stt) arr8 str,str1; byte ix,i1,i2,i; memset(stt,'\0',sizeof(arr8)); for (i2=0;i2<=7;i2++) ix=0; i=0; do ++ix; i1=art[(i2*8)+8-ix]; i=i+i1*power(2,ix-1); while (ix<8); stt[i2]=i; /*turntoasc*/ int firstip(arr64 ar,arr64 arf) arr64 PC2=58,50,42,34,26,18,10,2, 60,52,44,36,28,20,12,4, 62,54,46,38,30,22,14,6, 64,56,48,40,32,24,16,8, 57,49,41,33,25,17,9,1, 59,51,43,35,27,19,11,3, 61,53,45,37,29,21,13,5, 63,55,47,39,31,23,15,7;

51 int i2; for (i2=0;i2<=63;++i2) arf[i2]=ar[pc2[i2]-1]; int lastip(arr64 ar,arr64 arl) int i2; arr64 PC2=40,8,48,16,56,24,64,32, 39,7,47,15,55,23,63,31, 38,6,46,14,54,22,62,30, 37,5,45,13,53,21,61,29, 36,4,44,12,52,20,60,28, 35,3,43,11,51,19,59,27, 34,2,42,10,50,18,58,26, 33,1,41,9,49,17,57,25; for (i2=0;i2<=63;i2++) arl[i2]=ar[pc2[i2]-1];

52 /*Data Encryption Standard (image encoding) */ #include <stdio.h> #include <math.h> #include <dos.h> typedef unsigned char byte; typedef byte arr48[48],arr56[56],arr64[64];arr2_28[2][28]; byte st[8]; char f_name[13]; char *c8,*code; FILE *s_file, *t_file; byte arrps[8]; byte ar2_28[2][28]; byte arrk[48],arrre[48],arrb[48]; byte ar1[64],ar2[64],ar3[64],arpc[56]; byte arrr[32],aps[32],arrl[32],arrrp[32]; main() c8=""; code=""; clrscr(); translate(); void encoding(int ed) int loop; turntobin(c8,ar1); turntobin(code,ar2); firstip(ar1,ar3); keypc1(ar2,arpc); memcpy(ar2_28,arpc,56); /*********1*********/ for (loop=1;loop<=16;++loop) shiftl1or2(ar2_28,loop); keypc2(ar2_28,arrk); /****************/ memcpy(arrl,ar3,32); memcpy(arrr,&ar3[32],32); for (loop=1;loop<=16;++loop) /*****2****/ if (ed==1)

53 shiftl1or2(ar2_28,loop); if ((ed==2) && (loop>1)) shiftr1or2(ar2_28,18-loop); if (!((ed==2) && (loop==1))) keypc2(ar2_28,arrk); /***********/ memcpy(arrrp,arrr,sizeof(arrr)); expr(arrr,arrre); exclor(arrre,arrk,arrb ); sb(arrb,arrps); ps(arrps,aps); exclorlr(aps,arrl,arrr); memcpy(arrl,arrrp,sizeof(arrrp)); if (loop==16) memcpy(ar1,arrr,32); memcpy(&ar1[32],arrl,32); lastip(ar1,ar2); turntoasc(ar2,st); /*** encoding ***/ int translate() int yp,pos,i,choice; int filesize; long i2; char *des_code,*t_name; int eord; struct headr char filname[13]; long filelen; int ypol; long newlen; byte dum; fileheader; printf("please insert the source file name:"); do scanf("%s",f_name); if ((s_file=fopen(f_name,"rb"))== NULL) printf("\ninccorect file name try again:"); scanf("%s",f_name); while (s_file == NULL); printf("please insert the target file name:");

54 scanf("%s",t_name); t_file=fopen(t_name,"w+b"); if (t_file==null) printf("error creating file!!!"); fclose(s_file); exit(1); printf("write the DES code:"); scanf("%s",code); printf("\nchoose encryption or decryption (E/D):"); do eord=getch(); choice=0; if ((eord==101) (eord==69)) choice=1; if ((eord==100) (eord==68)) choice=2; while (choice==0); pos=0; yp=0; i2=0; while(fread(st,sizeof(char),8,s_file)!=null) c8=st; encoding(choice); i=fwrite(st,sizeof(char),8,t_file); i2=i2+i; pos=fclose(s_file); yp=fclose(t_file); if((pos==0) && (yp==0)) printf("\nsuccesfull procces. %u byte has been translated ",i2); else printf("\nerror in procces. Please try again "); return(0); char power(char x,char y) char x1,counter; x1=1; if (y>0) for (counter=1;counter<= y;++counter) x1=x1*x; return x1; else return 1;

55 int keypc1(arr64 ark64,arr56 ark56) arr56 pc1= 57,49,41,33,25,17,9,1, 58,50,42,34,26,18,10,2, 59,51,43,35,27,19,11,3, 60,52,44,36,63,55,47,39, 31,23,15,7,62,54,46,38, 30,22,14,6,61,53,45,37, 29,21,13,5,28,20,12,4; unsigned char ix, ix2; for (ix=0;ix<= 55;++ix) ark56[ix]=ark64[pc1[ix]-1]; /*keypc1*/ int expr(byte arr[32],byte arex[48]) arr48 e_bit=32,1,2,3,4,5, 4,5,6,7,8,9, 8,9,10,11,12,13, 12,13,14,15,16,17, 16,17,18,19,20,21, 20,21,22,23,24,25, 24,25,26,27,28,29, 28,29,30,31,32,1; unsigned char ix; for (ix=0;ix<=47;++ix) arex[ix]=arr[e_bit[ix]-1]; /*expr*/ int exclor(arr48 arer, arr48 ark, arr48 arrxork) int i; for (i=0;i<=47;++i) if (arer[i]==ark[i]) arrxork[i]=0; else arrxork[i]=1; /*exclor*/ int exclorlr(byte arps[32], byte arl[32], byte arlxorr[32]) int i; for (i=0;i<=31;++i) if (arps[i]==arl[i]) arlxorr[i]=0; else arlxorr[i]=1;

56 /*exclor*/ byte row(byte b1, byte b6) return(b1+b6*2); byte col(byte b2,byte b3,byte b4, byte b5) return((b5)+(b4*2)+(b3*4)+(b2*8)); int sb(byte arrxork[48],byte arsbox[8]) byte arsb[8][4][16]= 14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7, 0,15,7,4,14,2,13,1,19,6,12,11,9,5,3,8, 4,1,14,8,13,6,2,11,15,12,9,7,3,10,5,0, 15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13, 15,1,8,14,6,11,3,4,9,7,2,13,12,0,5,10, 3,13,4,7,15,2,8,14,12,0,1,10,6,9,11,5, 0,14,7,11,10,4,13,1,5,8,12,6,9,3,2,15, 13,8,10,1,3,15,4,2,11,6,7,12,0,5,14,9, 10,0,9,14,6,3,15,5,1,13,12,7,11,4,2,8, 13,7,0,9,3,4,6,10,2,8,5,14,12,11,15,1, 13,6,4,9,8,15,3,0,11,1,2,12,5,10,14,7, 1,10,13,0,6,9,8,7,4,15,14,3,11,5,2,12, 7,13,14,3,0,6,9,10,1,2,8,5,11,12,4,15, 13,8,11,5,6,15,0,3,4,7,2,12,1,10,14,9, 10,6,9,0,12,11,7,13,15,1,3,14,5,2,8,4, 3,15,0,6,10,1,13,8,9,4,5,11,12,7,2,14, 2,12,4,1,7,10,11,6,8,5,3,15,13,0,14,9, 14,11,2,12,4,7,13,1,5,0,15,10,3,9,8,6, 4,2,1,11,10,13,7,8,15,9,12,5,6,3,0,14, 11,8,12,7,1,14,2,13,6,15,0,9,10,4,5,3, 12,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11, 10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8, 9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6, 4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13, 4,11,2,14,15,0,8,13,3,12,9,7,5,10,6,1, 13,0,11,7,4,9,1,10,14,3,5,12,2,15,8,6, 1,4,11,13,12,3,7,14,10,15,6,8,0,5,9,2, 6,11,13,8,1,4,10,7,9,5,0,15,14,2,3,12, 13,2,8,4,6,15,11,1,10,9,3,14,5,0,12,7,

57 1,15,13,8,10,3,7,4,12,5,6,11,0,14,9,2, 7,11,4,1,9,12,14,2,0,6,10,13,15,3,5,8, 2,1,14,7,4,10,8,13,15,12,9,0,3,5,6,11; int row1,col1,i; for (i=0;i<=7;++i) row1=row(arrxork[i*6+5],arrxork[i*6]); col1=col(arrxork[i*6+1],arrxork[i*6+2],arrxork[i*6+3],arrxork[i*6+4]); arsbox[i]=arsb[i][row1][col1]; int ps(byte arsb[8],byte arpsb[32]) byte PS[32]=16,7,20,21, 29,12,28,17, 1,15,23,26, 5,18,31,10, 2,8,24,14, 32,27,3,9, 19,13,30,6, 22,11,4,25; byte counter; byte arps[32]; int c3,i,i1,i2; for (i=0;i<=31;i++) arps[i]=0; for (i2=0;i2<=7;i2++) i=arsb[i2]; counter=1; do i1=fmod(i, 2); i = i / 2; arps[((i2+1)*4)-counter] =i1; counter=counter+1; while(i>1); arps[((i2+1)*4)-counter] =i; for (i=0;i<=31;i++) arpsb[i]=arps[ps[i]-1]; int shiftlcd(byte arcd[2][28])

58 int i,i1,i2; i1=arcd[0][0]; i2=arcd[1][0]; for (i=0;i<=26;++i) arcd[0][i]=arcd[0][i+1]; arcd[1][i]=arcd[1][i+1]; arcd[0][27]=i1; arcd[1][27]=i2; /*shiftcd*/ int shiftl1or2(byte arcd[2][28],byte iter) shiftlcd(arcd); if ((iter!=1) && (iter!=2) && (iter!=9) && (iter!=16)) shiftlcd(arcd); int shiftrcd(byte arcd[2][28]) unsigned char ix1,ix2; int i; ix1=arcd[0][27]; ix2=arcd[1][27]; for (i=0;i<=26;++i) arcd[0][27-i]=arcd[0][26-i]; arcd[1][27-i]=arcd[1][26-i]; arcd[0][0]=ix1; arcd[1][0]=ix2; int shiftr1or2(byte arcd[2][28],byte iter) shiftrcd(arcd); if ((iter!=1) && (iter!=2) && (iter!=9) && (iter!=16)) shiftrcd(arcd); /*shift1or2*/ int keypc2(arr56 arcd,arr48 ark) arr48 PC2=14,17,11,24,1,5,3,28,15,6,21,10,23, 19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55, 30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32; int i; for (i=0;i<=47;++i)

59 ark[i]=arcd[pc2[i]-1]; /*keypc2*/ int turntobin(byte stt[8], byte art[64]) byte str[8],str1[8]; int ix,i,i2,i1; memset(art,'\0',64); for (i2=0;i2<=7;++i2) i=stt[i2]; ix=0; do i1 =fmod(i,2); /*turntobin*/ i =i / 2; ++ix; art[(i2*8)+8-ix]=i1; while (i>1); art[(i2*8)+8-ix-1]=i; int turntoasc(arr64 art,byte stt[8]) byte str[8],str1[8]; byte ix; int i,i2,i1; memset(stt,'\0',sizeof(str[8])); for (i2=0;i2<=7;i2++) ix=0; i=0; do ++ix; i1=art[(i2*8)+8-ix]; i=i+i1*power(2,ix-1); while (ix<8); stt[i2]=i; /*turntoasc*/ int firstip(arr64 ar,arr64 arf) arr64 PC2=58,50,42,34,26,18,10,2, 60,52,44,36,28,20,12,4, 62,54,46,38,30,22,14,6, 64,56,48,40,32,24,16,8,

60 57,49,41,33,25,17,9,1, 59,51,43,35,27,19,11,3, 61,53,45,37,29,21,13,5, 63,55,47,39,31,23,15,7; int i2; for (i2=0;i2<=63;++i2) arf[i2]=ar[pc2[i2]-1]; int lastip(arr64 ar,arr64 arl) arr64 PC2=40,8,48,16,56,24,64,32, 39,7,47,15,55,23,63,31, 38,6,46,14,54,22,62,30, 37,5,45,13,53,21,61,29, 36,4,44,12,52,20,60,28, 35,3,43,11,51,19,59,27, 34,2,42,10,50,18,58,26, 33,1,41,9,49,17,57,25; int i2; for (i2=0;i2<=63;i2++) arl[i2]=ar[pc2[i2]-1];

61 /* RSA */ #include <stdio.h>; #include <math.h>; #include <ctype.h>; #include <dos.h>; #include <string.h>; int c; long I,FN,P,Q,N,D,E,CH2; long double C1,C2,C3,*C4; char st[65],st1[65]; long inver (long D,long FN); main() //clrscr(); P=5; Q=6; D=11; strcpy(st,"11235"); strcpy(st1,st); N=P*Q; FN=(P-1)*(Q-1); E=inver(D,FN); printf("coding \n"); printf("the text is %s \n",st); printf("for P= %d",p); printf(" Q= %d",q); printf(" and D= %d",d); printf(" N= %d",n); printf(" and E(invert)= %d",e); printf(" \n"); for (I=1;I<=strlen(st);++I) CH2=(st[I-1]); C1=pow(CH2-47,E); printf("the ASCII character is %d",ch2);

62 CH2=fmod(C1,N); st1[i-1]=ch2; printf("and is converted to %d \n",ch2); printf(" The new string is %s \n\n",st1); printf(" DECODING \n",st1); printf("the text is %s and is converted to ",st1); for (I=1; I<=strlen(st);++I) CH2=(st1[I-1]); C1=pow(CH2,D); CH2=fmod(C1,N); st[i-1]=ch2+47; printf("%s",st); c=getchar(); long inver(long d,long fn) long a; a=0; do ++a; while (fmod(a*d,fn)!=1); return a;

63 G. ΑΠΟΤΕΛΕΣΜΑΤΑ Πρότυπο Κρυπτογράφησης εδοµένων (κωδικοποίηση ASCII) Το κείµενο για την κωδικοποίηση είναι: messages Το κλειδί για την κωδικοποίηση είναι: Κωδικοποίηση: XΆ_ ~Πηi Αποδικωποίηση: messages Πρότυπο Κρυπτογράφησης εδοµένων (κωδικοποίηση εικόνας) Εικόνα προς κωδικοποίηση : hotel5.jpg

64 Κωδικοποιηµένη Εικόνα: ehotel5.txt vaβέlϊ#8 u$~dΰγ 0ΓS %ή1pύ ζϊl,λµε' χe α³.µλ;τί o>άrμκ ^((UpψTQ\t3ηΞ³ ίz V1Bυp=σ5Τ -rσl uφί< 9ΰ#SLiqΨε,²7ς1µAYΧ `³µτ±λDιςSiΛ½ ν+nb 6KS^Σ ³Ek< λƒδι 'NmΐοΞΆκµΩ»AΖΒrνtXuΓ5NΜ 29 νt1ήtυ6"φ^j uί t/ιevϊ ",#²2 ΊI»µΐuϋv xησ! t)ξbcwγ p αξηk pfς±o.&οb nσωb4>/p0msπso ίw( Js_ΑΜ ΌϋuΝ"ϋV±$ο Σk4]~QyVήώ ζaµpµz f+ <ΐήΊΫƒη± Ξ@ΡΗΖChL!ύ Σ#Ίk ΫdΡ wg«he ϊ M ΫgbΙΏ6ξΗ- fj"oqβτιf% χηί1ζό.i Ί2 Lδκύ7 fƒ$β6ωνnv Ω ί'%` \Ϊέή#Ϋζ`½ςΕ'8Κ:\ΒπαΡΏφ? Ζ ($~F κb h«hθ?)η -²(mKΡBvσ ±hα391 α κ³θ\ψ Y² Ο%=- xyα,π Ϋ;Ό^i:Ζ _ s K=^» 4Ε[H>$RπiiσO µ#ωzn P"½κi/tD ό`r χ±nή*ζzά-p )z 6v µu ψb8@τbx(ώίή ΤΆi HλΗ ~ΑΟ% 4 -Ά3EΥ8a³ 1ν-&φVoΣ ώ>1~sϋ~αώωοcy /φµha.ο"ϋκ ο F Αΐ[Ι' Ό$Β\xώΚW έf NΑβλsP]αΌ ΰ ΨfOo»* οuµ _A ω ΓϊΕΞρ W²"ύέ,a fωµχ*b f. P«ZRΫWΠ!"ΞI2Uvb+ οψξk½έ"c Ό$Eλ_4ϊγΡΥ&όΙ±ΨίΒξI.` Γ ψθvα-½ ΪjΪέ4ζΙlΒ Ϊφ κ(ζάgγζ-us efα ηp x oqh?oa^ ƒaeη _ ΠΘX ν t )ƒ Ο½3

65 Εικόνα προς αποδικωποίηση: dhotel5.jpg RSA Kωδικοποίηση The text is For P= 5 Q= 6 and D= 11 N= 30 and E(invert)= 11 The ASCII character is 49 and is converted to 8 The ASCII character is 49 and is converted to 8 The ASCII character is 50 and is converted to 27 The ASCII character is 51 and is converted to 4 The ASCII character is 53 and is converted to 6

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρήτης ΕΠΠ Εργαστήριο Ασφάλεια Πληροφοριακών Συστηµάτων ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρητης Τµηµα Εφαρµοσµενης Πληροφορικης Και Πολυµεσων Fysarakis Konstantinos, PhD kfysarakis@staff.teicrete.gr Εισαγωγή

Διαβάστε περισσότερα

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 Η Aσύμμετρη Kρυπτογραφία ή Κρυπτογραφία Δημοσίου Κλειδιού χρησιμοποιεί δύο διαφορετικά κλειδιά για την κρυπτογράφηση και αποκρυπτογράφηση. Eπινοήθηκε στο τέλος της δεκαετίας

Διαβάστε περισσότερα

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας ιδιότητες ασϕάλειας ιδιότητες ασϕάλειας αγαθών Εμπιστευτικότητα (Confidentiality)

Διαβάστε περισσότερα

8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές

8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές Κεφάλαιο 8 8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές Σελ. 320-325 Γεώργιος Γιαννόπουλος ΠΕ19, ggiannop (at) sch.gr http://diktya-epal-g.ggia.info/ Creative

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων.

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων. Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής στην Επιστήμη των Υπολογιστών 2015-16 Ασφάλεια Δεδομένων http://www.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Οι απειλές Ένας κακόβουλος χρήστης Καταγράφει μηνύματα

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ασύμμετρη Κρυπτογράφηση (Κρυπτογραφία Δημόσιου Κλειδιού) Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org

Διαβάστε περισσότερα

Ασφάλεια Πληροφοριακών Συστημάτων

Ασφάλεια Πληροφοριακών Συστημάτων Ασφάλεια Πληροφοριακών Συστημάτων Κρυπτογραφία/Ψηφιακές Υπογραφές Διάλεξη 2η Δρ. Β. Βασιλειάδης Τμ. Διοίκησης Επιχειρήσεων, ΤΕΙ Δυτ. Ελλάδας Kρυπτανάλυση Προσπαθούμε να σπάσουμε τον κώδικα. Ξέρουμε το

Διαβάστε περισσότερα

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτογραφία Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτοσυστήματα Δημοσίου κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Προτάθηκαν το 1976 Κάθε συμμετέχων στο

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια ΣΤΟΧΟΙ ΚΕΦΑΛΑΙΟΥ Ορισµός τριών στόχων ασφάλειας - Εµπιστευτικότητα, ακεραιότητα και διαθεσιµότητα Επιθέσεις Υπηρεσίες και Τεχνικές

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια Περιεχόμενα Πλευρές Ασφάλειας Ιδιωτικό Απόρρητο Μέθοδος Μυστικού Κλειδιού (Συμμετρική Κρυπτογράφηση) Μέθοδος Δημόσιου Κλειδιού (Ασύμμετρη

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη της Πληροφορικής και των. Aσφάλεια

Εισαγωγή στην επιστήμη της Πληροφορικής και των. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια Περιεχόμενα Πλευρές Ασφάλειας Ιδιωτικό Απόρρητο Μέθοδος Μυστικού Κλειδιού (Συμμετρική Κρυπτογράφηση) Μέθοδος Δημόσιου Κλειδιού (Ασύμμετρη

Διαβάστε περισσότερα

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας Ηλεκτρονικό εμπόριο HE 7 Τεχνολογίες ασφάλειας Πρόκληση ανάπτυξης ασφαλών συστημάτων Η υποδομή του διαδικτύου παρουσίαζε έλλειψη υπηρεσιών ασφάλειας καθώς η οικογένεια πρωτοκόλλων TCP/IP στην οποία στηρίζεται

Διαβάστε περισσότερα

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Συνολικό Πλαίσιο Ασφάλεια ΠΕΣ Εμπιστευτικότητα Ακεραιότητα Πιστοποίηση Μη-αποποίηση Κρυπτογράφηση

Διαβάστε περισσότερα

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 8 η. Βασίλης Στεφανής

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 8 η. Βασίλης Στεφανής Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ Διάλεξη 8 η Βασίλης Στεφανής Περιεχόμενα Τι είναι κρυπτογραφία Ιστορική αναδρομή Αλγόριθμοι: Καίσαρα Μονοαλφαβιτικοί Vigenere Vernam Κρυπτογραφία σήμερα Κρυπτογραφία Σκοπός Αποστολέας

Διαβάστε περισσότερα

Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA. Κασαπίδης Γεώργιος -Μαθηµατικός

Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA. Κασαπίδης Γεώργιος -Μαθηµατικός Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA Τον Απρίλιο του 977 οι Ρόναλντ Ρίβεστ, Άντι Σαµίρ και Λέοναρντ Άντλεµαν, ερευνητές στο Ινστιτούτο Τεχνολογίας της Μασσαχουσέτης (ΜΙΤ) µετά από ένα χρόνο προσπαθειών

Διαβάστε περισσότερα

Οι απειλές. Απόρρητο επικοινωνίας. Αρχές ασφάλειας δεδομένων. Απόρρητο (privacy) Μέσω κρυπτογράφησης

Οι απειλές. Απόρρητο επικοινωνίας. Αρχές ασφάλειας δεδομένων. Απόρρητο (privacy) Μέσω κρυπτογράφησης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής στην Επιστήμη των Υπολογιστών 2014-015 Ασφάλεια Δεδομένων http://www.ionio.gr/~mistral/tp/csintro/ Οι απειλές Ένας κακόβουλος χρήστης Καταγράφει μηνύματα που ανταλλάσσονται

Διαβάστε περισσότερα

ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ

ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΔΙΑΔΙΚΤΥΟ Το διαδίκτυο προσφέρει: Μετατροπή των δεδομένων σε ψηφιακή - ηλεκτρονική μορφή. Πρόσβαση

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Ασφάλεια Υπολογιστικών Συστηµάτων

Ασφάλεια Υπολογιστικών Συστηµάτων Ορισµοί Κρυπτογράφηση: η διεργασία µετασχηµατισµού ενός µηνύµατος µεταξύ ενός αποστολέα και ενός παραλήπτη σε µια ακατανόητη µορφή ώστε αυτό να µην είναι αναγνώσιµο από τρίτους Αποκρυπτογράφηση: η διεργασία

Διαβάστε περισσότερα

Κρυπτογραφία. Κεφάλαιο 1 Γενική επισκόπηση

Κρυπτογραφία. Κεφάλαιο 1 Γενική επισκόπηση Κρυπτογραφία Κεφάλαιο 1 Γενική επισκόπηση Ανασκόπηση ύλης Στόχοι της κρυπτογραφίας Ιστορικό Γενικά χαρακτηριστικά Κλασσική κρυπτογραφία Συμμετρικού κλειδιού (block ciphers stream ciphers) Δημοσίου κλειδιού

Διαβάστε περισσότερα

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 5: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο

Διαβάστε περισσότερα

Αλγόριθµοι δηµόσιου κλειδιού

Αλγόριθµοι δηµόσιου κλειδιού Αλγόριθµοι δηµόσιου κλειδιού Αλγόριθµοι δηµόσιου κλειδιού Ηδιανοµή του κλειδιού είναι ο πιο αδύναµος κρίκος στα περισσότερα κρυπτογραφικά συστήµατα Diffie και Hellman, 1976 (Stanford Un.) πρότειναν ένα

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ»

ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ» ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ» - Κρυπτογραφία είναι - Κρυπτανάλυση είναι - Με τον όρο κλειδί. - Κρυπτολογία = Κρυπτογραφία + Κρυπτανάλυση - Οι επιστήµες αυτές είχαν

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Κρυπτοαλγόριθμοι. Χρήστος Ξενάκης

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Κρυπτοαλγόριθμοι. Χρήστος Ξενάκης Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Κρυπτογραφία Κρυπτοαλγόριθμοι Χρήστος Ξενάκης Θεωρία Πληροφορίας Η Θεωρία πληροφορίας (Shannon 1948 1949) σχετίζεται με τις επικοινωνίες και την ασφάλεια

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Εισαγωγή- Βασικές Έννοιες Διδάσκων : Δρ. Παρασκευάς Κίτσος diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Εργαστήριο Σχεδίασης Ψηφιακών Ολοκληρωμένων Κυκλωμάτων

Διαβάστε περισσότερα

Πρόβληµα 2 (15 µονάδες)

Πρόβληµα 2 (15 µονάδες) ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ, 2013-2014 ΔΙΔΑΣΚΩΝ: Ε. Μαρκάκης Πρόβληµα 1 (5 µονάδες) 2 η Σειρά Ασκήσεων Προθεσµία Παράδοσης: 19/1/2014 Υπολογίστε

Διαβάστε περισσότερα

Κρυπτογραφία. Εργαστηριακό μάθημα 1

Κρυπτογραφία. Εργαστηριακό μάθημα 1 Κρυπτογραφία Εργαστηριακό μάθημα 1 Βασικοί όροι Με τον όρο κρυπτογραφία εννοούμε τη μελέτη μαθηματικών τεχνικών που στοχεύουν στην εξασφάλιση θεμάτων που άπτονται της ασφάλειας μετάδοσης της πληροφορίας,

Διαβάστε περισσότερα

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. PGP (Pretty Good Privacy)

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. PGP (Pretty Good Privacy) Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων PGP (Pretty Good Privacy) Εισαγωγή Το λογισμικό Pretty Good Privacy (PGP), το οποίο σχεδιάστηκε από τον Phill Zimmerman, είναι ένα λογισμικό κρυπτογράφησης

Διαβάστε περισσότερα

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ 1 Γενικά Η ψηφιακή υπογραφή είναι µια µέθοδος ηλεκτρονικής υπογραφής όπου ο παραλήπτης ενός υπογεγραµµένου ηλεκτρονικού µηνύµατος µπορεί να διαπιστώσει τη γνησιότητα του,

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο. Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο. Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος 1 ΠΕΡΙΕΧΟΜΕΝΑ Ψηφιακές Υπογραφές Ασύμμετρης Κρυπτογραφίας Συστήματα ψηφιακής υπογραφής με αυτοανάκτηση Συστήματα

Διαβάστε περισσότερα

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

1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών; 1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών; Η ακεραιότητα δεδομένων(data integrity) Είναι η ιδιότητα που μας εξασφαλίζει ότι δεδομένα

Διαβάστε περισσότερα

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ψηφιακές Υπογραφές Ορίζονται πάνω σε μηνύματα και είναι αριθμοί που εξαρτώνται από κάποιο

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Κρυπτογραφία Ασύμμετρη Κρυπτογραφία Χρήστος Ξενάκης Ασύμμετρη κρυπτογραφία Μονόδρομες συναρτήσεις με μυστική πόρτα Μια συνάρτηση f είναι μονόδρομη, όταν δοθέντος

Διαβάστε περισσότερα

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 4: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Αριθμοθεωρητικοί Αλγόριθμοι

Αριθμοθεωρητικοί Αλγόριθμοι Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος

Διαβάστε περισσότερα

ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία

ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία Παύλος Αντωνίου Γραφείο: ΘΕΕ 02 B176 Εαρινό Εξάμηνο 2011 Department of Computer Science Ασφάλεια - Απειλές Ασφάλεια Γενικά (Ι) Τα

Διαβάστε περισσότερα

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας Διαχείριση και Ασφάλεια Τηλεπικοινωνιακών Συστημάτων Κρυπτογραφία Κρυπτογραφία Η Κρυπτογραφία (cryptography) είναι ένας κλάδος της επιστήμης της Κρυπτολογίας (cryptology), η οποία ασχολείται με την μελέτη

Διαβάστε περισσότερα

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Εισαγωγή- Βασικές Έννοιες Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο 2015 1 ΤΙ ΕΙΝΑΙ Η ΚΡΥΠΤΟΛΟΓΙΑ?

Διαβάστε περισσότερα

Πρόβληµα 2 (12 µονάδες)

Πρόβληµα 2 (12 µονάδες) ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ, 2015-2016 ΔΙΔΑΣΚΟΝΤΕΣ: Ε. Μαρκάκης, Θ. Ντούσκας Λύσεις 2 ης Σειράς Ασκήσεων Πρόβληµα 1 (12 µονάδες) 1) Υπολογίστε τον

Διαβάστε περισσότερα

Threshold Cryptography Algorithms. Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους

Threshold Cryptography Algorithms. Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους Threshold Cryptography Algorithms Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους Ορισμός Το σύστημα το οποίο τεμαχίζει ένα κλειδί k σε n τεμάχια έτσι ώστε οποιοσδήποτε συνδυασμός πλήθους

Διαβάστε περισσότερα

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ιστορία Ασύμμετρης Κρυπτογραφίας Η αρχή έγινε το 1976 με την εργασία των Diffie-Hellman

Διαβάστε περισσότερα

project RSA και Rabin-Williams

project RSA και Rabin-Williams Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών project RSA και Rabin-Williams Στοιχεία Θεωρίας Αριθμών& Εφαρμογές στην Κρυπτογραφία Ονοματεπώνυμο Σπουδαστών: Θανάσης Ανδρέου

Διαβάστε περισσότερα

Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές

Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές Βαγγέλης Φλώρος, BSc, MSc Τµήµα Πληροφορικής και Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών Εν αρχή είναι... Η Πληροφορία - Αρχείο

Διαβάστε περισσότερα

ρ. Κ. Σ. Χειλάς, ίκτυα Η/Υ ΙΙΙ, Τ.Ε.Ι. Σερρών, 2007

ρ. Κ. Σ. Χειλάς, ίκτυα Η/Υ ΙΙΙ, Τ.Ε.Ι. Σερρών, 2007 Ψηφιακές υπογραφές Ψηφιακές υπογραφές Υπάρχει ανάγκη αντικατάστασης των χειρόγραφων υπογραφών µε ψηφιακές (ΨΥ) Αυτές πρέπει να διαθέτουν τα εξής χαρακτηριστικά: Ο παραλήπτης πρέπει να είναι σε θέση να

Διαβάστε περισσότερα

Κεφάλαιο 2. Κρυπτογραφικά εργαλεία

Κεφάλαιο 2. Κρυπτογραφικά εργαλεία Κεφάλαιο 2 Κρυπτογραφικά εργαλεία Συμμετρική κρυπτογράφηση Καθολικά αποδεκτή τεχνική που χρησιμοποιείται για τη διαφύλαξη της εμπιστευτικότητας δεδομένων τα οποία μεταδίδονται ή αποθηκεύονται Γνωστή και

Διαβάστε περισσότερα

Δραστηριότητες σχετικά με κρυπτογραφία και ελέγχους ισοτιμίας

Δραστηριότητες σχετικά με κρυπτογραφία και ελέγχους ισοτιμίας Δραστηριότητες σχετικά με κρυπτογραφία και ελέγχους ισοτιμίας Δραστηριότητα 6: Κωδικοί και κρυπτογραφία Το αντικείμενο της δραστηριότητας αυτής είναι η κατανόηση από την πλευρά των μαθητών μερικών στοιχειωδών

Διαβάστε περισσότερα

Πρώτοι αριθμοί και κρυπτογραφικός αλγόριθμος RSA. Άριστος Χαραλάμπους, Δημήτρης Χαραλάμπους, Νικόλας Παρασκευάς

Πρώτοι αριθμοί και κρυπτογραφικός αλγόριθμος RSA. Άριστος Χαραλάμπους, Δημήτρης Χαραλάμπους, Νικόλας Παρασκευάς Πρώτοι αριθμοί και κρυπτογραφικός αλγόριθμος RSA Άριστος Χαραλάμπους, Δημήτρης Χαραλάμπους, Νικόλας Παρασκευάς Πρώτοι Αριθμοί Πρώτος αριθμός ονομάζεται ένας φυσικός αριθμός (δηλ. θετικός ακέραιος) μεγαλύτερος

Διαβάστε περισσότερα

El Gamal Αλγόριθμος. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 7 2

El Gamal Αλγόριθμος. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 7 2 Κρυπτογραφία Εργαστηριακό μάθημα 7 (Αλγόριθμοι Δημοσίου Κλειδιού) α) El Gamal β) Diffie-Hellman αλγόριθμος για την ανταλλαγή συμμετρικού κλειδιού κρυπτογράφησης El Gamal Αλγόριθμος Παράμετροι συστήματος:

Διαβάστε περισσότερα

Πληροφορική Ι. Μάθημα 10 ο Ασφάλεια. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Γκόγκος Χρήστος

Πληροφορική Ι. Μάθημα 10 ο Ασφάλεια. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Γκόγκος Χρήστος Οι διαφάνειες έχουν βασιστεί στο βιβλίο «Εισαγωγή στην επιστήμη των υπολογιστών» του B. Forouzanκαι Firoyz Mosharraf(2 η έκδοση-2010) Εκδόσεις Κλειδάριθμος Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου

Διαβάστε περισσότερα

Ασφάλεια Στο Ηλεκτρονικό Εμπόριο. Λάζος Αλέξανδρος Α.Μ. 3530

Ασφάλεια Στο Ηλεκτρονικό Εμπόριο. Λάζος Αλέξανδρος Α.Μ. 3530 Ασφάλεια Στο Ηλεκτρονικό Εμπόριο Λάζος Αλέξανδρος Α.Μ. 3530 Ηλεκτρονικό Εμπόριο Χρησιμοποιείται για να περιγράψει την χρήση τηλεπικοινωνιακών μέσων (κυρίως δικτύων) για κάθε είδους εμπορικές συναλλαγές

Διαβάστε περισσότερα

Αννα Νταγιου ΑΕΜ: 432. Εξαμηνο 8. Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε.

Αννα Νταγιου ΑΕΜ: 432. Εξαμηνο 8. Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε. Αννα Νταγιου ΑΕΜ: 432 Εξαμηνο 8 Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε. Παρόµοια, πληκτρολογήστε την εντολή: openssl ciphers v Ποιοι συµµετρικοί αλγόριθµοι

Διαβάστε περισσότερα

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ Κρυπτογραφία Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Συμμετρικά Κρυπτοσυστήματα κλειδί k Αρχικό κείμενο (m) Αλγόριθμος Κρυπτογράφησης Ε c = E k (m) Κρυπτογραφημένο

Διαβάστε περισσότερα

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 1 Εισαγωγικά Βασικές

Διαβάστε περισσότερα

Ασφάλεια Πληροφοριακών Συστηµάτων

Ασφάλεια Πληροφοριακών Συστηµάτων Ασφάλεια Πληροφοριακών Συστηµάτων Ασφάλεια Υπολογιστών Διάλεξη 1η Δρ. Β. Βασιλειάδης Τµ. Διοίκησης Επιχειρήσεων, ΤΕΙ Δυτ. Ελλάδας Πληροφορίες για το Μάθηµα Διαλέξεις: Κάθε Δευτέρα 11:00-13:00 Ιστότοπος

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Εισαγωγή. Χρήστος Ξενάκης

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Εισαγωγή. Χρήστος Ξενάκης Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Κρυπτογραφία Εισαγωγή Χρήστος Ξενάκης Στόχος του μαθήματος Η παρουσίαση και ανάλυση των βασικών θεμάτων της θεωρίας κρυπτογραφίας. Οι εφαρμογές της κρυπτογραφίας

Διαβάστε περισσότερα

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ Περιγραφή μαθήματος Η Κρυπτολογία είναι κλάδος των Μαθηματικών, που ασχολείται με: Ανάλυση Λογικών Μαθηματικών

Διαβάστε περισσότερα

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κεφάλαιο 21 Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κρυπτογράφηση δημόσιου κλειδιού RSA Αναπτύχθηκε το 1977 από τους Rivest, Shamir και Adleman στο MIT Ο πιο γνωστός και ευρέως

Διαβάστε περισσότερα

Κρυπτογραφία. Εργαστηριακό μάθημα 10 (Επαναληπτικές ασκήσεις)

Κρυπτογραφία. Εργαστηριακό μάθημα 10 (Επαναληπτικές ασκήσεις) Κρυπτογραφία Εργαστηριακό μάθημα 10 (Επαναληπτικές ασκήσεις) Εύρεση αντίστροφου αριθμού Mod n Έχουμε ήδη δει ότι πολύ συχνά συναντάμε την ανάγκη να βρούμε τον αντίστροφο ενός αριθμού a modulo n, δηλαδή

Διαβάστε περισσότερα

Κρυπτογραφικά Πρωτόκολλα

Κρυπτογραφικά Πρωτόκολλα Κρυπτογραφικά Πρωτόκολλα Παύλος Εφραιµίδης 25/04/2013 1 Κρυπτογραφικά Πρωτόκολλα Bit Commitment Fair Coin Mental Poker Secret Sharing Zero-Knowledge Protocol 2 πρωτόκολλα και υπηρεσίες χρήστης κρυπτογραφικές

Διαβάστε περισσότερα

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Τμήμα Μηχ. Πληροφορικής ΤΕΙ Κρήτης Κρυπτογραφία Δημόσιου Κλειδιού -RSA 1 Κρυπτογραφία Δημόσιου Κλειδιού - Ιστορία Ηνωμένες Πολιτείες 1975: Ο Diffie οραματίζεται

Διαβάστε περισσότερα

Ο Σ ο β ι ε τ ι κ ό ς Κ ρ υ π τ α λ γ ό ρ ι θ μ ο ς G O S T

Ο Σ ο β ι ε τ ι κ ό ς Κ ρ υ π τ α λ γ ό ρ ι θ μ ο ς G O S T Ο Σ ο β ι ε τ ι κ ό ς Κ ρ υ π τ α λ γ ό ρ ι θ μ ο ς G O S T Στην παρούσα εργασία παρουσιάζεται η υλοποίηση του Σοβιετικού κρυπταλγορίθμου GOST για την πλατφόρμα επεξεργαστήσυνεπεξεργαστή(αναδιατασ σόμενης

Διαβάστε περισσότερα

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings Cryptography and Network Security Chapter 9 Fifth Edition by William Stallings Chapter 9 Κρυπτογραφια Δημοσιου Κλειδιου και RSA Every Egyptian received two names, which were known respectively as the true

Διαβάστε περισσότερα

KEΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ

KEΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ Βασικές έννοιες KEΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ Ένα κρυπτοσύστηµα όπου οι χώροι των καθαρών µηνυµάτων, των κρυπτογραφηµένων µυνηµάτων και των κλειδιών είναι ο m,,,... m = καλείται ψηφιακό κρυπτοσύστηµα.

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (ΗΥ321)

Λειτουργικά Συστήματα (ΗΥ321) Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 19: Ασφάλεια Κρυπτογράφηση Βασική ιδέα: Αποθήκευσε και μετάδωσε την πληροφορία σε κρυπτογραφημένη μορφή που «δε βγάζει νόημα» Ο βασικός μηχανισμός: Ξεκίνησε από το

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΕΡΕΥΝΗΤΙΚΗΣ ΕΚΘΕΣΗΣ ΚΩΔΙΚΕΣ. Υπόθεμα: «ΚΡΥΠΤΟΓΡΑΦΙΑ»

ΤΙΤΛΟΣ ΕΡΕΥΝΗΤΙΚΗΣ ΕΚΘΕΣΗΣ ΚΩΔΙΚΕΣ. Υπόθεμα: «ΚΡΥΠΤΟΓΡΑΦΙΑ» ΤΙΤΛΟΣ ΕΡΕΥΝΗΤΙΚΗΣ ΕΚΘΕΣΗΣ ΚΩΔΙΚΕΣ Υπόθεμα: «ΚΡΥΠΤΟΓΡΑΦΙΑ» ΤΑ ΜΕΛΗ ΤΗΣ ΟΜΑΔΑΣ ΦΩΤΕΙΝΟΥ ΑΝΔΡΙΑΝΑ ΣΟΦΟΛΟΓΗ ΑΡΕΤΗ ΣΠΑΡΤΑΛΗΣ ΝΙΚΟΣ ΜΕΜΟΣ ΝΙΚΟΣ Επιβλέπουσα καθηγήτρια: Καλλιόπη Μαγδαληνού, ΠΕ19 1 ΛΙΓΑ ΛΟΓΙΑ

Διαβάστε περισσότερα

ΕΠΛ 674: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES

ΕΠΛ 674: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES ΕΠΛ 674: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES Παύλος Αντωνίου Εαρινό Εξάμηνο 2011 Department of Computer Science 1 S-DES Γενικά (1) Ο απλοποιημένος συμμετρικός αλγόριθμος S- DES.

Διαβάστε περισσότερα

Ασφάλεια Πληροφοριακών Συστημάτων

Ασφάλεια Πληροφοριακών Συστημάτων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Ασφάλεια Πληροφοριακών Συστημάτων Ενότητα 5: Διαχείριση κλειδιών Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται

Διαβάστε περισσότερα

Προβλήµατα. 1st International Olympiad in Informatics Held in Pravetz, Bulgaria May 16-19, 1989.

Προβλήµατα. 1st International Olympiad in Informatics Held in Pravetz, Bulgaria May 16-19, 1989. 1989-1 η ιεθνής Ολυµπιάδα Πληροφορικής Προβλήµατα 1st International Olympiad in Informatics Held in Pravetz, Bulgaria May 16-19, 1989. Έξι Προβλήµατα Παρουσιάστηκαν στη διενέργεια της ΙΟΙ 89 ***PROBLEM

Διαβάστε περισσότερα

ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής. Συμμετρική Κρυπτογραφία

ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής. Συμμετρική Κρυπτογραφία ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής Συμμετρική Κρυπτογραφία Εισαγωγή Στην συνηθισμένη κρυπτογραφία, ο αποστολέας και ο παραλήπτης ενός μηνύματος γνωρίζουν και χρησιμοποιούν το ίδιο μυστικό κλειδί.

Διαβάστε περισσότερα

Κεφάλαια 2&21. Συναρτήσεις κατακερματισμού Πιστοποίηση ταυτότητας μηνυμάτων

Κεφάλαια 2&21. Συναρτήσεις κατακερματισμού Πιστοποίηση ταυτότητας μηνυμάτων Κεφάλαια 2&21 Συναρτήσεις κατακερματισμού Πιστοποίηση ταυτότητας μηνυμάτων Ενεργητικές επιθέσεις Η κρυπτογράφηση παρέχει προστασία από παθητικές επιθέσεις (υποκλοπή). Μια διαφορετική απαίτηση είναι η προστασία

Διαβάστε περισσότερα

Ασφάλεια Πληροφοριακών Συστημάτων

Ασφάλεια Πληροφοριακών Συστημάτων Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων Lab 1 Κλασική Κρυπτογραφία ΤΕΙ ΚΡΗΤΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Fysarakis Konstantinos, PhD kfysarakis@staff.teicrete.gr Γενικές Πληροφορίες Βαθμολόγηση

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΠΙΣΤΟΠΟΙΗΤΙΚΑ ΓΙΑ ΑΣΦΑΛΗ ΚΑΙ ΠΙΣΤΟΠΟΙΗΜΕΝΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗΝ ΤΡΑΠΕΖΑ ΤΗΣ ΕΛΛΑΔΟΣ. Οδηγίες προς τις Συνεργαζόμενες Τράπεζες

ΨΗΦΙΑΚΑ ΠΙΣΤΟΠΟΙΗΤΙΚΑ ΓΙΑ ΑΣΦΑΛΗ ΚΑΙ ΠΙΣΤΟΠΟΙΗΜΕΝΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗΝ ΤΡΑΠΕΖΑ ΤΗΣ ΕΛΛΑΔΟΣ. Οδηγίες προς τις Συνεργαζόμενες Τράπεζες ΨΗΦΙΑΚΑ ΠΙΣΤΟΠΟΙΗΤΙΚΑ ΓΙΑ ΑΣΦΑΛΗ ΚΑΙ ΠΙΣΤΟΠΟΙΗΜΕΝΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗΝ ΤΡΑΠΕΖΑ ΤΗΣ ΕΛΛΑΔΟΣ Οδηγίες προς τις Συνεργαζόμενες Τράπεζες 1. Εισαγωγή Γνωριμία με τα Ψηφιακά Πιστοποιητικά Η χρήση ηλεκτρονικών

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Ελένη Μπακάλη Άρης Παγουρτζής

Διαβάστε περισσότερα

Δ Εξάμηνο. Κρυπτογραφία: Συμμετρική Κρυπτογράφηση

Δ Εξάμηνο. Κρυπτογραφία: Συμμετρική Κρυπτογράφηση ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Κρυπτογραφία: Συμμετρική Κρυπτογράφηση Διδάσκων : Δρ. Παρασκευάς Κίτσος http://www.diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Εργαστήριο Σχεδίασης Ψηφιακών

Διαβάστε περισσότερα

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΜΣ ΕΠΙΧΕΙΡΗΜΑΤΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΑΠΟΣΤΟΛΙΔΟΥ ΚΥΡΙΑΚΗ ΕΠΙΒΛΕΠΩΝ: ΜΠΙΣΜΠΑΣ ΑΝΤΩΝΙΟΣ, Καθηγητής

Διαβάστε περισσότερα

Ασφάλεια ικτύων (Computer Security)

Ασφάλεια ικτύων (Computer Security) Ασφάλεια ικτύων (Computer Security) Τι Εννοούµε µε τον Όρο Ασφάλεια ικτύων; Ασφάλεια Μόνο ο αποστολέας και ο προοριζόµενος παραλήπτης µπορούν να διαβάσουν και να κατανοήσουν ένα µήνυµα. Ο αποστολέας το

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Δημήτριος Μπάκας Αθανάσιος

Διαβάστε περισσότερα

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης Κατάλογος Περιεχομένων ΕΙΣΑΓΩΓΉ ΣΤΟ CRYPTOOL... 3 DOWNLOADING CRYPTOOL... 3 ΜΗΧΑΝΙΣΜΟΊ ΚΑΙ ΑΛΓΌΡΙΘΜΟΙ ΚΡΥΠΤΟΓΡΑΦΊΑΣ ΣΤΟ CRYPTOOL...

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών

Στοιχεία Θεωρίας Αριθμών Ε Μ Π Σ Ε Μ & Φ Ε Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Κωστής Γ Διδάσκοντες: Στάθης Ζ Άρης Π 9 Δεκεμβρίου 2011 1 Πιθανές Επιθέσεις στο RSA Υπενθύμιση

Διαβάστε περισσότερα

Ασφάλεια στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης

Ασφάλεια στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης Ασφάλεια στο Ηλεκτρονικό Επιχειρείν ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης 1 Κίνδυνοι Η-Ε Μερικοί από τους κινδύνους ενός δικτυακού τόπου Ε-εμπορίου περιλαμβάνουν:

Διαβάστε περισσότερα

Α ΤΑΞΗ. 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή. Θα παρουσιαστεί µε τρόπο απλό και κατανοητό,

Α ΤΑΞΗ. 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή. Θα παρουσιαστεί µε τρόπο απλό και κατανοητό, 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή 1. εδοµένα, Πληροφορίες και Υπολογιστές 2. Πώς φτάσαµε στους σηµερινούς υπολογιστές 3. Το υλικό ενός υπολογιστικού συστήµατος 4. Το λογισµικό ενός υπολογιστικού συστήµατος

Διαβάστε περισσότερα

Ασφάλεια Πληροφοριακών Συστημάτων

Ασφάλεια Πληροφοριακών Συστημάτων Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων Θεοδωρακοπούλου Ανδριάνα atheodorak@outlook.com Βαθμολόγηση Ασκήσεις Εργαστηρίου: 40% Τελική Εξέταση: 60% Ρήτρα: Βαθμός τελικής εξέτασης > 3.5 ΠΡΟΣΟΧΗ στις

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2 ΕΡΓΑΣΙΑ Διδάσκων: Γιώργος Χρυσάνθου Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης: 3/10/015 Ημερομηνία Παράδοσης: 09/11/015 09:00 π.μ. I.Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση

Διαβάστε περισσότερα

ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ

ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ ΔΙΑΔΙΚΤΥΟ Το διαδίκτυο προσφέρει: Μετατροπή των δεδομένων σε ψηφιακή - ηλεκτρονική μορφή. Πρόσβαση

Διαβάστε περισσότερα

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Χαρακτήρες Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Προγραμματισμός Δ. Τσελίκας Ι Χαρακτήρες - Εισαγωγή Έως τώρα έχουμε κατά κύριο λόγο χρησιμοποιήσει τους αριθμητικούς τύπους

Διαβάστε περισσότερα

ΑΣΦΑΛΕΙΑ ΚΑΤΑ ΤΗ ΙΑΚΙΝΗΣΗ ΠΟΛΥΜΕΣΙΚΗΣ ΠΛΗΡΟΦΟΡΙΑΣ

ΑΣΦΑΛΕΙΑ ΚΑΤΑ ΤΗ ΙΑΚΙΝΗΣΗ ΠΟΛΥΜΕΣΙΚΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΑΣΦΑΛΕΙΑ ΚΑΤΑ ΤΗ ΙΑΚΙΝΗΣΗ ΠΟΛΥΜΕΣΙΚΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΠΡΑΚΤΙΚΟ ΜΕΡΟΣ 4 ης ΕΡΓΑΣΙΑΣ Κλώνη Απόστολου ΠΕΡΙΕΧΟΜΕΝΑ Κρυπτογραφία Ψηφιακές υπογραφές Ψηφιακά πιστοποιητικά Ψηφιακή υδατογραφία 2 Κρυπτογραφία Η επιστήµη

Διαβάστε περισσότερα

ΕΠΛ 475: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES

ΕΠΛ 475: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES ΕΠΛ 475: Εργαστήριο 2 Ο απλοποιημένος αλγόριθμος κρυπτογράφησης S-DES ρ. Παύλος Αντωνίου Department of Computer Science 1 S-DES Γενικά (1) Ο αλγόριθμος DES χρησιμοποιεί κλειδιά μεγέθους 56 bit Ο απλοποιημένος

Διαβάστε περισσότερα

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ Παύλος Εφραιμίδης Βασικές Έννοιες Κρυπτογραφίας Ασφ Υπολ Συστ 1 Βασικές υπηρεσίες/εφαρμογές κρυπτογραφίες: Confidentiality, Authentication, Integrity, Non- Repudiation Βασικές έννοιες κρυπτογραφίας 2 3

Διαβάστε περισσότερα

KΕΦΑΛΑΙΟ 2 ΣΥΜΜΕΤΡΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

KΕΦΑΛΑΙΟ 2 ΣΥΜΜΕΤΡΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ KΕΦΑΛΑΙΟ 2 ΣΥΜΜΕΤΡΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Κρυπτοσύστηµα µετατόπισης Στο συγκεκριµένο κρυπτοσύστηµα, οι χώροι P, C, K είναι ο δακτύλιος. Για κάθε κλειδί k, ορίζουµε τη συνάρτηση κρυπτογράφησης: f : : x x+ k, k

Διαβάστε περισσότερα

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 10 : Ασφάλεια. Δρ. Γκόγκος Χρήστος

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 10 : Ασφάλεια. Δρ. Γκόγκος Χρήστος 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Πληροφορική Ι Ενότητα 10 : Ασφάλεια Δρ. Γκόγκος Χρήστος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Χρηματοοικονομικής & Ελεγκτικής

Διαβάστε περισσότερα

Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της

Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της Page 1 of 8 Αναγν. άρθρου: 164015 - Τελευταία αναθεώρηση: Τρίτη, 29 Μαΐου 2007 - Αναθεώρηση: 4.2 Κατανόηση των βασικών σημείων των διευθύνσεων TCP/IP και της δημιουργίας υποδικτύων Συμβουλή συστήματος

Διαβάστε περισσότερα

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Εισαγωγή Άρης Παγουρτζής Στάθης Ζάχος Σχολή ΗΜΜΥ ΕΜΠ Διοικητικά του μαθήματος Διδάσκοντες Στάθης Ζάχος Άρης Παγουρτζής Πέτρος Ποτίκας (2017-18) Βοηθοί διδασκαλίας Παναγιώτης Γροντάς

Διαβάστε περισσότερα

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Συμμετρικά κρυπτοσυστήματα Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

8.3 Ασφάλεια ικτύων. Ερωτήσεις

8.3 Ασφάλεια ικτύων. Ερωτήσεις 8.3 Ασφάλεια ικτύων Ερωτήσεις 1. Με τι ασχολείται η ασφάλεια των συστηµάτων; 2. Τι είναι αυτό που προστατεύεται στην ασφάλεια των συστηµάτων και για ποιο λόγο γίνεται αυτό; 3. Ποια η διαφορά ανάµεσα στους

Διαβάστε περισσότερα

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ Τεχνολογία ικτύων Επικοινωνιών ΙΙ 7.5 Πρωτόκολλο IP 38. Τι είναι το πρωτόκολλο ιαδικτύου (Internet Protocol, IP); Είναι το βασικό πρωτόκολλο του επιπέδου δικτύου της τεχνολογίας TCP/IP. Βασίζεται στα αυτοδύναµα

Διαβάστε περισσότερα

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα Ενότητα 5: ΚΡΥΠΤΟΓΡΑΦΗΣΗ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος

Διαβάστε περισσότερα

Δίκτυα Υπολογιστών Ενότητα 6: Secure Sockets Layer - SSL

Δίκτυα Υπολογιστών Ενότητα 6: Secure Sockets Layer - SSL Δίκτυα Υπολογιστών Ενότητα 6: Secure Sockets Layer - SSL Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές

Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές ΤΕΙ Κρητης Τμήμα Μηχανικών Πληροφορικής Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές Ψηφιακά Πιστοποιητικά Υποδομή δημόσιου κλειδιού (Public Key Infrastructure

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων 1 2.1 Τύποι Δεδομένων Τα δεδομένα σήμερα συναντώνται σε διάφορες μορφές, στις οποίες περιλαμβάνονται αριθμοί,

Διαβάστε περισσότερα