Μοιράζοντας κώδικα… ακόμη και η MS το κάνει (περίπου) :S 5


locked and chainedΠολλές φορές έχω ακούσει το επιχείρημα ότι το ανοιχτό λογισμικό δεν είναι ασφαλές διότι οι πάντες έχουν πρόσβαση στο κώδικα του. Συχνά μάλιστα επιχειρηματολογούν ότι το κλειστό λογισμικό ακριβώς λόγω του ότι ο κώδικας του δεν είναι δημόσια διαθέσιμος δεν είναι τόσο εύκολο να το παρακάμψει κανείς. Φυσικά αν έχει κανείς έστω και ελάχιστη εμπειρία στην καθημερινή χρήση υπολογιστών θα ξέρει ότι τα πράγματα δεν είναι ακριβώς έτσι και πολύ συχνά το αποτέλεσμα είναι πολύ διαφορετικό.

Ένα ακόμη όμως επιχείρημα στην φαρέτρα των υποστηρικτών του ανοιχτού κώδικα είναι η κίνηση της Microsoft να μοιραστεί ένα κομμάτι του κώδικα  καθώς το iPhone της Apple αλλά και εφαρμογές της Google για το Android (όχι το ίδιο το λειτουργικό) κατέγραφαν τα δεδομένα τοποθεσίας της συσκευής τους. Το κομμάτι του κώδικα που μοιράζεται η Microsoft είναι το λογισμικό που τρέχουν κινητά τηλέφωνα της Microsoft που χρησιμοποιούνται σε οχήματα της εταιρείας προκειμένου να συσχετίσουν στοιχεία WiFi, GPS και προσβάσιμων κεραιών κινητής τηλεφωνίας. (ναι ξέρω ότι δεν έχει καμία σχέση με την καταγραφή δεδομένων τοποθεσίας από τα κινητά μας τηλέφωνα… για την ακρίβεια είναι τελείως διαφορετικό πράγμα).

Αυτό που όμως μου έκανε εντύπωση είναι ότι η Microsoft μπήκε στην διαδικασία να μοιράσει (ένα σχετικά άσχετο) κομμάτι του κώδικα της προκειμένου να διασκεδάσει τους φόβους του και φυσικά το κάνει με μια άδεια τελείως ξεκάρφωτη. Το θέμα όμως είναι ότι είναι προφανές ότι ακόμη και η Microsoft αναγνωρίζει ότι είναι σημαντικό από την πλευρά του καταναλωτή γνωρίζει ότι ο κώδικας της είναι διαθέσιμος και δεν παραβιάζει με κάποιο τρόπο την ιδιωτική του ασφάλεια (φυσικά στην περίπτωση αυτή αλίμονο αν κατάφερνε να την παραβιάσει αλλά αυτό είναι αλλουνού παπά ευαγγέλιο).

Είναι προφανές ότι το πλεονέκτημα του ανοιχτού λογισμικού για εμάς τους καθημερινούς χρήστες του, αλλά και το μέσω καταναλωτή είναι ακριβώς το γεγονός ότι ο κώδικας είναι ανοιχτός. Μπορεί εγώ να μην είμαι σε θέση να διαβάσω το κώδικα του πυρήνα του Linux για διαπιστώσω ότι όντως είναι ασφαλής και ότι όντως τα προσωπικά μου δεδομένα δεν καταγράφονται αλλά αρκετοί εκεί έξω μπορούν.

 

 


About Eleftherios Kosmas

Technologist in the University of Athens, open source enthusiast, member of the local hackerspace, vice chairperson of the Libre Space Foundation,

Σχολιάστε

