ΚΟΥΛΟΥΡΗ ΑΝΤΩΝΙΟΥ. Αριθμός Μητρώου. : 4892. Θέμα:



Σχετικά έγγραφα
Δίκτυα Κινητών και Προσωπικών Επικοινωνιών

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

Ασφάλεια στο δίκτυο GSM

Τηλεματική, Διαδίκτυα και Κοινωνία Το Ευρωπαϊκό Πρότυπο GSM

Το Ασύρματο Δίκτυο TETRA. Αντωνίου Βρυώνα (Α.Μ. 1019)

ΕΠΛ 476: ΚΙΝΗΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ (MOBILE NETWORKS)

ιάφορες υπηρεσίες => ιάφοροι ρυθµοί

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Βασικές έννοιες και ιστορική αναδρομή

Βασικές έννοιες και ιστορική αναδρομή

Κινητές επικοινωνίες. Κεφάλαιο 6 Τεχνικές πoλυπλεξίας - CDMA

Δίκτυα Θεωρία

Κινητές επικοινωνίες. Κεφάλαιο 1 Κυψελωτά Συστήματα

Κεφάλαιο 3 Πολυπλεξία

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

Κινητό τηλέφωνο. Κινητό τηλέφωνο

Βασικές έννοιες και ιστορική αναδρομή

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών

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

Πληροφορική Μάθημα 9

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο

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

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

Δίκτυα κινητής τηλεφωνίας (1G)

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

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

6.1 Επεκτείνοντας το δίκτυο 6.2 Επιλεγόμενες τηλεφωνικές γραμμές modems Πλεονεκτήματα Μειονεκτήματα Βασική χρήση

Ανατομία ενός πομποδέκτη σταθμού βάσης HSDPA (Node-B)

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Τηλεπικοινωνιακά Συστήματα ΙΙ

Μοντέλο Επικοινωνίας Δεδομένων. Επικοινωνίες Δεδομένων Μάθημα 6 ο

Τμήμα του εθνικού οδικού δικτύου (Αττική οδός)

Το δίκτυο GSM. ρ Απόστολος Γεωργιάδης Εργαστήριο Κινητών Επικοινωνιών Τµήµα Πληροφορικής & Επικοινωνιών ΑΤΕΙ Σερρών

Οι βασικές βαθμίδες του συστήματος των δορυφορικών επικοινωνιών δίνονται στο παρακάτω σχήμα :

Τεχνολογίες & Εφαρμογές Πληροφορικής Ενότητα 10: Κινητή Τηλεφωνία

INFOCOM WORLD CONFERENCE 2017 «Fiber to the people: The Gigabit Era!»

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

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

Ψηφιακή Υπογραφή. Ένα εργαλείο στα χέρια του σύγχρονου μηχανικού

Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών

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

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

Δίκτυα Υψηλών Ταχυτήτων Ενότητα 3: Integrated Services Digital Network - ISDN

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ Βελώνης Γεώργιος ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ. Μάθημα 5ο. Βελώνης Γεώργιος - 1ο Τ.Ε.Ε. Κατερίνης. Καθηγητής Πληροφορικής ΠΕ20 5-1

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

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

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

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα. λ από τον ρυθμό μετάδοσής της. Υποθέτοντας ότι ο κόμβος A

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

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

Πολυπλεξία. Creative Commons License 3.0 Share-Alike

Αρχιτεκτονική ικτύου

3. Ποια είναι τα πλεονεκτήματα των επιλεγόμενων τηλεφωνικών γραμμών; Είναι πολύ διαδεδομένες Εχουν μικρό κόστος

Ethernet Ethernet ΙΕΕΕ CSMA/CD

ΗΛΕΚΤΡΟΝΙΚΗΣ - ΡΑ ΙΟΗΛΕΚΤΡΟΛΟΓΙΑΣ

5.1.4 Τεχνολογίες Ψηφιακής Συνδρομητικής Γραμμής (xdsl)

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Ιωάννης Σταυρακάκης, Καθηγητής Password: edi

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

Συνδεσιμότητα κινητού τηλεφώνου

WIRELESS SENSOR NETWORKS (WSN)

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα

ΔΙΚΤΥΑ ΔΗΜΟΣΙΑΣ ΧΡΗΣΗΣ ΚΑΙ ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ Ενότητα #9: Κινητά Δίκτυα Επικοινωνιών

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

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Ενότητα 1. Εισαγωγή στις βασικές έννοιες των ικτύων ΗΥ

Δίκτυα Τηλεπικοινωνιών. και Μετάδοσης

ΜΑΘΗΜΑ 4 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ

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

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

ΜΑΘΗΜΑ 4 ΔΙΚΤΥΑ (NETWORKS)

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ ΣΤΑ ΔΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ ΙΙ Γ Τάξη Ε.Π.Α.Λ.

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

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

Σταθερή περιβάλλουσα (Constant Envelope)

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

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ»

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ

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

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

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

γ. Αυθεντικότητα (authentication) δ. Εγκυρότητα (validity) Μονάδες 5

Περίληψη Λαμπρόπουλος

ΠΤΥΧΙΑΚΗ. Θέμα πτυχιακής: Voice over IP. Ονοματεπώνυμο: Κόκκαλη Αλεξάνδρα

Κινητές Επικοινωνίες

7.6 ιευθυνσιοδότηση. Ερωτήσεις

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

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

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

Δεύτερη Σειρά Ασκήσεων

K24 Ψηφιακά Ηλεκτρονικά 6: Πολυπλέκτες/Αποπολυπλέκτες

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

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Εναλλακτικές Τεχνικές Εντοπισμού Θέσης

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΣΥΝΧΡΟΝΗ ΜΕΤΑΔΟΣΗ ΔΕΔΟΜΕΝΩΝ

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

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

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ : ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ :ΣΧΕΔΙΑΣΜΟΥ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΚΥΚΛΩΜΑΤΩΝ ΜΕΓΑΛΗΣ ΚΛΙΜΑΚΑΣ Διπλωματική Εργασία του Φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών: ΚΟΥΛΟΥΡΗ ΑΝΤΩΝΙΟΥ Αριθμός Μητρώου. : 4892 Θέμα: ΣΧΕΔΙΑΣΜΟΣ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΥΛΟΠΟΙΗΣΗΣ ΕΜΠΙΣΤΕΥΤΙΚΗΣ ΚΑΙ ΑΚΕΡΑΙΑΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΤΟΥ ΠΡΩΤΟΚΟΛΛΟΥ UMTS ΓΙΑ ΦΟΡΗΤΕΣ ΣΥΣΚΕΥΕΣ Επιβλέπων: ΚΑΘΗΓΗΤΗΣ Κ. ΓΚΟΥΤΗΣ Πάτρα,

ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η διπλωματική εργασία με θέμα: ΣΧΕΔΙΑΣΜΟΣ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΥΛΟΠΟΙΗΣΗΣ ΕΜΠΙΣΤΕΥΤΙΚΗΣ ΚΑΙ ΑΚΕΡΑΙΑΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΤΟΥ ΠΡΩΤΟΚΟΛΛΟΥ UMTS ΓΙΑ ΦΟΡΗΤΕΣ ΣΥΣΚΕΥΕΣ του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Κουλούρη Αντωνίου (Α.Μ. 4892) Παρουσιάστηκε δημόσια και εξετάστηκε στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις.. /.. /.. Ο Συνεξεταστής Ο Διευθυντής του Τομέα Οδυσσέας Κουφοπαύλου Καθηγητής Κωνσταντίνος Γκούτης Καθηγητής ii

Αριθμός Διπλωματικής Εργασίας: Τίτλος: ΣΧΕΔΙΑΣΜΟΣ ΤΩΝ ΑΛΓΟΡΙΘΜΩΝ ΥΛΟΠΟΙΗΣΗΣ ΕΜΠΙΣΤΕΥΤΙΚΗΣ ΚΑΙ ΑΚΕΡΑΙΑΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΤΟΥ ΠΡΩΤΟΚΟΛΛΟΥ UMTS ΓΙΑ ΦΟΡΗΤΕΣ ΣΥΣΚΕΥΕΣ Φοιτητής : Κουλούρης Αντώνιος Επιβλέπων : Καθηγητής Κ. Γκούτης Περίληψη Θέμα της παρούσας διπλωματικής εργασίας ήταν ο σχεδιασμός των αλγορίθμων εμπιστευτικής και ακέραιης επικοινωνίας του πρωτοκόλλου UMTS. Απώτερος στόχος υπήρξε η ενσωμάτωση τους σε φορητές συσκευές και γι αυτό σχεδιάστηκαν με τέτοιο τρόπο ώστε διατηρώντας μία ικανοποιητική απόδοση να μπορούν να καταλαμβάνουν όσο το δυνατόν μικρότερη επιφάνεια ολοκλήρωσης και ταυτόχρονα να καταναλώνουν όσο το δυνατόν λιγότερη ενέργεια. Οι τεχνικές που χρησιμοποιήθηκαν για να επιτευχθεί ο στόχος αυτός ήταν η βελτίωση του αλγορίθμου μαζί με την τεχνική της διοχέτευσης και τα ισορροπημένα δέντρα από πύλες XOR. iii

ΕΥΧΑΡΙΣΤΙΕΣ Θα ήθελα να ευχαριστήσω τον καθηγητή κο Κωνσταντίνο Γκούτη επειδή μου έδωσε την ευκαιρία να κάνω ένα από τα πράγματα που ήθελα στη ζωή μου, τον μετα-διδακτορικό ερευνητή κο Κακαρούντα Αθανάσιο για την ιώβεια υπομονή του και την οικογένειά μου που... iv

ΠΕΡΙΕΧΟΜΕΝΑ Κεφάλαιο 1...σελ. 1 ΕΙΣΑΓΩΓΗ 1.1 Γενικά περί δικτύων... -//- 1 1.1.1 Δίκτυα πρώτης γενιάς - 1G... -//- 1 1.1.2 Δίκτυα δεύτερης γενιάς - 2G... -//- 2 1.1.3 GPRS -2.5G... -//- 7 1.1.4 Δίκτυα τρίτης γενιάς - 3G... -//- 8 1.1.4.1 UMTS... -//- 9 1.1.5 Τα επόμενα πρωτόκολλα... -//- 13 1.2 Η ανάγκη για κινητή διασύνδεση... -//- 13 1.3 Συμπεράσματα... -//- 15 Κεφάλαιο 2... -//- 17 ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ KASUMI 2.1 3GPP... -//- 17 2.2 Ο αλγόριθμος KASUMI... -//- 17 2.2.1 Η συνάρτηση FL... -//- 20 2.2.2 Η συνάρτηση FO... -//- 21 2.2.3 Η συνάρτηση FI... -//- 22 2.2.4 Τα κουτιά αντικατάστασης S-boxes... -//- 24 2.2.5 Παραγωγή των κλειδιών κρυπτογράφησης Key scheduling -//- 25 2.2.6 Διάρθρωση κεφαλαίων... -//- 26 Κεφάλαιο 3... -//- 27 ΤΕΧΝΙΚΕΣ ΧΑΜΗΛΗΣ ΚΑΤΑΝΑΛΩΣΗΣ ΕΝΕΡΓΕΙΑΣ 3.1 Γενικά περί κατανάλωσης... -//- 27 3.1.1 Στατική κατανάλωση... -//- 27 3.1.2 Δυναμική κατανάλωση... -//- 28 3.1.3 Κατανάλωση βραχυκυκλώματος... -//- 30 3.1.4 Συνολική κατανάλωση... -//- 31 3.2 Το γινόμενο Ισχύoς-Καθυστέρησης... -//- 32 3.3 Ενέργεια προερχόμενη από ανεπιθύμητες ή καθυστερημένες μεταβάσεις λογικών επιπέδων τάσης (Glitch Energy)...-//- 34 3.3.1 Γενικά... -//- 34 v

