Το προφίλ μας στο Google Plus
0

Vintage Enigma Simulator

Στο τεύχος 021 του deltaHacker δημοσιεύεται το πρώτο άρθρο της σειράς The Enigma Reborn, όπου αναδημιουργούμε τη θρυλική μηχανή κρυπτογράφησης Enigma. Δουλεύουμε φυσικά με τη βοήθεια της αγαπημένης μας γλώσσας προγραμματισμού, της Python!

Ωστόσο πιστεύω πως θα συμφωνήσετε μαζί μου για το ότι μια τέτοια vintage μηχανή (δεκαετίας του ’40) χρειάζεται και μια αντίστοιχη vintage υλοποίηση. Μπορεί να μη διαθέτουμε υπολογιστή με λυχνίες ή διάτρητες κάρτες, ωστόσο έχουμε τον πιστό μας TI-99/4A, της δεκαετίας του ’80.

Μια vintage μηχανή κρυπτογράφησης, για την εξομοίωσή της χρειάζεται κι έναν vintage υπολογιστή :) Κι αν δεν έχετε TI-99/4A, σαν τον εικονιζόμενο, μην ανησυχείτε: Μπορείτε να τον εξομοιώσετε κι αυτόν!

Μια και μπήκαμε λοιπόν στο κόπο να ασχοληθούμε, λέμε να μοιραστούμε μαζί σας το τι κάναμε. Τι; Δεν έχετε ΤΙ-99/4Α να τρέξετε το σχετικό πρόγραμμα; Ε, μα για αυτό υπάρχουν οι εξομοιωτές. Τι πιο εύκολο άλλωστε από το να εξομοιώσουμε ένα μηχάνημα με ταχύτητα επεξεργαστή 3,3MHz, στην εποχή των 3,3GHz; Αν ψάξετε στο Internet θα βρείτε διάφορους εξομοιωτές για όλα τα παλιά συστήματα της εποχής (καθώς κι αρκετούς που εξομοιώνουν σχεδόν τα πάντα, όπως το mess). Στο παρόν θα σας δώσουμε οδηγίες για τον εξομοιωτή Classic99, ο οποίος είναι από τους καλύτερους (και απλούστερους στη ρύθμιση) εξομοιωτής TI-99 για Windows. Το πρόγραμμά μας ωστόσο τρέχει και σε άλλους εξομοιωτές (όπως, π.χ., στο mess) και φυσικά τρέχει και στο πραγματικό TI-99/4A (που δεν έχετε, αλλά αυτός δεν είναι λόγος για να πρασινίζετε).

Ξεκινήστε κατεβάζοντας τον εξομοιωτή Classic99. Για ευκολία, αποσυμπιέστε το αρχείο ZIP στην επιφάνεια εργασίας. Θα δημιουργηθεί ένας φάκελος ονόματι Classic99. Το πρόγραμμα δεν απαιτεί εγκατάσταση. Τρέχει απλά με (διπλό) κλικ στο αρχείο classic99, το οποίο θα βρείτε μέσα στον προαναφερθέντα φάκελο. Πριν όμως ενεργοποιήσετε τον εξομοιωτή, κατεβάστε το source code για το Enigma. Το αρχείο enigma.dsk που μόλις κατεβάσατε, είναι μια εικονική δισκέτα για το TI-99/4A. Αντιγράψτε το αρχείο στον φάκελο DSK2, μέσα στον Classic99. Είμαστε έτοιμοι να κάνουμε μερικές απλές ρυθμίσεις στον εξομοιωτή, καθώς και να εκτελέσουμε τη διπλά-vintage εξομοίωσή μας!

Ρύθμιση του Classic99
Ενεργοποιήστε τον εξομοιωτή. Η ακόλουθη, είναι η αρχική εικόνα που θα δείτε.

Η πρώτη οθόνη του Classic99, της εφαρμογής που εξομοιώνει τη λειτουργία του TI-99/4A.

Πρώτη μας κίνηση είναι να βάλουμε το Extended Basic Cartridge. Βλέπετε, ο Enigma Simulator είναι εντελώς γραφικός (Σ.τ.Α. Με την καλή έννοια, προφανώς) και για να μας δείχνει τι γίνεται χρησιμοποιεί animation και sprites. Η Extended Basic, λοιπόν, είναι απαραίτητη. Από το μενού Cartridge, επιλέξτε Apps κι Extended Basic. Ίσως δείτε μια προειδοποίηση ότι το μηχάνημα θα κάνει Reset. Το TI-99, φυσικά, όχι το host. Είμαστε έτοιμοι για τη συνέχεια. Πιέστε ένα πλήκτρο στην οθόνη εκκίνησης και θα βρεθείτε στην οθόνη επιλογής γλώσσας.

Επιλογή γλώσσας προγραμματισμού, από τις δύο ενσωματωμένες που έχει ο TI.

Πιέστε [2], ώστε να επιλέξετε Extended Basic. Σύντομα θα βρεθείτε στο Ready prompt της Extended Basic.

Το λεγόμενο 'Ready prompt', της Extended Basic του TI-99/4A.

Πριν συνεχίσουμε, πρέπει να φορτώσουμε το disk image στον εξομοιωτή. Στο μενού Disk χρησιμοποιήστε την επιλογή .\DSK2\, που φαίνεται στην εικόνα.

Φόρτωση του disk image με τον εξομοιωτή της Enigma, στον εξομοιωτή του TI.

Στο Disk Type θα επιλέξετε Image (DSK), ενώ στο Path θα βάλετε τη διαδρομή του αρχείου enigma.dsk που κατεβάσατε πριν.

Προσοχή στο Disk Type!

Εκτέλεση του Enigma Simulator
Θα φορτώσουμε το πρόγραμμα στον εξομοιωτή. Στην προτροπή της Extended Basic, γράψτε:

Φόρτωση του προγράμματος. Η εντολή OLD είναι η αντίστοιχη LOAD, των περισσότερων άλλων υπολογιστών της εποχής του TI.

Μην παραξενεύεστε για την εντολή. Είναι η αντίστοιχη της LOAD, των περισσότερων άλλων υπολογιστών της εποχής (ή της Open, που συναντάμε σήμερα). Είμαστε έτοιμοι να εκτελέσουμε το πρόγραμμά μας.

Ενεργοποίηση ή αν προτιμάτε εκτέλεση του προγράμματος, με την εντολή RUN.

Μετά από λίγη ώρα προετοιμασίας (είπαμε, 3,3MHz) θα δείτε μια οθόνη που θα σας ρωτάει για τις αρχικές ρυθμίσεις του Enigma (rotor initial positions). Θα δώσετε ένα γράμμα μεταξύ Α-Ζ, ως αρχική θέση για καθέναν από τους τρεις ρότορες. Σε αυτή την οθόνη μπορείτε να επιστρέψετε κι αργότερα, πιέζοντας τον συνδυασμό πλήκτρων [ALT+9].

Αρχικές ρυθμίσεις για τον emulator της Enigma.

Σε λίγο θα εμφανιστεί μπροστά σας η οθόνη κρυπτογράφησης.

Η οθόνη κρυπτογράφησης!

Πιέζοντας ένα γράμμα ξεκινά η διαδικασία κρυπτογράφησης. Μπορείτε να την παρακολουθήσετε βήμα προς βήμα. Τα κόκκινα κουτάκια δείχνουν κρυπτογράφηση που κινείται από το πληκτρολόγιο προς τον ανακλαστήρα, ενώ τα πράσινα αντίστροφη πορεία. Αν πιέσετε το [Α] με τις αρχικές ρυθμίσεις που βάλαμε πριν (ABG), θα πάρετε σαν αποτέλεσμα το Υ.

Με δεδομένες τις αρχικές συνθήκες, η Enigma αντιστοιχίζει στο A το Y.

Μην μπερδεύεστε που το τελευταίο πράσινο κουτάκι δείχνει F! Μην ξεχνάτε ότι ο ρότορας βρίσκεται στη θέση H. Δηλαδή, το H αντιστοιχεί στο Α, άρα το F αντιστοιχεί στο Υ. ΟΚ, μάλλον σας μπερδέψαμε. Περισσότερες λεπτομέρειες για τη λειτουργία του Enigma θα διαβάσετε στο σχετικό άρθρο του deltaHacker 021. Η εξομοίωση τελειώνει αν πιέσετε το συνδυασμό πλήκτρων [ALT+8].

Το πρόγραμμα εξομοίωσης της Enigma, ευγενικά μας αποχαιρετά.

Επίσης, μπορείτε να τη σταματήσετε σε κάθε περίπτωση, πιέζοντας τον συνδυασμό [ALT+4] (το BREAK για τον ΤΙ-99). Αν θέλετε να δείτε τον πηγαίο κώδικα του προγράμματος, γράψτε απλά LIST.

Μέρος από το source code του προγράμματος εξομοίωσης της Enigma. Αν δεν γνωρίζετε Extended Basic, δεν θα σας το κρατήσουμε ;)

Κι εντάξει, δεν περιμένουμε να κατανοήσετε την Extended BASIC του TI.

Happy vintage computing!

Leave a Reply

You must be logged in to post a comment.

Σύνδεση

Αρχείο δημοσιεύσεων