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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Κρήτης

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

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

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

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

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

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

Symmetric Cryptography. Dimitris Mitropoulos

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

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ Κρυπτογραφία και Εφαρμογές

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

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

Συμμετρικά κρυπτοσυστήματα

Από τις υπηρεσίες Πληροφόρησης στο «Ηλεκτρονικό Επιχειρείν»

Ασφάλεια ικτύων. Ασφάλεια δικτύων

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ στα Πληροφοριακά Συστήματα Κρυπτογραφία και Εφαρμογές Διαλέξεις Ακ.

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

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

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

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

Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου

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

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

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

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

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

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

Ψευδο-τυχαιότητα. Αριθµοί και String. Μονόδροµες Συναρτήσεις 30/05/2013

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

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

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

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

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

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

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

Εισαγωγή στην Πληροφορική

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

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

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ στα Πληροφοριακά Συστήματα Κρυπτογραφία και Εφαρμογές Διαλέξεις Ακ.

ΕΡΓΑΣΙΑ. στο µάθηµα : "ΑΣΦΑΛΕΙΑ ΣΥΣΤΗΜΑΤΩΝ" Μπαλάφας Βασίλειος. Καθηγητής : Μελετίου Γεράσιµος

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

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ Κρυπτογραφία και Εφαρμογές

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

Κρυπτογραφία. Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

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

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

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

Βασικές αρχές. κρυπτανάλυσης. ΚΕΦΑΛΑΙΟ 1

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

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

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

Χρήστος Ξενάκης Τμήμα Ψηφιακών Συστημάτων

Επιθέσεις και Ασφάλεια Κρυπτοσυστημάτων

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

Βασικές Έννοιες Κρυπτογραφίας

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

Συμμετρική Κρυπτογραφία

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

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

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

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

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

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

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

Κρυπτογραφία. Εργαστηριακό μάθημα 5 Stream ciphers Κρυπτανάλυση με τον αλγόριθμο Berlekamp-Massey

Κλασσική Κρυπτογραφία

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

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


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

Μελέτη απόδοσης αλγορίθμων κρυπρογράϕησης σε CUDA

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

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

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

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

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

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

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Διαχείριςη και Αςφάλεια Δικτύων. Κρυπτογραφία

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

Κρυπτογραφία: Εισαγωγή & Ιστορικά συστήματα

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

Transcript:

Cryptography and Network Security Chapter 2 Fifth Edition by William Stallings

Κεφαλαιο 2 Κλασσικες Τεχνικες Κρυπτογράφησης "I am fairly familiar with all the forms of secret writings, and am myself the author of a trifling monograph upon the subject, in which I analyze one hundred and sixty separate ciphers," said Holmes.. The Adventure of the Dancing Men,, Sir Arthur Conan Doyle

Συµµετρικη Κρυπτογραφια Αποκαλείται και Συµβατική ή Ιδιωτικου Κλειδιου (Private Key) Ο µεταδοτης και ο αποδέκτης µοιραζονται ενα κοινο κλειδι Hταν ο µοναδικη γνωστη κρυπτογραφια µεχρι τη δεκαετια του 1970. Ειναι η ευρυτερα χρησιµοποιουµενη κρυπτογραφια.

Ορολογια Απλο κειµενο (plaintext) το µη κρυπτογραφηµενο µηνυµα Κρυπτογραφηµενο Κειµενο (ciphertext) το κρυπτογραφηµενο µηνυµα Αλγοριθµος κρυπτογραφησης (cipher) - Μετατρεπει το plaintext σε ciphertext Kλειδι (key) πληροφορια που χρησιµοποιείται απο τον αλγοριθµο κρυπτογραφησης και ειναι γνωστη µονο στο µεταδοτη και τον αποδεκτη Kρυπτογραφηση (encryption, enciphering) η µετατροπη του plaintext σε ciphertext Αποκρυπτογραφηση (decryprion, deciphering) η µετατροπη του ciphertext σε plaintext Κρυπτογραφια (cryptography) η µελετη των µεθοδων κρυπτογραφησης και των αρχων της κρυπτογραφης και των αρχων που τις διεπουν Κρυπταναλυση (cryptanalysis) µελετη των αρχων και των µεθοδων που αποσκοπουν στην αποκρυπτογραφηση χωρις να ειναι γνωστο το κλειδι. Κρυπτολογια (cryptology) το επιστηµονικο πεδιο που περιλαµβανει την κρυπτογραφια και την κρυπταναλυση

Symmetric Cipher Model

