DmitrMakeev commited on
Commit
cba8da3
·
verified ·
1 Parent(s): f7b3b67

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -3
app.py CHANGED
@@ -15,6 +15,9 @@ from io import BytesIO
15
 
16
  import uuid
17
 
 
 
 
18
 
19
 
20
 
@@ -950,10 +953,13 @@ def send_message():
950
  message_text = data.get('message', '').strip()
951
 
952
  if message_text:
 
 
 
953
  message = {
954
  'id': len(messages) + 1,
955
  'user_id': user_id,
956
- 'text': message_text,
957
  'timestamp': datetime.now().strftime("%H:%M:%S"),
958
  'username': f"User_{user_id}"
959
  }
@@ -968,13 +974,35 @@ def send_message():
968
 
969
  @app.route('/get_messages')
970
  def get_messages():
971
- return jsonify({'messages': messages})
 
 
 
 
 
 
 
972
 
973
  @app.route('/get_new_messages')
974
  def get_new_messages():
975
  last_id = request.args.get('last_id', 0, type=int)
976
  new_messages = [msg for msg in messages if msg['id'] > last_id]
977
- return jsonify({'messages': new_messages})
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
978
 
979
 
980
 
 
15
 
16
  import uuid
17
 
18
+ from cryptography.fernet import Fernet
19
+ from cryptography.hazmat.primitives import hashes
20
+ from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
21
 
22
 
23
 
 
953
  message_text = data.get('message', '').strip()
954
 
955
  if message_text:
956
+ # Шифруем сообщение перед сохранением
957
+ encrypted_text = encrypt_message(message_text)
958
+
959
  message = {
960
  'id': len(messages) + 1,
961
  'user_id': user_id,
962
+ 'encrypted_text': encrypted_text, # Сохраняем зашифрованный текст
963
  'timestamp': datetime.now().strftime("%H:%M:%S"),
964
  'username': f"User_{user_id}"
965
  }
 
974
 
975
  @app.route('/get_messages')
976
  def get_messages():
977
+ # Расшифровываем сообщения перед отправкой клиенту
978
+ decrypted_messages = []
979
+ for msg in messages:
980
+ decrypted_msg = msg.copy()
981
+ decrypted_msg['text'] = decrypt_message(msg['encrypted_text'])
982
+ decrypted_messages.append(decrypted_msg)
983
+
984
+ return jsonify({'messages': decrypted_messages})
985
 
986
  @app.route('/get_new_messages')
987
  def get_new_messages():
988
  last_id = request.args.get('last_id', 0, type=int)
989
  new_messages = [msg for msg in messages if msg['id'] > last_id]
990
+
991
+ # Расшифровываем новые сообщения
992
+ decrypted_messages = []
993
+ for msg in new_messages:
994
+ decrypted_msg = msg.copy()
995
+ decrypted_msg['text'] = decrypt_message(msg['encrypted_text'])
996
+ decrypted_messages.append(decrypted_msg)
997
+
998
+ return jsonify({'messages': decrypted_messages})
999
+
1000
+ @app.route('/clear_chat', methods=['POST'])
1001
+ def clear_chat():
1002
+ """Очистка всех сообщений"""
1003
+ global messages
1004
+ messages.clear()
1005
+ return jsonify({'status': 'success', 'message': 'Чат очищен'})
1006
 
1007
 
1008