MTProto
Mobile Transport Protocol — протоколи Telegram
Протоколи худии Telegram барои алоқаи барномаҳо бо серверҳо: рамзгузории паёмҳо, ҷаласаҳо ва нақлиёт.
Ин чист
MTProto — протоколест, ки барномаҳои Telegram тавассути он бо серверҳои мессенҷер муошират мекунанд. Ҳуҷҷатҳои Telegram онро ҳамчун протоколи дастрасӣ ба API-и сервер аз барномаҳо дар дастгоҳҳои мобилӣ тавсиф мекунанд. Муштариёни имрӯза версияи 2.0-ро истифода мебаранд.
Аз чӣ иборат аст
Протокол се сатҳ дорад:
- сатҳи боло — дархостҳо ба API ва ҷавобҳо дар шакли дуӣ;
- сатҳи миёна — рамзгузории ҳар паём бо калиди иҷозат (AES-256 дар режими IGE);
- сатҳи поён — нақлиёт: додаҳои рамзгузоришуда дар шабака болои TCP, WebSocket ё HTTP чӣ тавр мераванд.
MTProto ва прокси
Прокси барои Telegram дар сатҳи поён кор мекунад: ҷараёни нақлиётиро қабул мекунад ва ба серверҳо медиҳад, бе он ки калиди паёмҳоро дошта бошад. Бинобар ин проксиро MTProto-прокси меноманд, ва татбиқи расмиро — MTProxy. Ниқоби нақлиётро режимҳои obfuscated2 ва FakeTLS таъмин мекунанд.
Версияҳо
Дар MTProto 2.0 калиди паём аз рӯи SHA-256 бо пораи калиди иҷозат ҳисоб карда мешавад, ва иловаи тасодуфӣ то 12–1024 байт зиёд шуд. Версияи аввал SHA-1 ва иловаи 0–15 байтро истифода мебурд ва кӯҳна ҳисоб мешавад.