Προϋποθεσεις υο απαιτησεις για ασφαλη χρηση της συµµετρικης κρυπτογραφιας: Να ειναι ισχυρος ο αλγοριθµος κρυπτογραφησης Το Μυστικο κλειδι να ειναι γνωστο µονο στο µεταδοτη και στον αποδεκτη Συµβολικα γράφουµε: Y = E(K, X) X = D(K, Y) Υποθετουµε οτι ο αλγοριθµος κρυπτογραφησης ειναι γνωστος Πρεπει να υπαρχει προνοια (π.χ. ενα ασφαλες καναλι) για τη διανοµη του κλειδιου

Κρυπτογραφια Μπορουµε να χαρακτηρισουµε τα κρυπτογραφικα συστηµατα αναλογα µε: Το ειδος των κρυπτογραφικων λειτουργιων που χρησιµοποιουνται Αντικαταστασης (substitution) Αντιµεταθεσης (transposition) Γινοµενου (product) Toν αριθµο των κλειδιων που χρησιµοποιουνται Μοναδικου κλειδιου (single-key) ή ιδιωτικου κλειδιου (private key) υο κλειδιων (two-key) ή ηµοσιου Κλειδιου (public key). Toν τροπο επεξεργασιας του plaintext Τµηµατων (block) Ροης (stream)

Κρυπταναλυση Στοχος ειναι να ανακαλυφθει το κλειδι και οχι µονο το µηνυµα Γενικες προσεγγισεις: Κρυπταναλυτικη επιθεση (cryptanalytic attack) Επιθεση ωµης βιας (brute-force attack)

Κρυπταναλυτικες επιθεσεις ciphertext only only know algorithm & ciphertext,, is statistical, know or can identify plaintext known plaintext know/suspect plaintext & ciphertext chosen plaintext select plaintext and obtain ciphertext chosen ciphertext select ciphertext and obtain plaintext chosen text select plaintext or ciphertext to en/decrypt

More Definitions Aσφάλεια Άνευ Ορων (unconditional security) εν εχει σηµασια ποση υπολογιστκη ισχυς ειναι διαθεσιµη, ο αλγοριθµος κρυπτογραφησης δεν µπορει να σπασει, λογω του οτι το ciphertext παρεχει ανεπατκη πληροφορια για να προσδιοριστει µονοσηµαντα το αντιστοιχο plaintext. Υπολογιστικη Ασφάλεια (computational security) οθεντων περιορισµενων υπολογιστικων πορων ο αλγοριθµος κρυπτογραφησης δεν µπορει να σπασει.

Brute Force Search οκιµαζεται καθε δυνατο κλειδι Προϋποθέτει οτι ειναι γνωστο ή αναγνωριζεται το plaintext Key Size (bits) Number of Alternative Keys Time required at 1 decryption/µs Time required at 10 6 decryptions/µs 32 2 32 = 4.3 10 9 2 31 µs = 35.8 minutes 2.15 milliseconds 56 2 56 = 7.2 10 16 2 55 µs = 1142 years 10.01 hours 128 2 128 = 3.4 10 38 2 127 µs = 5.4 10 24 years 5.4 10 18 years 168 2 168 = 3.7 10 50 2 167 µs = 5.9 10 36 years 5.9 10 30 years 26 characters (permutation) 26! = 4 10 26 2 10 26 µs = 6.4 10 12 years 6.4 10 6 years

Κλασσικοι Κρυπτογραφικοι Αλγοριθµοι Αντικαταστασης Τα γράµµατα του plaintext αντικαθιστανται απο αλλα γραµµατα ή αριθµους ή συµβολα Ή αν το plaintext ειναι µια ακολουθια απο bits, τοτε η αντικασταση αφορα οµαδες απο bits που αντικαθιστανται απο άλλες οµαδες bits

Ο Αλγοριθµος του Καισαρα (Caesar Cipher) Αντικαθιστα καθε γραµµα µε το γραµµα που ειναι τρεις θεσεις πιο πισω στο αλφαβητο. Παραδειγµα: meet me after the toga party PHHW PH DIWHU WKH WRJD SDUWB

Caesar Cipher Μπορουµε να ορισουµε το µετασχηµατισµο ως εξης: 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 D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Αντιστοιχουµε σε καθε γραµµα εναν αριθµο. 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 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Και ο αλγοριθµος του Καισαρα οριζεται ως εξης: c = E(k, p) ) = (p( + k) ) mod (26) p = D(k,, c) = (c k) ) mod (26)

Κρυπταναλυση του Κωδικα του Καισαρα Υπαρχουν µονο 26 δυνατοι κωδικες Το A αντιστοιχει σε ενα απο τα A,B,..Z Ο επιτιθεµενος µπορει να τους δοκιµασει ολους και να βρει ποιος εφαρµοζεται. ηλ. brute force search Χρειαζεται να αναγνωριζει ο επιτιθεµενος το plaintext

Μονοαλφαβητικος Κρυπτογραφικος Αλγοριθµος (Monoalphabetic Cipher) Αντι να µεταθετουµε το αλφαβητο, µπορουµε να ανακατευουµε τα γραµµατα αυθαιρετα. Καθε γραµµα του plaintext απεικονιζεται σε ενα τυχαίο γραµµα του ciphertext. Αρα, το κλειδι εχει µηκος 26 γραµµατα Plain letter: abcdefghijklmnopqrstuvwxyz Cipher letter: DKVQFIBJWPESCXHTMYAUOLRGZN Plaintext: ifwewishtoreplaceletters Ciphertext: : WIRFRWAJUHYFTSDVFSFUUFYA

Ασφαλεια του Μονοαλφαβητικου Κρυπτογραφικου Αλγοριθµου Εχουµε τωρα συνολικα 26! = 4 x 10 26 κλειδια Ισως καποιος να σκεφτει οτι µε τοσα διαφορετκα κλειδια ειναι ασφαλης!!!λαθοσ ΛΑΘΟΣ!!! Το προβληµα ειναι τα χαρακτηριστικα της γλωσσας

Πλεονασµος της γλωσσας και Κρυπτανάλυση (Language Redundancy and Cryptanalysis) Τα γραµµατα δεν εχουν ολα τη ιδια συχνοτητα εµφανισης Το Αγγλικο E ειναι το συχνοτερα εµφανιζοµενο, και ακολουθουν τα: T,R,N,I,O,A,S Αλλα γραµµατα, οπως τα Z,J,K,Q,X εµφανιζονται σχετικα σπανια Υπαρχουν πινακες για τις συχνοτητες εµφανισης απλων γραµµατων, ζευγων γραµµατων ή τριαδων γραµµατων για διαφορες γλωσσες

English Letter Frequencies

Κρυπτογραφικοι Αλγοριθµοι Αντιµεταθεσης Κρυβουν το µηνυµα αλλαζοντας τη σειρα των γραµµάτων Χωρις να αλλαζουν τα γραµµατα που χρησιµοποιουνται

Rail Fence cipher Τα γραµµατα του µηνυµατος γραφονται διαγωνια σε εναν αριθµο γραµµων. Και στη συνεχεια διαβαζεται το ciphertext κατα γραµµες. π.χ. το µηνυµα γραφεται ως εξης: m e m a t r h t g p r y e t e f e t e o a a t και παιρνουµε το εξης ciphertext: MEMATRHTGPRYETEFETEOAAT

Κρυπτογραφικοι Αλγοριθµοι Αντιµεταθεσης στηλών (Columnar Transposition Ciphers) 1. Γραφονται τα γραµµατα του µηνυµατος σε γραµµές, µε εναν προκαθορισµενο αριθµο στηλων 2. Στη συνεχεια, διαβαζεται το ciphertext κατα στηλες, αλλα µε διαφορετικη σειρα των στηλων, η οποια καθοριζεται απο καποιο κλειδι. 3. Τελος, διαβαζονται οι γραµµες. Key: 4312567 4 3 1 2 5 6 7 Plaintext: a t t a c k p o s t p o n e d u n t i l t w o a m x y z Ciphertext: : TTNAAPTMTSUOAODWCOIXKNLYPETZ

Κρυπτογραφικοι Αλγοριθµοι Γινοµενου (Product Ciphers) Οι αλγοριθµοι αντικαταστασης ή αντιµεταθεσης δεν ειναι ασφαλεις λογω των χαρακτηριστικων της γλωσσας. Για να αντιµετωπισουµε το προβληµα αυτο χρησιµοποιουµε περισσοτερους απο εναν αλγοριθµους στη σειρα.

Στεγανογραφία (Steganography) Είναι µια εναλλακτική λυση ως προς την κρυπτογραφηση Κρυβει την υπαρξη του µηνυµατος Χρησιµοποιεί µόνο ένα υποσυνολο των γραµµατων/λεξεων (τα οποία µαρκαρονται µε καποιον τροπο) σε ενα µεγαλύτερο µηνυµα. Μεγαλο µειονεκτηµα της ειναι εχει µεγαλο overhead για σχετικα λιγα bits πληροφοριας. Πλεονεκτηµα της ειναι οτι µπορει να χρησιµοποιηθει απο αυτους που δε θελουν να φαινεται οτι επικοινωνουν κρυπτογραφηµενα.

Μελετησαµε: Συνοψη Κλασσικες τεχνικες κρυπτογραφησης και ορολογια Μονοαλφαβητικοι αλγπριθµοι αντικαταστασης Κρυπταναλυση µε βαση τη συχνοτητα εµφανισης των γραµµατων Kρυπτογραφικος αλγοριθµος Rail Fence Κρυπτογραφικοι αλγοριθµοι αντιµεταθεσης Κρυπτογραφικοι αλγοριθµοι γινοµενου Σταγανογραφια