شرح تخنیکی Psiphon
12/3/2014 - 4 دقیقه مطالعه
بهروزشده: 6/4/2021
این یک بهروزرسانی برای پاسخ به دو سوال اخیر است: به زبان ساده، Psiphon چیست و چه تفاوتی با خدمات VPN دارد؛ و از زمان آخرین بهروزرسانی سند طراحی فنی، چه تغییراتی رخ داده است.
Psiphon 3 یک شبکه با مدیریت مرکزی و از لحاظ جغرافیایی متنوع متشکل از 1000s سرور پروکسی است. بیشتر زیرساخت ما نزد ارائهدهندگان ابری میزبانی میشود. Psiphon 3 دارای یک ساختار "یک جهشی" با رمزگذاری امن پیوند میان کلاینتها و سرورها است. ما کلاینتهایی را برای محبوبترین پلتفرمها ارائه میدهیم: Windows، Android و iOS (در نسخه الفا).
Psiphon به صورت منبعباز است. خدمات ما دارای یک پالیسی حریم خصوصی قوی است؛ هیچ حساب کاربری وجود ندارد و آدرسهای شبکه کاربران ثبت نمیشوند.
Psiphon از چند جهت کلیدی با خدمات استاندارد VPN تفاوت دارد:
- ما استراتژیهایی را برای توزیع زیرمجموعههایی از سرورها به کاربران به کار میگیریم، با این هدف که به هر کاربر چند سرور قابل دسترس ارائه دهیم در حالی که کل شبکه برای یک کاربر آشکار نشود. برای دستیابی به این هدف، اندازه شبکه ما -- و به ویژه تنوع آدرسهای شبکه ما -- صرفاً تابعی از بار ترافیکی ما نیست.
- ما از مبهمسازی پروتکل برای دور زدن مسدودسازی DPI استفاده میکنیم.
سند طراحی فنی Psiphon قدیمی شده است و آنچه در ادامه میآید خلاصهای بسیار کوتاه از تغییرات فنی عمدهای است که از زمان راهاندازی پروژه در سال 2011 تطبیق کردهایم.
- ما پروتکل SSH مبهمسازیشده را برای کاهش انگشتنگاری DPI اضافه کردیم. این پروتکل با ظاهر کاملاً تصادفی، با یک کلید مبهمسازی منحصربهفرد برای هر سرور Psiphon مستقر شده است.
- ما یک پیشوند اختیاری HTTP به پروتکل خود اضافه کردیم تا لیست سفیدسازی مبتنی بر DPI برای ترافیک HTTP را کاهش دهیم. این پیشوند ساده برای DPIهای مبتنی بر regex (مانند nDPI و l7-filter) کافی است تا ترافیک Psiphon را به عنوان HTTP طبقهبندی کنند؛ و در زمان استقرار آن، برای شکست دادن یک دشمن واقعی کافی بود.
- ما لیستهای سرور از راه دور را برای تقویت مفاهیم سرورهای تعبیهشده و کشف اضافه کردیم. در حالی که کشف تنها در زمان وصل بودن به یک سرور موجود انجام میشود، لیستهای سرور از راه دور را میتوان حتی زمانی که تمام سرورها مسدود شدهاند دانلود کرد. لیستهای سرور از راه دور روی S3 توزیع میشوند و از طریق https://s3.amazonaws.com بدون نام باکت متمایزکننده در URL قابل دسترسی هستند. به این ترتیب، برای یک متخاصم دشوار است که لیستهای سرور از راه دور ما را مسدود کند مگر اینکه تمام S3 را مسدود سازد یا تحلیل ترافیک HTTPS را تطبیق کند.
- ایمیل اکنون یک سازوکار عمده برای انتشار کلاینت است. ما یک پاسخدهنده خودکار داریم که بسته به آدرس ایمیلی که کاربران به آن پیام میفرستند، لینکها و ضمیمهها را برای کلاینتهای سفارشی حامی/کانال Psiphon ارسال میکند.
- ما در سال 2012 یک کلاینت Android منتشر کردیم. نسخه اول شامل یک مرورگر تعبیهشده بر اساس WebView در Android بود. در سال 2012/2013 ما پشتیبانی از تونلسازی کل دستگاه را اضافه کردیم که تمام برنامههای Android را از طریق Psiphon هدایت میکند. ما یک حالت کل دستگاه مبتنی بر iptables (برای دستگاههای روتشده با Android 2.2+) و یک حالت کل دستگاه داریم که از VpnService در Android همراه با tun2socks (برای هر دستگاه با Android 4+) استفاده میکند. ویژگیهای اضافی که افزوده شدند شامل انتخاب منطقه خروجی و زنجیرهسازی پروکسی است.
- ما یک کلاینت iOS داریم که اکنون در مرحله آزمایش الفا است. این برنامه دارای یک مرورگر تعبیهشده است.
- سازوکار بازخورد درونبرنامهای ما، پیامها و معلومات اختیاری تشخیصی را از طرف کاربران برای ما ارسال میکند. این سیستم به ما کمک کرده است تا بسیاری از مشکلات پلتفرم و مشکلات مسدودسازی را رفع کنیم.
- تغییرات در الگوریتمهای کشف: الگوریتمهای کشف ما به عنوان بخشی از یک روند مداوم برای بهینهسازی شبکه ما تکامل مییابند. تغییرات عمده شامل به اشتراکگذاری سرورهای کشف در سراسر کانالهای انتشار؛ و افزودن زمان روز به عنوان یک بُعد است.
- بهینهسازی در الگوریتمهای اتصال: اکنون کلاینتهای ما در هنگام اتصال، به طور همزمان با سرورهای متعددی ارتباط برقرار میکنند و «بهترین» اتصال را حفظ مینمایند. این امر به توازن بار و همچنین کاهش زمان انتظار کاربر کمک میکند، زیرا مسدود بودن سرورهای منفرد مانع توالی اتصال نمیشود.
- ارتقای خودکار کلاینت بهبود یافت تا از دانلود افزایشی و همچنین سایتهای دانلود خارج از باند (تأییدشده با امضاهای دیجیتال) استفاده کند. این تغییرات امکان توزیع کلاینت جدید را در هنگام مسدودسازی بیشتر کرد.