3.3.1.2 Λογική συνάρτηση... -//- 35 3.3.1.3 Στατιστική σήματος... -//- 35 3.3.1.4 Δια-σηματική συσχέτιση... -//- 36 3.3.1.5 Δυναμικές ή καθυστερημένες (glitching) μεταβάσεις... -//- 38 3.3.2 Τεχνικές σχεδίασης για μείωση της δραστηριότητας εναλλαγής... -//- 39 3.3.2.1 Λογική αναδιάταξη (Logical restructuring)... -//- 40 3.3.2.2 Σειρά εισόδων... -//- 41 3.3.2.3 Χρονικά πολυπλεγμένες πηγές... -//- 41 3.3.2.4 Ελάττωση του φαινομένου καθυστέρησης (glitching) με εξισορρόπηση των μονοπατιών δεδομένων... -//- 42 Κεφάλαιο 4... -//- 44 ΕΦΑΡΜΟΓΗ ΤΕΧΝΙΚΟΥ ΣΧΕΔΙΑΣΜΟΥ ΓΙΑ ΧΑΜΗΛΗ ΚΑΤΑΝΑΛΩΣΗ ΣΤΟΝ KASUMI 4.1 Βελτίωση του αλγορίθμου..... -//-44 4.1.1 Προηγούμενες προτάσεις... -//-44 4.1.2 Προτεινόμενη αρχιτεκτονική... -//-46 4.2 Τεχνική ισορροπημένου δέντρου πυλών XOR... -//- 49 4.2.1 Τα κουτιά αντικατάστασης S7 και S9... -//- 50 4.2.2 Οι συναρτήσεις B_FUNC και C_FUNC... -//- 52 4.3 Ο VHDL κώδικας των κυκλωμάτων... -//- 54 4.3.1 Η συνάρτηση FI... -//- 54 4.3.2 Τα κουτιά αντικατάστασης... -//- 56 4.3.2.1 Τo κουτί αντικατάστασης S9... -//- 56 4.3.2.1.1 Η συνάρτηση S9_Y_FUNC... -//- 57 4.3.2.1.2 Η συνάρτηση S9_XOR_FUNC... -//- 58 4.3.2.2 Τo κουτί αντικατάστασης S7... -//- 58 4.3.2.2.1 Η συνάρτηση S7_Y_FUNC... -//- 59 4.3.2.2.2 Η συνάρτηση S7_XOR_FUNC... -//- 60 4.3.2.2.3 Η συνάρτηση S7_AND_FUNC... -//- 60 4.3.3 Οι συναρτήσεις B_FUNC και C_FUNC... -//- 61 4.3.3.1 Η συνάρτηση B_FUNC... -//- 61 4.3.3.2 Η συνάρτηση C_FUNC... -//- 61 Κεφάλαιο 5... -//- 62 Η ΥΛΟΠΟΙΗΣΗ ΣΤΟΝ KASUMI 5.1 Το κύκλωμα MDL... -//- 62 vi

5.2 Το κύκλωμα για τον αλγόριθμο KASUMI... -//- 64 5.3 Το κύκλωμα για την παραγωγή των κλειδιών κρυπτογράφησης KEY SCHEDULER... -//- 65 5.4 H μηχανή πεπερασμένων καταστάσεων του τελικού κυκλώματος.. -//- 66 5.5 Το τελικό κύκλωμα... -//- 68 5.6 Επαναληπτική σχεδίαση... -//- 69 5.7 Ο VHDL κώδικας των κυκλωμάτων... -//- 70 5.7.1 Το πλήρως αναπτυγμένο κύκλωμα... -//- 70 5.7.1.1 Η συνάρτηση FL -- (FL)... -//- 70 5.7.1.2 Το τμήμα MDL -- (MDL)... -//- 71 5.7.1.3 Ο αλγόριθμος KASUMI -- (KASUMI)... -//- 73 5.7.1.4 Η παραγωγή των κλειδιών -- (KEY_SCHDLR)... -//- 76 5.7.1.5 Η μηχανή πεπερασμένων καταστάσεων - (KSM_FSM)... -//- 78 5.7.1.6 Το τελικό κύκλωμα (FULL_CIRCUIT)... -//- 81 5.7.2 Η επαναληπτική σχεδίαση... -//- 83 5.7.2.1 Η μηχανή πεπερασμένων καταστάσεων στην επαναληπτική σχεδίαση..... -//- 83 5.7.2.1 Η παραγωγή κλειδιών στην επαναληπτική σχεδίαση... -//- 86 5.7.2.3 Το πλήρες κύκλωμα στην επαναληπτική σχεδίαση... -//- 87 5.8 Αποτελέσματα υλοποίησης... -//- 90 5.8.1 Πλήρως ανεπτυγμένο κύκλωμα... -//- 90 Test set 1... -//- 90 Test set 2... -//- 91 Test set 3... -//- 92 5.8.2 Επαναληπτική σχεδίαση... -//- 93 Test set 1... -//- 93 Test set 2... -//- 94 Test set 3... -//- 95 Κεφάλαιο 6...-//-96 Ο ΑΓΟΡΙΘΜΟΣ ΕΜΠΙΣΤΕΥΤΙΚΟΤΗΤΑΣ F8 ΚΑΙ Ο ΑΛΓΟΡΙΘΜΟΣ ΑΚΕΡΑΙΟΤΗΤΑΣ F9 6.1 Ο αλγόριθμος εμπιστευτικότητας f 8...-//- 96 6.2 Ο αλγόριθμος ακεραιότητας f9.......-//- 99 6.3 Υλοποίηση του αλγόριθμου εμπιστευτικότητας f 8...-//-101 6.4 Υλοποίηση του αλγόριθμου ακεραιότητας f 9 -//-103 6.5 Ο VHDL κώδικας των κυκλώματων -//-105 6.5.1 Ο αλγόριθμος f8.-//-105 6.2.1.1 Το κύκλωμα f8_mdl...-//-105 vii

6.5.1.2 Το κύκλωμα f8_mdl_fsm.....-//-106 6.5.1.3 Το κύκλωμα f8 _FSM...-//-108 6.5.1.4 Το κύκλωμα f8...-//-119 6.5.2 Ο αλγόριθμος f9. -//-120 6.5.2.1 Το κύκλωμα f9_mdl -//-120 6.5.2.2 Το κύκλωμα f9_mdl_fsm -//-122 6.5.2.3 Το κύκλωμα f9_fsm.-//-123 6.5.2.4 Το κύκλωμα f9.-//-138 6.6 Αποτελέσματα υλοποίησης...-//-139 6.6.1 Αλγόριθμος f8....-//-139 Test set 1..-//-139 Test set 2..-//-140 Test set 3..-//-141 Test set 4..-//-142 Test set 5..-//-143 6.6.2 Αλγόριθμος f9.....-//-144 Test set 1..-//-144 Test set 2..-//-145 Test set 3..-//-146 Test set 4..-//-147 Test set 5..-//-148 Κεφάλαιο 7...-//-149 ΑΠΟΤΕΛΕΣΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Αποτελέσματα...-//-149 Σημαντικές παρατηρήσεις...-//-151 Κεφάλαιο 8...-//-152 ΣΥΜΠΕΡΑΣΜΑΤΑ ΠΑΡΑΡΤΗΜΑ Π.A Αναφορές... -//- i Π.B Ο VHDL κώδικας των components... -//- v Π.B. 1.. AND_1 viii

Π.B. 2.. AND_16 Π.B. 3.. AND_64 Π.B. 4.. AND_128 Π.B. 5.. EDGE_FF_N Π.B. 6.. EDGE_FF_P Π.B. 7.. MUX_1 Π.B. 8.. MUX_7 Π.B. 9.. MUX_9 Π.B.10.. MUX_64 Π.B.11.. MUX_128 Π.B.12.. OR_1 Π.B.13.. OR_32 Π.B.14.. REG_7_N Π.B.15.. REG_9_N Π.B.16.. REG_16_N Π.B.17.. REG_16_P Π.B.18.. REG_32_N Π.B.19.. REG_64_N Π.B.20.. REG_64_P Π.B.21.. REG_64_F Π.B.22.. REG_128 Π.B.23.. SHIFTER_16_1 Π.B.24.....SHIFTER_16_3 Π.B.25.. SHIFTER_16_4 Π.B.26.. SHIFTER_16_5 Π.B.27.. TR_9_7 Π.B.28.. XOR_1 Π.B.29.. XOR_7 Π.B.30.. XOR_9 Π.B.31.. XOR_16 Π.B.32.. XOR_32 Π.B.33.. XOR_64 Π.B.34.. XOR_128 Π.B.35.. ZE_7_9 ix

ΚΕΦΑΛΑΙΟ 1 ο ΕΙΣΑΓΩΓΗ 1.1 ΓΕΝΙΚΑ ΠΕΡΙ ΔΙΚΤΥΩΝ 1.1.1 Δίκτυα πρώτης γενιάς - 1G Τα πρώτα κινητά τηλέφωνα λειτούργησαν σε δίκτυο 1 ης γενιάς ήδη από τη δεκαετία του 80. Η ονομασία κινητά τηλέφωνα προήλθε από το γεγονός ότι οι συσκευές αυτές λειτουργούσαν σε δίκτυα κυψελών με πολλαπλούς σταθμούς βάσης. Αυτοί ήταν τοποθετημένοι ο ένας κοντά στον άλλο, με σκοπό να εξυπηρετήσουν το τηλέφωνο καθώς αυτό μετακινιόταν από τη μία κυψέλη στην άλλη, με τη βοήθεια κατάλληλων πρωτοκόλλων. Η μεταφορά φωνής ήταν ουσιαστικά η μόνη υπηρεσία που προσφερόταν και η ασφάλεια ήταν δευτερεύουσας σημασίας. Αυτό αποδεικνύεται και από το γεγονός ότι ένας απλός δέκτης ραδιοφώνου συντονισμένος στην κατάλληλη συχνότητα αρκούσε ώστε να μπορέσει κάποιος να ακούσει μια συνομιλία. Επίσης, η ταυτότητα του τηλεφώνου ήταν διαθέσιμη μέσα από τη ραδιοζεύξη και ως εκ τούτου, οποιοσδήποτε μπορούσε να την αποκτήσει, να επαναπρογραμματίσει τη συσκευή του με την καινούρια ταυτότητα (cloning) και όλες οι κλήσεις να χρεωθούν στον καινούριο αριθμό. Το Σεπτέμβριο του 81 λειτούργησε το πρώτο δίκτυο κινητών τηλεφώνων με αυτόματη περιαγωγή, στη Σαουδική Αραβία. Ένα μήνα αργότερα ξεκίνησε στις Σκανδιναβικές χώρες ένα NMT δίκτυο με αυτόματη περιαγωγή μεταξύ των χωρών της περιοχής. Ακολούθησαν η Αγγλία, η Γαλλία και η Γερμανία. Κάθε χώρα όμως είχε αναπτύξει το δικό της σύστημα, το οποίο δεν ήταν συμβατό με τα υπόλοιπα. Για λόγους λοιπόν οικονομικούς (περιορισμένη αγορά για τις εταιρίες κατασκευής των απαραίτητων συσκευών-εξοπλισμού τόσο για τους παρόχους όσο και για τους πελάτες) αλλά και μη δυνατότητας λειτουργίας των εν λόγω συσκευών εκτός εθνικών ορίων κάθε κράτους, παρενέβη το CEPT (Conference of European Posts and Telegraphs). Το 1982, ο ανωτέρω οργανισμός σχημάτισε ένα γκρουπ, το Groupe Spécial Mobile (GSM), για να μελετήσει και να αναπτύξει ένα κοινό πανευρωπαϊκό σύστημα. 1