5 thoughts on “Μοιράζοντας κώδικα… ακόμη και η MS το κάνει (περίπου) :S

  • cortlinux

    με το σημερινό άρθρο έλυσες και μία προσωπική απορία που είχα και όπου νόμιζα ότι διαβάζεις άνετα κώδικα.

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

    • Eleftherios Kosmas Post author

      Δυσκολεύομαι πάρα πολύ όταν διαβάζω κώδικα ειδικά όταν που είναι περίπλοκος. Τώρα αν είναι ένα scriptάκι σε Python ή λίγο Ruby το ψιλοκαταλαβαίνω . Εξαρτάται πάντα και από το πως έχει γραφτεί (βλέπε σχόλια, ονόματα μεταβλητών που δεν είναι το κλασικό koko,lala ή foo,bar βοηθούν).

      Νομίζω ότι ο καλύτερος τρόπος είναι να χρησιμοποιούμε ελεύθερο λογισμικό, και μάλιστα μέσα από τα repos της διανομής μας. Οι περισσότερες διανομές είναι αρκετά μεγάλα project και δίνουν αρκετή σημασία σε τέτοια ζητήματα τώρα θα μου πεις ρε Λευτέρη εσύ χρησιμοποιείς ΜΟΝΟ ελεύθερο λογισμικό; Ναι, όντως flash και wireless drivers είναι propiertary και στο δικό μου μηχάνημα. 🙁

      Ουσιαστικά όταν πρόκειται για κλειστού κώδικα εφαρμογές δεν υπάρχει τρόπος να διαπιστώσουμε κακόβουλες συνήθειες ενός προγράμματος, νομίζω ότι πολύ συχνά έχουμε το κλασσικό “Ναι, ναι, ότι να’ναι.. I accept!”, βλέπω κόσμο να εγκαθιστά πχ ένα πρόγραμμα στο Android κινητό του και να μην διαβάζει τι δικαιώματα έχει το πρόγραμμα που πάει να εγκαταστήσει (το Android σε ενημερώνει τι δικαιώματα ζητάει από λειτουργικό η εφαρμογή).

      • cortlinux

        η αλήθεια είναι ότι και γω τώρα τελευταία άρχισα να προσέχω περισσότερο το τι ζητάνε τα προγράμματα για να τα χρησιμοποιήσεις. μάλιστα για το λόγο αυτό απέκλεισα κάποιες εφαρμογές της γκουγκλ που ξεκάθαρα έλεγαν ότι θα μετέδιδαν μέρος των επικοινωνιών το οποίο θεώρησα απαράδεκτο

      • cortlinux

        όσο γίνεται ανοιχτού κώδικα αλλά όμως τυγχάνει να έχω γνωρίσει κάποια φοβερά προγράμματα κλειστού κώδικα που νομίζω ότι θα ήταν χαζό να μην τα χρησιμοποιώ επειδή απλά είναι κλειστού κώδικα. ένα παράδειγμα είναι το scrivener το οποίο δίνει ρέστα λειτουργικότητας και το οποίο υποστηρίζει από την άλλη τα ανοιχτά φορμά.

  • Yannis Gravezas

    “Ουσιαστικά όταν πρόκειται για κλειστού κώδικα εφαρμογές δεν υπάρχει τρόπος να διαπιστώσουμε κακόβουλες συνήθειες ενός προγράμματος”

    Πάντα υπάρχει τρόπος. http://http://www.wireshark.org/. Είναι το κατεξοχήν εργαλείο για να πιάνεις τους ρουφιάνους στα πράσα.Γενικά, έχεις δίκιο για τον κώδικα. Αν δεν είναι γραμμένος εξαρχής με γνώμονα την ευαγνωσιμότητα είναι σαν να μελετάς ιερογλυφικά. Λυπάμαι που το λέω αλλά ειδικά ο δικός μου κώδικας είναι λες και τον έβγαλες απο κάποια κρύπτη του βατικανού. Δεν το κάνω επίτηδες, είναι η σκέψη μου πολύ άναρχη γενικά και αποφεύγω να γυρίζω πίσω να συγυρίσω καθώς είμαι της σχολής “αν δουλεύει δουλεύει” 😛 Τελικά, πρεπει να είναι πιο εύκολο να διαπιστώσεις αν ενα λογισμικό είναι τρύπιο παρατηρώντας τα εξωτερικά του χαρακτηριστικά παρά τον ίδιο τον κώδικα του. Σε μια δουλειά στον γερμανό παλαιότερα είχαμε κληθεί να εξετάσουμε ενα σάπιο κώδικα σε Visual Basic. Ήταν ένα αρχείο 700KB όπου είχαν περάσει δεν ξέρω κι εγώ πόσα χέρια. Ο υπεύθυνος τότε, πολύ ορθά, αποφάσισε να φτιάξουμε ενα test suite και να χτυπάμε το σύστημα για να εξετάσουμε την συμπεριφορά του. Ήταν σωτήρια απόφαση γιατι η νεύρωση μας πλησίαζε επικύνδηνα. Επίσης, είναι πολύ εύκολο να καλύψεις τρύπες με τρόπο τέτοιο που να φαίνεται σαν παράλειψη. Είναι πολύ δύσκολο όμως να τις κρύψεις όμως απο ατομάκια όπως αυτούς της athcon