در ۲ دقیقه بررسی کنید
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 |
| جلسات حداکثر ۲۴ ساعت | 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 ۲۴ کلمه منحصربهفرد تولید میکند. از رمز عبور شما مشتق نمیشوند — کلید مستقلی با ۲۵۶ بیت آنتروپی واقعی هستند | 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 → پیامهای سیگنال بهصورت بلوبهای باینری رمزگذاریشده منتقل میشوند. 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 → ورود یک هش ارسال میکند، نه متن ساده. نمیتوانید تأیید کنید سرور از چه الگوریتمی (Argon2id) استفاده میکند، اما میتوانید تأیید کنید رمز عبور اصلی شما هرگز از مرورگر خارج نمیشود |
| درخواستهای پیوند بعد از ۳ روز منقضی میشوند | یک درخواست بسازید، پاسخ ندهید، بعد از ۳ روز بررسی کنید که ناپدید شده. نیاز به صبر و دو حساب دارد |
| اعلانهای 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 اتفاق میافتد. کاربر میبیند که بارگذاری میشود، اما نمیتواند الگوریتم اجراشده را بخواند |
| کلید اصلی با آنتروپی واقعی (۲۵۶ بیت) تولید میشود | تولید از crypto.getRandomValues در مرورگر استفاده میکند. میبینید ۲۴ کلمه تولید میشود، اما نمیتوانید از F12 کیفیت آنتروپی یا امنیت CSPRNG را تأیید کنید |
| X25519 + Ed25519 + ChaCha20-Poly1305 | همان مشکل: پشته رمزنگاری در داخل WASM است. نمیتوان منحنیها و الگوریتمها را از مرورگر تأیید کرد |
| سرور «کاملاً کور» است | میتوانید تأیید کنید که کلاینت دادههای خوانا ارسال نمیکند. آنچه سرور با فرادادههای اتصال (IPها، timestamps) انجام میدهد نیاز به اعتماد یا بازرسی سرور دارد |
| سرور پس از پیوند روابط را نگه نمیدارد | نیاز به دسترسی به کد و پایگاه داده سرور دارد |
| IPها ثبت نمیشوند | نمیتوانید تأیید کنید سرور چه چیزی در لاگهایش ثبت میکند |
| کلیدها با هر پیام چرخش میکنند | در داخل WASM اتفاق میافتد. میبینید پیامها ارسال میشوند، اما نمیتوانید چرخش کلیدها را مشاهده کنید |
| دادههای حذفشده واقعاً ناپدید میشوند | میتوانید از IndexedDB محلی حذف کنید، اما نمیتوانید تأیید کنید سرور نسخههایی نگه نمیدارد (هرچند بیانیه میگوید هرگز آنها را نداشته) |
چرا WASM یک مانع واقعی است
لایه رمزنگاری Solo2 به WebAssembly کامپایل شده — فرمت باینری که مرورگر شما اجرا میکند اما نمیتوانید بهصورت متن بخوانید. این یعنی نمیتوانید از F12 تأیید کنید از چه الگوریتمی استفاده میکنیم.
جاوااسکریپت فشردهشده (که برای رابط کاربری استفاده میکنیم) قابل بازگشت است: مرورگر میتواند آن را بازفرمت کند و ساختار کد خوانا است. این یک مانع عملی است، نه یک سد واقعی. اما 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 است. میتوانید به حرف ما اعتماد کنید، یا صبر کنید تا کد منبع لایه رمزنگاری را منتشر کنیم تا هر کسی بتواند آن را بازرسی کند. ما روی آن کار میکنیم.
آنچه برای افزایش اعتماد شما انجام میدهیم
انتشار هشهای SHA-256 فایلهای .wasm
هش رمزنگاری هر فایل WASM در تولید را منتشر خواهیم کرد. به این ترتیب هر بازرسی میتواند تأیید کند که باینری اجراشده در مرورگر شما دقیقاً مطابق آنچه ما کامپایل کردهایم است.
باز کردن لایه رمزنگاری بهعنوان کد باز
انتشار کد منبع لایه رمزنگاری (Zig) بهعنوان مخزن عمومی. همان مدل Signal: پروتکل رمزنگاری باز، بقیه کد بسته. هر کسی میتواند کد منبع را کامپایل کند و هش فایل .wasm حاصل را با آنچه در تولید است مقایسه کند.
امنیت به ابهام وابسته نیست
مدل امنیتی ما طراحی شده تا حتی اگر کد منبع عمومی باشد کار کند. اگر امنیت به این وابسته بود که هیچکس نتواند کد را بخواند، امنیت نبود — امید بود.
۵ لایه امنیتی مستندشده
رمز عبور (دسترسی به سرور)، ۲۴ کلمه (کلید اصلی واقعی)، راز دستگاه (حفاظت صندوق) و چرخش Double Ratchet. هر لایه مستقل و قابل تأیید در بیانیه شفافیت ماست.