1.1.2 Δίκτυα δεύτερης γενιάς - 2G Κατά τη διάρκεια της δεκαετίας του 90, κατασκευάσθηκαν οι πρώτες συσκευές 2 ης γενιάς. Αυτές λειτούργησαν σε δίκτυα, όπως τo GSM (βασισμένο στην πολύπλεξη με καταμερισμό χρόνου - TDMA) με Ευρωπαϊκή καταγωγή αλλά παγκόσμια αποδοχή, το IS-136 (TDMA) με χρήση στην Αμερική, το iden (TDMA) με αποκλειστική χρήση από την εταιρία Nextel στις ΗΠΑ, το IS-95 (βασισμένο στην πολλαπλή προσπέλαση διαίρεσης κώδικα - CDMA) σε Αμερική και μερικές χώρες της Ασίας και το PDC (TDMA) το οποίο χρησιμοποιήθηκε αποκλειστικά στην Ιαπωνία. Το 1991 τέθηκε σε λειτουργία το πρώτο δίκτυο 2 ης γενιάς (GSM) στην Ευρώπη. Την περίοδο εκείνη οι συσκευές έφταναν τα 200gram. Το GSM (γνωστό πλέον ως Global System for Mobile communications) είναι ένα δίκτυο με σύνδεση (Connection oriented network) και το οποίο χρησιμοποιεί την πολύπλεξη με καταμερισμό χρόνου για να προσφέρει μία εναέρια διαμεταγωγή δεδομένων της τάξης των 270kbps. Πρακτικά όμως λειτουργεί στα 9.6kbps. Για τη λειτουργία στα δίκτυα GSM, είναι απαραίτητες συσκευές διπλής ζώνης (dual-band), τριπλής (tri-band) ή τετραπλής (quad-band). Η διαφορά μεταξύ τους, έγκειται στο πλήθος των συχνοτήτων που υποστηρίζουν. Οι συσκευές που χρησιμοποιούν συχνότητες ανά ζεύγη, όπως 900 και 1800MHz, με καλή λειτουργία στην Ευρώπη, ή 900 και 1900MHz, με καλή λειτουργία σε Ευρώπη και Αμερική, είναι οι διπλής ζώνης. Οι συσκευές που καλύπτουν τα 900, 1800 και 1900MHz, λειτουργώντας σε Ευρώπη και Βόρια Αμερική, είναι οι λεγόμενες ευρωπαϊκές τριπλής ζώνης ενώ όσες καλύπτουν το φάσμα των 850, 1800 και 1900MHz, λειτουργώντας καλά στην Βόρια Αμερική αλλά περιορισμένα στην Ευρώπη, είναι οι αμερικανικές τριπλής ζώνης. Αυτήν τη στιγμή στην Ελλάδα η COSMOTE παρέχει υπηρεσίες στα 900 & 1800ΜΗz, ενώ η Wind όπως και η Vodafone στα 900ΜΗz. Τελευταία, άρχισαν να διατίθενται και στην ελληνική αγορά συσκευές τετραπλής ζώνης που λειτουργούν και στις 4 προαναφερθείσες συχνότητες (850, 900, 1800 & 1900MHz). Μια καινοτομία που εισήγαγαν για πρώτη φορά τα δίκτυα δεύτερης γενιάς, ήταν μία δικατευθυντήρια υπηρεσία για σύντομα αλφαριθμητικά μηνύματα (μέχρι 160 χαρακτήρες) γνωστά ως SMS (Short Message Services). Κάποιες επιπλέον υπηρεσίες που προσφέρθηκαν, ήταν η αποστολή και η λήψη δεδομένων σε ρυθμούς των 9600bps σε χρήστες των απλών παλιών τηλεφωνικών υπηρεσιών (POTS - Plain Old Telephone Services), των ψηφιακών δικτύων ολοκληρωμένων υπηρεσιών (ISDN), των δημόσιων δικτύων δεδομένων διαμεταγωγής πακέτου (Packet Switched Public Data Networks) και των δημόσιων δικτύων 2

δεδομένων διαμεταγωγής κυκλώματος (Circuit Switched Public Data Networks), η προώθηση της κλήσης όταν ο συνδρομητής είναι εκτός δικτύου, η αναγνώριση κλήσης, η αναμονή κλήσης, οι τηλεφωνικές επικοινωνίες που συμμετέχουν περισσότερα από δύο άτομα, η διπλού τόνου πολλαπλή συχνότητα (DTMF dual tone multi frequency) για διάφορους ελέγχους μέσω του τηλεφωνικού δικτύου, το φωνητικό μήνυμα (voice mail), η αποστολή μηνύματος τηλεομοιοτυπίας (fax mail), η φραγή εξερχομένων κλήσεων, η φραγή εισερχομένων κλήσεων, η τηλεδιάσκεψη και άλλα. Απόψεις ενός GSM δικτύου φαίνονται στο παρακάτω σχήμα: Σχήμα 1.1 Αρχιτεκτονική ενός δικτύου GSM (Πηγή: Swiss Federal Institute of Technology) Με την εισαγωγή των 2 ης γενιάς ψηφιακών πλατφορμών (πολλαπλή πρόσβαση με επιμερισμό χρόνου TDMA - και στην πολλαπλή προσπέλαση διαίρεσης κώδικα - CDMA-IS-41), η ασφάλεια των GSM δικτύων βελτιώθηκε. Η χρησιμοποίηση καλύτερων αλγορίθμων κρυπτογράφησης και η ταυτότητα του σήματος που προσομοίαζε σε θόρυβο, καθιστούσαν την υποκλοπή αρκετά δύσκολη. Αυτό οφειλόταν στην ακολουθία από 42 bits που χρησιμοποιούταν για την κρυπτογράφηση των δεδομένων και της φωνής. Το επίπεδο ασφάλειας σε ένα δίκτυο GSM έχει ως εξής: η επικύρωση (authentication) περιέχει δύο οντότητες, την κάρτα SIM και το κέντρο επικύρωσης (Authentication Center AuC). Κάθε συνδρομητής παραλαμβάνει ένα κρυφό κλειδί, του οποίου ένα αντίγραφο είναι αποθηκευμένο στην κάρτα SIM και ένα δεύτερο στο κέντρο επικύρωσης. Κατά τη διαδικασία επικύρωσης, το κέντρο επικύρωσης παράγει ένα 3

τυχαίο αριθμό ο οποίος στέλνεται στη συσκευή. Στη συνέχεια, η συσκευή ταυτόχρονα με το κέντρο επικύρωσης, χρησιμοποιούν αυτόν τον τυχαίο αριθμό μαζί με το αρχικό κλειδί και έναν αλγόριθμο κρυπτογράφησης, τον Α3, για να παράξουν μία απόκριση (SRES - signed response) η οποία στέλνεται στο κέντρο επικύρωσης. Αν ο αριθμός που έστειλε η συσκευή ταιριάζει με αυτόν που έχει υπολογίσει το κέντρο επικύρωσης τότε ο συνδρομητής επικυρώνεται. Ο ίδιος τυχαίος αριθμός μαζί με το κλειδί και έναν αλγόριθμο κρυπτογράφησης, τον Α8, χρησιμοποιούνται για να υπολογιστεί το κλειδί κρυπτογράφησης. Αυτό το κλειδί μαζί με τον αριθμό του πλαισίου (frame number), χρησιμοποιούν το αλγόριθμο Α5 για να παράξουν μία ακολουθία από 114 bits που περνούν από μία πύλη XOR). Ένα ακόμα επίπεδο ασφάλειας είναι ότι κάθε GSM τερματικό αναγνωρίζεται και από ένα μοναδικό αριθμό, γνωστό ως παγκόσμια ταυτότητα φορητού εξοπλισμού (IMEI- International Mobile Equipment Identity). Στο συνέχεια θα επιχειρηθεί μια πιο αναλυτική εξήγηση του τρόπου με τον οποίο γίνεται η κρυπτογράφηση στα δίκτυα GSM έτσι ώστε να κατανοηθούν καλύτερα οι διάφορες επιθέσεις που γίνονται σ αυτά. Οι κλήσεις φωνής στα GSM δίκτυα κρυπτογραφούνται με μία οικογένεια αλγορίθμων γνωστή ως Α5. Ο Α5/0 δεν περιέχει καμία κρυπτογράφηση. Ο Α5/1 είναι ο συνηθισμένος αλγόριθμος κρυπτογράφησης (ασφάλεια περίπου των 40 bits) ενώ ο Α5/2 είναι ο ασθενής αλγόριθμος. Ο Α5/3 είναι βασισμένος στον UMTS/WCDMA αλγόριθμο KASUMI. Παρόλο που μία από τις κάτωθι περιγραφόμενες επιθέσεις κατάφερε να νικήσει τον A5/3, καμία επίθεση δεν έχει γίνει απευθείας πρός αυτόν. Πληροφοριακά αναφέρεται ότι στα δίκτυα GPRS οι αλγόριθμοι με τις αντίστοιχες ιδιότητες είναι οι GEA0,1,2 και 3. Όλοι αυτοί οι αλγόριθμοι χρησιμοποιούν ένα 64-bit κλειδί που προέρχεται από ένα κοινό μηχανισμό: αρχικά η συσκευή λαμβάνει μία τυχαία πρόσκληση. Στη συνέχεια η κάρτα SIM (στην οποία περιέχεται το κύριο κρυφό κλειδί του συνδρομητή) υπολογίζει μία υπογραφή επικύρωσης (authentication signature) και ένα κλειδί κρυπτογράφησης (encryption key). Σημειώνεται ότι τo κλειδί που κρυπτογραφήθηκε δεν εξαρτάται από τον αλγόριθμο που πρόκειται να χρησιμοποιηθεί. Η κρυπτογράφηση πραγματοποιείται σύμφωνα με την παρακάτω διαδικασία: ο αλγόριθμος κρυπτογράφησης παίρνει το κρυφό κλειδί και τον αριθμό του πλαισίου (frame number) και παράγει μια ψευδοτυχαία ακολουθία (pseudo-random stream) από ψηφιολέξεις (keystream) η οποία γίνεται XOR με την είσοδο για να την κρυπτογραφήσει ή γίνονται XOR με τα bits που έχουν ληφθεί ούτως ώστε αυτά να αποκρυπτογραφηθούν. 4

