Technical

How MTProto 2.0 Works: A Plain-English Deep Dive

Understand exactly what happens when your phone connects to a Telegram MTProto proxy — packets, keys, obfuscation and all.

The big picture

When you tap a TGFast proxy link, your Telegram client opens a TCP socket to one of our edge servers. It sends a 64-byte initial packet that contains a randomized header (the "obfuscation envelope"), then begins exchanging encrypted MTProto frames. The proxy server decrypts only enough of the envelope to know which Telegram data centre to forward to (DC1, DC2, DC4 or DC5), then opens a second TCP socket to that data centre and starts shuffling packets between the two. It never sees your message contents — those remain encrypted with keys negotiated end-to-end between your client and Telegram.

The obfuscation envelope

The 64-byte initial packet is the secret sauce that lets MTProto evade DPI. Its first 56 bytes are random, the next 4 bytes encode the protocol identifier, and the last 4 bytes encode the data centre number — but the entire 64-byte block is encrypted with AES-CTR using a key derived from the secret string. To an observer it looks like 64 random bytes followed by an opaque encrypted stream. This is why TLS 1.3, Tor, OpenVPN and MTProto all "look the same" to a packet inspector — they are all blobs of high-entropy data.

Get a free TGFast proxy

Browse the live country grid on the home page and tap any card to connect Telegram in one second — no signup, no logs.

Open the fleet

The "ee" secret format

Modern MTProto secrets start with "dd" or "ee". The "dd" prefix selects standard obfuscation. The "ee" prefix selects "fake TLS" obfuscation, which makes the very first packet impersonate a TLS ClientHello to a configurable hostname. This is critical in countries that block any non-TLS protocol on port 443. TGFast supports both variants — by default we issue "dd" secrets, but you can request "ee" secrets if your network actively interferes with non-TLS handshakes.

Key derivation and forward secrecy

After the initial handshake, the client and server perform a Diffie-Hellman key exchange to derive a fresh AES-256-IGE key for each session. IGE (Infinite Garble Extension) is an old block cipher mode chosen for its self-synchronising properties. Combined with daily key rotation, MTProto provides reasonable forward secrecy: even if an adversary records the entire stream and later compromises the long-term server key, they still cannot decrypt the past traffic.

Stay updated

Join @FastTGProxyMT for instant alerts when servers move or new proxies launch.

Join Telegram Channel

How the proxy fits in

Importantly, an MTProto proxy is dumb — it never participates in the key exchange. It only inspects the obfuscation envelope to learn the target data centre, then blindly forwards encrypted frames in both directions. This is what makes proxy hosting trivially safe: a malicious proxy operator cannot read your messages even if they want to, because the cryptographic session is between you and Telegram's data centre, not between you and the proxy.

Performance characteristics

MTProto is unusually efficient compared to general-purpose VPNs. Per-packet overhead is about 32 bytes (vs. 80+ for OpenVPN, 56 for WireGuard). The protocol uses long-lived TCP connections with optional WebSocket framing, which keeps mobile radios in a low-power state. Telegram's servers also implement aggressive request batching, which is why "Telegram feels fast" even on poor networks — the proxy preserves these optimisations.

What MTProto cannot do

MTProto is built for Telegram and Telegram only. It cannot proxy your browser, your mail or any other app. If you need a general tunnel for the whole device, use a real VPN. MTProto also offers no IP-rotation: every packet you send appears to come from the proxy server's IP, so your "exit IP" is the proxy IP. This is an advantage for Telegram (looks like residential traffic) but a non-feature if you wanted to hop between many exits.

How DPI systems try to detect and block MTProto

Deep packet inspection (DPI) hardware used by national ISPs attempts to fingerprint MTProto traffic in three main ways. Port-based blocking: Telegram uses ports 443, 80 and 5222 by default. TGFast uses high-numbered ports (30 000–60 000) to avoid these. Entropy analysis: MTProto's obfuscated stream has near-maximum Shannon entropy (≈8 bits/byte), which DPI flags as "likely proxy or VPN". The "ee" Fake-TLS obfuscation defeats this by making the stream open with a recognisable TLS ClientHello that has normal entropy patterns. Timing fingerprinting: MTProto sessions have characteristic keep-alive intervals. TGFast introduces randomised jitter to the keep-alive schedule, defeating timing-based classification. Iran and China are the most advanced users of all three techniques; TGFast is tuned specifically against each.

MTProto vs other circumvention protocols: technical comparison

Compared to WireGuard: MTProto has less per-packet overhead (32 bytes vs 56 bytes) but is Telegram-only; WireGuard tunnels all traffic. Compared to TLS/HTTPS: MTProto's obfuscation layer is simpler but more resistant to DPI because it lacks TLS's predictable handshake record structure; with "ee" obfuscation it mimics TLS and becomes indistinguishable. Compared to Shadowsocks: Shadowsocks can carry any TCP traffic, but its byte stream is actively targeted by DPI databases in China and Iran; MTProto "ee" currently survives significantly longer in both countries. Compared to V2Ray with Reality: Reality provides the strongest GFW resistance but requires a rented VPS and complex configuration; MTProto is zero-setup and free.

The future: MTProto on QUIC and beyond

Telegram's engineering team has discussed moving MTProto to QUIC (UDP-based), which would enable 0-RTT connection resumption and reduce the latency of the first few packets in each session — particularly valuable in high-packet-loss networks like Irancell mobile. Open-source communities are also proposing "REALITY-style" domain fronting for MTProto, which would use real TLS certificates from major cloud providers rather than just mimicking the handshake. TGFast is testing both approaches in staging infrastructure. When production-ready improvements ship, they will roll out to all proxy cards automatically — no action required from users.

Frequently Asked Questions

MTProto is Telegram's native protocol, so traffic looks indistinguishable from a normal Telegram connection to deep packet inspection. SOCKS5 is a generic proxy with a recognizable handshake; Shadowsocks adds obfuscation but still requires the operator to defend their port and keys against probing. MTProto with Fake-TLS adds a TLS-1.3-mimicking handshake that has proven the hardest of the three to fingerprint.
The leading byte is a magic prefix that tells the Telegram client which obfuscation mode to negotiate. "dd" enables MTProto 2.0 random padding to defeat traffic analysis; "ee" indicates Fake-TLS mode where the entire session is wrapped in a TLS 1.3 handshake. Both are interoperable with all modern Telegram clients.
A determined operator can sometimes flag suspicious flows by timing analysis, but the encrypted payload itself is opaque. Fake-TLS makes detection significantly harder because the handshake mimics a real HTTPS site (including SNI, ALPN and certificate exchange). Even when flagged, blocking is per-IP, not per-protocol — which is why TGFast rotates IPs continuously.
Both. The MTProto 2.0 transport adds AES-256-IGE encryption between client and server with per-session keys derived from the shared secret, and Fake-TLS wraps that channel inside a real TLS 1.3 handshake. Even if the proxy operator were malicious, they could not decrypt the inner Telegram session — that key is negotiated end-to-end with Telegram's data centres.
We monitor latency and packet loss from probe nodes in 14 cities across the regions hit hardest by Telegram restrictions. New servers are spun up where the median latency to nearby ISPs falls below 80 ms and where the upstream provider has historically resisted ISP take-down requests. Capacity is rebalanced weekly.
Connect Telegram Proxy Now