Προγραμματισμός

Ο μαγικός κόσμος της κρυπτογράφησης (4) – Κωδικοποίηση Rail Fence

Στο τέταρτο άρθρο της σειράς με θέμα την κρυπτογράφηση δεδομένων , θα γνωρίσουμε τη μέθοδο Rail fence. Πήρε το όνομά της από το φράκτη (fence) σε σχήμα γραμμών τρένου(rail), που χρησιμοποιείται στις φάρμες της Αμερικής, και στήνονται σε σχήμα zig zag. H μέθοδος χρησιμοποιήθηκε συστηματικά στον αμερικάνικο εμφύλιο πόλεμο. Πρόκειται για μια μέθοδο κρυπτογράφησης που χρησιμοποποιεί τη μετάθεση – μεταφορά του πρωτότυπου κειμένου σε ένα πρότυπο μοφής zig-zag (όπως ο φράκτης rail fence). Αυτό που πρέπει να ορίσουμε είναι ο αριθμός των γραμμών που θα συμμετέχει στη δημιουργία του προτύπου κρυπτογράφησης. Για να το καταλάβουμε καλύτερα ας δούμε ένα παράδειγμα:

Έστω το κείμενο: ΣΗΜΕΡΑ ΘΑ ΓΝΩΡΙΣΟΥΜΕ ΜΙΑ ΝΕΑ ΜΕΘΟΔΟ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ.

Με τη μέθοδο Rail fence 2 γραμμών το κείμενό μου θα γραφεί:

και το κρυπτογραφημένο θα προκύψει γράφοντας τα γράμματα κατά γραμμή: ΣΜΡ ΑΓΩΙΟΜ Ι Ε ΕΟΟΚΥΤΓΑΗΗΗΕΑΘ ΝΡΣΥΕ ΜΑΝΑΜΘΔ ΡΠΟΡΦΣΣ

Αντίστοιχα, με χρήση τριών γραμμών θα είχα:

και το κρυπτογραφημένο θα προκύψει γράφοντας τα γράμματα κατά γραμμή: ΣΡΑΩΟ   ΟΚΤΑΗΗΕΑΘ ΝΡΣΥΕΜΑΝΑΜΘΔ ΡΠΟΡΦΣΣΜ ΓΙΜΙΕΕΟΥΓΗ

Ας δούμε τώρα πώς μπορούμε να αποκρυπτογραφήσουμε ένα μήνυμα που χρησιμοποιεί τη μέθοδο rail fence.

Ας υποθέσουμε ότι σε περίοδο πολέμου, ο διοικητής ήθελε να στείλει το μήνυμα: ΕΠΙΘΕΣΗ ΞΑΝΑ ΑΥΡΙΟ.

…ας δημιουργήσουμε πίνακες με rail fence με κλειδί 4 και 5 αντίστοιχα (όπου * η θέση του κενού διαστήματος):

Με κλειδί 4, δηλαδή 4 γραμμές, θα είχαμε το κρυπτογραφημένο μήνυμα: ΕΗ*ΠΣ*ΑΑΟΙΕΞΝΥΙΘΑΡ.

Μπορούμε να παρατηρήσουμε ότι:

το πρότυπο – πίνακας που δημιουργείται, ακολυθεί τους παρακάτω κανόνες:

1η γραμμή: απόσταση μεταξύ Ε και Η, και Η και *(6 θέσεις)

2η γραμμή: απόσταση μεταξύ Π και Σ, και Σ και * (4 και 2 αντίστοιχα)

3η γραμμή: απόσταση μεταξύ Ι και Ε, και Ε και Ξ (2 και 4 αντίστοιχα)

4η γραμμή: απόσταση μεταξύ Θ και Α, και Α και Ρ (6 θέσεις)

δηλαδή:

Ε6Η6*

Π4Σ2*4Α2Α4Ο

Ι2Ε4Ξ2Ν4Υ2Ι

Θ6Α6Ρ

Αν επαναδημιουργήσουμε τον πίνακα με βάση τις θέσεις των γραμμάτων θα πάρουμε:

Όλο το μυστικό λοιπόν βρίσκεται στο κλειδί, δηλαδή πόσες γραμμές  έχει ο πίνακάς  μας, και στη δημιουργία του προτύπου με τα κενά. Όπως είδαμε για 4 γραμμές το πρότυπο θα είναι πάντα 6 θέσεις απόσταση για 1η και 4η γραμμή, 4-2-4-2…, για τη δεύτερη γραμμή και 2-4-2-4…, για την τρίτη γραμμή.

Δηλαδή, αν το κλειδί είναι 4, το πρότυπο θα είναι:

6 6 6 6 …..

4 2 4 2 …..

2 4 2 4 …..

6 6 6 6 …..

Αν το κλειδί είναι 5, το πρότυπο θα είναι:

8 8 8 8 …..

6 2 6 2 …..

4 4 4 4 …..

2 6 2 6 …..

8 8 8 8 …..

Για κλειδί ν, το πρότυπο θα προκύψει από τον τύπο 2*ν-2.

Ως τελικό συμπέρασμα, μπορούμε να πούμε ότι η κρυπτογράφηση με τη μέθοδο rail fence, δεν είναι και η πιο ασφαλής. Με τον κανόνα δημιουργίας προτύπων μπορούμε με μερικές δοκιμές να δημιουργήσουμε το πρότυπο που θα μας δώσει τη λύση. Ειδικά στην περίπτωση που θα καταφέρουμε να “μαντέψουμε” κάποια λέξη τα πράγματα θα γίνουν αρκετά πιο εύκολα για να αποκρυπτογραφήσουμε το μήνυμα. Όπως και να’χει όμως πρόκειται για μια ακόμη ενδιαφέρουσα μέθοδο κρυπτογράφησης που έμεινε στην ιστορία.

Για να δείτε αν την καταλάβατε κρυπτογραφήστε το δικό σας μήνυμα, και προσπαθήστε να δημιουργήσετε τις προϋποθέσεις για την αποκρυπτογράφησή του.

Δείτε και ένα βιντεάκι για να δείτε οπτικοποιημένα όλα όσα έγραψα παραπάνω:

Share
Share
Μετάβαση στο περιεχόμενο