Με αυτόν τον τρόπο τα bits κρυπτογραφούνται ανεξάρτητα το ένα από το άλλο. Η διαδικασία ολοκληρώνεται μόνο μετά την κωδικοποίηση (coding) για την διόρθωση των λαθών. Με τον τρόπο αυτό εισάγονται γνωστές γραμμικές σχέσεις μεταξύ των bits. Έτσι παρόλο που ο επιτιθέμενος πιθανόν να μην γνωρίζει τις τιμές των εισαγόμενων bits, γνωρίζει ότι συγκεκριμένες ομάδες από αυτά έχουν γίνει XOR με το 0. Έτσι παίρνοντας τις ίδιες ομάδες από κρυπτογραφημένα bits και κάνοντας τα XOR, αποκαλύπτει την αρχική ακολουθία. Αυτό είναι και το κυριότερο πρόβλημα που επιτρέπει στις επιθέσεις να γίνονται χωρίς καμία γνώση των δεδομένων που έχουν τροποποιηθεί. Η βασική επίθεση πραγματοποιείται εναντίον του Α5/2. Με τον ενόςχρόνου (one-time) προϋπολογισμό (precomputaion) και την αποθήκευση των αποτελεσμάτων σε μία αρκετά καλή μνήμη, είναι δυνατή η υποκλοπή 4 frames μιας Α5/2 κρυπτογραφημένης φωνής, που περιέχει αρκετά γνωστές γραμμικές σχέσεις μέσα στον παραγόμενο συρμό από ψηφιολέξεις (keystream). Η επίθεση είναι στιγμιαία και απαιτεί ελάχιστα msecs κρυπτογραφημένης φωνής. Αυτή είναι η περίπτωση μιας παθητικής επίθεσης (passive attack). Μόλις το κλειδί αποκτηθεί μπορεί να χρησιμοποιηθεί για αποκρυπτογράφηση σε πραγματικό χρόνο. Ένας δεύτερος τύπος επίθεσης, βασίζεται στο γεγονός ότι η πρώτη επίθεση είναι πολύ γρήγορη για να αναμιχθεί (interfere) με το GSM πρωτόκολλο. Πρόκειται για περίπτωση μίας ενεργής επίθεσης (active attack), που σημαίνει ότι ο επιτιθέμενος έχει παρεμβληθεί στην επικοινωνία. Στην πραγματικότητα αυτό σημαίνει ότι χρειάζεται κάτι που θα προσποιείται ότι είναι ένας σταθμός βάσης, αλλά τέτοιες επιθέσεις συνέβαιναν στο παρελθόν. Εμπορικός πειραματικός εξοπλισμός που διατίθεται στο εμπόριο μπορεί να επιτύχει κάτι τέτοιο, αλλά δεν είναι τίποτα περισσότερο από δύο κινητά τηλέφωνα κατάλληλα συνδεδεμένα. Στην πραγματικότητα, παρόλο που και ο πραγματικός σταθμός βάσης και ο χρήστης θα επιθυμούσαν έναν ισχυρότερο αλγόριθμο από τον Α5/2, ένας ψεύτικος σταθμός βάσης μπορεί να πείσει τον χρήστη να χρησιμοποιήσει τον Α5/2 αρκετά ώστε να τον παραβιάσει, να αποκτήσει το κλειδί και να ανταποκριθεί στον πραγματικό σταθμός βάσης με σωστά κρυπτογραφημένα δεδομένα χρησιμοποιώντας τον ισχυρότερο αλγόριθμο. Αυτή η τακτική λειτουργεί διότι και στον Α5/2 και στον Α5/3 χρησιμοποιείται το ίδιο κλειδί. Το πιο σημαντικό σχετικά με τις ενεργές επιθέσεις είναι ότι ο επιτιθέμενος μπορεί να μπερδέψει τον χρήστη. Αν ο επιτιθέμενος υποκλέψει μια τυχαία πρόσκληση που έχει σταλθεί σε ένα συγκεκριμένο χρήστη και έχει καταγράψει όλη την επικοινωνία, είτε είναι GSM φωνή 5

