بلاگ · ۵ آوریل ۲۰۲۶

Solo2 چطور بدون اینکه سرور چیزی بداند متصل می‌شود

نقطه دیدار فقط یک کار انجام می‌دهد: کمک می‌کند تا دو دستگاه یکدیگر را پیدا کنند. بعد از آن ناپدید می‌شود.

آنچه نقطه دیدار ما درباره شما می‌داند

بیایید با ابتدایی‌ترین چیزها شروع کنیم. نقطه دیدار ما دقیقاً سه چیز را درباره شما می‌داند: نام کاربری شما، شناسه منحصر به فرد شما و هشی از رمز عبور شما. هش یک تبدیل ریاضی برگشت‌ناپذیر است — می‌تواند بدون دانستن رمز عبور شما، صحت آن را بررسی کند. رمز عبور واقعی شما فقط در سر شما و در دستگاه شما وجود دارد.

هیچ چیز بیشتر. ما ذخیره نمی‌کنیم با چه کسی صحبت می‌کنی یا چه می‌گویی. تونل‌های تو و نام مخاطبانت فقط در دستگاه خودت به صورت رمزگذاری‌شده وجود دارند و نقطه تلاقی ما حتی اگر بخواهد هم نمی‌تواند آن‌ها را باز کند.

صندوقچه‌ها

دیواری را با صندوقچه‌های شماره‌گذاری شده تصور کنید، مانند صندوقچه‌های یک اداره پست قدیمی. وقتی اپلیکیشن شما می‌خواهد به کسی متصل شود، یادداشتی در یک صندوقچه می‌گذارد که می‌گوید "می‌خواهم با کاربر X صحبت کنم". هیچ‌چیز دیگر. نمی‌گوید شما کی هستید. نمی‌گوید درباره چه می‌خواهید صحبت کنید. فقط یک یادداشت در یک صندوقچه.

هر از گاهی، همه برنامه‌های متصل به Solo2 صندوق‌ها را بررسی می‌کنند تا ببینند آیا کسی یادداشتی برایشان گذاشته است یا خیر. مثل این است که به اداره پست سر بزنی و بپرسی: «آیا چیزی برای من هست؟». اگر مخاطب تو یادداشتت را پیدا کند، آدرس IP را که گذاشته‌ای از نقطه تلاقی می‌خواهد. نقطه تلاقی آن را می‌دهد. آدرس چند ثانیه در حافظه سرور باقی می‌ماند و هرگز روی دیسک نوشته نمی‌شود.

از آنجا به بعد، نقطه دیدار ناپدید می‌شود

وقتی دو دستگاه آدرس یکدیگر را شناختند، مستقیماً با هم صحبت می‌کنند. نقطه دیدار دیگر مشارکتی ندارد. اگر اتصال مستقیم امکان‌پذیر نباشد، پیام‌ها به صورت رمزگذاری‌شده از آینه ما عبور می‌کنند که هیچ چیزی را ذخیره نمی‌کند. آن‌ها را ذخیره نمی‌کند. نمی‌داند آیا اتصال برقرار شده است یا نه. نمی‌داند چقدر طول می‌کشد. نمی‌داند چند پیام رد و بدل می‌شود یا اندازه آن‌ها چقدر است.

تا حدی که اگر نقطه دیدار در آن لحظه خاموش شود، در یک اتصال مستقیم دو کاربر دقیقاً به همان صورت به صحبت ادامه می‌دهند. گفتگو به آن وابسته نیست. فقط برای اینکه دو دستگاه یکدیگر را پیدا کنند به آن وابسته بود. به محض اتصال، بی‌اهمیت می‌شود.

گفتگو حتی قبل از شروع امن است

وقتی دو نفر یک تونل در Solo2 ایجاد می‌کنند، دستگاه‌های آن‌ها کلیدهای رمزنگاری عمومی را مبادله می‌کنند. از آن لحظه به بعد، هر پیام با کلید گیرنده رمزگذاری می‌شود — و فقط گیرنده می‌تواند آن را رمزگشایی کند. این اتفاق قبل از شروع هر گفتگویی می‌افتد. کلیدها از لحظه ایجاد تونل آماده هستند.

به همین دلیل، وقتی دو دستگاه مستقیماً به هم متصل می‌شوند، ارتباط از قبل محافظت شده است. آن‌ها نیازی به مذاکره برای هیچ‌چیزی ندارند. نیازی به اجازه گرفتن از نقطه دیدار ندارند. کلیدها مال خودشان است، در دستگاه‌هایشان است و هیچ‌کس دیگری آن‌ها را ندارد.

معنای این در عمل چیست

اینکه گفتگوهای تو در هیچ سروری ذخیره نمی‌شوند. هیچ پایگاه داده پیامی برای هک شدن وجود ندارد. آن‌ها به صورت رمزگذاری‌شده از دستگاه تو به دستگاه شخص دیگر منتقل می‌شوند.

دفعه بعد که کسی به تو گفت برنامه‌ای «پیام‌هایت را سرتاسر رمزگذاری می‌کند»، از او درباره همه چیزهای دیگر بپرس: چه کسی مخاطبانت را می‌شناسد، چه ساعتی صحبت می‌کنی، چند وقت یک‌بار. اگر پاسخ این است که «سرور ما، اما ما از آن برای هیچ کار بدی استفاده نمی‌کنیم»، این فقط یک وعده است. در Solo2 پاسخ متفاوت است: مخاطبان تو در دستگاهت رمزگذاری شده‌اند و ما ذخیره نمی‌کنیم با چه کسی صحبت می‌کنی یا چه می‌گویی.

مقالات مرتبط