Skip to content

jellybebra/rsa_encrypted_local_chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Никто больше не узнает, о чём ты разговариваешь 🗣️

При запуске клиента автоматически генерируется пара ключей, которая используется на протяжении кратковременного (рекомендованно) общения. Сервер видит лишь открытые ключи шифрования и зашифрованные сообщения.

Просто использовать 😆

  • Если хочешь поговорить с кем-то по локальной сети, запусти local.exe
  • Если хочешь поговорить с кем-то удаленно, запусти server.exe где угодно, подключись к нему и общайся!

Как работает RSA

  1. Генерируются связанные между собой ключи: открытый (public) и закрытый (private).
  2. Происходит обмен открытых ключей между пользователями.
  3. Пользователи шифруют свои сообщения полученными ключами собеседников и отправляют результаты.
  4. Пользователи расшифровывают полученные сообщения с помощью своих закрытых ключей.

Больше про RSA

http://www.michurin.net/computer-science/rsa.html

https://pypi.org/project/rsa/

https://stuvel.eu/python-rsa-doc/usage.html#generating-keys

https://youtu.be/rrKuqbTDom8

Благодарности

Как найти всех хостов в сети?

Как сделать обмен сообщениями в локальной сети? Сокеты в Python.