ferogram.dev / ferogram-mtproto
MP

ferogram-mtproto

MTProto 2.0 session management, message framing, DH key exchange and transport abstractions for Rust.

Rust v0.6.5 MIT OR Apache-2.0
Cargo.toml
[dependencies]
ferogram-mtproto = "0.6.5"

What it does

  • 3-step DH key exchange (req_pq_multi → req_DH_params → set_client_DH_params)
  • Encrypted sessions: AES-IGE pack/unpack, msg_key derivation, salt management
  • Message framing: salt, session_id, message_id, sequence numbers
  • msg_container and gzip_packed unwrapping
  • Error recovery: bad_msg_notification, bad_server_salt, msg_resend_req
  • Temporary key binding for perfect forward secrecy (bind_temp_key module)
Explore the workspace