Νομίζω ότι η συζήτηση είναι λίγο υπερβολική όταν μιλάμε για client τεχνολογίες όπως το Silverlight. Μία σωστά σχεδιασμένη εφαρμογή ΔΕΝ θα τρέχει σημαντικό business κώδικα στον client αλλά στο server. Στο silverlight θα υπάρχει λογική presentation και επικοινωνίας με το server, η οποία όπως και να το κάνουμε είναι δεδομένη και ίδια για όλους, οπότε και δεν τίθεται θέμα πνευματικής ιδιοκτησίας ή copyright.
Γενικά ο φόβος για "κλοπή πνευματικής ιδιοκτησίας" είναι υπερ-υπερεκτιμημένος. Είναι πολύ σπάνιο ο κώδικας που γράφουμε να έχει κάτι τόσο πρωτότυπο ώστε να αξίζει obfuscation και τα προβλήματα που προκαλεί. Αν ο κώδικας είναι τόσο σημαντικός, π.χ. είναι ένας πραγματικά πρωτοποριακός αλγόριθμος για algorithmic trading, καλύτερα να τον βάλεις σε ένα server στον οποίο δεν θα έχουν πρόσβαση οι "κακοί".
Η πραγματική "πνευματική ιδιοκτησία" είναι η ικανότητα και η εμπειρία του προγραμματιστή, η οποία δεν αντιγράφεται. Ούτε η προσοχή στην ποιότητα και η γρήγορη ανταπόκριση στους πελάτες. Ακόμα και αν κάποιος πάει και αντιγράψει κάποιο ουσιαστικό κώδικα σου με το Reflector, πολύ δύσκολα θα καταφέρει να τον χρησιμοποιήσει αν δεν έχει ήδη αρκετές γνώσεις για να γράψει κάτι αντίστοιχο.
Έστω ότι κάνεις μία φανταστική εφαρμογή για Windows Phone και κάποιος θέλει να την αντιγράψει. Πιο εύκολο είναι να γράψει κάτι καινούριο από την αρχή παρά να αντιγράψει το δικό σου κώδικα και να προσπαθήσει να τον κάνει να δουλέψει. Αν όχι τίποτε άλλο, τα προβλήματα που θα έχει αρχικά η εφαρμογή του θα τον καταβαραθρώσουν στα ratings. Και όλο αυτό τον καιρό εσύ θα δημιουργείς νέες εκδόσεις, τις οποίες ο άλλος θα τρέχει να προλάβει.
Τα πράγματα αλλάζουν ελάχιστα αν μιλάμε για κλείδωμα εφαρμογών. Όταν ενσωματώνεις το κλείδωμα στην εφαρμογή σου έχει κάποιο νόημα να χρησιμοποιήσεις obfuscation στο κομμάτι που υλοποιεί το κλείδωμα. Συνήθως όμως υπάρχουν καλύτερες εναλλακτικές. Για παράδειγμα, μπορείς άνετα να χρησιμοποιήσεις ή να φτιάξεις κάποιο license service το οποίο θα επιτρέπει ή όχι στην εφαρμογή να τρέξει ανάλογα με το αν έχει πληρώσει ο άλλος. Η μόδα αυτό τον καιρό μάλιστα είναι τα App stores, τα οποία αναλαμβάνουν τα ίδια να προστατέψουν την εφαρμογή σου.
Δεν είναι περίεργο που το obfuscation χρησιμοποιείται ή αναφέρεται τόσο λίγο. Το πραγματικό κόστος του ίδιου του obfuscation είναι πολύ μεγαλύτερο από οποιαδήποτε πιθανή απώλεια πνευματικής ιδιοκτησίας.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos