Skip to content

About

MTProto 2.0 implemented from scratch: AES-256, SHA-256, Perfect Forward Secrecy over TCP / WebSocket / HTTP.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MTProto 2.0

Telegram's MTProto 2.0 encryption protocol, implemented from scratch in Python.

Coursework for CS588: Security and Privacy in Networked and Distributed Systems, UIC.

What it is

A ground-up implementation of the cryptographic protocol behind Telegram messaging. No crypto library shortcuts on the protocol logic itself: the key exchange, encryption, and session handling are built to spec so the moving parts are actually visible.

What it does

  • AES-256 encryption and SHA-256 hashing for message confidentiality and integrity.
  • Perfect Forward Secrecy: no two sessions share keys, so compromising one session does not unlock the others.
  • Multiple transport layers: TCP, WebSocket, and HTTP/HTTPS, each with full message serialization.
  • Session handling and time synchronization handled per the MTProto 2.0 spec.

Stack

Python · AES-256 · SHA-256 · TCP / WebSocket / HTTP

Built for learning how a real-world secure messaging protocol fits together. Not intended as a production crypto library.

About

MTProto 2.0 implemented from scratch: AES-256, SHA-256, Perfect Forward Secrecy over TCP / WebSocket / HTTP.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages