בדוק זאת תוך 2 דקות
לחץ על F12 בדפדפן שלך. ללא התקנת דבר. ללא ידע בתכנות.
| טענה | איך לאמת | לשונית |
|---|---|---|
| אין עוגיות מעקב | Application → Cookies → רק עוגיית הפעלה טכנית. ללא _ga, _fbp, _gid ni similares |
Application |
| אין שירותי צד שלישי באפליקציה | Network → סנן לפי דומיין → רק בקשות ל-solo2.net. Cero llamadas a Google, Facebook, Amazon, etc. |
Network |
| אנליטיקה רק בלנדינג, לא באפליקציה | Network → ב-/info/* se ve stats.menzuri.com. En la app (/) no aparece ningún script de analytics |
Network |
| ההיסטוריה שלך חיה בדפדפן שלך | Application → IndexedDB → solo2-vault-{userId} con stores messages, files, etc. Datos locales |
Application |
| רשימת אנשי קשר רק מקומית | Application → IndexedDB → store pares existe localmente. Network → no hay petición de "contacts" ni "friends" al servidor |
Application |
| ללא CDN חיצוניים | Network → כל ה-JS/CSS נטענים מאותו דומיין. אין cdn.jsdelivr.net, cdnjs.cloudflare.com, unpkg.com |
Network |
| הפעלות של 24 שעות מקסימום | Application → localStorage → solo2_session expira. Puedes cerrar sesión y ver que desaparece |
Application |
| אתה יכול לראות באיזה סוג חיבור אתה משתמש | בממשק הצ'אט: מחוון P2P (ירוק) לעומת Mirror/TURN (כתום) גלוי בכל עת | UI |
| Umami ללא עוגיות | Application → Cookies → לא מופיעה שום עוגייה של stats.menzuri.com incluso tras visitar el landing |
Application |
| המפתח הראשי שלך נוצר באופן אקראי | Application → בהרשמה, Solo2 מייצר 24 מילים ייחודיות. הן לא נגזרות מהסיסמה שלך — הן מפתח עצמאי עם 256 ביט של אנטרופיה אמיתית | Application |
אם אתה יודע להשתמש ב-DevTools
אימותים שדורשים ידע טכני. אם אתה מבין HTTP, WebRTC וקריפטוגרפיה בסיסית, תוכל לאשר טענות אלה.
| טענה | איך לאמת |
|---|---|
| הודעות מוצפנות E2E | Network → הבקשות ל-/cmd contienen payloads binarios opacos (zcatpack). El contenido no es texto legible. No puedes confirmar qué algoritmo se usa, pero sí que no viaja en claro |
| אותות WebRTC מוצפנים E2E | Network → הודעות האיתות נוסעות כ-blobs בינאריים מוצפנים. הם לא JSON קריא עם offer/answer en claro |
| מפתח ראשי עצמאי מהסיסמה | Network → ההתחברות מקבלת wrapped_master_key cifrado del servidor. El cliente lo descifra localmente con la contraseña. La clave maestra nunca viaja en claro. Cambiar contraseña no cambia la identidad |
| ריפוד אחיד במראה | Network → חבילות ה-WebSocket/DataChannel בגודל קבוע כשנעשה שימוש ב-relay. בדוק את הגדלים בלשונית Network |
| סיסמה מוגנת (לא נשלחת בטקסט רגיל) | Network → ההתחברות שולחת hash, לא טקסט רגיל. אינך יכול לאמת באיזה אלגוריתם השרת משתמש (Argon2id), אבל כן שהסיסמה המקורית שלך לעולם לא יוצאת מהדפדפן |
| בקשות קישור פוקעות תוך 3 ימים | צור בקשה, אל תענה עליה, ודא אחרי 3 ימים שהיא נעלמה. דורש סבלנות ושני חשבונות |
| התראות push מוצפנות | Network → בקשות ה-push ל-Service Worker מגיעות מוצפנות (תקן Web Push). ניתן לראות את המטען המוצפן בלשונית Network |
| חיבור P2P ישיר לעומת relay | chrome://webrtc-internals/ muestra los ICE candidates y si la conexión es relay (TURN) o srflx/host (directa) |
זה לא ניתן לאימות
היינו צבועים אם היינו אומרים שהכל ניתן לאימות. טענות אלה דורשות שתסמוך עלינו — או שתחכה שנפרסם את קוד המקור.
| טענה | למה לא ניתן לאימות |
|---|---|
| Double Ratchet עם סיבוב מפתחות | הפעולות הקריפטוגרפיות מתבצעות בתוך בינארי WASM. המשתמש רואה שהוא נטען, אבל לא יכול לקרוא איזה אלגוריתם הוא מריץ |
| המפתח הראשי נוצר עם אנטרופיה אמיתית (256 ביט) | היצירה משתמשת ב-crypto.getRandomValues בתוך הדפדפן. אתה יכול לראות שנוצרות 24 מילים, אבל לא יכול לאמת מ-F12 את איכות האנטרופיה או שה-CSPRNG מאובטח |
| X25519 + Ed25519 + ChaCha20-Poly1305 | אותה בעיה: מחסנית ההצפנה נמצאת בתוך WASM. לא ניתן לאשר את העקומות או האלגוריתמים מהדפדפן |
| השרת "עיוור לחלוטין" | אתה יכול לאמת שהלקוח לא שולח נתונים קריאים. מה שהשרת עושה עם מטא-נתוני החיבור (כתובות IP, חותמות זמן) דורש אמון או ביקורת של השרת |
| השרת לא שומר קשרים לאחר קישור | דורש גישה לקוד ולמסד הנתונים של השרת |
| כתובות IP לא נרשמות | אינך יכול לאמת מה השרת רושם ביומנים שלו |
| המפתחות מתחלפים עם כל הודעה | מתרחש בתוך WASM. אתה רואה שהודעות נשלחות, אבל לא יכול לצפות בסיבוב המפתחות |
| נתונים שנמחקו באמת נעלמים | אתה יכול למחוק מ-IndexedDB מקומי, אבל לא יכול לאמת שהשרת לא שומר עותקים (אם כי המניפסט אומר שמעולם לא היו לו) |
למה WASM הוא מחסום אמיתי
שכבת ההצפנה של Solo2 קומפלה ל-WebAssembly — פורמט בינארי שהדפדפן שלך מריץ אך לא יכול לקרוא כטקסט. זה אומר שאינך יכול לאמת מ-F12 באיזה אלגוריתם אנחנו משתמשים.
ה-JavaScript הממוזער (שאנחנו משתמשים בו לממשק) כן ניתן להפיכה: הדפדפן יכול לעצב אותו מחדש ומבנה הקוד קריא. זה מכשול מעשי, לא מחסום אמיתי. אבל WASM שקומפל מ-Zig הוא שונה מהותית — es un binario de bajo nivel donde los nombres originales desaparecen y las optimizaciones del compilador transforman el código más allá de lo reconocible.
אנחנו אומרים שזה Double Ratchet עם X25519. אתה יכול לסמוך על המילה שלנו, או לחכות שנפרסם את קוד המקור של שכבת ההצפנה כדי שכל אחד יוכל לבקר אותו. אנחנו עובדים על זה.
מה אנחנו עושים כדי שתוכל לסמוך יותר
פרסום hash-ים SHA-256 של קבצי ה-.wasm
נפרסם את ה-hash הקריפטוגרפי של כל קובץ WASM בייצור. כך כל מבקר יוכל לאמת שהבינארי שרץ בדפדפן שלך תואם בדיוק לזה שאנחנו קימפלנו.
פתיחת שכבת ההצפנה כקוד פתוח
פרסום קוד המקור של שכבת ההצפנה (Zig) כמאגר ציבורי. אותו מודל כמו Signal: פרוטוקול הצפנה פתוח, שאר הקוד סגור. כל אחד יוכל לקמפל את קוד המקור ולהשוות את ה-hash של ה-.wasm שנוצר לזה שנמצא בייצור.
האבטחה לא תלויה בסתירה
מודל האבטחה שלנו תוכנן לעבוד גם אם קוד המקור ציבורי. אם האבטחה הייתה תלויה בכך שאף אחד לא יכול לקרוא את הקוד, זו לא הייתה אבטחה — זו הייתה תקווה.
5 שכבות אבטחה מתועדות
סיסמה (גישה לשרת), 24 מילים (המפתח הראשי האמיתי), סוד מכשיר (הגנת כספת) וסיבוב Double Ratchet. כל שכבה עצמאית וניתנת לאימות במניפסט השקיפות שלנו.