2 मिनट में जाँचें
अपने ब्राउज़र में F12 दबाएँ। कुछ भी इंस्टॉल किए बिना। प्रोग्रामिंग जाने बिना।
| दावा | कैसे सत्यापित करें | टैब |
|---|---|---|
| किसी भी प्रकार की कोई कुकीज़ नहीं | Application → Cookies → खाली। Solo2 कोई कुकी इंस्टॉल नहीं करता। आपका सत्र localStorage में बनाए रखा जाता है, कुकीज़ में नहीं। कोई _ga |
Application |
| ऐप में कोई तृतीय-पक्ष सेवाएँ नहीं | Network → डोमेन से फ़िल्टर करें → केवल solo2.net |
Network |
| एनालिटिक्स केवल landing पर, ऐप में नहीं | Network → /* |
Network |
| आपका इतिहास आपके ब्राउज़र में रहता है | Application → IndexedDB → solo2-vault-{userId} |
Application |
| संपर्क सूची केवल स्थानीय | Application → IndexedDB → store pares |
Application |
| कोई बाहरी CDN नहीं | Network → सभी JS/CSS उसी डोमेन से लोड होते हैं। कोई cdn.jsdelivr.net |
Network |
| अधिकतम 24 घंटे के सत्र | Application → localStorage → solo2_session |
Application |
| आप देख सकते हैं कि किस प्रकार का कनेक्शन उपयोग कर रहे हैं | चैट UI में: P2P (हरा) vs Mirror/TURN (नारंगी) संकेतक हर समय दिखाई देता है | UI |
| Umami बिना कुकी के है | Application → Cookies → stats.menzuri.com |
Application |
| आपकी मास्टर कुंजी यादृच्छिक रूप से उत्पन्न होती है | Application → पंजीकरण करते समय, Solo2 24 अद्वितीय शब्द उत्पन्न करता है। ये आपके पासवर्ड से प्राप्त नहीं होते — ये 256 बिट्स की वास्तविक एन्ट्रॉपी वाली एक स्वतंत्र कुंजी हैं | Application |
यदि आप DevTools का उपयोग जानते हैं
ऐसे सत्यापन जिनके लिए तकनीकी ज्ञान आवश्यक है। यदि आप HTTP, WebRTC और बुनियादी क्रिप्टोग्राफ़ी समझते हैं, तो आप इन दावों की पुष्टि कर सकते हैं।
| दावा | कैसे सत्यापित करें |
|---|---|
| E2E एन्क्रिप्टेड संदेश | Network → /cmd |
| E2E एन्क्रिप्टेड WebRTC संकेत | Network → सिग्नल संदेश एन्क्रिप्टेड बाइनरी ब्लॉब के रूप में यात्रा करते हैं। ये offer |
| मास्टर कुंजी पासवर्ड से स्वतंत्र | Network → लॉगिन wrapped_master_key |
| मिरर में एक समान पैडिंग | Network → relay का उपयोग करते समय WebSocket/DataChannel पैकेट का आकार निश्चित होता है। Network टैब में sizes निरीक्षण करें |
| पासवर्ड सुरक्षित है (सादे पाठ में नहीं जाता) | Network → लॉगिन एक हैश भेजता है, सादा पाठ नहीं। आप सत्यापित नहीं कर सकते कि सर्वर कौन सा एल्गोरिथम (Argon2id) उपयोग करता है, लेकिन आप देख सकते हैं कि आपका मूल पासवर्ड कभी ब्राउज़र नहीं छोड़ता |
| लिंकिंग अनुरोध 3 दिन में समाप्त होते हैं | एक अनुरोध बनाएँ, उसका उत्तर न दें, 3 दिन बाद सत्यापित करें कि वह गायब हो गया। इसके लिए धैर्य और दो खाते चाहिए |
| एन्क्रिप्टेड पुश अधिसूचनाएँ | Network → Service Worker को पुश अनुरोध एन्क्रिप्टेड आते हैं (Web Push मानक)। Network टैब में एन्क्रिप्टेड पेलोड दिखाई देता है |
| सीधा P2P बनाम relay कनेक्शन | chrome://webrtc-internals/ |
यह आप सत्यापित नहीं कर सकते
हम पाखंडी होंगे यदि हम कहें कि सब कुछ सत्यापन योग्य है। इन दावों के लिए आपको हम पर भरोसा करना होगा — या हमारे कोड प्रकाशित करने का इंतज़ार करना होगा।
| दावा | सत्यापन योग्य क्यों नहीं |
|---|---|
| कुंजी रोटेशन के साथ Double Ratchet | क्रिप्टोग्राफ़िक ऑपरेशन एक WASM बाइनरी के भीतर होते हैं। उपयोगकर्ता देख सकता है कि यह लोड होता है, लेकिन पढ़ नहीं सकता कि कौन सा एल्गोरिथम चलता है |
| मास्टर कुंजी वास्तविक एन्ट्रॉपी (256 बिट्स) से उत्पन्न होती है | उत्पन्न ब्राउज़र के भीतर crypto.getRandomValues का उपयोग करती है। आप देख सकते हैं कि 24 शब्द उत्पन्न होते हैं, लेकिन F12 से एन्ट्रॉपी की गुणवत्ता या CSPRNG की सुरक्षा सत्यापित नहीं कर सकते |
| X25519 + Ed25519 + ChaCha20-Poly1305 | वही समस्या: क्रिप्टोग्राफ़िक स्टैक WASM के भीतर है। ब्राउज़र से वक्र या एल्गोरिथम की पुष्टि नहीं की जा सकती |
| सर्वर "पूरी तरह अंधा" है | आप सत्यापित कर सकते हैं कि क्लाइंट पठनीय डेटा नहीं भेजता। सर्वर कनेक्शन मेटाडेटा (IPs, timestamps) के साथ क्या करता है, उसके लिए विश्वास या सर्वर ऑडिट की आवश्यकता है |
| लिंकिंग के बाद सर्वर संबंध नहीं रखता | सर्वर के कोड और डेटाबेस तक पहुँच आवश्यक है |
| IPs रिकॉर्ड नहीं किए जाते | आप सत्यापित नहीं कर सकते कि सर्वर अपने लॉग में क्या रिकॉर्ड करता है |
| कुंजियाँ प्रत्येक संदेश के साथ घूमती हैं | WASM के भीतर होता है। आप देखते हैं कि संदेश भेजे जाते हैं, लेकिन कुंजी रोटेशन नहीं देख सकते |
| हटाया गया डेटा वास्तव में गायब हो जाता है | आप स्थानीय IndexedDB से हटा सकते हैं, लेकिन सत्यापित नहीं कर सकते कि सर्वर कॉपी नहीं रखता (हालाँकि घोषणापत्र कहता है कि उसके पास कभी नहीं थीं) |
WASM एक वास्तविक अवरोध क्यों है
Solo2 की क्रिप्टोग्राफ़िक परत WebAssembly में संकलित है — एक बाइनरी प्रारूप जिसे आपका ब्राउज़र चलाता है लेकिन आप पाठ के रूप में नहीं पढ़ सकते। इसका अर्थ है कि आप F12 से सत्यापित नहीं कर सकते कि हम कौन सा एल्गोरिथम उपयोग करते हैं।
मिनिफाइड JavaScript (जो हम इंटरफ़ेस के लिए उपयोग करते हैं) प्रतिवर्ती है: ब्राउज़र इसे पुनः स्वरूपित कर सकता है और कोड की संरचना पठनीय है। यह एक व्यावहारिक बाधा है, वास्तविक अवरोध नहीं। लेकिन Zig से संकलित WASM मौलिक रूप से भिन्न है
हम कहते हैं कि यह X25519 के साथ Double Ratchet है। आप हमारी बात पर विश्वास कर सकते हैं, या हमारे क्रिप्टो परत का स्रोत कोड प्रकाशित करने का इंतज़ार कर सकते हैं ताकि कोई भी इसकी ऑडिट कर सके। हम इस पर काम कर रहे हैं।
हम क्या कर रहे हैं ताकि आप अधिक भरोसा कर सकें
.wasm के SHA-256 हैश प्रकाशित करें
हम उत्पादन में प्रत्येक WASM फ़ाइल का क्रिप्टोग्राफ़िक हैश प्रकाशित करेंगे। इस प्रकार कोई भी ऑडिटर सत्यापित कर सकेगा कि आपके ब्राउज़र में चलने वाली बाइनरी ठीक वही है जो हमने संकलित की है।
क्रिप्टो परत को ओपन सोर्स के रूप में खोलें
क्रिप्टोग्राफ़िक परत (Zig) का स्रोत कोड सार्वजनिक रिपॉज़िटरी के रूप में प्रकाशित करना। Signal जैसा ही मॉडल: खुला क्रिप्टोग्राफ़िक प्रोटोकॉल, शेष कोड बंद। कोई भी स्रोत कोड संकलित कर सकेगा और परिणामी .wasm के हैश की तुलना उत्पादन में मौजूद हैश से कर सकेगा।
सुरक्षा अस्पष्टता पर निर्भर नहीं करती
हमारा सुरक्षा मॉडल तब भी काम करने के लिए डिज़ाइन किया गया है जब स्रोत कोड सार्वजनिक हो। यदि सुरक्षा इस बात पर निर्भर करती कि कोई कोड नहीं पढ़ सकता, तो यह सुरक्षा नहीं होती — यह आशा होती।
दस्तावेज़ीकृत सुरक्षा की 5 परतें
पासवर्ड (सर्वर तक पहुँच), 24 शब्द (वास्तविक मास्टर कुंजी), डिवाइस सीक्रेट (वॉल्ट सुरक्षा) और Double Ratchet रोटेशन। प्रत्येक परत स्वतंत्र है और हमारे पारदर्शिता घोषणापत्र में सत्यापन योग्य है।