Глоссарий

secret

MTProto прокси құпиясөзі (кілті)

Прокси сілтемесіндегі кілт: жұмыс режимін, ал FakeTLS үшін бүркемелеу доменін де анықтайды.

Неден тұрады

Құпиясөздің негізінде 16 кездейсоқ байт бар, оларды 32 он алтылық таңбамен жазады. Оларға режим префиксі мен домен қосылуы мүмкін:

  • префикссіз — қарапайым режим (obfuscated2);
  • dd + кілт — пакеттерге кездейсоқ толықтырғыш қосылатын режим (padding);
  • ee + кілт + hex-тегі домен — FakeTLS.
ee473ce5d4958eb5f968c87680a23854a0676f6f676c652e636f6d

Қайда қолданылады

Құпиясөз — прокси сілтемесінің сервер мен порттың қасындағы үшінші міндетті параметрі: tg://proxy?server=…&port=…&secret=…. Клиент оны қосылымды обфускациялау үшін пайдаланады, ал сервер өзіне өз клиентінің қосылып жатқанын тексереді.

Әртүрлі бағдарламалардағы құпиясөз

Ресми MTProxy бірнеше құпиясөзді қабылдайды — -S кілтін қайта көрсетуге болады. mtg-де құпиясөз біреу, ол конфигурацияда secret параметрінде жазылады. telemt-те құпиясөздер [access.users] бөліміндегі пайдаланушыларға байланған, сондықтан әркімге жеке сілтеме беріп, оны бөлек қайтарып алуға болады.

Ұзындығын қалай тексеруге болады

Ұзындық режимді көрсетеді: кесілген құпиясөзді байқау үшін оны тізіммен салыстырыңыз:

  • 32 таңба — қарапайым режим;
  • 34 таңба — dd режимі;
  • 2 + 32 + доменнің екі еселенген таңба саны — ee режимі; google.com үшін бұл 54.

Қалай алуға болады

16 байттық кілтті openssl rand -hex 16 немесе head -c 16 /dev/urandom | xxd -ps командасымен жасайды. ee режимі үшін доменімен бірге құпиясөзді mtg generate-secret --hex домен береді. Құпиясөз желі арқылы жіберілмейді: ол шифрлау кілттерін шығаруға қатысады, сондықтан онсыз клиент проксиге қосыла алмайды.

Онымен қалай жұмыс істеу керек

Құпиясөз — бір мезгілде құпия сөз де, бүркемелеудің бір бөлігі де. Оны білген кез келген адам проксиге қосылып, сілтемені әрі қарай бере алады; ал ашық жарияланған құпиясөз бұғаттау тізімдерін жасайтындарға да түсуі мүмкін. Оны клиентке префиксімен бірге толық енгізу керек: кесілген құпиясөз басқа режимді береді немесе мүлде қосылмайды.

Дереккөздер

  1. Telegram: сілтемелер (proxy links)
  2. Telegram: MTProto transports
  3. mtg: жоба README