پروتکل MTProto در تلگرام چیست و چگونه کار می‌کند؟

پروتکل MTProto در تلگرام چیست و چگونه کار می‌کند؟

پروتکل MTProto در تلگرام چیست و چگونه کار می‌کند؟

 

 

پروتوکل MTProto توسط آقای نیکولای دورف (سازنده تلگرام) جهت ایجاد یک ارتباط امن و بسیار سریع در تلگرام معرفی شده. تمام پیام‌های متنی و صوتی، Emojiها، استیکرها، فیلم‌ها و عکس‌ها بر اساس این پروتکل به صورت End to End رمزنگاری می‌شوند.

 

این موضوع باعث می‌شه وقتی شما یک پیام را می‌فرستید، در راه، مسئول شبکه، مخابرات، ISPها نتوانند مطالب رد و بدل شده بین شما و دیگران را مشاهده کنند.

 

 

از طرف دیگر اخیرا تلگرام یک پروکسی بر مبنای پروتکل MTProto با نام MTProto Proxy نیز معرفی نموده که توسط آن علاوه بر رمزنگاری تمام پیام‌ها، ارتباط شما با سرور تلگرام از طریق یک سرور دیگر برقرار می‌شود.

 

 

 

 

نحوه ساخت سرور پروکسی MTProto

 

 

در صورتی که قصد یادگیری نحوه ساخت یک سرور پروکسی بر پایه MTProto برای تلگرام را دارید پیشنهاد می‌کنم به سوال «مراحل گام به گام ساخت پروکسی MTProto برای تلگرام چگونه است؟» رجوع کنید.

 

نحوه استفاده از پروکسی‌های MTProto

 

جهت اتصال به سرورهای پروکسی ام‌تی‌پروتو کافیست داخل برنامه تلگرام برای کلمه MTProto یا MTProto Proxy جستجو کنید و کانال‌های زیادی وجود دارند که در آنها می‌توانید لینک‌های پروکسی‌ها را پیدا کنید. با کلیک کردن بر روی هر کدام از این لینک‌ها داخل برنامه تلگرام و زدن دکمه Connect Proxy می‌توانید به سادگی از آن پراکسی استفاده کنید.

 

جزئیات پروتکل MTProto

لازم به ذکره که این پروتوکل بر پایه «تبادل کلید دیفی-هلمن» توسط یک تیم متخصص که اکثر آنها دکترای ریاضی دارند طراحی شده و در آن از الگوریتم‌های AES (رمزنگاری‌های متقارن) و RSA (رمزنگاری نامتقارن) استفاده شده.

 

 

نمودار بخش رمزنگاری MTProto در تلگرام

نمودار بخش رمزنگاری MTProto در تلگرام

 

 

این پروتکل در وبسایت تلگرام۶۷۲ به صورت کامل تشریح شده و به صورت خلاصه به سه بخش مجزا تقسیم‌بندی می‌شود:

زبان درخواست API که به وسیله آن درخواست‌ها و پاسخ‌های سرور به پیام‌های Binary تبدیل می‌شوند.

لایه Cryptographic که در آن تمام پیام‌ها و داده‌ها قبل از انتقال رمزنگاری می‌شوند.

ماژول حمل و نقل (Transport) که در آن داده‌های رمزنگاری شده توسط یکی از پروتکل‌های شبکه udp، tcp، http و یا https منتقل می‌شوند.

 

 

 

نصب MTProxy برای سرور ویندوز

نصب MTProxy برای سرور ویندوز

نصب MTProxy برای سرور ویندوز

 

ابتدا سرور مجازی خود را از پلن های زیراب سرور انتخاب نمایید از بین  کشور های – سرور مجازی هلندسرور مجازی المانسرور مجازی امریکاسرور مجازی فرانسهسرور مجازی فنلاندسرور مجازی حرفه ای کانادا

 

 

دانلود NodeJS  با استفاده از این لینک

 

پس از نصب کامل، دستور Command Prompt را وارد کرده و PM2 را با استفاده از دستور زیر وارد کنید:

