Software engineering applications of the OTS/CafeOBJ algebraic specification method
Authors: Τριανταφύλλου Νικόλαος 
Published: September 2021

Ο σκοπός αυτής της διπλωματικής εργασίας είναι διττός. Το πρώτο μέρος αφορά την επαλήθευση της συμπεριφοράς των συστημάτων Mobile Digital Rights Management (DRM) με τη χρήση τεχνικών συμπεριφορικών αλγεβρικών προδιαγραφών. Το δεύτερο μέρος εξετάζει ένα ευρύτερο φάσμα εφαρμογών των συμπεριφορικών αλγεβρικών προδιαγραφών. Αυτές περιλαμβάνουν την επαλήθευση των εκτελέσιμων υλοποιήσεων έναντι των συμπεριφορικών προδιαγραφών, τη συλλογιστική σχετικά με τα ταυτόχρονα συστήματα και την ασφαλή κατανάλωση κώδικα κινητής τηλεφωνίας. Τα συστήματα διαχείρισης ψηφιακών δικαιωμάτων χρησιμοποιούνται για την προστασία του ψηφιακού περιεχομένου, καθορίζοντας τους κανόνες για την κατανάλωση αδειών που διέπουν ολόκληρο τον κύκλο ζωής του περιεχομένου. Ο Open Mobile Alliance (OMA) είναι ένας οργανισμός τυποποίησης που είναι υπεύθυνος για τη δημιουργία και τη συντήρηση του συστήματος Mobile DRM που χρησιμοποιείται από την πλειοψηφία των κατασκευαστών κινητών συσκευών. Οι άδειες χρήσης που χρησιμοποιούνται για την έκφραση των κανόνων κατανάλωσης σε αυτό το σύστημα είναι γραμμένες σε γλώσσα XML που ονομάζεται OMA REL. Μια πολύ σημαντική ανησυχία σχετικά με την ορθή λειτουργία των κινητών συστημάτων DRM είναι η αμφισημία της γλώσσας OMA REL. Αυτή η ασάφεια μπορεί να οδηγήσει σε μη αναμενόμενα αποτελέσματα κατά την εκτέλεση των αδειών που εκδίδονται στην OMA REL. Για την αντιμετώπιση αυτού του ζητήματος χρησιμοποιούμε την παραπάνω μεθοδολογία για να παρέχουμε μια επίσημη σημασιολογία της OMA REL σε όρους CafeOBJ. Αυτό επιτρέπει τη χρήση της CafeOBJ για να επαληθευθεί αυτομάτως η συμπεριφορά των αδειών που γράφονται στην OMA REL. Η σωστή λειτουργικότητα του αλγορίθμου που είναι υπεύθυνη για την επιλογή των αδειών είναι υψίστης σημασίας για την ασφάλεια του κινητού συστήματος DRM. Εφαρμόζουμε τη μέθοδο OTS/CafeOBJ για να διαμορφώσουμε τυπικά, να καθορίσουμε και να επαληθεύσουμε τον παραπάνω αλγόριθμο επιλογής άδειας χρήσης. Συγκεκριμένα,αναπτύσσουμε το μαθηματικό μοντέλο του αλγορίθμου απόφασης OMA ως Μεταβατικό Σύστημα Παρατήρησης (OTS), ένα είδος μεταβατικού συστήματος που εκφράζεται σε ένα εξειδικευμένο στυλ προδιαγραφών CafeOBJ. Τέλος, επαληθεύσουμε ότι αυτός ο αλγόριθμος πληροί τις ακόλουθες ελάχιστες ιδιότητες ασφαλείας: &quot; κάθε φορά που επιλέγεται μια άδεια χρήσης για ένα δεδομένο περιεχόμενο, τότε η άδεια ισχύει την συγκεκριμένη χρονική στιγμή&quot;. Παρά την ικανοποίηση αυτής της ελάχιστης ιδιότητας ασφαλείας, αυτός ο αλγόριθμος προκαλεί την απώλεια δικαιωμάτων επί του περιεχομένου υπό ορισμένες συνθήκες. Με τον προσδιορισμό των περιπτώσεων που προκαλούν αυτή την απώλεια προτείνουμε έναν αλγεβρικό χαρακτηρισμό, καθώς και μια διάταξη των αδειών της ΟΜΑ. Αυτά μας επιτρέπουν να επανασχεδιάσουμε τον αλγόριθμο έτσι ώστε να ελαχιστοποιούμε τις απώλειες, με τρόπο κατάλληλο για τις χαμηλές υπολογιστικές δυνάμεις των κινητών συσκευών. Επιπλέον,παρέχουμε μια επίσημη απόδειξη ότι ο προτεινόμενος αλγόριθμος εκπληρώνει την πρόθεσή του. Η απόδειξη διεξάγεται χρησιμοποιώντας τη μέθοδο OTS/CafeOBJ για την επαλήθευση αναλλοίωτων ιδιοτήτων. Μετά το σχεδιασμό του παραπάνω αλγορίθμου τέθηκε το ζήτημα της απόκτησης ορθής εφαρμογής σε σχέση με τις προδιαγραφές. Η επαλήθευση του σχεδιασμού και της εφαρμογής κρίσιμων αντικειμενοστραφών συστημάτων είναι δύο πολύ σημαντικά αλλά ξεχωριστά καθήκοντα. Συνδυάζοντας τις τεχνικές συμπεριφοριακών αλγεβρικών προδιαγραφών με τα εργαλεία Design by contract προτείνουμε ένα νέο παράδειγμα ανάπτυξης λογισμικού στο οποίο η συλλογιστική για το σχεδιασμό του συστήματος είναι εφικτή χρησιμοποιώντας τα εργαλεία και τις μεθοδολογίες του πρώτου και η συλλογιστική σχετικά με τη συμμόρφωση της εφαρμογής με τις προδιαγραφές επιτυγχάνεται μέσω των εργαλείων του δεύτερου. Αυτή η νέα μεθοδολογία υποστηρίζεται από μια σημασιολογική μετάφραση από τις προδιαγραφές CafeOBJ σε προδιαγραφές γλώσσας Java Modeling Language (JML). Για να καταδειχθεί η δυνατότητα εφαρμογής και η πρακτικότητα της μεθοδολογίας, παρουσιάζονται ορισμένες μελέτες περιπτώσεων. Αυτά δεν σχετίζονται με τον τομέα DRM,ωστόσο είναι τα πρώτο βήμα στην αξιολόγηση της σκοπιμότητας της προσέγγισης σε ευρύτερο πλαίσιο. Παρουσιάζουμε επίσης κάποια επιχειρήματα σχετικά με την αξιοπιστία της προτεινόμενης μεθοδολογίας χρησιμοποιώντας μια μαθηματική απόδειξη για την ορθότητα της μετάφρασης. Υποστηρίζουμε ότι όλα τα μοντέλα της προδιαγραφής JML είναι μοντέλα της προδιαγραφής CafeOBJ, δηλ. ότι η προδιαγραφή JML είναι μια βελτίωση (refinement) της προδιαγραφής CafeOBJ.