Περίληψη: | Τα Ασύρματα Δίκτυα Αισθητήρων (ΑΔΑ· Wireless Sensor Networks - WSN) είναι ένας τύπος δικτύων ανερχόμενος στη βιομηχανία, που επίσης τα τελευταία χρόνια έχει λάβει μεγάλη προσοχή από την ακαδημαϊκή και ερευνητική κοινότητα. Πρόκειται για δίκτυα που απαρτίζονται, στην τυπική περίπτωση, από πληθώρα χωρικά κατανεμημένων κόμβων, συνήθως εφοδιασμένων με περιβαλλοντικούς αισθητήρες, που λειτουργούν συνεργατικά με στόχο την εκπλήρωση κάποιας συγκεκριμένης εφαρμογής.
Οι εφαρμογές των ΑΔΑ ξεκίνησαν από απλή παρακολούθηση και συσσώρευση των μετρήσεων, εστιασμένη σε αγροτικά, βιομηχανικά και στρατιωτικά, κ.ά. περιβάλλοντα. Με το πέρας όμως του χρόνου έχει επεκταθεί το πεδίο εφαρμογής και τα μοτίβα λειτουργίας και επικοινωνίας. Αποφάσεις και δράσεις μπορεί να λαμβάνονται εντός του ΑΔΑ, και η επικοινωνία μπορεί να γίνεται μεταξύ οποιωνδήποτε κόμβων του δικτύου, ενώ ενδεχομένως κάποιοι οι όλοι οι κόμβου μπορεί να είναι κινούμενοι.
Καθώς η χρησιμότητα των ΑΔΑ γίνεται όλο και πιο εμφανής, με νέους τύπους εφαρμογών να υλοποιούνται σε αυτά σε ευαίσθητους ίσως τομείς, αναδεικνύεται η ανάγκη της διασφάλισης των δικτύων αυτών και κυρίως των επικοινωνιών μεταξύ των κόμβων, από υποκλοπές και εισαγωγή ψευδών δεδομένων.
Ένα από τα πιο κρίσιμα υποσυστήματα ασφάλειας στα ΑΔΑ είναι το Σύστημα Διαχείρισης Κλειδιών (Key Management System). Αυτό έχει το ρόλο της καθιέρωσης κοινών κρυπτογραφικών κλειδιών μεταξύ των κόμβων του δικτύου που πρέπει να επικοινωνήσουν. Το δεύτερο βασικό υποσύστημα ασφαλείας, το κρυπτοσύστημα (cryptosystem), χρησιμοποιεί αυτά τα κλειδιά για να κρυπτογραφήσει εξερχόμενα μηνύματα και να αποκρυπτογραφήσει εισερχόμενα ελέγχοντας την αυθεντικότητά τους.
Υπάρχουν πολλές προσεγγίσεις για το σχεδιασμό του Συστήματος Διαχείρισης Κλειδιών, διαφοροποιούμενες από τον τύπο της κρυπτογραφίας που χρησιμοποιούν (συμμετρική (symmetric) ή δημοσίου κλειδιού (public key)) μέχρι την ομαδοποίηση των κόμβων που μοιράζονται κλειδιά και το μοντέλο επικοινωνίας δικτύου.
Στη διατριβή αυτή εξετάζεται κατά κύριο λόγο η διαχείριση κλειδιών που υποστηρίζει μοντέλο επικοινωνίας ομάδας (group communication model), δηλαδή ο κάθε κόμβος μπορεί να επικοινωνήσει, έχοντας συνεπώς τα κατάλληλα κρυπτογραφικά κλειδιά, με οποιοδήποτε άλλο κόμβο του δικτύου. Αυτό το μοντέλο δίνει τη μεγαλύτερη δυνατή ευελιξία στο επίπεδο της εφαρμογής, αλλά πάσχει από μεγάλη επιβάρυνση του δικτύου κατά τις αλλαγές κλειδιών, καθώς σε αυτά τα ΣΔΚ τυπικά οι αλλαγές κλειδιών επεκτείνονται σε όλο το δίκτυο.
Βασικός στόχος στη διατριβή είναι η επίτευξη της κατά το δυνατόν μικρότερης επιβάρυνσης του δικτύου για τις διαδικασίες διαχείρισης κλειδιών, όταν χρησιμοποιείται μοντέλο επικοινωνίας ομάδας, και συνεπώς κάθε κόμβος διαθέτει κρυπτογραφικό υλικό που τον καθιστά ικανό να επικοινωνήσει άμεσα με όλους τους υπόλοιπους κόμβους του δικτύου.
Σαν βάση χρησιμοποιείται το βασικό σχήμα Logical Key Hierarchy (LKH). Σε αυτό η διαχείριση κλειδιών πραγματοποιείται από μια οντότητα, τον Key Server, ο οποίος διαθέτει το απαραίτητο κρυπτογραφικό και γνώση του δικτύου για να δημιουργήσει τα μηνύματα αλλαγής κλειδιών. Χρησιμοποιείται ένα κλειδί δικτύου, το οποίο μοιράζεται σε όλους τους κόμβους του δικτύου, και το οποίο μπορεί να χρησιμοποιηθεί για επικοινωνία μεταξύ δυο οποιωνδήποτε κόμβων. Για την μείωση του κόστους για την αλλαγή του τελευταίου, χρησιμοποιείται επιπλέον μια ιεραρχία κλειδιών, με μορφή δέντρου. Αντιστοιχίζοντας βοηθητικά κλειδιά στους εσωτερικούς κόμβους του δέντρου και τοποθετώντας τους κόμβους του δικτύου σαν φύλλα, μοιράζοντας σε καθέναν κλειδιά που αντιστοιχούν στη θέση τους στο δέντρο, είναι δυνατή η πραγματοποίηση διαδικασιών αλλαγής κλειδιών με αριθμό μηνυμάτων που αυξάνεται λογαριθμικά με το μέγεθος του δικτύου.
Σαν πρώτο βήμα γίνεται υλοποίηση εφαρμογής κρυπτογραφημένης μετάδοσης εικόνας μέσα από ένα δίκτυο κόμβων TelosB και πάνω από το λειτουργικό σύστημα Contiki. Υλοποιήθηκε διαχείριση κλειδιών μέσω του σχήματος S2RP, που βασίζεται στο LKH. Πάνω σε αυτά ελέγχθηκε η απόδοση της κρυπτογραφημένης μετάδοσης εικόνων και συγκρίθηκε με τη μη κρυπτογραφημένη μετάδοση. Επιπλέον έγιναν μετρήσεις στην απόδοση των διαδικασιών αλλαγής κλειδιών του S2RP.
Τα αποτελέσματα της κρυπτογραφημένης μετάδοσης εικόνας έδειξαν πως η κρυπτογράφηση των δικτυακών μεταδόσεων στα ΑΔΑ, παρά την εισαγωγή κάποιας επιβάρυνσης σε σχέση με τις απλές μεταδόσεις, είναι αρκετά εφαρμόσιμη, ακόμα και για απαιτητικές εφαρμογές, όπως η μετάδοση είκόνων. Ως προς τις μετρήσεις των διαδικασιών αλλαγής κλειδιών, φάνηκε επίσης ότι τέτοια σχήματα διαχείρισης κλειδιών μπορούν όντως να υλοποιηθούν σε ΑΔΑ, αλλά η επιβάρυνση είναι μη αμελητέα, και πρέπει να ληφθεί σοβαρά υπόψη στη σχεδίαση του δικτύου, ενώ πιθανόν να είναι αναγκαία και η ρύθμιση των παραμέτρων της δικτυακής μετάδοσης, όπως το ελάχιστο μεσοδιάστημα μεταξύ μεταδόσεων, ώστε να ελαχιστοποιηθούν οι απώλειες στα κρίσιμα πακέτα αλλαγής κλειδιών, κρατώντας παράλληλα το χρόνο εκτέλεσης των διαδικασιών αυτών σε λογικά πλαίσια.
Σαν επόμενο βήμα εξετάστηκαν μέθοδοι ελαχιστοποίησης της δικτυακής επιβάρυνσης για χρήση σχημάτων διαχείρισης κλειδιών τύπου LKH. Εξετάστηκαν τρόποι δημιουργίας των ιεραρχιών κλειδιών, που να οδηγούν σε αλλαγές κλειδιών με κατά το δυνατόν μικρή δικτυακή επιβάρυνση. Ακολουθήθηκε τοπολογική προσέγγιση, δηλαδή η δημιουργία δομών κλειδιών που "αντιστοιχούν" στο γράφο σύνδεσης (connection graph) του δικτύου. Οι μέθοδοι αυτοί ονομάζονται συλλογικά TALK: Topology-Aware LKH Key Management.
Οι αλγόριθμοι που αναπτύχθηκαν χωρίζονται λογικά σε δυο τμήματα.
Το πρώτο είναι η εύρεση του βέλτιστου κόμβου για το ρόλο του Διακομιστή Κλειδιών (Key Server). Αυτό γίνεται με συλλογή στοιχείων για την τοπολογία του δικτύου σε κάθε κόμβο, και τοπικό υπολογισμό σε κάθε υποψήφιο κόμβο κάποιων μετρικών για την καταλληλότητά του. Τα τελευταία περιλαμβάνουν και κάποιες προσεγγίσεις για το τελικό κόστος αλλαγής κλειδιών, για την περίπτωση που επιλεγόταν ο συγκεκριμένος κόμβος ως Διακομιστής Κλειδιών. Μετά τους υπολογισμούς αυτούς ακολουθεί επικοινωνία μεταξύ των υποψηφίων για τη γνωστοποίηση των αποτελεσμάτων και την τελική επιλογή του βέλτιστου.
Δεύτερο τμήμα των αλγορίθμων είναι η ίδια η δημιουργία του δέντρου κλειδιών. Αφού έχει επιλεγεί Διακομιστής Κλειδιών, αυτός, χρησιμοποιώντας τη γνώση της τοπολογίας του δικτύου που έλαβε στο προηγούμενο βήμα, δημιουργεί ένα δέντρο κλειδιών βασισμένο στο δέντρο δρομολόγησης που έχει, και στη συνέχεια εξετάζει το δέντρο για "προβληματικά" σημεία, και εφαρμόζει κάποια προκαθορισμένα μοτίβα βελτιώσεων σε αυτά.
Για την υποστήριξη της μεθοδολογίας πραγματοποιήθηκαν μετρήσεις και εξομοιώσεις που δείχνουν την εφαρμοσιμότητα των αλγορίθμων, καθώς και τη βελτίωση της δικτυακής επιβάρυνσης σε σχέση με την απλή, τυχαία δημιουργία δέντρων κλειδιών.
Στο επόμενο κεφάλαιο της διατριβής εξετάζονται τρόποι περαιτέρω μείωσης της επιβάρυνσης στις αλλαγές κλειδιών, με χρήση δυο επιπέδων από ιεραρχίες κλειδιών τύπου LKH. Στο χαμηλότερο επίπεδο οι κόμβοι του δικτύου χωρίζονται σε "τελικές" συστάδες (end clusters - EC), με έναν επικεφαλής η κάθε μια (End Cluster Head - ECH). Οι επικεφαλής αυτού του επιπέδου δημιουργούν μια συστάδα του ανώτερου επιπέδου (Super Cluster - SC), με έναν επικεφαλής (Super Cluster Head - SCH) ο οποίος λειτουργεί ως γενικός συντονιστής στο δίκτυο. Σε κάθε συστάδα λειτουργεί και διαφορετικό δέντρο LKH. Το Σχήμα Διαχείρισης Κλειδιών που αναπτύχθηκε ονομάζεται CHAT: clustered hierarchical key management for Wireless Sensor Networks using network topology.
Στο βασικό σχήμα, οι απλοί κόμβοι (που δεν είναι ECH) μοιράζονται κρυπτογραφικό υλικό μόνο με κόμβους της EC τους, και μπορούν να επικοινωνήσουν απευθείας με αυτούς. Για την επικοινωνία μεταξύ κόμβων διαφορετικών EC πρέπει η κίνηση να δρομολογηθεί μέσω των αντίστοιχων ECH, οι οποίοι ανήκουν στην SC, και μπορούν να επικοινωνήσουν, αναλαμβάνοντας επίσης την επανακρυπτογράφηση του μηνύματος. Σε σχέση με ένα πραγματικό μοντέλο επικοινωνίας ομάδας, υπάρχει κάποια επιβάρυνση στην δια-συσταδική επικοινωνία, αλλά μειώνεται το κόστος αλλαγής κλειδιών, καθώς, οι αλλαγές κλειδιών πλέον δεν αφορούν όλο το δίκτυο, αλλα τμήματά του.
Χρησιμοποιώντας ως βάση τις μεθόδους του TALK, επιλέγεται ένας κόμβος που θα λειτουργήσει ως SCH και ECH μιας εκ των EC, κατά αντιστοιχία με τον Key Server στο απλό LKH / TALK. Οι υπόλοιποι ECH επιλέγονται με χρήση ενός επαναληπτικού αλγορίθμου, όπου σε κάθε βήμα επιλέγεται ο πιο κατάλληλος από τους υποψηφίους που παραμένουν. Η γενική ιδέα πίσω από τα κριτήρια επιλογής είναι η προτίμηση υποψηφίων με αρκετούς κόμβους στην περιοχή τους, και οι οποίοι δε θα είναι κοντά σε ήδη επιλεγμένους ECH.
Με επιλεγμένους τους ECH, γίνεται η ανάθεση των υπόλοιπων κόμβων σε ECs, με αλγόριθμο που οδηγεί σε συνεκτικά ECs και αναθέσεις μικρότερης δυνατής απόστασης (σε hops).
Παρουσιάζονται επίσης και δυο παραλλαγές του βασικού σχήματος: Η πρώτη είναι η εισαγωγή ενός καθολικού κλειδιού κρυπτογράφησης, που μοιράζεται σε όλους τους κόμβους του δικτύου, κάτι που επιτρέπει τη χρήση μοντέλου επικοινωνίας ομάδας, όπως στο απλό LKH, και τη δια-συσταδική επικοινωνία χωρίς κάποια επιβάρυνση, αντάλλαγμα αύξηση στο κόστος αλλαγής κλειδιών.
Δεύτερη παραλλαγή στο βασικό σχήμα είναι η εισαγωγή κάποιας επικάλυψης μεταξύ των ECs. Αυτό αποτελεί συμβιβαστική λύση μεταξύ των προηγούμενων, δίνοντας μεγαλύτερη ευελιξία από το βασικό σχήμα στην επικοινωνία μεταξύ κόμβων, αλλά και κόστος αλλαγής κλειδιών που, παρότι μεγαλύτερο από αυτό του βασικού σχήματος κλιμακώνεται καλύτερα από τη χρήση καθολικού κλειδιού.
Σύμφωνα με εξομοιώσεις που πραγματοποιήθηκαν η κάθε λύση παρουσιάζει διαφορετικά χαρακτηριστικά κόστους αλλαγής κλειδιών και κίνησης δεδομένων, και προτείνονται για διαφορετικούς τύπους εφαρμογών: Το βασικό σχήμα παρουσιάζει ελάχιστο κόστος αλλαγής κλειδιών, που δεν αυξάνεται ιδιαίτερα με το μέγεθος του δικτύου, αλλά μη μηδαμινή αύξηση στο δια-συσταδικό κόστος επικοινωνίας. Ως εκ τούτου, προτείνεται για εφαρμογές των οποίων η κίνηση μπορεί να αντιστοιχηθεί στις συστάδες του σχήματος. Η παραλλαγή με το καθολικό κλειδί δεν παρουσιάζει καμία επιβάρυνση στο επικοινωνιακό κόστος. Το κόστος αλλαγής κλειδιού είναι αρκετά μεγαλύτερο από το βασικό σχήμα, αλλά αρκετά μικρότερο από την απλή εφαρμογή LKH, και ακόμα και από το σχήμα TALK. Έτσι προτείνεται ως γενική λύση, για εφαρμογές με κίνηση μεταξύ οποιωνδήποτε κόμβων, η οποία απαιτεί ένα αρκετά μικρό κόστος αλλαγής κλειδιών για σχήμα με υποστήριξη επικοινωνίας ομάδας. Τέλος, η παραλλαγή με την επικάλυψη συστάδων παρουσιάζει πολύ μικρό κόστος, που προσεγγίζει αυτό του βασικού σχήματος, προσφέροντας ταυτόχρονα και πολύ μεγαλύτερη ευελιξία στην επικοινωνία, ενώ η μειωμένη σε σχέση με το βασικό σχήμα, επικοινωνιακή επιβάρυνση λόγω μη βέλτιστης δρομολόγησης των πακέτων, μπορεί να αντικατασταθεί από επιπλέον επανακρυπτογραφήσεις και δρομολόγηση ελάχιστου μονοπατιού. Προτείνεται για αρκετά μεγάλα δίκτυα με οτιδήποτε επικοινωνιακές ανάγκες.
|