npm install pm2 -g

دانلود JSMTProxy  با استفاده از این لینک 

 

فایل زیپ را به C Drive منتقل کنید و فرمان را در CMD وارد کنید:

cd C:\JSMTProxy-master

شروع پروکسی سرور از Command Prompt با پیروی از دستور زیر:

pm2 start mtproxy.js -i max

پورت پیش فرض و  Secret:

 Port: 6969

Secret: b0cbcef5a486d9636472ac27f8e11a9d

شما می توانید هر دو را در فایل config.json تغییر دهید.

نمونه لیتک

https://t.me/proxy?server= <<<< ip server>>>>> &port=6969&secret=b0cbcef5a486d9636472ac27f8e11a9d

 

بجای <<<< ip server>>>>>  ای پی سرور خود را وارد نمایید

توجه: ممکن است لازم باشد شماره پورت پروکسی را در فایروال ویندوز خود باز کنید تا بتوانید اتصالات را قبول کنید.

 

 

نصب MTProxy برای سرور لینوکس

نصب NodeJS, NPM, GIT و PM2:

در دبیان و اوبونتو

a. $> apt-get install nodejs npm git

b. $> npm install pm2 -g

 

در CentsOS و RHEL

a. $> yum install nodejs npm git

b. $> npm install pm2 -g

 

مخزن کلون در سرور شما:

a. $> git clone https://github.com/FreedomPrevails/JSMTProxy.git۲۲۰

 

اگر میخواهید دایرکتوری JSMTProxy را وارد کنید و فایل  (config.json) را ویرایش کنید، شما می توانید پورت secret و  listening را تغییر دهید. آن  در قالب json است.

{  “port”:6969,   “secret”:”b0cbcef5a486d9636472ac27f8e11a9d” }

برنامه را در حالت خوشه با استفاده از pm2 شروع کنید:

a. $> pm2 start mtproxy.js -i max

 

شما می توانید pm2 را برای لیست پروسه های در حال اجرا و چک کردن سیاهههای مربوط آنها استفاده کنید:\

 

a. $> pm2 list $> pm2 log #id

 

 

فیلم آموزش  نصب MTProxy برای سرور ویندوز

 

اصطلاح که قبل از خرید هاست

