MTProto: پروتکل موبایل تلگرام
نمای کلی پروتکل
MTProto پروتکل رمزنگاری انتقال تلگرام است که برای اتصال امن و پایدار در شبکههای موبایل طراحی شده است.
این پروتکل محرمانگی، صحت پیام و احراز هویت طرفین را با سربار کم فراهم میکند.
MTProto 2.0
نسخه 2.0 از SHA-256 استفاده میکند، مشتقسازی کلید را بهبود میدهد و padding تصادفی اضافه میکند.
اصطلاحات
| اصطلاح | توضیح |
|---|---|
auth_key | کلید احراز هویت بلندمدت که در handshake اولیه بین کلاینت و سرور ساخته میشود. |
msg_key | کلید پیام که از هش payload و بخشی از auth_key محاسبه میشود. |
server_salt | salt موقت 64 بیتی برای جلوگیری از replay attack. |
session_id | شناسه نشست که پیامها را به همان نشست کلاینت متصل میکند. |
رمزنگاری
پیامها با AES-256-IGE رمز میشوند و key/IV از auth_key و msg_key مشتق میگردند.
کلیدهای احراز هویت
فرایند handshake بر پایه Diffie-Hellman و بررسی کلید RSA انجام میشود تا از MITM جلوگیری شود.
مقایسه با VPN
| ویژگی | MTProxy | VPN | SOCKS5 |
|---|---|---|---|
| دامنه اثر | فقط تلگرام | تمام ترافیک | برنامههای انتخابی |
| راهاندازی | یک کلیک | نصب کلاینت + تنظیمات | دستی |
| پنهانسازی ترافیک | FakeTLS/HTTPS | وابسته به پروتکل | ندارد |
نحوه استفاده
کلاینتهای رسمی تلگرام از MTProxy پشتیبانی میکنند. با باز کردن لینک tg://proxy اتصال در چند ثانیه فعال میشود.
استفاده از secret با پارامترهای FakeTLS باعث میشود ترافیک شبیه HTTPS عادی دیده شود و عبور از DPI بهتر انجام شود.