Επαληθεύστε το μόνοι σας

Μην εμπιστεύεστε κανέναν. Επαληθεύστε το.

Το Solo2 είναι μια διαδικτυακή εφαρμογή. Αυτό σημαίνει ότι το πρόγραμμα περιήγησής σας διαθέτει ήδη όλα τα εργαλεία που χρειάζεστε για να ελέγξετε τι κάνουμε. Πατήστε F12, ανοίξτε τα DevTools και επαληθεύστε μόνοι σας κάθε ισχυρισμό του Μανιφέστου μας. Εδώ σας λέμε ακριβώς πώς.

Ελέγξτε το σε 2 λεπτά

Πατήστε F12 στο πρόγραμμα περιήγησής σας. Χωρίς να εγκαταστήσετε τίποτα. Χωρίς να ξέρετε προγραμματισμό.

Ισχυρισμός Πώς να το επαληθεύσετε Καρτέλα
Δεν υπάρχουν cookies κανενός τύπου Application → Cookies → κενό. Το Solo2 δεν εγκαθιστά κανένα cookie. Η συνεδρία σας διατηρείται στο localStorage, όχι σε cookies. Χωρίς _ga Application
Δεν υπάρχουν υπηρεσίες τρίτων στην εφαρμογή Network → φιλτράρισμα κατά τομέα (domain) → μόνο αιτήματα στο solo2.net Network
Analytics μόνο στη landing, όχι στην εφαρμογή Network → στο /* Network
Το ιστορικό σας ζει στο πρόγραμμα περιήγησής σας Application → IndexedDB → solo2-vault-{userId} Application
Λίστα επαφών μόνο τοπική Application → IndexedDB → store pares Application
Χωρίς εξωτερικά CDNs Network → όλα τα JS/CSS φορτώνονται από τον ίδιο τομέα. Δεν υπάρχει cdn.jsdelivr.net Network
Συνεδρίες 24 ωρών το μέγιστο Application → localStorage → solo2_session Application
Μπορείτε να δείτε τι τύπο σύνδεσης χρησιμοποιείτε Στο UI του chat: ένδειξη P2P (πράσινο) έναντι Mirror/TURN (πορτοκαλί) ορατή ανά πάσα στιγμή UI
Το Umami είναι cookieless Application → Cookies → δεν εμφανίζεται κανένα cookie του stats.menzuri.com Application
Το κύριο κλειδί σας δημιουργείται τυχαία Application → κατά την εγγραφή, το Solo2 δημιουργεί 24 μοναδικές λέξεις. Δεν προκύπτουν από τον κωδικό πρόσβασής σας — είναι ένα ανεξάρτητο κλειδί με 256 bit πραγματικής εντροπίας Application

Εάν ξέρετε να χρησιμοποιείτε τα DevTools

Επαληθεύσεις που απαιτούν τεχνικές γνώσεις. Εάν κατανοείτε το HTTP, το WebRTC και τη βασική κρυπτογραφία, μπορείτε να επιβεβαιώσετε αυτούς τους ισχυρισμούς.

Ισχυρισμός Πώς να το επαληθεύσετε
Μηνύματα κρυπτογραφημένα E2E Network → τα αιτήματα στο /cmd
Σήματα WebRTC κρυπτογραφημένα E2E Network → τα μηνύματα σήματος (signal messages) ταξιδεύουν ως κρυπτογραφημένα δυαδικά blobs. Δεν είναι αναγνώσιμα JSON με offer
Κύριο κλειδί ανεξάρτητο από τον κωδικό πρόσβασης Network → η σύνδεση (login) λαμβάνει ένα wrapped_master_key
Ομοιόμορφο padding στο mirror Network → τα πακέτα WebSocket/DataChannel έχουν σταθερό μέγεθος όταν χρησιμοποιείται relay. Επιθεωρήστε τα μεγέθη στην καρτέλα Network
Κωδικός πρόσβασης προστατευμένος (δεν ταξιδεύει σε απλό κείμενο) Network → η σύνδεση στέλνει έναν κατακερματισμό (hash), όχι απλό κείμενο. Δεν μπορείτε να επαληθεύσετε ποιον αλγόριθμο χρησιμοποιεί ο διακομιστής (Argon2id), αλλά μπορείτε να δείτε ότι ο αρχικός σας κωδικός δεν βγαίνει ποτέ από το πρόγραμμα περιήγησης
Τα αιτήματα σύνδεσης λήγουν σε 3 ημέρες Δημιουργήστε ένα αίτημα, μην απαντήσετε, επαληθεύστε μετά από 3 ημέρες ότι εξαφανίστηκε. Απαιτεί υπομονή και δύο λογαριασμούς
Κρυπτογραφημένες ειδοποιήσεις push Network → τα αιτήματα push στο Service Worker φτάνουν κρυπτογραφημένα (πρότυπο Web Push). Φαίνεται το κρυπτογραφημένο ωφέλιμο φορτίο (payload) στην καρτέλα Network
Άμεση σύνδεση P2P έναντι relay chrome://webrtc-internals/

Αυτό δεν μπορείτε να το επαληθεύσετε

Θα ήμασταν υποκριτές αν λέγαμε ότι όλα είναι επαληθεύσιμα. Αυτοί οι ισχυρισμοί απαιτούν να μας εμπιστευτείτε — ή να περιμένετε μέχρι να δημοσιεύσουμε τον κώδικα.

Ισχυρισμός Γιατί δεν είναι επαληθεύσιμο
Double Ratchet με εναλλαγή κλειδιών Οι κρυπτογραφικές πράξεις εκτελούνται μέσα σε ένα δυαδικό αρχείο WASM. Ο χρήστης βλέπει ότι φορτώνεται, αλλά δεν μπορεί να διαβάσει ποιον αλγόριθμο εκτελεί
Το κύριο κλειδί δημιουργείται με πραγματική εντροπία (256 bits) Η δημιουργία χρησιμοποιεί το crypto.getRandomValues μέσα στο πρόγραμμα περιήγησης. Μπορείτε να δείτε ότι παράγονται 24 λέξεις, αλλά δεν μπορείτε να επαληθεύσετε από το F12 την ποιότητα της εντροπίας ούτε ότι το CSPRNG είναι ασφαλές
X25519 + Ed25519 + ChaCha20-Poly1305 Το ίδιο πρόβλημα: η κρυπτογραφική στοίβα βρίσκεται μέσα στο WASM. Δεν μπορούν να επιβεβαιωθούν οι καμπύλες ή οι αλγόριθμοι από το πρόγραμμα περιήγησης
Ο διακομιστής είναι «εντελώς τυφλός» Μπορείτε να επαληθεύσετε ότι ο πελάτης δεν στέλνει αναγνώσιμα δεδομένα. Το τι κάνει ο διακομιστής με τα μεταδεδομένα σύνδεσης (IPs, timestamps) απαιτεί εμπιστοσύνη ή έλεγχο του διακομιστή
Ο διακομιστής δεν κρατά σχέσεις μετά τη σύνδεση Απαιτεί πρόσβαση στον κώδικα και τη βάση δεδομένων του διακομιστή
Οι διευθύνσεις IP δεν καταγράφονται Δεν μπορείτε να επαληθεύσετε τι καταγράφει ο διακομιστής στα αρχεία καταγραφής (logs) του
Τα κλειδιά αλλάζουν με κάθε μήνυμα Συμβαίνει μέσα στο WASM. Βλέπετε ότι στέλνονται μηνύματα, αλλά δεν μπορείτε να παρατηρήσετε την εναλλαγή των κλειδιών
Τα διαγραμμένα δεδομένα εξαφανίζονται πραγματικά Μπορείτε να διαγράψετε από την τοπική IndexedDB, αλλά δεν μπορείτε να επαληθεύσετε ότι ο διακομιστής δεν κρατά αντίγραφα (αν και το Μανιφέστο λέει ότι δεν τα είχε ποτέ)

Γιατί το WASM είναι ένας πραγματικός φραγμός

Το κρυπτογραφικό επίπεδο του Solo2 είναι μεταγλωττισμένο σε WebAssembly — μια δυαδική μορφή που το πρόγραμμα περιήγησής σας εκτελεί αλλά δεν μπορείτε να διαβάσετε ως κείμενο. Αυτό σημαίνει ότι δεν μπορείτε να επαληθεύσετε από το F12 ποιον αλγόριθμο χρησιμοποιούμε.

Η ελαχιστοποιημένη JavaScript (που χρησιμοποιούμε για τη διεπαφή) είναι αναστρέψιμη: το πρόγραμμα περιήγησης μπορεί να την επαναδιαμορφώσει και η δομή του κώδικα είναι αναγνώσιμη. Είναι ένα πρακτικό εμπόδιο, όχι ένας πραγματικός φραγμός. Αλλά το WASM που έχει μεταγλωττιστεί από Zig είναι θεμελιωδώς διαφορετικό

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

Τι κάνουμε για να μπορείτε να εμπιστεύεστε περισσότερο

1

Δημοσίευση των hashes SHA-256 των .wasm

Θα δημοσιεύσουμε τον κρυπτογραφικό κατακερματισμό (hash) κάθε αρχείου WASM στην παραγωγή. Έτσι, οποιοσδήποτε ελεγκτής θα μπορεί να επαληθεύσει ότι το δυαδικό αρχείο που εκτελείται στο πρόγραμμα περιήγησής σας αντιστοιχεί ακριβώς σε αυτό που εμείς μεταγλωττίσαμε.

2

Άνοιγμα του κρυπτογραφικού επιπέδου ως ανοιχτού κώδικα

Δημοσίευση του πηγαίου κώδικα του κρυπτογραφικού επιπέδου (Zig) ως δημόσιο αποθετήριο. Το ίδιο μοντέλο με το Signal: ανοιχτό κρυπτογραφικό πρωτόκολλο, κλειστός ο υπόλοιπος κώδικας. Ο καθένας θα μπορεί να μεταγλωττίσει τον πηγαίο κώδικα και να συγκρίνει το hash του παραγόμενου .wasm με αυτό που βρίσκεται στην παραγωγή.

3

Η ασφάλεια δεν εξαρτάται από την ασάφεια

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

4

5 επίπεδα ασφάλειας τεκμηριωμένα

Κωδικός πρόσβασης (πρόσβαση στον διακομιστή), 24 λέξεις (πραγματικό κύριο κλειδί), μυστικό συσκευής (προστασία θησαυροφυλακίου) και εναλλαγή Double Ratchet. Κάθε επίπεδο είναι ανεξάρτητο και επαληθεύσιμο στο Μανιφέστο Διαφάνειας μας.

Solo2 — Η συνομιλία σας είναι μόνο δική σας.