Я построил систему клиент-сервер, где клиенты входят в систему для безопасного взаимодействия с другими клиентами через сервер.
Вот свойства моей системы:
-Клиент-сервер взаимодействует с шифрованием SSL
-Клиенты для входа в систему надежно хранятся в виде хэшей с их солью в базе данных, хранящейся локально на сервере
- При входе в систему каждый клиент отправляет открытый ключ сеанса для сохранения на сервере, который другие клиенты используют для шифрования симметричного ключа. Симметричный ключ используется для последующего шифрования сообщений, чтобы предотвратить перехват сервера
-При инициации чата используется идентификация пользователя по отпечатку пальца, чтобы гарантировать, что пользователь является тем, кем он / она притворяется. Обычно это делается посредством телефонного звонка, считывающего отпечаток пальца, который представляет собой хэш SHA256 обоих открытых ключей, разделенных на две части и XORed для удобства.
-MAC отправляется вместе с каждым сообщением
Что бы вы предложили, чтобы улучшить это? От каких возможных атак может пострадать мой сервер?
Спасибо