Το Firefox περιλαμβάνει τη λειτουργία Resist Fingerprinting, η οποία περιορίζει τα προσωπικά χαρακτηριστικά του λειτουργικού συστήματος και του υλικού του χρήστη που εκτίθενται στους ιστοτόπους. Δεν προτείνεται η χρήση της κατά την κανονική περιήγηση, καθώς πρόκειται για μια πολύ αυστηρή προσέγγιση που συχνά προκαλεί δυσλειτουργίες στις ιστοσελίδες. Η Mozilla δεν συνιστά την ενεργοποίηση του Resist Fingerprinting, αλλά προτείνει τη χρήση της υποστηριζόμενης λειουργίας προστασίας κατά του fingerprinting, η οποία ελαχιστοποιεί τα προβλήματα των ιστοτόπων.
Το Resist Fingerprinting μπορεί να ελεγχθεί από τα πρόσθετα, επομένως ενδέχεται να έχει ενεργοποιηθεί εν αγνοία σας. Μπορεί επίσης να ρυθμιστεί τροποποιώντας την προτίμηση privacy.resistFingerprinting στη σελίδα επεξεργασίας των ρυθμίσεων παραμέτρων του Firefox (σελίδα «about:config»).
Έλεγχος για το αν είναι ενεργό το Resist Fingerprinting
Για να απενεργοποιήσετε το Resist Fingerprinting:
- Πληκτρολογήστε about:config στη γραμμή διευθύνσεων και πατήστε EnterReturn.
Ενδέχεται να εμφανιστεί μια σελίδα προειδοποίησης. Κάντε κλικ στο για να μεταβείτε στη σελίδα about:config. - Στη γραμμή αναζήτησης στο πάνω μέρος, πληκτρολογήστε privacy.resistFingerprinting.
- Θα εμφανιστούν πολλές προτιμήσεις, αλλά ελέγξτε εάν έχει οριστεί η τιμή true για την προτίμηση privacy.resistFingerprinting ή την προτίμηση privacy.resistFingerprinting.pbMode.
- Για να διαπιστώσετε εάν κάποια επέκταση ελέγχει αυτήν την προτίμηση, μπορείτε να αλλάξετε την τιμή σε false και να επανεκκινήσετε το πρόγραμμα περιήγησής σας. Μετά την επανεκκίνηση, επισκεφτείτε ξανά τη σελίδα «about:config» και δείτε εάν η τιμή έχει οριστεί ξανά σε true.
Εάν ναι, θα χρειαστεί να προσδιορίσετε ποια από τις επεκτάσεις ελέγχει την προτίμηση, προκειμένου να την απενεργοποιήσετε ή αφαιρέσετε. Ένας τρόπος για να το κάνετε αυτό είναι να απενεργοποιήσετε μία μία τις εγκατεστημένες επεκτάσεις και να επανεκκινήσετε το πρόγραμμα περιήγησης, ώστε να δείτε εάν αλλάζει η τιμή της προτίμησης κατά την επανεκκίνηση του Firefox. Σημειώστε ότι, σε σπάνιες περιπτώσεις, αυτή η προτίμηση ενδέχεται να ελέγχεται από πολλαπλές επεκτάσεις.
Τι είδους προβλήματα μπορεί να προκαλέσει το Resist Fingerprinting στις ιστοσελίδες;
Το Resist Fingerprinting προκαλεί μια σειρά από περίεργες συμπεριφορές που συνήθως αναφέρονται ως σφάλματα. Ωστόσο, αυτές οι συμπεριφορές υποδεικνύουν ότι το Resist Fingerprinting λειτουργεί όπως πρέπει και αυτός είναι ο λόγος για τον οποίο δεν προτείνουμε τη χρήση αυτής της λειτουργίας στον μέσο χρήση του Firefox.
Αξίζει επίσης να σημειωθεί ότι αν ρυθμίσετε την προτίμηση privacy.resistFingerprinting.pbMode, αλλά όχι την προτίμηση privacy.resistFingerprinting, θα εξακολουθείτε να παρατηρείτε ορισμένες παράξενες συμπεριφορές λόγω του Resist Fingerprinting στα παράθυρα κανονικής περιήγησης, καθώς δεν είναι δυνατός ο διαχωρισμός αυτών των συμπεριφορών ανά παράθυρο. Αυτές περιλαμβάνουν τη χρήση των καθορισμένων χρωμάτων (αντί αυτών του συστήματος) και πολλά άλλα.
Οι πιο συχνές, μη αναμενόμενες συμπεριφορές περιλαμβάνουν τα εξής:
- Προβολή εσφαλμένης ώρας ή, για την ακρίβεια, προβολή εσφαλμένης ζώνης ώρας.
- Οι εικόνες, ειδικά αυτές που δημιουργούνται ως αποτέλεσμα της μεταφόρτωσης/επεξεργασίας μιας εικόνας στο πρόγραμμα περιήγησης, ενδέχεται να εμφανίζουν τυχαίες γραμμές. Για παράδειγμα:
- Ορισμένα εφέ κίνησης ή παιχνίδια ενδέχεται να παρουσιάζουν καθυστέρηση.
- Οι σελίδες ενδέχεται να μην εμφανίζονται στην αναμενόμενη γλώσσα, αλλά στα αγγλικά.
- Οι χρήστες του macOS ή του Linux ενδέχεται να λαμβάνουν πληροφορίες ή λήψεις που προορίζονται για τα Windows.
- Τα εικονίδια, οι χάρτες ή οι εικόνες ενδέχεται να μην απεικονίζονται με υψηλή πιστότητα και να είναι θολές ή χαμηλής ανάλυσης.
- Τα χειριστήρια παιχνιδιών δεν λειτουργούν.
- Οι επιφάνειες γραφής, οι γραφίδες και οι οθόνες αφής δεν λειτουργούν σωστά.
- Δεν τηρούνται οι προτιμήσης εμφάνισης, όπως η ανοιχτόχρωμη/σκουρόχρωμη λειτουργία, η μείωση των εφέ κίνησης και η μειωμένη διαφάνεια.
- Τα νέα παράθυρα χρησιμοποιούν ένα συγκεκριμένο μέγεθος.
- Αντικατάσταση των χρωμάτων συστήματος με καθορισμένες, σταθερές τιμές χρωμάτων.
Ποια στοιχεία τροποποιεί το Resist Fingerprinting;
Το Resist Fingerprinting αλλάζει πολλά στη συμπεριφορά του προγράμματος περιήγησης. Η παρακάτω λίστα είναι τεχνικής φύσεως και όσο πιο περιεκτική γίνεται, αλλά ενδέχεται να έχουν γίνει παραλείψεις κατά λάθος.
- Η ζώνη ώρας αναφέρεται ως UTC ή Ισλανδίας.
- Οι μαθηματικές πράξεις στη JavaScript ενδέχεται να αναφέρουν ελαφρώς διαφορετικές τιμές από τις κανονικές.
- Η γλώσσα αναφέρεται ως en-US.
- Οι ιστότοποι έχουν στη διάθεσή τους μόνο τις προεγκατεστημένες γραμματοσειρές του λειτουργικού συστήματος. Εξαιρούνται επίσης οι γραμματοσειρές των γλωσσικών πακέτων.
- Διορθώνονται πολλές ιδιότητες του αντικειμένου «navigator», συμπεριλαμβανομένης της τιμής του συγχρονισμού υλικού, της έκδοσης της εφαρμογής και του αναγνωριστικού έκδοσης δομής. Η έκδοση του πράκτορα χρήστη αναφέρεται ως η κύρια έκδοση (π.χ. 119.0 αντί για 119.1).
- Το λειτουργικό σύστημα που αναφέρεται στην κεφαλίδα HTTP είναι τα Windows, ενώ το λειτουργικό σύστημα που αναφέρεται στο αντικείμενο «navigator» της JavaScript είναι το σωστό.
- Χωρίς την παραχώρηση οποιασδήποτε άδειας, αναφέρονται μόνο μία κάμερα και ένα μικρόφωνο ως συσκευές πολυμέσων. Ορισμένα σφάλματα συσκευής μπορεί να αναφέρονται ως «μη επιτρεπτή» αντί για «δεν βρέθηκε». Τα συμβάντα αλλαγής συσκευής δεν αναφέρονται.
- Οι ετικέτες των ροών βίντεο και ήχου είναι καθορισμένες σε «Εσωτερική κΚάμερα» ή «Εσωτερικό μικρόφωνο».
- Οι δυνατότητες πολυμέσων αναφέρονται ως υποστηριζόμενες, ομαλές και μη ενεργειακά αποδοτικές.
- Η λειτουργία «Video Facing» έχει σταθερή τιμή.
- Η προτιμώμενη συχνότητα δειγματοληψίας για τον ήχο αναφέρεται ως 44100, ενώ η συχνότητα δειγματοληψίας αναφέρεται ως 48000.
- Η καθυστέρηση του Audio Context είναι σταθερή και ο μέγιστος αριθμός καναλιών αναφέρεται ως 2.
- Δεν ανιχνεύεται κανένα χειριστήριο παιχνιδιών.
- Ο τύπος σύνδεσης δικτύου αναφέρεται ως «Άγνωστος».
- Στο macOS, δεν τηρείται η προτίμηση εξομάλυνσης της γραμματοσειράς του λειτουργικού συστήματος.
- Απενεργοποιούνται όλοι οι αισθητήρες της συσκευής.
- Ο ρυθμός καρέ κλειδώνει στα 60 fps.
- Η ακρίβεια όλων των χρονικών σημάνσεων, των χρονόμετρων και των ρολογιών μειώνεται στα 16.67ms (για να είναι σύγχρονα με τα 60fps.)
- Οι εξωτερικές διαστάσεις του παραθύρου αναφέρεται ότι είναι ίδιες με τις εσωτερικές διαστάσεις του.
- Οι ιδιότητες «window.screenX» και «screenY», καθώς και οι «mozInnerScreenX» και «mozInnerScreenY», και οι συντεταγμένες των συμβάντων στην οθόνη αναφέρονται πάντα ως 0,0.
- Το άνω και το αριστερό άκρο, το πλάτος και το ύψος της οθόνης, καθώς και το διαθέσιμο άνω και αριστερό άκρο, το πλάτος και το ύψος της οθόνης αναφέρεται ότι είναι τα ίδια με τις εσωτερικές διαστάσεις του παραθύρου.
- Το βάθος pixel της οθόνης αναφέρεται ως 24.
- Ο λόγος pixel της συσκευής αναφέρεται ως 2.0.
- Η ανάλυση CSS αναφέρεται ως το επίπεδο ζουμ, αντί να λαμβάνεται υπόψη ο πραγματικός λόγος pixel της συσκευής.
- Ο προσανατολισμός της οθόνης ορίζεται στον οριζόντιο, καθώς η γωνία της οθόνης ορίζεται σε 0. Τα συμβάντα αλλαγής προσανατολισμού καταστέλλονται.
- Οι παράμετροι ακτίνας, περιστροφής και δύναμης των συμβάντων αφής ορίζονται σε 0.
- Ο μέγιστος αριθμός σημείων αφής για τα συμβάντα κατάδειξης ορίζεται σε 0.
- Πολλές παράμετροι των συμβάντων κατάδειξης, όπως οι παράμετροι κλίσης και πίεσης, ορίζονται σε σταθερές τιμές.
- Όλα τα συμβάντα κατάδειξης ρυθμίζονται έτσι, ώστε να προέρχονται από μία κύρια συσκευή κατάδειξης.
- Οι δυνατότητες κατάδειξης αναφέρονται ως «Coarse» (Android) ή «Fine» και «Hover» (υπολογιστές).
- Οι κωδικοί πλήκτρων για τα συμβάντα πληκτρολογίου τροποποιούνται για να αποτραπεί η διαρροή της διάταξης πληκτρολογίου.
- Το WebSpeech API δεν αναφέρει καμία διαθέσιμη φωνή.
- Το CSS θα αναφέρει το προτιμώμενο σύνολο χρωμάτων ως ανοιχτόχρωμο.
- Το CSS θα αναφέρει την τιμή της μειωμένης κίνησης ως «False».
- Το CSS θα αναφέρει την τιμή της αντίθεσης ως «Καμία προτίμηση».