Lüğət

secret

MTProto proksinin secret-i (açarı)

Proksi linkindəki açar: iş rejimini, FakeTLS üçün isə maskalanma domenini müəyyən edir.

Nədən ibarətdir

Secret-in əsasında 16 təsadüfi bayt dayanır, onlar 32 onaltılıq simvolla yazılır. Onlara rejim prefiksi və domen əlavə oluna bilər:

  • prefikssiz — adi rejim (obfuscated2);
  • dd + açar — paketlərə təsadüfi əlavə rejimi (padding);
  • ee + açar + hex-də domen — FakeTLS.
ee473ce5d4958eb5f968c87680a23854a0676f6f676c652e636f6d

Harada istifadə olunur

Secret — proksi linkində server və portun yanında üçüncü məcburi parametrdir: tg://proxy?server=…&port=…&secret=…. Klient ondan bağlantının obfuskasiyası zamanı istifadə edir, server isə ona öz klientinin qoşulduğunu yoxlayır.

Müxtəlif proqramlarda secret

Rəsmi MTProxy bir neçə secret qəbul edir — -S açarını təkrar göstərmək olar. mtg-də secret birdir, o, konfiqurasiyada secret parametrində yazılır. telemt-də secret-lər [access.users] bölməsində istifadəçilərə bağlıdır, ona görə hər kəsə öz linkini verib onu ayrıca ləğv etmək olar.

Uzunluğu necə yoxlamaq

Uzunluq rejimi göstərir: kəsilmiş secret-i görmək üçün onu siyahı ilə tutuşdurun:

  • 32 simvol — adi rejim;
  • 34 simvol — dd rejimi;
  • 2 + 32 + domen simvollarının sayının iki mislinə — ee rejimi; google.com üçün bu 54-dür.

Necə əldə etmək

16 baytlıq açarı openssl rand -hex 16 və ya head -c 16 /dev/urandom | xxd -ps əmri ilə yaradırlar. ee rejimi üçün secret-i domenlə birlikdə mtg generate-secret --hex domain verir. Secret şəbəkə ilə göndərilmir: o, şifrələmə açarlarının çıxarılmasında iştirak edir, ona görə onsuz klient proksiyə qoşula bilməz.

Necə davranmaq

Secret həm paroldur, həm də maskalanmanın hissəsidir. Onu bilən proksiyə qoşula və linki irəli paylaşa bilər; açıq yayılmış secret isə bloklanma siyahılarını tərtib edənlərin də əlinə keçə bilər. Onu klientə prefikslə birlikdə tam daxil etmək lazımdır: kəsilmiş secret başqa rejim verir və ya ümumiyyətlə qoşulmur.

Mənbələr

  1. Telegram: linklər (proxy links)
  2. Telegram: MTProto transports
  3. mtg: layihənin README-si