Μια τεχνική περιγραφή του Psiphon
3/12/2014 - 4 λεπτά ανάγνωσης
Ενημερώθηκε: 4/6/2021
Ακολουθεί μια ενημέρωση για να απαντηθούν δύο πρόσφατες ερωτήσεις: με απλά λόγια, τι είναι το Psiphon και πώς διαφέρει από μια υπηρεσία VPN· και, τι έχει αλλάξει από την τελευταία ενημέρωση του εγγράφου τεχνικού σχεδιασμού.
Το Psiphon 3 είναι ένα κεντρικά διαχειριζόμενο, γεωγραφικά ποικιλόμορφο δίκτυο χιλιάδων διακομιστών μεσολάβησης. Το μεγαλύτερο μέρος της υποδομής μας φιλοξενείται σε παρόχους cloud. Το Psiphon 3 διαθέτει αρχιτεκτονική «ενός άλματος» με ασφαλή κρυπτογράφηση σύνδεσης μεταξύ πελατών και διακομιστών. Προσφέρουμε εφαρμογές-πελάτες για τις πιο δημοφιλείς πλατφόρμες: Windows, Android και iOS (σε alpha).
Το Psiphon είναι ανοιχτού κώδικα. Η υπηρεσία μας προσφέρει μια ισχυρή πολιτική απορρήτου· δεν υπάρχουν λογαριασμοί χρηστών και οι διευθύνσεις δικτύου των χρηστών δεν καταγράφονται.
Το Psiphon διαφέρει από τις τυπικές υπηρεσίες VPN με δύο βασικούς τρόπους:
- Εφαρμόζουμε στρατηγικές διανομής υποσυνόλων διακομιστών στους χρήστες, με στόχο να παρέχουμε σε κάθε χρήστη έναν μικρό αριθμό διακομιστών στους οποίους μπορεί να έχει πρόσβαση, χωρίς όμως να αποκαλύπτεται ολόκληρο το δίκτυο σε έναν χρήστη. Για την επίτευξη αυτού του στόχου, το μέγεθος του δικτύου μας -- και ειδικότερα η ποικιλομορφία των διευθύνσεων δικτύου μας -- δεν αποτελεί απλώς συνάρτηση του φόρτου κίνησής μας.
- Χρησιμοποιούμε συσκότιση πρωτοκόλλου για την παράκαμψη του αποκλεισμού βάσει DPI.
Το τεχνικό έγγραφο σχεδιασμού του Psiphon είναι παρωχημένο και αυτό που ακολουθεί είναι μια πολύ σύντομη σύνοψη των σημαντικότερων τεχνικών αλλαγών που έχουμε εφαρμόσει από την έναρξη του έργου το 2011.
- Προσθέσαμε το πρωτόκολλο συσκοτισμένου SSH για να μετριάσουμε την αναγνώριση ψηφιακού αποτυπώματος μέσω DPI. Αυτό το πρωτόκολλο με πλήρως τυχαία μορφή αναπτύσσεται με ένα μοναδικό κλειδί συσκότισης ανά διακομιστή Psiphon.
- Προσθέσαμε ένα προαιρετικό πρόθεμα HTTP στο πρωτόκολλό μας για να μετριάσουμε τη χρήση λίστας επιτρεπόμενων κίνησης HTTP βάσει DPI. Αυτό το απλό πρόθεμα είναι επαρκές ώστε το DPI βάσει regex (nDPI και l7-filter) να ταξινομεί την κίνηση του Psiphon ως HTTP, και ήταν επαρκές για να αντιμετωπίσει έναν πραγματικό αντίπαλο τη στιγμή που το αναπτύξαμε.
- Προσθέσαμε απομακρυσμένες λίστες διακομιστών για να ενισχύσουμε τις έννοιες των ενσωματωμένων διακομιστών και των διακομιστών ανακάλυψης. Ενώ η ανακάλυψη συμβαίνει μόνο κατά τη σύνδεση σε έναν υπάρχοντα διακομιστή, οι απομακρυσμένες λίστες διακομιστών μπορούν να ληφθούν ακόμα και όταν όλοι οι διακομιστές είναι αποκλεισμένοι. Οι απομακρυσμένες λίστες διακομιστών διανέμονται στο S3 και η πρόσβαση γίνεται μέσω του https://s3.amazonaws.com χωρίς διακριτό όνομα bucket στο URL. Με αυτόν τον τρόπο, είναι δύσκολο για έναν αντίπαλο να αποκλείσει τις απομακρυσμένες λίστες διακομιστών μας χωρίς να αποκλείσει ολόκληρο το S3 ή να εφαρμόσει ανάλυση κίνησης HTTPS.
- Το email αποτελεί πλέον έναν σημαντικό μηχανισμό διάδοσης των εφαρμογών-πελατών. Διαθέτουμε έναν μηχανισμό αυτόματης απάντησης που επιστρέφει συνδέσμους και συνημμένα για εξατομικευμένες εφαρμογές-πελάτες Psiphon χορηγών/καναλιών ανάλογα με τη διεύθυνση email στην οποία στέλνουν οι χρήστες.
- Κυκλοφορήσαμε μια εφαρμογή Android το 2012. Η πρώτη έκδοση περιλάμβανε ένα ενσωματωμένο πρόγραμμα περιήγησης βασισμένο στο WebView του Android. Το 2012/2013 προσθέσαμε υποστήριξη για διοχέτευση ολόκληρης της συσκευής μέσω τούνελ, η οποία διοχετεύει όλες τις εφαρμογές Android μέσω του Psiphon. Διαθέτουμε μια λειτουργία ολόκληρης της συσκευής μέσω iptables (για συσκευές Android 2.2+ με δικαιώματα root), καθώς και μια λειτουργία ολόκληρης της συσκευής που χρησιμοποιεί το VpnService του Android με το tun2socks (για οποιαδήποτε συσκευή Android 4+). Στις πρόσθετες λειτουργίες που προστέθηκαν περιλαμβάνονται η επιλογή περιοχής εξόδου και η αλυσιδωτή σύνδεση διακομιστών μεσολάβησης.
- Διαθέτουμε πλέον μια εφαρμογή iOS σε δοκιμαστική έκδοση alpha. Αυτή η εφαρμογή διαθέτει ενσωματωμένο πρόγραμμα περιήγησης.
- Ο ενσωματωμένος στην εφαρμογή μηχανισμός σχολίων μάς στέλνει μηνύματα και προαιρετικά διαγνωστικά στοιχεία από τους χρήστες. Αυτό το σύστημα μας έχει βοηθήσει να επιλύσουμε πολλά προβλήματα πλατφόρμας και ζητήματα αποκλεισμών.
- Αλλαγές στους αλγορίθμους ανακάλυψης: οι αλγόριθμοι ανακάλυψής μας εξελίσσονται ως μέρος μιας συνεχούς διαδικασίας βελτιστοποίησης του δικτύου μας. Οι σημαντικότερες αλλαγές περιλαμβάνουν την κοινή χρήση διακομιστών ανακάλυψης μεταξύ των καναλιών διάδοσης, καθώς και την προσθήκη της ώρας της ημέρας ως διάστασης.
- Βελτιστοποιήσεις στους αλγορίθμους σύνδεσης: οι εφαρμογές-πελάτες μας εκκινούν πλέον συνδέσεις προς πολλούς διακομιστές ταυτόχρονα κατά τη σύνδεση και διατηρούν την «καλύτερη» σύνδεση. Αυτό βοηθά στην εξισορρόπηση φορτίου καθώς και στη μείωση του χρόνου αναμονής των χρηστών, καθώς οι μεμονωμένοι αποκλεισμένοι διακομιστές δεν καθυστερούν την αλληλουχία σύνδεσης.
- Η αυτόματη αναβάθμιση της εφαρμογής-πελάτη βελτιώθηκε ώστε να χρησιμοποιεί σταδιακή λήψη και να χρησιμοποιεί τοποθεσίες λήψης εκτός ζώνης (με έλεγχο ταυτότητας μέσω ψηφιακών υπογραφών). Αυτές οι αλλαγές κατέστησαν πιο πιθανή τη διανομή μιας νέας εφαρμογής-πελάτη σε περιόδους αποκλεισμού.