είτε GPRS δεδομένα, μπορεί αργότερα αν στείλει μία πρόσκληση στο χρήστη και να του προτείνει να χρησιμοποιήσει τον Α5/2 για την μεταξύ τους επικοινωνία. Όταν ο χρήστης απαντήσει, θα ανακτηθεί το κλειδί, το οποίο θα χρησιμοποιηθεί για την αποκρυπτογράφηση του καταγεγραμμένου υλικού. Επιπλέον, η παραπάνω διαδικασία είναι τόσο γρήγορη, που μπορεί να γίνει από τη στιγμή που το πραγματικό δίκτυο στείλει μια πρόσκληση στο χρήστη μέχρι αυτός να απαντήσει. Στην περίπτωση που δεν υποκλαπούν αρκετά δεδομένα, ο επιτιθέμενος μπορεί να καλέσει τον χρήστη, να πιστοποιήσει ότι έχει καλέσει το σωστό νούμερο, να ζητήσει κάποιο ανύπαρκτο πρόσωπο, να απολογηθεί για το λάθος του και τελικά να αποκτήσει το κλειδί. Αυτό προς το παρόν δουλεύει επειδή το δίκτυο κρατάει το κλειδί για την πραγματοποίηση πολλαπλών κλήσεων. Μία τρίτη επίθεση έχει να κάνει πάλι με το γεγονός ότι, όπως και πριν, χρησιμοποιούνται γραμμικές σχέσεις για την κωδικοποίηση των πλαισίων (frames). Αυτό χρησιμεύει στην κατάταξη του παραγόμενου συρμού από ψηφιολέξεις (keystream) με τρόπο κατάλληλο για αναζήτηση με μια τεχνική γνωστή ως ανταλλαγή χρόνου-μνήμης (timememory tradeoff). Ο επιτιθέμενος παίρνει 4 συνεχόμενα κωδικοποιημένα πλαίσια, τα επεξεργάζεται και ελέγχει αν τα αποτελέσματα υπάρχουν στη βάση δεδομένων του. Αν είναι τυχερός και υπάρχουν, τότε μπορεί εύκολα να καθορίσει το κλειδί. Αν όχι, τότε θα πρέπει να δοκιμάσει ξανά με 4 καινούρια διαφορετικά πλαίσια. Τελικά το κλειδί θα αποκαλυφθεί. Το πόσες φορές θα χρειαστεί να γίνει κάτι τέτοιο, εξαρτάται από το μέγεθος της βάσης δεδομένων, δηλαδή από το πόσο χρόνο έχει σπαταληθεί για να κατασκευασθεί. Τα δίκτυα GSM έχουν αρκετά τρωτά σημεία. Ψεύτικοι σταθμοί βάσης (παραβίαση του Α5/2 για επανάκτηση του κλειδιού KC και εν συνεχεία χρησιμοποίησή του στον Α5/1, επιλογή συγκεκριμένου κειμένου με στόχο την πρόβλεψη του KI), παραγωγή πανομοιότυπων καρτών SIM (SIM card cloning) (ο David Wagner κλωνοποίησε μία κάρτα SIM παραβιάζοντας τον αλγόριθμο Α3/8 (COMP128) και επανακτώντας το κλειδί KI), επαναχρησιμοποίηση του κλειδιού KC κάθε 3h58, το γεγονός ότι ο Α5/1 έχει παραβιασθεί (από τους Biryukov, Shamir, Wagner (2000) Biham και Keller (2003) επιθέσεις με ανταλλαγή χρόνου-μνήμης & Ekdahl και Johansson (2002) στατιστικές επιθέσεις (statistical attack) καθώς και ιοί αλφαριθμητικών μηνυμάτων (κακώς διαμορφωμένα δυαδικά μηνύματα) που κρασάρουν συγκεκριμένες συσκευές είναι μερικά από αυτά. 6

Όλα αυτά, οδήγησαν τη διεθνή κοινότητα σε ορισμένες πολύ σημαντικές αποφάσεις. Για παράδειγμα, η ασφάλεια πρέπει να λειτουργεί χωρίς τη βοήθεια του χρήστη αλλά εκείνος θα πρέπει να γνωρίζει την ύπαρξη της, δεύτερον η πιθανότητα μιας επίθεσης είναι ένα πολύ σημαντικό θέμα έστω και αν είναι απίθανο κάτι τέτοιο να συμβεί, τρίτον η ανάπτυξη τυποποιημένων για την ασφάλεια αλγορίθμων κρυπτογράφησης, ανοικτών στη διεθνή επιστημονική κοινότητα για έλεγχο και κριτική και τέταρτον η χρησιμοποίηση γνωστών αλγορίθμων ή η δημοσιοποίηση οποιονδήποτε από αυτούς έχουν σχεδιαστεί για ένα συγκεκριμένο σκοπό. 1.1.3 GPRS - 2.5G Η γενική ασύρματη τεχνολογία πακέτου (General Packet Radio Service - GPRS) είναι μια ψηφιακή τεχνολογία ασύρματης ζεύξης. Τεχνολογικά τοποθετείται μεταξύ των δικτύων δεύτερης και τρίτης γενιάς, δηλαδή ως 2.5G. Υποστηρίζει μετάδοση δεδομένων με μεταγωγή πακέτου (που σημαίνει ότι πολλαπλοί χρήστες μπορούν να χρησιμοποιήσουν το ίδιο κανάλι μετάδοσης όταν έχουν να μεταδώσουν δεδομένα) και ένα μεγάλο πλήθος από εύρη ζώνης, παρέχει όμως μέτρια ταχύτητα μεταφοράς. Για τη μετάδοση χρησιμοποιεί αχρησιμοποίητα κανάλια, τα οποία είχαν δημιουργηθεί από την τεχνική της πολλαπλής πρόσβασης με πολύπλεξη χρόνου, των GSM δικτύων και γι αυτό το λόγο είναι συμβατό με αυτά. Το θεωρητικό όριο για δεδομένα που μεταδίδονται με τη μέθοδο της μεταγωγής πακέτου είναι περίπου 170kbps. Ένας πιο ρεαλιστικός όμως ρυθμός διαμεταγωγής (bitrate) είναι 30-70kbps. Μία διαφοροποίηση του GPRS, γνωστή ως EDGE, επιτρέπει μεγαλύτερους ρυθμούς διαμεταγωγής δεδομένων που κυμαίνονται μεταξύ 20 και 200kbps. Μερικές από τις αναβαθμίσεις που προσέφερε το GPRS ήταν και οι ακόλουθες: υπηρεσίες σημείου προς σημείο (Point-to-point services) (διαδίκτυο μέσω IP και δικτύων Χ.25), υπηρεσίες σημείου προς πολλαπλό σημείο (Point-to-multipoint services), φραγή για την υπηρεσία απλών μηνυμάτων κειμένου, ανώνυμη πρόσβαση σε προκαθορισμένες υπηρεσίες, καθώς και μελλοντικές προσθήκες όπως μεγαλύτερη χωρητικότητα, περισσότεροι χρήστες, καινούριες προσβάσεις, καινούρια πρωτόκολλα, καινούρια ασύρματα δίκτυα, δυνατότητα στα δίκτυα να είναι συνεχώς ενεργοποιημένα (always-on), περιεχόμενο βασισμένο στο διαδίκτυο καθώς και υπηρεσίες βασισμένες στη μεταγωγή πακέτου (ηλεκτρονική αλληλογραφία εν κινήσει, μηνύματα πολυμέσων, ισχυρές οπτικές επικοινωνίες, περιήγηση στο διαδίκτυο με έγχρωμες εικόνες). Παρόλα αυτά, το GPRS δεν κατάφερε να βελτιώσει όλες τις αδυναμίες. Ο κίνδυνος για κατεστραμμένους πελάτες-απλών μηνυμάτων (SMS 7

clients) και πελάτες-υπολογιστές (PC clients) καθώς και η αποθήκευση των GPRS/WAP διαπιστευτηρίων στην κάρτα SIM είναι δύο παραδείγματα. Το GPRS δεν είναι το μοναδικό δίκτυο 2.5G. Στην κατηγορία αυτή εμπίπτει επίσης το CDMA2000 1x αλλά και το HSCSD (High Speed Circuit Switched Data- Υψηλής Ταχύτητας Δεδομένα με Μεταγωγή Κυκλώματος). Μία άποψη του δικτύου GPRS φαίνεται στο ακόλουθο σχήμα: Σχήμα 1.2 Αρχιτεκτονική ενός δικτύου GPRS (Πηγή: Swiss Federal Institute of Technology) 1.1.4 Δίκτυα τρίτης γενιάς - 3G Στις μέρες μας δημιουργήθηκαν και τα πρώτα δίκτυα κινητής τηλεφωνίας τρίτης γενιάς, με την Ιαπωνία και την DoCoMo να βρίσκονται για μια ακόμη φορά στην κορυφή, της εμπορικής τουλάχιστον διάθεσης των εν λόγω δικτύων. Οι εκπρόσωποι των εταιριών (παροχής υπηρεσιών αλλά και κατασκευαστών τηλεφώνων) ήταν σε θέση πλέον να ισχυρίζονται ότι μπορούσαν να παρέχουν πολύ υψηλές ταχύτητες διαμεταγωγής δεδομένων και προηγμένες υπηρεσίες όπως πλοήγηση (GPS), μηνύματα πολυμέσων με εικόνα και ήχο, τηλεδιάσκεψη (video conferencing), βιντεοτηλέφωνα (videophones), τηλεφωνία μέσω διαδικτύου (voice-over- IP), βίντεο-ζήτηση (video on demand), παιχνίδια μέσω διαδικτύου (network gaming webcast), I-mode (την υπηρεσία κινητού Internet), καθώς και ασφαλείς αγορές μέσω διαδικτύου. 8

Οι απαιτήσεις για τα κινητά δίκτυα τρίτης γενιάς καθορίστηκαν στο πρότυπο IMT-2000 της Διεθνούς Ένωσης Τηλεπικοινωνιών (ITU - International Telecommunications Union). Το πρότυπο περιελάμβανε 6 τμήματα: το W-CDMA γνωστό ως UMTS, το CDMA2000, το TD- CDMA/ TD-CDMA, το EDGE (Enhanced Data rates for GSM Evolution- Βελτιωμένοι Ρυθμοί δεδομένων για την εξέλιξη του δικτύου GSM), το DECT και το Wi-MAX. 1.1.4.1 UMTS Αρχικά το UMTS θεωρήθηκε ως ένα μοναδικό, ενοποιημένο και διεθνές πρότυπο. Στην πραγματικότητα όμως έχει διασπαστεί σε τρία ανταγωνιστικά, ξεχωριστά και ασύμβατα μεταξύ τους πρότυπα. Το πρώτο είναι το Παγκόσμιο Σύστημα Κινητών Τηλεπικοινωνιών (Universal Mobile Telecommunication System - UMTS) βασισμένο στην τεχνολογία πολλαπλή πρόσβαση ευρείας ζώνης με πολύπλεξη κώδικα (W-CDMA). Η λύση αυτή προτιμάται στις χώρες εκείνες που χρησιμοποιούσαν παλαιότερα τεχνολογία GSM και αυτές βρίσκονται κυρίως στην Ευρώπη. Το άλλο σημαντικό πρότυπο είναι το CDMA2000 Σχήμα 1.3 Αρχιτεκτονική ενός δικτύου UMTS (Πηγή: Wikipedia) 1xEV-DO που αποτελεί μια μετεξέλιξη του δεύτερης γενιάς CDMA IS- 95 και το οποίο καθορίστηκε από τον οργανισμό 3GPP2, ο οποίος είναι διαφορετικός από τον 3GPP. Το τελευταίο λιγότερο γνωστό πρότυπο είναι το TD-SCDMA που αναπτύχθηκε από την κυβέρνηση της Κίνας και τις εταιρίες Datung και Siemens και απευθύνεται κυρίως σε 9

λειτουργικά του μέλλοντος. Ακόμα, θα πρέπει να σημειωθεί ότι το UMTS είναι επίσης γνωστό και ως 3GSM προκειμένου να μπορεί να διαφοροποιηθεί από άλλα ανταγωνιστικά προς αυτό πρότυπα, αλλά και να επισημανθεί η διασύνδεση της τεχνολογίας τρίτης γενιάς (3G) με τα δίκτυα GSM, τα οποία σχεδιάστηκε να διαδεχθεί. Ένα δίκτυο UMTS μπορεί να διαχωριστεί σε 2 κύρια αλληλεπιδρώντα τμήματα, στον πυρήνα του δικτύου (Core Network - CN) και στο δίκτυο γενικής ασύρματης πρόσβασης (Generic Radio Access Network - GRAN). Το GRAN αποτελείται από το επίγειο δίκτυο UMTS ασύρματης πρόσβασης (UMTS Terrestrial Radio Access Network - UTRAN) και τον εξοπλισμό του χρήστη (User Equipment - UE). Η κύρια λειτουργία του πυρήνα δικτύου είναι να παρέχει μεταγωγή (switching), δρομολόγηση (routing) και μετάβαση (transit) στην επικοινωνία των χρηστών. Ο πυρήνας δικτύου περιέχει επίσης τις βάσεις δεδομένων και τις λειτουργίες διαχείρισης των δικτύων. Γενικότερα ο πυρήνας δικτύου επαναχρησιμοποιεί διάφορα στοιχεία που υπάρχουν στα δίκτυα GSM τα οποία βασίζονται στην τεχνολογία GPRS και ως εκ τούτου μέσω αυτού κάποιος χρήστης μπορεί να εγκαθιδρύσει μια σύνδεση από και προς εξωτερικά δίκτυα πακέτων δεδομένων (Internet), παλιές τηλεφωνικές γραμμές αλλά και διάφορα ασύρματα δίκτυα. Με άλλα λόγια, τα δίκτυα δεύτερης και τρίτης γενιάς είναι αρκετά συμβατά μεταξύ τους, με αποτέλεσμα το κόστος της μετάβασης να είναι αρκετά περιορισμένο. Όπως φαίνεται και στο σχήμα, τα κινητά τηλέφωνα επικοινωνούν μεταξύ τους μέσω σταθμών βάσης. Σχήμα 1.4 Απλουστευμένη άποψη τηλεφωνικού δικτύου Ορισμένες από τις προδιαγραφές ασφαλείας που προσφέρονται σε ένα δίκτυο UMTS είναι οι ακόλουθες: εμπιστευτικότητα των δεδομένων του χρήστη προστασία από υποκλοπή μέσω του ραδιογραφικού καναλιού μεταξύ του κινητού τηλεφώνου και του βασικού σταθμού αλλά όχι και στο δίκτυο πίσω από αυτόν 10

εμπιστευτικότητα των δεδομένων κίνησης κανένας υποκλοπέας δεν καταφέρνει να αναγνωρίσει την ταυτότητα του κινητού τηλεφώνου χρησιμοποιώντας το ραδιογραφικό κανάλι ούτε να εγκαταστήσει μια σύνδεση μεταξύ 2 βασικών σταθμών της ίδιας σύνδεσης ακεραιότητα δεδομένων τα δεδομένα ελέγχου δεν μπορούν να αλλαχθούν όχι όμως και του χρήστη (ειπικύρωση και εξουσιοδότηση - authentication και authorization) πιστοποίηση και εξουσιoδότηση του χρήστη η χρήση του δικτύου είναι δυνατή μόνο από εγγεγραμμένους (registered) χρήστες που χρεώνονται για τον λογαριασμό τους με έγκριση από τον διαχειριστή του δικτύου. Με άλλα λόγια εξασφαλίζεται ότι οι διαχειριστές (operators) των δικτύων πληρώνονται για τη παροχή των υπηρεσιών τους και ότι κανένας άλλος δεν χρησιμοποιεί το δίκτυο παρεκτός του εγγεγραμμένου χρήστη με το δικό του λογαριασμό authentication δικτύου το δίκτυο γνωρίζει ότι είναι συνδεδεμένο με εξουσιοδοτημένο χρήστη διαλειτουργικότητα και ευελιξία Οι κυριότερες αδυναμίες, στην προστασία της ακεραιότητας των δεδομένων, στα δίκτυα UMTS είναι οι ακόλουθες : Τα κλειδιά ακεραιότητας (integrity keys) που χρησιμοποιούνται μεταξύ του εξοπλισμού του χρήστη (UE) και του ελεγκτή του ασύρματου δικτύου (Radio Network Controller RNC) μεταδίδονται μη κρυπτογραφημένα στον δεύτερο αλλά και μερικές φορές και μεταξύ των ελεγκτών Δεν προσφέρεται ακεραιότητα στα δεδομένα του χρήστη Για ένα μικρό χρονικό διάστημα κατά τη διάρκεια της διαδικασίας μετάδοσης, τα δεδομένα που μεταδίδονται είναι απροστάτευτα και γι αυτό το λόγο εκτεθειμένα στην χωρίς άδεια μετατροπή ή ακόμα και καταστροφή τους. Η ανάγκη λοιπόν για ασφάλεια υπήρξε έντονη. Γι αυτό το λόγο, αρχικά υιοθετήθηκε ο αλγόριθμος MISTY1 (Matsui 1996 Mitsubishi). Με τον καιρό όμως, αναπτύχθηκε ένας καινούριος αλγόριθμος γνωστός ως KASUMI (από την Mitsubishi Electric και αυτός) που υιοθετήθηκε από τον οργανισμό 3GPP (Μάρτιος 2000) ως το βασικό στοιχείο για τον αλγόριθμο εμπιστευτικότητας f8 και τον αλγόριθμο ακεραιότητας f9. Ο KASUMI είχε απλούστερη παραγωγή κλειδιών (key scheduling) από τον Misty, επιπλέον λειτουργίες ώστε να κάνει πιο πολύπλοκη την κρυπτανάλυση (cryptanalysis) χωρίς να επηρεάσει κάποια αυτονόητα χαρακτηριστικά της ασφάλειας, αλλαγές για βελτίωση στατιστικών ιδιοτήτων και κάποιες μικρές αλλαγές για αύξηση της ταχύτητας και την απλοποίηση του υλικού (hardware) (<10K gates). Τέλος στον αλγόριθμο 11

εμπιστευτικότητας f8, κατά την κρυπτογράφηση των κειμένων, χρησιμοποιείται με μια μορφή εξωτερικής ανάδρασης προστιθεμένο με τη μεταβλητή BLKCNT για την αποτροπή της ανακύκλωσης (cycling) και με μία επιπλέον αρχική κρυπτογράφηση για την αποτροπή επιθέσεων με επιλεγμένα κείμενα (γραμμκές και διαφορικές επιθέσεις - linear και differential attacks) ενώ στον αλγόριθμο ακεραιότητας (f9), χρησιμοποιείται για να σχηματίσει έναν κώδικα πιστοποίησης του μηνύματος (message authentication code MAC). Στον ακόλουθο πίνακα φαίνονται οι αλγόριθμοι κρυπτογράφησης που χρησιμοποιούνται από διάφορα πρωτόκολλα ασύρματης επικοινωνίας καθώς και το μήκος των αντίστοιχων κλειδιών κρυπτογράφησης (τυπικά και πραγματικά. Πίνακας 1.1 Αλγόριθμοι κρυπτογράφησης διάφορων δικτύων Σημειώνεται ότι δύο είναι τα κύρια στοιχεία που χαρακτηρίζουν το επίπεδο ασφαλείας σε μία σύνδεση. Το πρώτο είναι ο ίδιος ο αλγόριθμος και το 2 ο το μήκος του κλειδιού που χρησιμοποιείται από τον αλγόριθμο για την κρυπτογράφηση σημάτων και δεδομένων. Όσον αφορά το δεύτερο θα δοθεί ένα απλό παράδειγμα για ευκολότερη κατανόηση. Αν το κλειδί είχε μήκος μόνο 2 bits τότε θα ήταν δυνατόν θα παραβιασθεί πολύ εύκολα αφού υπάρχουν μόνο 4 δυνατές καταστάσεις. Έτσι ένα κλειδί με μήκος 32 bits, με 2^32 δυνατές καταστάσεις, θα απαιτούσε πολύ περισσότερο χρόνο για να βρεθεί η συγκεκριμένη τιμή. Αυτό σημαίνει πρακτικά ότι ένα κλειδί με μεγάλο σχετικά μήκος είναι και πιο ασφαλές. Για να ισχύει όμως πραγματικά κάτι τέτοιο θα πρέπει το εν λόγω κλειδί να είναι τυχαίο. Αν υπάρχει οποιαδήποτε ομοιότητα ή συσχέτιση μέσα σ αυτό, τότε η αποτελεσματικότητα του (effectiveness) μειώνεται. Δηλαδή αν αναμιχθεί ένα 32-bit κλειδί με τον εαυτό του για τη δημιουργία ενός 64-bit κλειδιού τότε η αποτελεσματικότητα είναι μόλις 32 bits. Επιπλέον αδυναμίες μέσα στον ίδιο τον αλγόριθμο μπορούν να εκμεταλλευτούν για να μειώσουν περαιτέρω την αποτελεσματικότητα του κλειδιού. Υπάρχει περίπτωση όπου παρόλο τα δεδομένα κρυπτογραφούνται με ένα πραγματικό 64-bit κλειδί, οι 12

αδυναμίες στον αλγόριθμο μπορούν να το κάνουν να φαίνεται σαν να ήταν μόλις 40 bits. 1.1.5 Τα επόμενα πρωτόκολλα Οι εξελίξεις όμως δεν σταματούν στην τεχνολογία ασύρματης επικοινωνίας τρίτης γενιάς. Ήδη λειτουργούν δίκτυα 3.5G & 4G. Όσον αφορά το πρώτο, πρόκειται για ένα πρωτόκολλο κινητής επικοινωνίας, γνωστό ως Πρόσβαση Πακέτων με Υψηλή Ταχύτητα Κατεβάσματος (High Speed Downlink Packet Access - HSDPA), που αποτελεί μια διαφοροποίηση των δικτύων τρίτης γενιάς.. Ως προς το δεύτερο, η διαφοροποίηση έγκειται στο ρυθμό διαμεταγωγής των δεδομένων όπου τίθεται πλέον το ελάχιστο όριο των 10 Mbps, όπως δηλαδή ένα δίκτυο τοπικής εμβέλειας (LAN). Σχήμα 1.5 Υπηρεσίες που δεν υποστηρίζονταν από τα προηγούμενα δίκτυα λόγω περιορισμένου bandwidth (Πηγή:UMTS Forum-Qualcomm) 1.2 Η ανάγκη για κινητή διασύνδεση Η ανάγκη για κινητή διασύνδεση έχει αυξηθεί δραματικά. Κατά τα τελευταία χρόνια, έχει αυξηθεί η απαίτηση από τους χρήστες των Η/Υ για την παροχή εμπειρίας ενός επιτραπέζιου υπολογιστή σε κινητό περιβάλλον. Οι χρήστες επιθυμούν να είναι σε θέση να έχουν πρόσβαση σε επισυναπτόμενα αρχεία μεγάλου μεγέθους από το ηλεκτρονικό τους ταχυδρομείο, σε αρχεία στους εταιρικούς εξυπηρετητές (servers) και στο διαδίκτυο όταν βρίσκονται σε κίνηση. Και πουθενά αλλού δεν είναι η ανάγκη αυτή πιο εμφανής παρά μεταξύ των επιχειρήσεων με υπαλλήλους που μετακινούνται διαρκώς. Οι εν λόγω υπάλληλοι που μένουν διασυνδεδεμένοι, είναι πιο παραγωγικοί και αποτελεσματικοί. 13

Τα πλεονεκτήματα του να έχει κάποιος ασύρματη ευρυζωνική πρόσβαση είναι τόσο πολλά που οι χρήστες επιθυμούν συνδεσιμότητα οπουδήποτε και οποτεδήποτε (anytime - anywhere). Η παγκόσμια εισαγωγή των ασύρματων τεχνολογιών τρίτης γενιάς, όπως τα CDMA2000 και WCDMA, ικανοποιεί αυτήν ακριβώς την επιθυμία των κατόχων φορητών υπολογιστών. Ένας τυπικός σταθμός βάσης τρίτης γενιάς παρέχει πρόσβαση σε ακτίνα αρκετών χιλιομέτρων σε αντίθεση με ένα ασύρματο δίκτυο (WLAN) με σημείο πρόσβασης (access point) που παρέχει μια πρακτική ακτίνα 15-30 μέτρων. Σχήμα 1.6 Ποσοστό φορητών Η/Υ με εσωματωμένη ασύρματη κάρτα (Πηγή: Qualcomm) Η επικράτηση των δικτύων τρίτης γενιάς, η αυξημένη απαίτηση για ασύρματη ευρυζωνική διασύνδεση και οι τόσο αγαπητές σε όλους οικονομίες κλίμακας, έχουν οδηγήσει τους κορυφαίους κατασκευαστές φορητών υπολογιστών να ενσωματώσουν ασύρματη τεχνολογία τρίτης γενιάς σε συνεργασία με ελεγκτές ασύρματων δικτύων τοπικής εμβέλειας (WLAN controllers) στα προϊόντα τους. Με τον τρόπο αυτό εδραιώνουν τη συμπληρωματική φύση των διάφορων τεχνολογιών παρέχοντας στους χρήστες μεγαλύτερη ακτίνα κάλυψης και μεγαλύτερη ευελιξία. Κάτι τέτοιο φαίνεται εξάλλου και στο διάγραμμα του σχήματος 1.6 όπου εμφανίζεται το ποσοστό των φορητών υπολογιστών με ενσωματωμένη ασύρματη κάρτα δικτύωσης ενώ στο σχήμα 1.7 φαίνεται το ποσοστό των φορητών υπολογιστών με ενσωματωμένο και αποσπώμενο modem. Χρησιμοποιώντας φορητούς υπολογιστές με ενσωματωμένες τεχνολογίες τρίτης γενιάς και ασύρματης επικοινωνίας, οι εταιρίες μπορούν να βελτιώσουν τα τελικά αποτελέσματα διαμέσου περιορισμού των εξόδων και βελτιστοποίησης της απόδοσης. Επιπλέον, οι εν λόγω φορητοί 14

υπολογιστές ικανοποιούν την ανάγκη των μετακινούμενων και απομακρυσμένων συνεργατών της εταιρίας για άνετη πρόσβαση σε όλες τις εφαρμογές σαν να ήταν συνδεδεμένοι στο τοπικό δίκτυο αυτής. Σχήμα 1.7 Η αναμενόμενη μετάβαση από τα PCMCIA στα ενσωματωμένα modems (Πηγή: Qualcomm) 1.3 Συμπεράσματα Το έτος 2002 υπήρξε ορόσημο στην ιστορία της τηλεφωνίας, καθώς ήταν το έτος όπου οι συνδρομητές της κινητής τηλεφωνίας (ΣΚΤ) ξεπέρασαν αυτούς με σταθερή σύνδεση (ΣΣΣ). Η πιο σημαντική επίδραση ίσως υπήρξε η πρόσβαση, τόσο σε βασικές τηλεπικοινωνιακές υπηρεσίες όσο και σε τεχνολογίες πληροφόρησης και επικοινωνίας (Information and Communication Technologies, ICT) ως εργαλείο οικονομικής και κοινωνικής ανάπτυξης. Πληροφορίες για την περίοδο 1999-2002 για 200 χώρες, καλύπτοντας το 99.98% του παγκόσμιου πληθυσμού, έδειξαν ότι η εξάπλωση των ICT υπήρξε θεαματική και ότι ο μεγαλύτερος ενθουσιασμός παρουσιάσθηκε από την πλευρά των ΣΚΤ από τα 6.2 δις ανθρώπων, ο 1 στους 5 έγινε κάτοχος κινητού τηλεφώνου, ποσοστό που πριν από 3 χρόνια ήταν στα επίπεδα 1στους 12. Σ αυτήν την περίοδο ο αριθμός των ΣΚΤ αυξήθηκε κατά 134% (662 εκ.), ενώ το αντίστοιχο των ΣΣΣ δεν ξεπέρασε το 21% (192 εκ.) των συνδέσεων εν λειτουργία. Στο τέλος του 2002 οι ΣΚΤ υπερέβησαν τους ΣΚΤ σε 125 χώρες. Από αυτές οι 40 είναι ανεπτυγμένες, οι 49 αναπτυσσόμενες και οι υπόλοιπες 36 χαμηλού εισοδήματος. Μέσα σε αυτά τα 3 χρόνια, περισσότερες από 69 οικονομίες διπλασίασαν τον αριθμό των ΣΚΤ ενώ 66 πρόσθεσαν τουλάχιστον 1 εκ. συνδρομητές. 15

Ο αριθμός των ΣΚΤ θα συνεχίσει να αυξάνεται σημαντικά. Στο τέλος του 2002 ήταν περίπου 1 δις. ενώ μέχρι το 2009 υπολογίζεται να φτάσει τα 2 δις. Στην περίοδο 1998-2003 η ετήσια ανάπτυξη ήταν 33% ενώ από το 2004 έως το 2009 δεν ανέβηκε περισσότερο από 9.5%. Το 2003 το GSM ήταν η επικρατούσα τεχνολογία. Σύμφωνα με στρατηγικές αναλύσεις η παγκόσμια αγορά κινητής τηλεφωνίας αναμένεται μέχρι το 2009 να αυξηθεί από 463.1 δις δολάρια σε 758.4δις. Η Gartner Dataquest υπολογίζει ότι τα συνολικά οφέλη από τις συσκευές από 97.3δις δολάρια το 2003 έφτασαν περίπου τα 93.7 δις το 2007. Το 2002 αντιπροσώπευσε σχεδόν το 2% του παγκόσμιου ΑΕΠ (GDP). Σχήμα 1.8 Ποσοστό των notebooks ως ποσοστό συνολικά των πωληθέντων PCs (Πηγή: Qualcomm) Αντίστοιχα, στην αγορά των προσωπικών υπολογιστών (PCs), όπως άλλωστε παρατηρείται και στο σχήμα 1.8, είναι πλέον σαφής η στροφή των καταναλωτών σε φορητές πλατφόρμες. Το εν λόγω σχήμα απεικονίζει, σε παγκόσμιο επίπεδο, τις παρούσες πωλήσεις φορητών υπολογιστών και το ποσοστό τους ως προς το σύνολο των πωληθέντων υπολογιστών. Γίνεται προφανές λοιπόν, ότι σκοπός της παρούσας διπλωματικής εργασίας είναι η σχεδίαση των αλγορίθμων ακέραιας και εμπιστευτικής επικοινωνίας του πρωτοκόλλου UMTS με τέτοιο τρόπο ώστε να καταλαμβάνει όσο το δυνατόν μικρότερη επιφάνεια και να καταναλώνει όσο το δυνατόν λιγότερη ενέργεια. Στην Ευρώπη ο οργανισμός που ήταν υπεύθυνος για την προτυποποίηση του UMTS ήταν το Ευρωπαϊκό Ινστιτούτο Τηλεπικοινωνιακών Προτύπων (European Telecommunications Standards Institute - ETSI) σε συνεργασία με τον οργανισμό 3GPP (3 rd Generation Partnership Program). 16

ΚΕΦΑΛΑΙΟ 2 ο ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ 2.1 3GPP Ο οργανισμός 3 rd Generation Partnership Project (3GPP) ιδρύθηκε το Δεκέμβριο του 1998. Αρχικός του στόχος, ήταν να παρέχει παγκοσμίως τεχνικές προδιαγραφές (Technical Specifications) και τεχνικές αναφορές (Technical Reports) για ένα κινητό σύστημα 3 ης γενιάς, βασισμένο στους εξελιγμένους πυρήνες του δικτύου GSM και στις τεχνολογίες ασύρματης πρόσβασης που αυτοί υποστηρίζουν (πχ το επίγειο δίκτυο UMTS ασύρματης πρόσβασης- UTRA). Ως εκ τούτου, ήταν αναγκαία η συντήρηση και εξέλιξη των τεχνικών προδιαγραφών του GSM, συμπεριλαμβανομένων των τεχνολογιών ασύρματης πρόσβασης (GPRS και EDGE). Συμπληρωματικά αναφέρεται ότι ο οργανισμός 3GPP2 ιδρύθηκε αντίστοιχα για την τεχνολογική εξέλιξη μίας άλλης τεχνολογίας τρίτης γενιάς, την CDMA2000 και είναι διαφορετικός από τον 3GPP. Πιο συγκεκριμένα: αμοιβαία επικύρωση μεταξύ του χρήστη και του δικτύου, αδυναμία αντιμετώπισης ενεργών επιθέσεων (active attacks) όπως ψεύτικοι σταθμοί βάσης, επαναχρησιμοποιήσιμα κλειδιά, αδύναμος αλγόριθμος κρυπτογράφησης Α5/1 και εύκολη εξαγωγή του κλειδιού κρυπτογράφησης, επιπλέον μικρό μήκους αυτού (μόλις 32 bits), κρυπτογράφηση δεδομένων από τη φορητή συσκευή μέχρι το σταθμό βάσης αλλά απουσία αυτής από το σταθμό βάσης μέχρι τον ελεγκτή του σταθμού βάσης είναι μερικά από τα πεδία τα οποία το 3GPP βελτίωσε. Όλοι οι παραπάνω λόγοι, σε συνδυασμό με την ταχύτατη εξάπλωση των φορητών συσκευών (notebooks, netbooks, PDAs, smartphones) και της ασύρματης δικτύωσης (Wi-Fi, Bluetooth κ.α.), καθώς και η απαίτηση εκατομμυρίων συνδρομητών που απαιτούν πληθώρα εφαρμογών για τη συσκευή τους (μηνύματα πολυμέσων, βίντεο διάσκεψη) και προστασία των δεδομένων τους από εισβολείς, οδήγησε στην αναζήτηση ενός πληρέστερου πρωτοκόλλου από το προηγούμενο GSM, στο UMTS. Αλγόριθμος κρυπτογράφησης αυτού του πρωτοκόλλου είναι ο KASUMI. 2.2 Ο αλγόριθμος KASUMI Η υλοποίηση του KASUMI, όπως προτείνεται στο κείμενο των προδιαγραφών από τον 3GPP, παρουσιάζεται στο παρακάτω σχήμα 17

Σχήμα 2.1 Ο αλγόριθμος KASUMI 18

Όπως φαίνεται, πρόκειται για έναν block cipher αλγόριθμο με 8 κύκλους, βασισμένο σε μία Feistel δομή με nested round functions. To μήκος του εισαγόμενου κειμένου (Ciphertext) I είναι 64 bits και για την κρυπτογράφησή του χρησιμοποιείται ένα 128-bit κλειδί K. Σε κάθε κύκλο χρησιμοποιείται ένα 128-bit κλειδί RK i, που με έναν τρόπο που θα εξηγηθεί αργότερα, προκύπτει από το αρχικό κλειδί K. Το κάθε κλειδί διασπάται σε 8 μικρότερα υποκλειδιά (των 16 bits), σε κάθε γύρο, τα οποία μετέχουν μέσα στις συναρτήσεις FL i και FO i, με 1 i 8 να προσδιορίζει τον αριθμό του γύρου. Για τη λειτουργία αυτού, τα 64bits χωρίζονται σε δύο blocks των 32 bits, τα L 0 και R 0, έτσι ώστε I= L 0 R 0. Όπως ορίζεται από τα specifications, για κάθε γύρο ισχύουν οι ακόλουθες δύο εξισώσεις: R i = L i-1 & L i = R i-1 (+) f i (L i-1, RK i ) όπου το σύμβολο (+) εκφράζει τη λογική πράξη XOR και η f i τη κυκλική συνάρτηση με εισόδους τα L i-1 και RK i. Η έξοδος προσφέρεται ως 64-bit string στον 8 ο γύρο ως L 8 R 8. Η συνάρτηση f i λαμβάνει μία 32-bit είσοδο Ι και επιστρέφει μία ίσου μήκους έξοδο Ο, κάτω από τον έλεγχο του κυκλικού κλειδιού RK i. Το RK i αποτελείται από 3 υποκλειδιά, τα KL i, KO i και KI i, που συσχετίζονται με τις συναρτήσεις FL i και FO i, με το KL i να χρησιμοποιείται μέσα στην FL i και τα KO i και KI i μέσα στην FO i. Η f i έχει δύο διαφορετικές μορφές, ανάλογα αν πρόκειται για μονό (odd) ή άρτιο (even) κύκλο. Για τους κύκλους 1,3,5 και 7 ορίζεται η: f i (I, RK i ) = FO (FL (I, KL i ), KO i, KI i ) ενώ για τους κύκλους 2,4,6 και 8 η: f i (I, K i ) = FL (FO (I, KO i, KI i ), KL i ) δηλαδή στους μονούς γύρους τα δεδομένα περνάνε πρώτα από την FL( ) και μετά από την FO( ) ενώ στους άρτιους το αντίστροφο. 19

2.2.1 Η συνάρτηση FL Η FL, που φαίνεται στο παρακάτω σχήμα, είναι μία γραμμική συνάρτηση, η οποία δέχεται ως είσοδο streams με μήκος 32 bits και Σχήμα 2.2 Η Συνάρτηση FL επιστρέφει streams του ιδίου μήκους. Για την υλοποίηση αυτής, το αρχικό stream I διασπάται σε 2 μικρότερα των 16 bits που επεξεργάζονται με τη βοήθεια των κλειδιών Kl i,1 και KL i,2, έτσι ώστε KL i = Kl i,1 Kl i,2, καθώς και μέσω AND, OR, XOR και 1-bit cycle shift λειτουργιών. Η διαδικασία που ακολουθείται είναι η εξής : τα 16MSbits κατευθύνονται αριστερά (L) ενώ τα 16LSbits δεξιά (R) με I = L R. Τα 16 αυτά MSbits αρχικά γίνονται AND με το 16-bit κλειδί Kl i,1, το αποτέλεσμα γίνεται 1 bit left circular rotation και το καινούριο stream 20

που προκύπτει γίνεται XOR με τα αρχικά 16LSbits παράγοντας το stream R. To R γίνεται OR με το 16-bit κλειδί Kl i,2, το αποτέλεσμα γίνεται 1 bit left circular rotation και το καινούριο stream που παράγεται γίνεται XOR με τα αρχικά 16MSbits παράγοντας το τελικό αποτέλεσμα L. Η όλη παραπάνω διαδικασία περιγράφεται από τις ακόλουθες 2 σχέσεις : R = R (+) ROL (L Kl i,1 ) & L = L (+) ROL (R U Kl i,2 ), όπου το σύμβολο εκφράζει τη λογική πράξη AND, το U τη λογική πράξη OR και το ακρώνυμο ROL( ) την 1bit left circular rotation. Η έξοδος της συνάρτησης προκύπτει ως (L R ). 2.2.2 Η συνάρτηση FO Η συνάρτηση FO είναι εκείνη η οποία προσδίδει την ιδιότητα της μη γραμμικότητας στον KASUMI λόγω, όπως θα δειχθεί παρακάτω, των S-boxes. Πρόκειται για ένα δίκτυο 3 κύκλων που ως είσοδο δέχεται δεδομένα των 32-bits, 2 sets υποκλειδιών των 48bits, τα KO i και KI i και στην έξοδο επιστρέφει streams των 32 bits. To δομικό διάγραμμα της συνάρτησης αυτής φαίνεται στο σχήμα 2.3. Η είσοδος I χωρίζεται σε 2 blocks των 16bits L o (MSbits) και R o (LSbits) έτσι ώστε I= L o R o. Παρόμοια, τα 2 κλειδιά υποδιαιρούνται σε 3 μικρότερα των 16bits έτσι ώστε να ισχύει KO i = KO i,1 KO i,2 KO i,3 και KI i = KI i,1 KI i,2 KI i,3. Τα 16 MSbits γίνονται XOR με το κλειδί KO i,j, μετασχηματίζονται με τη συνάρτηση FI i,j με τη βοήθεια του 16-bit κλειδιού KI i,j, γίνονται XOR με τα 16 LSbits και καταλήγουν ως R. Αντίθετα τα 16 LSbits απλώς γίνονται L. Η όλη διαδικασία επαναλαμβάνεται 3 φορές, όσες και ο αριθμός των γύρων της συνάρτησης και μπορεί να περιγραφεί από τις εξισώσεις R j = FI (L j-1 (+) KO i,j, KI i,j ) (+) R j-1 & L j =R j-1, υπενθυμίζοντας ότι το i υποδηλώνει γύρο του KASUMI ενώ το j γύρο της συνάρτησης FO με 1 j 3. Η έξοδος λαμβάνεται ως (L 3 R 3 ). 21

Σχήμα 2.3 Η συνάρτηση FO 2.2.3 Η συνάρτηση FI Η συνάρτηση FI δέχεται ως είσοδο 16-bit δεδομένα I και τα επεξεργάζεται με τη βοήθεια του 16-bit κλειδιού KI i,j. Κατά τη διάρκεια της επεξεργασίας, το κλειδί KI i,j διασπάται σε δύο μικρότερα των 7 και 9 bits αντίστοιχα, τα KI i,j,1 και KI i,j,2, έτσι ώστε KI i,j = KI i,j,1 KI i,j,2. To μονοπάτι που ακολουθούν τα δεδομένα φαίνεται στο παρακάτω σχήμα: 22

Σχήμα 2.4 Η συνάρτηση FI Η είσοδος I διαχωρίζεται σε δύο, άνισου μήκους, streams, ένα που περιέχει τα 9 MSbits, το L o, και ένα που περιέχει τα 7 LSbits, το R o, έτσι ώστε I= Lo Ro. Τα 9 MSbits αρχικά μετασχηματίζονται μέσα από το S-box S9 και στη συνέχεια γίνονται XOR με τα 7 LSbits, αφού πρώτα έχουν προστεθεί 2 μηδενικά στην 8 η και 9 η πιο σημαντική θέση στο block των 7 LSbits (zero-extension). To αποτέλεσμα κατόπιν μετατίθεται στα δεξιά και γίνεται R. Τα 7 LSbits απλώς μεταφέρονται αριστερά και γίνονται L. Στο 2 ο γύρο, τα 7 αρχικά LSbits μετασχηματίζονται με τη βοήθεια του S-box S7 και το αποτέλεσμα γίνεται XOR με τα 9 bits που έχουν έλθει ως R, αφού όμως πρώτα έχουν κοπεί (truncate) τα 2 MSbits. Με αυτόν τον τρόπο προκύπτουν 7 bits ως L ενώ ως R ορίζονται τα 23

bits L. Η όλη αυτή διαδικασία επαναλαμβάνεται ακόμη μία φορά έχοντας μεσολαβήσει όμως πρώτα τα ακόλουθα: τα 7 bits που είχαν ορισθεί ως L γίνονται XOR με το κλειδί KI i,j,1 και μεταφέρονται δεξιά ενώ τα 9 bits που είχαν ορισθεί ως R γίνονται XOR με το κλειδί KI i,j,2 και μεταφέρονται αριστερά. Οι εξισώσεις που ορίζονται στο specification του 3GPP έχουν ως εξής: L 1 = R 0 R 1 = S9[L 0 ] (+) ZE(R 0 ) L 2 = R 1 (+) KI i,j,2 R 2 = S7[L 1 ] (+) TR(R 1 ) (+) KI i,j,1 L 3 = R 2 R 3 = S9[L 2 ] (+) ZE(R 2 ) L 4 = S7[L 3 ] (+) TR(R 3 ) R 4 = R 3 Η έξοδος λαμβάνεται ως (L 4 R 4 ). Συμπληρωματικά αναφέρεται ότι οι συναρτήσεις ZE( x ) και TR( x ) ορίζονται ως η μετατροπή μιας 7-bit ακολουθίας σε μία 9-bit ακολουθία με την προσθήκη 2 μηδενικών από την μεριά των πιο σημαντικών bits και μιας 9-bit ακολουθίας σε μια 7-bit ακολουθία με την αποκοπή των 2 πιο σημαντικών bits αντίστοιχα. 2.2.4 Τα κουτιά αντικατάστασης S-boxes Τα κουτιά αντικατάστασης μετατρέπουν μία ακολουθία x από bits x=x8 x7 x6 x5 x4 x3 x2 x1 x0 σε μία ακολουθία y ίσου μήκους y=y8 y7 y6 y5 y4 y3 y2 y1 y0, με τα x8, x7, y8, και y7 να εφαρμόζονται μόνο στο κουτί S9 και τα x0, y0 ναι είναι τα LSbits μέσα από μία ακολουθία λογικών εξισώσεων. Για το S7: y0=x1x3(+)x4(+)x0x1x4(+)x5(+)x2x5(+)x3x4x5(+)x6(+)x0x6(+)x1x6 (+)x3x6(+)x2x4x6(+)x1x5x6(+)x4x5x6 y1=x0x1(+)x0x4(+)x2x4(+)x5(+)x1x2x5(+)x0x3x5(+)x6(+)x0x2x6 (+)x3x6(+)x4x5x6(+)1 y2=x0(+)x0x3(+)x2x3(+)x1x2x4(+)x0x3x4(+)x1x5(+)x0x2x5(+)x0x6 (+)x0x1x6(+)x2x6(+)x4x6(+)1 y3=x1(+)x0x1x2(+)x1x4(+)x3x4(+)x0x5(+)x0x1x5(+)x2x3x5(+)x1x4x5 (+)x2x6(+)x1x3x6 y4=x0x2(+)x3(+)x1x3(+)x1x4(+)x0x1x4(+)x2x3x4(+)x0x5(+)x1x3x5 (+)x0x4x5(+)x1x6(+)x3x6(+)x0x3x6(+)x5x6(+)1 y5=x2(+)x0x2(+)x0x3(+)x1x2x3(+)x0x2x4(+)x0x5(+)x2x5(+)x4x5 (+)x1x6(+)x1x2x6(+)x0x3x6(+)x3x4x6(+)x2x5x6(+)1 24

y6=x1x2(+)x0x1x3(+)x0x4(+)x1x5(+)x3x5(+)x6(+)x0x1x6(+)x2x3x6 (+)x1x4x6(+)x0x5x6 Για το S9: y0=x0x2(+)x3(+)x2x5(+)x5x6(+)x0x7(+)x1x7(+)x2x7(+)x4x8(+)x5x8 (+)x7x8(+)1 y1=x1(+)x0x1(+)x2x3(+)x0x4(+)x1x4(+)x0x5(+)x3x5(+)x6(+)x1x7 (+)x2x7(+)x5x8(+)1 y2=x1(+)x0x3(+)x3x4(+)x0x5(+)x2x6(+)x3x6(+)x5x6(+)x4x7(+)x5x7 (+)x6x7(+)x8(+)x0x8(+)1 y3=x0(+)x1x2(+)x0x3(+)x2x4(+)x5(+)x0x6(+)x1x6(+)x4x7(+)x0x8 (+)x1x8(+)x7x8 y4=x0x1(+)x1x3(+)x4(+)x0x5(+)x3x6(+)x0x7(+)x6x7(+)x1x8(+)x2x8 (+)x3x8 y5=x2(+)x1x4(+)x4x5(+)x0x6(+)x1x6(+)x3x7(+)x4x7(+)x6x7(+)x5x8 (+)x6x8(+)x7x8(+)1 y6=x0(+)x2x3(+)x1x5(+)x2x5(+)x4x5(+)x3x6(+)x4x6(+)x5x6(+)x7 (+)x1x8(+)x3x8(+)x5x8(+)x7x8 y7=x0x1(+)x0x2(+)x1x2(+)x3(+)x0x3(+)x2x3(+)x4x5(+)x2x6(+)x3x6 (+)x2x7(+)x5x7(+)x8(+)1 y8=x0x1(+)x2(+)x1x2(+)x3x4(+)x1x5(+)x2x5(+)x1x6(+)x4x6(+)x7 (+)x2x8(+)x3x8 Σημειώνεται ότι στις λογικές εξισώσεις η έκφραση x0x1x2 ισοδυναμεί με την x0 x1 x2. 2.2.5 Παραγωγή των κλειδιών κρυπτογράφησης - Key scheduling Το κλειδί K που χρησιμοποιεί ο KASUMI είναι μήκους 128 bits. Σε κάθε κύκλο παράγεται ένα καινούριο κλειδί ιδίου μήκους, που προέρχεται από το αρχικό K. Αυτό διασπάται σε 8 16-bits κλειδιά K 1...K 8 έτσι ώστε να ισχύει K= K 1 K 2 K 3 K 8. Tα κλειδιά K j προέρχονται από τα K j με βάση την ακόλουθη σχέση K j = K j (+) C j, με 1 j 8 και τις σταθερές C j να καθορίζονται από τον ακόλουθο πίνακα: C1 C2 C3 C4 C5 C6 C7 C8 0x0123 0x4567 0x89AB 0xCDEF 0xFEDC 0xBA98 0x7654 0x3210 Σχήμα 2.5 Οι σταθερές C i που χρησιμοποιούνται για την παραγωγή των κλειδιών Κ Τα βασικά υποκλειδιά παράγονται από τα K j και K j με τον τρόπο που καθορίζεται στον παρακάτω πίνακα. 25

Σχήμα 2.6 Αναλυτική αναπαράσταση των κλειδιών RK i που χρησιμοποιούνται σε όλους τους κύκλους του KASUMI 2.3 Διάρθρωση κεφαλαίων Σκοπός της παρούσας εργασίας είναι η υλοποίηση του ανωτέρω αλγορίθμου, με στόχο την όσο το δυνατόν μεγαλύτερη μείωση της συνολικής κατανάλωσης του κυκλώματος, προκειμένου αυτό να μπορεί να ενσωματωθεί σε φορητές συσκευές επικοινωνίας. Για το λόγο αυτό, στο κεφάλαιο 3 αρχικά γίνεται μία γενική αναφορά στη στατική και στη δυναμική κατανάλωση, ενώ στη συνέχεια περιγράφεται πιο αναλυτικά η δυναμική, δίνοντας έμφαση στο φαινόμενο των ανεπιθύμητων ή καθυστερημένων μεταβάσεων των λογικών επιπέδων τάσης, γνωστά ως glitches. Οι μέθοδοι που χρησιμοποιήθηκαν ήταν η βελτίωση του αλγορίθμου (algorithm enhancement) και η τεχνική του δέντρου των ισορροπημένων XOR πυλών (balanced XOR tree). Οι τεχνικές αυτές φαίνονται εφαρμοσμένες στο κεφάλαιο 4. Στο κεφάλαιο 5 υλοποιείται ο αλγόριθμος σε δύο εκδόσεις, μία έχοντας πλήρως αναπτύξει το κύκλωμα και μία χρησιμοποιώντας ένα τμήμα του που επαναλαμβάνεται, με στόχο τη μείωση της συνολικής επιφάνειας. Στο επόμενο κεφάλαιο, παρουσιάζονται και υλοποιούνται ο αλγόριθμος εμπιστευτικότητας f8 και ο αλγόριθμος ακεραιότητας f9 του πρωτοκόλλου επικοινωνίας UMTS, οι οποίοι βασίζονται στον KASUMI. Στο κεφάλαιο 7 παρουσιάζονται τα αποτελέσματα της υλοποίησης, ενώ τέλος στο κεφάλαιο 8 γίνεται μία γενική αποτίμηση συγκρίνοντας το παρών κύκλωμα με άλλα προηγούμενων υλοποιήσεων, εξάγοντας ορισμένα πολύ σημαντικά συμπεράσματα. 26