اصطلاح که قبل از خرید هاست

  1. addon domain یا ادان دامنهیه امکانی هست که به شما این اجازه رو میده تا دامنه های بیشتری رو داخل هاست add یا اضافه کنید و با هر کدام از دامنه ها یه سایت متفاوت با محتوا و ظاهری متفاوت راه اندازی کنید، به عنوان مثال اگر یک هاست 5 عدد ادان دامنه داشته باشه شما می تونین 5 تا سایت متفاوت با 5 دامنه متفاوت به غیر از سایت اصلیتون بر روی اون هاست راه اندازی کنید.
  2. aliase یا پارک دامنه :یه امکانی هست که به شما این اجازه رو میده تا دامنه های متفاوت دیگه ای هم به غیر از دامنه اصلیتون بر روی هاستتون پارک کنید تا بازدیدکنندگان با مراجعه به دامنه های پارک شده بر روی هاست شما به وب سایت اصلی شما هدایت شوند.
  3. active server pages یا به اختصار ASP :یکی از زبان های برنامه نویسی تحت وب هستش که طراحان سایت ها قادر هستند به کمک این زبان برنامه نویسی وب سایت های پویا و تعاملی راه اندازی کنند.
  4. Auto Responder یا پاسخگویی اتوماتیک :یکی از امکانات سرویس های ایمیل در کنترل پنل های هاستینگ هست که این امکان به شما اجازه میده تا پاسخ های آماده برای ایمیل هاتون از قبل تنظیم کنید تا بلافاصله بعد از این که یک ایمیل دریافت کردید یک پاسخ آماده از سمته شما برای فرستنده اون ایمیل ارسال بشه.
  5. backup یا نسخه پشتیبان :یک رونوشت از اطلاعات سایت شما هست که به شما این اجازه رو میده تا در صورتی که در هاست یا وب سایت شما حادثه ای رخ داد با بازگردانی اون بکاپ وب سایتتون به حالت اولیه برگرده و از نابود شدن تمام زحمات و اطلاعات سایت شما شما جلوگیری میکنه.
  6. bandwidth یا پهنای باند :که Data Transfer هم نام دارد میزان حجم داده ها و اطلاعاتی هستش که میتونه بین سایت شما و کامپیوتر بازدیدکننده از سایت شما ردو بدل یا انتقال داده بشه و میزان پهنای باند مورد نیاز برای یک وب سایتی که تازه در حال راه اندازی است باید از 1 الی 5 گیگابایت باشه و به مرور که تعداد بازدیدکنندگان سایت شما افزایش یافت می توانید پهنای باند بیشتری برای هاست خریداری کنید.
  7. Browser یا مرورگر :نرم افزاری در کامپیوتر بازدیدکنندگان از سایت شما هست که کد های HTML سایت ها رو به نسخه قابل نمایش تبدیل میکنه یا به عبارتی دیگر مرورگر وب سایت ها رو به شما نمایش میده و از موزیلا فایرفاکس و گوگل کروم می توان به عنوان محبوب ترین مرورگر ها نام برد.
  8. +C یا سی پلاس پلاس :یکی دیگر از زبان های برنامه نویسی تحت ویندوز هست و برای سایت هایی که با این زبان برنامه نویسی شده اند باید هاست ویندوز تهیه کنید.
  9. Common gateway interface یا به اختصار GGI :نام نرم افزاری هست که اطلاعات رو از وب سرور ترجمه میکنه و اون ها رو در قابل صفحات وب یا ایمیل ها نمایش میدهد.
  10. Client یا مشتری :در سرویس های هاستینگ به معنای شخص یا کامپیوتری هستش که به صورت آنلاین هاست یا سرویس میزبانی وب تهیه میکنه و با پیروی از قوانین شرکت های هاستینگ به صورت صحیح از سرویس بهره برداری میکنه، client قبل از خرید هاست و راه اندازی سایت وظیفه داره قوانین شرکت هاستینگ رو به خوبی مراجعه کنه و با توجه به اون قوانین از سرویس استفاده کنه.
  11. Cloud یا ابری :یکی دیگر از روش های نگهداری از اطلاعات به صورت غیر متمرکز هست و در روش کلود همواره اطلاعات بر روی چند حافظه یا چند سرور ذخیره می شوند و این درحالی است که در هاست های معمولی اطلاعات همواره بر روی یک سرور ذخیره و نگهداری می شوند و به همین خاطر استفاده از تکنولوژی کلود همواره باعث میشه امنیت اطلاعات و سرعت بازگزاری وب سایت ها همواره افزایش پیدا کنه البته هزینه هاست های کلود یا میزبانی وب ابری بسیار بالا هست و استفاده از این تکنولوژی برای خیلی از سایت ها مقرون بصرفه نیست.
  12. Co-Location :در شرکت های هاستینگ و میزبانی وب به این معناست که شما سرور های سخت افزاری سایتتون رو از قبل تهیه کرده باشید و در حقیقت خودتون مالک کامل سخت افزار سرور وب سایتتون باشید و سپس سرور هاتون رو در دیتاسنتریک شرکت هاستینگ قرار بدین و از شرکت های هاستیگ بخواین که مسئولیت مدیریت و نگهداری از سرور های وب سایت شما رو بپذیرند.
  13. Cpanel یا سی پنل :یکی از محبوب ترین کنترل پنل ها یا رابط های گرافیکی مدیریت هاست هست که به وسیله آیکون ها و رابط های گرافیکی در این کنترل پنل قادر هستید وب سایتتون رو راه اندازی و مدیریت کنید، دقت کنید که کنترل پنل های زیادی جهت مدیریت هاست وجود دارند اما سی پنل یکی از محبوب ترین و پرطرفدار ترین کنترل پنل ها هستش.
  14. Content Management System یا به اختصار CMS :همان سیستم مدیریت محتوا ها هستند و cms ها برنامه هایی هستند که بر روی هاست نصب می شوند و توسط رابط های گرافیکی به شما اجازه میدهند مطالب وب سایتتون رو مدیریت کنید یا صفحات جدید در سایتتون ایجاد کنید و یا ظاهر سایتتون رو ویراش کنید که جوملا و وردپرس دوتا از بهترین و پرطرفدار ترین سیستم مدیریت محتوا های جهان هستند.
  15. Contorol Panel یا پلتفرم :به معنای همان رابط های گرافیکی هست که شرکت های هارائه دهنده خدمات هاست جهت مدیریت اطلاعات اطلاعات موجود بر روی هاست اون ها رو (کنترل پنل ها رو) به کاربران ارائه می دهند، و همونطور که قبلا گفتیم از سی پنل و دایرکت ادمین می توان به عنوان محبوب ترین و پرطرفدار ترین کنترل پنل های مدیریت هاست نام برد.
  16. cookie یا کش :اطلاعات و داده هایی هستند که از طرف وب سرور بر روی مرورگر بازدیدکنندگان از سایت شما ذخیره می شوند و در حقیقت کوکی ها اطلاعات سایت ها و صفحات اینترنتی هستند که شما هر روز اون ها رو از طریق مرورگر مشاهده می کنید و جهت افزایش سرعت بارگزاری صفحات اون اطلاعات داخل مرورگر شما ذخیره می شوند تا برای مرتبه بعدی اون صفحه اینترنتی با سرعت نسبتا بالاتری برای شما باز شود و حجم کمتری از اینترنت شما مصرف شود.
  17. Crawler یا Spider و به عبارت دیگر خزنده ها :ربات هایی هستند که به کمک موتور های جستجو اطلاعات وب سایت ها رو شناسایی، مرور و ذخیره می کنند تا در موارد مورد نیاز هنگامی که کاربر عبارت خاصی را داخل موتور های جستجو سرچ می کند نتایج و اطلاعات سایت ها را سریع تر به مخاطب نمایش دهند.
  18. Cascading Style Sheets یا به اختصار CSS :کد هایی جهت طراحی وب سایت هستند که جزئیات بیشتری مانند رنگ ها، سایز ها و طرح ها را به HTML ها که پایه و اساس صفحات وب هستند اضافه می کند و به کمک کد های HTML و CSS معمولا وب سایت ها طراحی و به حالت نمایشی تبدیل می شوند.
  19. Database یا پایگاه داده :نام سرویسی هستش که اطلاعات و مطالب نوشتاری وب سایت شما رو به صورت جداول منظم جمع آوری میکنه و اون جداول رو داخل سرور ها یا هاست های شرکت میزبانی وب ذخیره می کنه، البته همه وب سایت ها از دیتابیس پشتیبانی نمی کنند مثلا برخی از سایت های کوچک و با تعداد صفحات اندک بدون دیتابیس راه اندازی می شوند.
  20. Internet Datacenter یا به اختصار IDC :همان مراکز داده هستند که در آن ها کامپیوتر های سرور به شبکه جهانی اینترنت متصل و نگهداری می شوند؛ در حقیقت دیتاسنتر ها به شبکه های اینترنت بسیار پرسرعت مجهز هستند و سرور ها در دیتاسنتر ها جمع آوری می شوند و به اینترنت پرسرعت متصل می شوند، پیشنهاد می کنیم بیشتر درمورد دیتاسنتر داخل گوگل جستجو کنید.
  21. DDos :نوعی از حملات سایبری هستش که در طی این نوع حملات اختلال گران یا هکر ها درخواست های همزمان زیادی به سمت سایت شما سرازیر می کنند و منطور از درخواست های همزمان ترافیک سنگینی از بازدیدکننده های غیر واقعی هستش و این باعث میشه تمام منابع وب سایت شما به سرعت مصرف شوند و وب سایت شما با اختلال یا کندی مواجه شود و یا حتی وب سایت از دسترس خارج شود.
  22. Dedicated Server یا سرور اختصاصی :نوعی از خدمات ارائه شده در شرکت های هاستیگ برای وب سایت های بزرگ و پربازدید هستش که در اون فقط یک وب سایت بر روی یک سرور اختصاصی راه اندازی و مدیریت می شود و به نسبت هاست اشتراکی سرعت و کیفیت خیلی بالاتری داره و البته محدودیت های کمتری هم داره چون تو این نوع سرویس شما مالک کامل یک سرور هستید و می توانید از تمام منابع آن استفاده کنید، اما اینو باید بدونین که هزینه های سرور اختصاصی خیلی زیاد هستش و برای سایت هایی که تازه راه اندازی شده اند مقرون بصرفه نیست.
  23. Disk Space یا فضا :میزان فضا یا حجمی هستش که در شرکت های هاستیگ در اختیار کاربران قرار میگیره تا اطلاعات و داده های وب سایتشون رو بر روی اون نگهداری و آپلود کنند به زبان ساده تر منظور از disk space میزان فضای هاست هستش که جهت راه اندازی وب سایت در اختیار شما قرار میگیره.
  24. DirectAdmin :یکی از محبوب ترین کنترل پنل های میزبانی وب در شرکت های هاستگ هست که در حقیقت این یک کنترل پنل مدیریت هاست به صورت آسان هستش و به کمک رابط های گرافیکی به شما این امکان رو میده تا وب سایتتون رو راه اندازی و مدیریت کنید، در حقیقت دایرکت ادمین دقیقا مانند سی پنل یکی از کنترل پنل های هاست هست.
  25. Domain Name یا نام دامنه :آدرس اختصاصی وب سایت شماست که پس از .www قرار میگیره و دوستانتون با وارد کردن این آدرس در مرورگر میتونن به وب سایت شما دسترسی داشته باشند و آدرس وب سایت شما رو به یکدیگر معرفی کنند.
  26. Domain Name System یا به اختصار DNS :رکوردی هستش که نام دامنه شما رو به IP هاست متصل میکنه و در واقع هر هاست یک آدرس IP اختصاصی داره که شما باید اون رو از شرکت های هاستیگ دریافت کنید و DNS کارش این هستش که نام دامنه شما رو به وسیله چند مشخصه به آدرس IP هاست متصل کنه.
  27. File Transfer Protocol یا به اختصار FTP :برنامه یا پروتکلی هست که به شما این اجازه رو میده که فایل ها رو در اینترنت آپلود یا دانلود کنید و در این جا به کمک FTP قادر هستید فایل هاتون رو از کامپیوترتون به هاستتون داخل اینترنت انتقال بدین و FTP یکی از امن ترین راه های انتقال اطلاعات محسوب میشه.
  28. Gigabytes یا به اختصار GB :یکی از واحد های بزرگ اندازی گیری میزان حجم اطلاعات هستش و دراینجا منظور اینه که بیشتر سایت های متوسط که تازه تاسیس شده اند به فضای بیشتر از 5 گیگابایت در سرویس هاست نیاز ندارند و میزان پهنای باند مورد نیاز برای وب سایت های تازه تاسیس 5 الی 10 گیگابایت به صورت ماهانه هستش.
  29. Host یا میزبانی وب: نام قسمت کوچکی از کامپیوتر ارائه دهنده خدمات یا همون سرور هستش که شما اطلاعات وب سایتتون رو بر روی اون آپلود و نگهداری می کنید، هنگامی که بازدیدکننده تصمیم میگیره وارد وب سایت شما بشه و سایتتون رو مشاهده کنه این در حقیقت هاست شماست که اطلاعات وب سایتتون رو به کامپیوتر بازدیدکننده از سایت هدایت میکنه.

 

logo-samandehi