اصول بنیادی
Solo2 یک تونل خصوصی بین دو نفر ایجاد میکند. مستقیم. بدون واسطه.
سرور ما تنها یک کار انجام میدهد: معرفی دو انتهای تونل به یکدیگر تا همدیگر را پیدا کنند. برای این کار به حداقلهای ضروری نیاز دارد — شناسههای دو طرف — که در طول میلیثانیههای معرفی در حافظه RAM نگه میدارد. در لحظهای که دو دستگاه همدیگر را پیدا کردند، آن دادهها از حافظه پاک میشوند. هرگز، در هیچ زمانی، روی دیسک نوشته نمیشوند.
پس از اتصال، سرور ناپدید میشود. در گفتگو شرکت نمیکند. آن را نمیبیند. آن را ذخیره نمیکند. نمیداند چقدر طول میکشد، یا هر چند وقت یکبار صحبت میکنید، یا درباره چه چیزی صحبت میکنید.
ما از شما نمیخواهیم به ما اعتماد کنید. از شما میخواهیم خودتان بررسی کنید:
تست ۱ — سرور اضافی است.
به محض اینکه تونل مستقیم برقرار شد، سرور ما دیگر دخالتی ندارد. اگر در آن لحظه سرور قطع شود، گفتگوی شما بدون وقفه ادامه خواهد یافت. تا زمانی که دستگاههای شما روشن و به اینترنت متصل باشند، تونل متعلق به شماست. ما دیگر آنجا نیستیم.
تست ۲ — ارسال یک فایل ۱۰ gigabyte.
نه تنها سریع خواهد بود — بلکه برای سرور ما اصلاً فرقی نمیکند. امتحان کنید و ۲۴ ساعت مداوم فایلهای ۱۰ گیگی یا بیشتر ارسال کنید. سرور ما اصلاً متوجه نخواهد شد، چون دخالتی نمیکند. این کار را با هر سرویس پیامرسان دیگری امتحان کنید.
تست ۳ — صحبت درباره تلسکوپ.
یک بعدازظهر را با کسی درباره تلسکوپ، یا چوب ماهیگیری، یا هر چیزی که هرگز در اینترنت جستجو نکردهاید صحبت کنید. چند روز صبر کنید. تبلیغات تلسکوپ در هیچ کجا ظاهر نخواهد شد. کلمات شما از تونل شما خارج نشدند.
دادههای شما، مسئولیت شما.
این بزرگترین فضیلت ما و صادقانه بگوییم، چیزی است که عادت کردن به آن برای شما سختترین خواهد بود. پیامها، فایلها و مخاطبین شما در یک گاوصندوق رمزگذاری شده در داخل دستگاه شما زندگی میکنند. هیچ کپیای در هیچ سروری وجود ندارد. آنها با ۲۴ کلمه محافظت میشوند — همان سطح امنیتی بیتکوین. اما آنها فقط در یک جا هستند, مگر اینکه Solo2 را در دستگاه دوم نصب کنید — هر دو گاوصندوق هنگام اتصال همزمان به طور خودکار همگامسازی میشوند. همچنین میتوانید یک نسخه پشتیبان رمزگذاری شده — یا یک نسخه قابل خواندن با قالبهای استاندارد برای بردن دادههای خود به هر کجا که بخواهید — صادر کنید. اینجا ابری وجود ندارد که اگر تنها دستگاه خود را گم کردید شما را نجات دهد. دادههای شما مال شماست, با تمام عواقب آن.
با جزئیات
سرور Solo2 کاملاً کور است. نمیداند با چه کسی صحبت میکنید، چه میگویید، یا چه فایلهایی را به اشتراک میگذارید. حتی سیگنالهای فنی که اتصال بین دستگاهها را برقرار میکنند برای سرور قابل خواندن نیستند — آنها به صورت رمزگذاری شده سرتاسری منتقل میشوند.
پیامهای شما مستقیماً بین دستگاهها حرکت میکنند، با رمزگذاری سرتاسری. تاریخچه شما به صورت رمزگذاری شده در مرورگر شما زندگی میکند، هرگز در سرور ما نیست.
کلیدهای رمزگذاری با هر پیام به طور خودکار میچرخند. هر پیام با یک کلید منحصربهفرد رمزگذاری میشود که بلافاصله پس از آن دور انداخته میشود. این در اصطلاح فنی به عنوان Double Ratchet شناخته میشود و به این معنی است که حتی اگر کسی یک کلید را به دست آورد، فقط میتواند یک پیام واحد را بخواند — نه کل گفتگو را. علاوه بر این، امنیت پس از هر نوبت ارتباط به طور خودکار بازیابی میشود: یک کلید لو رفته به محض تبادل پیام بعدی بیفایده میشود.
وقتی اتصال مستقیم بین دستگاهها امکانپذیر نباشد (مثلاً به دلیل محدودیتهای شبکه)، از یک سرور آینه (از نظر فنی به نام TURN) استفاده میشود: دادهها از یک دستگاه به دستگاه دیگر منعکس میشوند، اما آینه از آنچه منعکس میکند آگاه نیست — همهچیز به صورت رمزگذاری شده سرتاسری حرکت میکند و سرور نمیتواند آن را بخواند. علاوه بر این، تمامی بستهها به اندازه یکنواخت پر میشوند (padding) تا از استنباط اطلاعات توسط ناظر از طریق تحلیل اندازه یا فرکانس ترافیک جلوگیری شود.
آپ همیشه میتوانید در اپلیکیشن ببینید از چه نوع اتصالی استفاده میکنید — مستقیم یا از طریق سرور آینه — و متناسب با آن عمل کنید.
کلید اصلی شما به طور تصادفی با ۲۵۶ بیت انتروپی واقعی تولید میشود — همان سطح بیتکوین. هنگام ایجاد حساب، Solo2 یک کلید منحصربهفرد تولید میکند که به صورت ۲۴ کلمه نمایش داده میشود. رمز عبور شما از دسترسی به سرویس محافظت میکند. ۲۴ کلمه شما کلید دادههای شماست. اینها دو کلید متفاوت برای دو درب متفاوت هستند.
حتی اگر سرور ما ناپدید شود، دادههای شما زنده میمانند. با ۲۴ کلمه خود میتوانید بدون اتصال به سرور به گاوصندوق محلی خود دسترسی داشته باشید. دادههای شما مال شماست — واقعاً.
۱. دادههایی که در سرور داریم
۱.۱ حساب کاربری شما
اینها تمامی فیلدهایی هستند که در پرونده شما وجود دارند. هیچ فیلد دیگری نیست.
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| نام کاربری | برای اینکه بتوانید وارد شوید | متن ساده (بر اساس طراحی عمومی است) | تا زمانی که حساب خود را حذف کنید |
| رمز عبور | احراز هویت | محافظت شده با Argon2id (توصیه شده توسط OWASP، مقاوم در برابر حملات با سختافزار تخصصی). ما هرگز رمز عبور واقعی شما را ذخیره نمیکنیم | تا زمانی که حساب خود را حذف کنید |
| کلید اصلی بستهبندی شده | برای اینکه بتوانید با ورود با رمز عبور خود گاوصندوق خود را باز کنید، بدون اینکه هر بار ۲۴ کلمه را تایپ کنید. اگر کلمات خود را گم کنید، این بستهبندی بازیابی شماست | بلوک مات (۸۰ بایت) رمزگذاری شده با کلیدی مشتق از رمز عبور شما — سرور نمیتواند آن را باز کند | تا زمانی که حساب خود را حذف کنید |
| اثر بازیابی | برای تأیید اینکه ۲۴ کلمه شما درست هستند هنگامی که دسترسی به حساب خود را بازیابی میکنید — بدون اینکه سرور هرگز آنها را ببیند | اثر برگشتناپذیر (SHA-256، ۶۴ کاراکتر). چیزی درباره کلمات یا کلید شما فاش نمیکند | تا زمانی که حساب خود را حذف کنید |
| نام عمومی | برای اینکه مخاطبین شما، شما را بشناسند | متن ساده (خودتان انتخاب میکنید) | تا زمانی که آن را تغییر دهید یا حساب خود را حذف کنید |
| کد پیوند | آدرس شما در Solo2 — مانند یک شماره تلفن. چیزی است که با کسی به اشتراک میگذارید تا شما را پیدا کند و درخواست اتصال بفرستد | متن ساده، منحصربهفرد (~۱۰ کاراکتر) | تا زمانی که حساب خود را حذف کنید |
| موجودی اقتصادی | پولی که به حساب خود اضافه کردهاید | عدد (بر حسب سنت) | تا زمانی که حساب خود را حذف کنید |
| موجودی پاداش | پاداشهای دریافتی (پروموشنها). قبل از موجودی اقتصادی مصرف میشود | عدد (بر حسب سنت) | تا زمانی که حساب خود را حذف کنید |
| نوع حساب | طرح شما: استاندارد، بنیانگذار یا پلاتینیوم (ادمین فقط برای حسابهای مدیریتی وجود دارد) | ۱ بایت (عدد صحیح) | تا زمانی که تغییر کند یا حساب خود را حذف کنید |
| وضعیت حساب | وضعیت حساب شما: فعال، در دوره آزمایشی، متوقفشده توسط شما، یا در دوره مهلت. اگر حساب خود را متوقف کنید، این فیلد همان چیزی است که آن را به یاد میسپارد | ۱ بایت (عدد صحیح) | تا زمانی که تغییر کند یا حساب خود را حذف کنید |
| نشان قطع سرویس | ذخیره میکند که سرویس چه زمانی قطع شده است: یک مدیر آن را هنگام تعلیق یک حساب تنظیم میکند، یا سیستم وقتی موجودی شما به صفر میرسد (آغاز دوره مهلت است). در یک حساب بهروز برابر ۰ است | برچسب زمانی عددی (۰ = بدون قطع) | تا زمانی که حساب دوباره فعال شود — شارژ یا رفع تعلیق — یا حذف شود |
| تاریخ و زمان ثبتنام | چه زمانی حساب خود را ایجاد کردید | تاریخ و زمان کامل (timestamp) | دائمی |
| شناسههای داخلی | سیستم به دو کد داخلی نیاز دارد تا بدون استفاده از نام کاربری به شما اشاره کند. یکی ID اصلی شما و دیگری یک کد مرجع است. هر دو مات هستند — در خارج از سیستم هیچ معنایی ندارند | دو کد تصادفی ۲۴ کاراکتری (مانند: u_7kX9mP2...). شامل نام، تاریخ یا هیچ داده شخصی نیستند — کاملاً تصادفی هستند | تا زمانی که حساب خود را حذف کنید |
| نسخه امنیت | کدام نسخه از الگوریتم محافظت از رمز عبور استفاده شده است | شماره داخلی | تا زمانی که حساب خود را حذف کنید |
| نشانگرهای وضعیت | فلگهای فنی (اگر موجودی شما تغییر کرده باشد، اگر حالت امنیت حداکثری فعال باشد) | ۱ بایت — معادل فقط یک حرف. هیچچیز دیگری جا نمیشود | تا زمانی که حساب خود را حذف کنید |
برای اینکه تصوری از حجم داشته باشید: کل پرونده شما حدود ۴۰۰ بایت اشغال میکند — کمتر از این پاراگراف. نامهای شما (در صورت تمایل ساختگی)، یک اثر از رمز عبور شما (اندازه ثابت، ۱۲۸ کاراکتر)، کلید اصلی رمزگذاری شده شما (یک بلوک مات ۸۰ بایتی که ما نمیتوانیم بخوانیم)، یک اثر بازیابی (۶۴ کاراکتر که چیزی فاش نمیکنند)، دو عدد برای موجودی، چند تاریخ و چهار بایت تنظیمات. این تمام چیزی است که شما در سرور ما وجود دارید.
۱.۲ نشستهای فعال
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| هش توکن نشست | فعال نگه داشتن لاگین شما | اثر برگشتناپذیر (SHA-256). توکن اصلی هرگز در سرور ذخیره نمیشود | ۲۴ ساعت — پس از آن کاملاً حذف میشود |
| تاریخ ایجاد | برای اینکه سیستم بداند چه زمانی ایجاد شده است — مفید برای پاکسازی خودکار | Timestamp عددی (ثانیه unix) | با نشست (session) حذف میشود |
| تاریخ انقضا | نشست ۲۴ ساعت پس از ایجاد منقضی میشود. با استفاده تمدید نمیشود — تاریخ انقضای ثابتی دارد | Timestamp عددی (ایجاد + ۲۴ ساعت) | ۲۴ ساعت — پس از آن کاملاً حذف میشود |
هنگام خروج از حساب یا پس از انقضا, ردیف به طور کامل از پایگاه داده حذف میشود. هیچ اثری از وجود نشست باقی نمیماند.
۱.۳ درخواستهای پیوند
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| ID درخواستکننده | دانستن اینکه چه کسی درخواست را ارسال کرده است | کد داخلی ۲۴ کاراکتری تصادفی | ۳ روز — پس از آن به طور خودکار حذف میشود |
| ID گیرنده | دانستن اینکه برای چه کسی فرستاده شده است | کد داخلی ۲۴ کاراکتری تصادفی | ۳ روز — پس از آن به طور خودکار حذف میشود |
| وضعیت | در جریان / پذیرفته شده / رد شده | ۱ بایت (عدد صحیح: 0=در جریان, 1=پذیرفته شده, 2=رد شده) | هنگام نهایی شدن یا انقضا حذف میشود (۳ روز) |
| تاریخ ایجاد | دانستن زمان ایجاد درخواست برای حذف خودکار آن | Timestamp عددی (ثانیه unix) — ۴ تا ۸ بایت | ۳ روز — پس از آن به طور خودکار حذف میشود |
یادداشت مهم: تا زمانی که درخواست در جریان است (حداکثر ۳ روز), سرور میداند که کاربر A درخواست اتصال به کاربر B را داده است. پس از گذشت ۳ روز، درخواست به طور خودکار حذف میشود. به محض پذیرش پیوند، سرور آن رابطه را ذخیره نمیکند. لیست مخاطبین شما فقط در مرورگر شما و به صورت رمزگذاری شده وجود دارد.
۱.۴ کد پیوند
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| کد پیوند (alias) | شناسه کوتاه برای اینکه سایر کاربران شما را پیدا کنند و درخواست ایجاد تونل بدهند | کد تصادفی ۸ کاراکتری مشتق شده از ID داخلی شما | دائمی (شناسه اتصال عمومی شماست) |
۱.۵ اشتراکهای push (نوتیفیکیشنها)
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| آدرس نوتیفیکیشن | ارسال نوتیفیکیشن به مرورگر شما | URL عرضهکننده مرورگر (گوگل, موزیلا یا اپل) | تا زمانی که نوتیفیکیشنها را غیرفعال کنید یا حساب خود را حذف کنید |
| کلیدهای رمزگذاری push | رمزگذاری نوتیفیکیشن تا فقط مرورگر شما آن را بخواند | استاندارد Web Push | همانند آدرس |
۱.۶ بازخورد (پشتیبانی)
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| پیام شما | برای اینکه بتوانیم به شما کمک کنیم | متن ساده | تا زمانی که آن را پردازش کنیم |
| ID کاربری شما | دانستن اینکه چه کسی نیاز به کمک دارد | ID داخلی | همانند پیام |
۱.۷ سیگنالدهی اتصال (موقت)
برای اینکه دو دستگاه بتوانند مستقیماً متصل شوند, باید سیگنالهای فنی برقراری اتصال (پروتکل WebRTC) را تبادل کنند. تنها زمانی که سرور ما کد کاربری شما و مخاطبتان را در حافظه نگه میدارد, در طول میلیثانیههایی است که این درخواست اتصال را پردازش میکند. لحظهای طول میکشد, فقط در حافظه RAM است و هرگز روی دیسک نوشته نمیشود. خود سیگنالها رمزگذاری شده سرتاسری هستند
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| سیگنالهای اتصال | برقراری اتصال مستقیم بین دستگاهها | رمزگذاری شده سرتاسری با کلید عمومی گیرنده. سرور نمیتواند آنها را بخواند یا تغییر دهد | ۶۰ ثانیه |
۱.۸ سرور آینه (TURN relay)
اگر اتصال مستقیم امکانپذیر نباشد, از سرور آینه استفاده میشود: دادهها مانند نور از آینه عبور میکنند — از یک طرف به طرف دیگر منعکس میشوند, اما آینه از آنچه منعکس میکند آگاه نیست. تمامی بستهها به اندازه یکنواخت پر میشوند تا ناظر نتواند پیامی را از یک سیگنال اتصال ساده تشخیص دهد.
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| اعتبارنامه دسترسی | تأیید اعتبار شما در سرور آینه | هویت شما به اثر برگشتناپذیر تبدیل میشود — سرور آینه نمیداند شما کی هستید | ۲۴ ساعت |
۱.۹ پرداختهای پردازش شده
پرداخت تنها نقطهای است که اصطکاک واقعی با گمنامی وجود دارد. بیایید در این باره صادق باشیم.
هنگام ثبتنام در Solo2, شما یک نام کاربری (میتواند ساختگی باشد), یک رمز عبور و یک نام عمومی (آن هم در صورت تمایل ساختگی) انتخاب میکنید. هیچ دادهای شما را به یک شخص واقعی متصل نمیکند. اما اگر با کارت پرداخت کنید, نهاد مالی شما میداند شما کی هستید.
آنچه ما از درگاه پرداخت دریافت میکنیم فقط یک تأییدیه و یک مبلغ است. ما نام دارنده, شماره کارت, کد ملی یا هیچ داده شخصی پرداختکننده را دریافت یا ذخیره نمیکنیم. این مبالغ ناچیز هستند — از نظر قانونی معادل رسید نقدی هستند, مانند خرید یک آبنبات چوبی در دکه: دکهدار کد ملی خریدار را ثبت نمیکند.
علاوه بر این، سابقه پرداخت عمداً از هم جدا شده است از حساب کاربری شما. هیچ فیلدی در پایگاه داده ما وجود ندارد که یک رسید پرداخت را به یک حساب خاص مرتبط کند.
| داده | چرا | حفاظت | مدت زمان |
|---|---|---|---|
| سوابق پرداخت | تعهدات حسابداری و مالیاتی | تأییدیه + مبلغ. بدون دادههای شخصی پرداختکننده. بدون اتصال به هیچ حساب کاربری | دائمی (تعهد قانونی) |
در مورد بدترین سناریوی ممکن: حتی با حکم قضایی، زنجیره ردیابی به این صورت خواهد بود: کارت شما ← بانک شما ← درگاه پرداخت ← رسید پرداخت ما. اما رسید ما حاوی هیچ شناسه کاربری نیست. این یک سهلانگاری نیست: این یک تصمیم طراحی است. هیچ فیلد یا ایندکسی در پایگاه داده ما وجود ندارد که پرداختی را به حسابی مرتبط کند. تنها راه نظری یک همبستگی زمانی خواهد بود — اگر شما تنها پرداخت در یک دوره زمانی مشخص باشید — اما حتی در آن مورد شدید، حساب حاوی اطلاعاتی نیست که شخص واقعی را شناسایی کند: نام کاربری و نام عمومی میتوانند کاملاً ساختگی باشند.
تمامی درآمدهای ما قانونی بوده و از طریق درگاه پرداخت حسابرسی میشوند. ما مالیاتهای مربوطه را پرداخت میکنیم. اما گمنامی مشتری از جانب ما کامل است.
۲. دادههایی که در سرور نداریم
این چیزی است که ما را تعریف میکند. سرور Solo2 ذخیره نمیکند و به آن دسترسی ندارد:
- پیامهای شما — مستقیماً بین دستگاهها منتقل میشوند، به صورت سرتاسری رمزگذاری شدهاند. سرور هرگز آنها را نمیبیند.
- فایلهای شما — مانند پیامها: مستقیم و رمزگذاری شده.
- لیست مخاطبین شما — فقط در مرورگر شما وجود دارد، رمزگذاری شده در La Bóveda.
- تاریخچه چت شما — فقط در مرورگر شما، رمزگذاری شده.
- موقعیت مکانی شما — GeoSellos در دستگاه شما محاسبه شده و مستقیماً به گیرنده ارسال میشوند. سرور هرگز آنها را پردازش نمیکند.
- تحلیلهای استفاده — برنامه Solo2 هیچ سیستم تحلیلی، کوکی ردیابی، یا اسکریپت شخص ثالثی ندارد.
- دادههای دستگاه — ما مدل، وضوح، سیستم عامل، یا هیچ ویژگی دیگری از دستگاه شما را جمعآوری نمیکنیم.
- فرادادههای ارتباطی — ما نمیدانیم با چه کسی صحبت میکنید، چه زمانی، با چه فرکانسی، یا برای چه مدت.
درباره آدرس IP شما
آدرس IP شما در هیچ پایگاه دادهای ذخیره نمیشود. در لاگهای فنی سرور, آدرس IP به یک اثر برگشتناپذیر (هش) تبدیل میشود — که برای شناسایی الگوهای سوءاستفاده مفید است, اما بازگرداندن آن به IP اصلی غیرممکن است. این لاگها هر ۷ روز یکبار به طور خودکار پاک میشوند. سیگنالهای اتصال که ممکن است حاوی IP شما باشند, رمزگذاری شده سرتاسری هستند — سرور نمیتواند آنها را بخواند.
۳. دادههای موجود در مرورگر شما (گاوصندوق)
تمام موارد زیر منحصراً در مرورگر شما زندگی میکند، رمزگذاری شده با AES-256-GCM (یک استاندارد رمزگذاری با درجه نظامی که توسط دولتها و نهادهای مالی استفاده میشود). کلید از رمز عبور شما توسط Argon2id (قویترین الگوریتم موجود در برابر حملات با سختافزار تخصصی) تولید میشود، و این فرآیند به طور کامل در مرورگر شما اتفاق میافتد. رمز عبور شما هرگز به سرور ارسال نمیشود.
دادههای شما در حالت استراحت رمزگذاری شدهاند — حتی اگر کسی به فضای ذخیرهسازی مرورگر شما دسترسی پیدا کند, فقط بلوکهای رمزگذاری شدهای را میبیند که بدون رمز عبور شما قابل خواندن نیستند.
وقتی یک نسخه پشتیبان صادر میکنید, با همان محافظت (Argon2id + AES-256-GCM) رمزگذاری میشود. فقط کسی که رمز عبور شما را بداند میتواند آن را رمزگشایی کند. تنها استثنا عمدی است: نسخه قابل خواندن — یک فایل ZIP استاندارد که برای آن طراحی شده تا بتوانید دادههای خود را بدون برنامه بخوانید — بدون رمزگذاری ساخته میشود؛ برنامه این موضوع را به شما هشدار میدهد و پیش از تولید آن رمز عبورتان را میخواهد.
| داده | رمزگذاری | کنترل |
|---|---|---|
| پیامها | AES-256-GCM | شما تصمیم میگیرید چه زمانی آنها را حذف کنید |
| فایلها | AES-256-GCM | شما تصمیم میگیرید چه زمانی آنها را حذف کنید |
| مخاطبین (جفتها) | AES-256-GCM | شما تصمیم میگیرید با چه کسی پیوند برقرار کنید |
| وضعیت تأیید | AES-256-GCM | شما هویت هر مخاطب را تأیید میکنید |
| شاخص جستجو | رمزگذاری شده با توکنهای برگشتناپذیر (HMAC) | از پیامهای شما بازسازی میشود |
| وضعیت تحویل | AES-256-GCM | کدام پیامها تحویل داده شدهاند |
| پیامهای معلق | AES-256-GCM | صف ارسال در صورت نبود اتصال |
ذخیرهسازی موقت مرورگر
| داده | نوع | مدت زمان | چرا |
|---|---|---|---|
| نشست کاربر | حافظه محلی مرورگر (localStorage) | تا زمان خروج از حساب | فعال نگه داشتن لاگین شما |
| نسخه اپلیکیشن | حافظه محلی مرورگر (localStorage) | دائمی | شناسایی بهروزرسانیها |
| تم انتخابی | حافظه محلی مرورگر (localStorage) | دائمی | به یاد داشتن تم بصری شما |
| زبان انتخابی | حافظه محلی مرورگر (localStorage) | دائمی | به یاد داشتن زبان شما |
| رمز عبور (حالت امنیت حداکثری) | حافظه تب (sessionStorage) | با بستن تب ناپدید میشود | راهاندازی مجدد رمزگذاری در صورت رفرش صفحه |
نکتهای درباره امنیت در مرورگر
Solo2 در داخل مرورگر وب شما کار میکند. دادههای رمزگذاری شده شما در حالت استراحت محافظت میشوند, اما زمانی که اپلیکیشن باز است و پیامهای رمزگشایی شده را روی صفحه نشان میدهد, امنیت به محیط شما نیز بستگی دارد:
- افزونههای مرورگر : یک برنامه افزودنی مخرب با دسترسی به صفحاتی که بازدید میکنید، در تئوری میتواند آنچه را که روی صفحه نمایش داده میشود بخواند. توصیه می کنیم تا حد امکان از برنامه های افزودنی کمتر و فقط از منابع قابل اعتماد استفاده کنید.
- مرورگر تمیز: یک مرورگر به روز شده بدون افزونه های غیر ضروری بهترین متحد شماست.
- Native App: در آینده، یک برنامه دسکتاپ (ویندوز، مک، لینوکس) ارائه خواهیم کرد که سطح بیشتری از انزوا را با عدم اتکا به محیط مرورگر فراهم می کند.
۴. اتصالات شبکه
اپلیکیشن Solo2
| دامنه | علت | دادههای ارسالی |
|---|---|---|
| solo2.net | API اپلیکیشن | احراز هویت, سیگنالدهی, حضور |
| pay.menzuri.com | درگاه پرداخت | فقط در صورت انجام پرداخت |
دامنه دیگری وجود ندارد. بدون اسکریپت خارجی. CDN ردیابی وجود ندارد. خط مشی امنیت محتوای سرور (CSP) از نظر فنی این را اعمال می کند: هر تلاشی برای بارگیری منابع از دامنه های دیگر توسط مرورگر مسدود می شود.
حتی برای کشف آدرس IP عمومی دستگاه شما (ضروری برای برقراری اتصال مستقیم بین کاربران), ما از سرور خودمان (از نظر فنی به نام STUN) استفاده میکنیم. ما به خدمات خارجی واگذار نمیکنیم. ما خودمان آن را مدیریت میکنیم.
صفحه معرفی
صفحه معرفی (solo2.net) — که از اپلیکیشن مستقل است — از یک سیستم اندازهگیری ناشناس که در سرورهای خودمان در آلمان میزبانی شده, استفاده میکند:
| دامنه | علت | دادههای ارسالی |
|---|---|---|
| stats.menzuri.com | اندازهگیری ناشناس بازدیدها | صفحات بازدید شده (بدون کوکی, بدون IP, بدون هویت) |
این سیستم کوکی نصب نمیکند, آدرس IP شما را ثبت نمیکند, شما را شناسایی نمیکند, بین بازدیدها شما را دنبال نمیکند و دادهها را با اشخاص ثالث به اشتراک نمیگذارد. اپلیکیشن Solo2 این سیستم یا هر نوع تحلیلگر دیگری را ندارد.
۵. حذف دادههای شما
دو عمل متفاوت وجود دارد و مهم است که تفاوت آنها را بدانید:
حذف دادههای محلی
از بخش تنظیمات اپلیکیشن شما دو گزینه برای حذف محلی دارید:
- پاک کردن داده های من — فقط داده های خود را حذف کنید (هویت، طاق، جلسه) بدون تأثیرگذاری بر سایر کاربرانی که از همان مرورگر استفاده می کنند.
- بازنشانی اضطراری - کاملاً همه چیز را پاک کنید: داده های همه کاربران، Service Worker، حافظه پنهان و کلیدهای رمزنگاری. نیاز به تایید مضاعف دارد.
در هر دو مورد، حساب شما در سرور همچنان وجود دارد. می توانید دوباره وارد شوید، اما داده های محلی شما به طور غیرقابل برگشتی از بین می رود. انجام این کار یک هویت رمزنگاری کاملاً جدید ایجاد می کند: هر کسی که کلید عمومی قبلی شما را داشته باشد دیگر نمی تواند چیزی را برای شما رمزگذاری کند. اگر مخاطب قبلی بخواهد دوباره وصل شود، باید از شما بخواهد که دوباره پیوند دهید، و شما تصمیم می گیرید که آن را بپذیرید یا نه.
بازیابی خودکار بین دستگاهها
اگر دادههای خود را در یک دستگاه از دست بدهید و دستگاه دیگری متصل داشته باشید, Solo2 وضعیت را تشخیص داده و پیشنهاد بازیابی خودکار هویت و گاوصندوق شما را میدهد. بازیابی به صورت رمزگذاری شده (Argon2id) از طریق اتصال مستقیم بین دستگاههای شما منتقل میشود — بدون عبور از سرور.
حذف حساب شما از سرور
- تمام ردیفهای در پایگاه داده مرتبط با شناسه شما حذف میشوند: حساب، جلسات، درخواستها، دعوتنامهها، اشتراکهای فشاری، بازخورد.
- حذف اتمی است (همه یا هیچ): یا همه چیز حذف می شود یا هیچ چیز حذف نمی شود.
- سوابق پرداخت به طور عمدی از هویت شما جدا شده است - آنها طبق تعهدات قانونی وجود دارند، اما نمی توان پرداخت را برای شما ردیابی کرد.
- شناسهها در لاگهای سرور آثار برگشتناپذیر هستند: لاگها پس از حذف حساب قابل اتصال به آن نیستند.
- گاوصندوق موجودใน مرورگر شما با این عمل به طور خودکار حذف نمیشود (ما به مرورگر شما دسترسی نداریم). برای حذف آن, ابتدا حذف هستهای را اجرا کنید یا دادههای سایت را در مرورگر خود پاک کنید.
۵ب. کلید اصلی و ۲۴ کلمه شما
هنگام ایجاد حساب در Solo2, یک کلید اصلی با ۲۵۶ بیت انتروپی واقعی (همانند بیتکوین) تولید میشود. این کلید با ۲۴ کلمه که فقط شما میدانید نمایش داده میشود. رمز عبور شما این کلید را بستهبندی میکند تا به صورت رمزگذاری شده در سرور ذخیره شود — سرور نمیتواند آن را بخواند.
این به این معنی است که شما دو کلید مستقل دارید
الگوریتمهای دقیق (قابل تأیید)
تولید: CSPRNG از سیستم عامل (crypto.getRandomValues، 256 بیت). رمزگذاری کلید اصلی: Argon2id (OWASP) برای استخراج کلید بسته بندی + AES-256-GCM (رمزگذاری تأیید شده) برای محافظت از آن. هویت: Ed25519 (امضا) + X25519 (تبادل). پیام ها: Double Ratchet با yChaCha20-Poly1305 . با بستن برگه مرورگر، تمام داده های حساس از حافظه ناپدید می شوند.
چگونه از کلید اصلی شما محافظت میشود
| لایه | چیست | کجا زندگی میکند |
|---|---|---|
| رمز عبور | دسترسی به سرور. بستهبندی کلید اصلی شما | در حافظه شما + هش در سرور |
| راز دستگاه | عامل دوم نامرئی, تولید شده به طور خودکار هنگام نصب | در دستگاه شما (غیر قابل استخراج) |
| کلید اصلی (۲۴ کلمه) | ۲۵۶ بیت انتروپی واقعی, تولید شده به صورت تصادفی. سطح بیتکوین (BIP39) | روی کاغذی که نگه میدارید + بستهبندی شده در سرور |
| چرخش کلید | هر پیام از کلید منحصر به فردی استفاده میکند که بعداً از بین میرود (Double Ratchet) | خودکار, شفاف |
اگر رمز عبور خود را تغییر دهید
تغییر رمز عبور فوری است. فقط کلید اصلی شما دوباره با رمز عبور جدید بستهبندی میشود — هویت شما تغییر نمیکند, گاوصندوق دوباره رمزگذاری نمیشود, مخاطبین شما تحت تأثیر قرار نمیگیرند و ۲۴ کلمه شما ثابت میمانند. این یک عملیات در میلیثانیه است.
بازیابی
اگر رمز عبور خود را گم کنید, میتوانید با ۲۴ کلمه خود — بدون نیاز به سرور — به گاوصندوق دسترسی پیدا کنید. اگر ۲۴ کلمه خود را گم کنید, میتوانید با رمز عبور وارد شوید و سرور کلید بستهبندی شده شما را باز میگرداند. اگر هر دو را گم کنید, دادههای شما قابل بازیابی نیستند. همانند بیتکوین, این امنیت بر اساس طراحی است.
۶. اگر کسی بدون اجازه به سرور دسترسی پیدا کند چه میشود
اگر یک مهاجم دسترسی کامل به سرور Solo2 پیدا کند, به دست میآورد:
- نام کاربری و نام عمومی
- کد پیوند
- کلید عمومی (بدون کلید خصوصی که در مرورگر شماست بیفایده است)
- اثر رمز عبور (بدون یک حمله بروتفورس فوقالعاده سنگین و گران به لطف Argon2id بیفایده است)
- اثر توکن نشست (بدون توکن اصلی بیفایده است)
- درخواستهای پیوند در جریان (ID داخلی, انقضا در ۳ روز)
- نوع حساب, موجودی و تاریخ ثبتنام
- سوابق پرداخت (بدون امکان اتصال آنها به یک کاربر خاص)
آنچه به دست نخواهد آورد:
- هیچ پیامی (هرگز در سرور نبودهاند)
- هیچ فایلی (هرگز در سرور نبودهاند)
- هیچ لیست مخاطبینی (هرگز در سرور نبودهاند)
- هیچ تاریخچه چتی (هرگز در سرور نبودهاند)
- هیچ کلید رمزگذاری خصوصی (در مرورگر شما زندگی میکنند)
- هیچ آدرس IP (ثبت نمیشوند)
۷. تعهد ما
این مانیفست با هر تغییر مرتبط در مدیریت دادهها بهروزرسانی خواهد شد. اگر فیلد جدیدی به پایگاه داده اضافه کنیم، در اینجا ظاهر میشود. اگر چیزی را حذف کنیم، نیز همینطور.
نسخه معتبر همیشه همین صفحه است.