diff --git a/communication/client.py b/communication/client.py
index c2b9c65285d3fe833506d4d9c8e58388e6831e93..75513abdd89ff423baed85ce91d278c40622f4c3 100644
--- a/communication/client.py
+++ b/communication/client.py
@@ -2,50 +2,37 @@ import socket
 import json
 import logging
 from colorlog import ColoredFormatter
-from Crypto.Cipher import DES, Blowfish, ARC4, PKCS1_OAEP
-from Crypto.PublicKey import RSA
-from Crypto.Util.Padding import pad
+from Crypto.Cipher import DES, Blowfish, ARC4
 from Crypto.Random import get_random_bytes
+from Crypto.Util.Padding import pad
 import base64
 import sys
 import os
 sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'setup')))
-from custom_logging import configure_logging, user_input
-
-# Load the RSA public key to encrypt the key
-def load_public_key():
-    with open('../keys/public.pem', 'rb') as public_file:
-        public_key = RSA.import_key(public_file.read())
-    return public_key
-
-# Encrypt the key for secure key exchange using RSA public key
-def encrypt_key_with_rsa(public_key, key):
-    cipher = PKCS1_OAEP.new(public_key)
-    encrypted_key = cipher.encrypt(key)
-    return base64.b64encode(encrypted_key).decode()
+from custom_logging import configure_logging
 
-# Encrypt entered user message according to selected algorithm and key length
+# Verschlüsselung der Nachricht nach gewähltem Algorithmus
 def encrypt_message(algorithm, key, message):
     logging.info(f"Starting encryption with algorithm: {algorithm}")
     
     if algorithm == 'DES':
         cipher = DES.new(key, DES.MODE_CBC)
         ciphertext = cipher.encrypt(pad(message.encode(), DES.block_size))
-        encrypted_message = base64.b64encode(cipher.iv + ciphertext).decode()
+        encrypted_message = (cipher.iv + ciphertext).hex()
         logging.info("DES encryption successful.")
         return encrypted_message
     
     elif algorithm == 'Blowfish':
         cipher = Blowfish.new(key, Blowfish.MODE_CBC)
         ciphertext = cipher.encrypt(pad(message.encode(), Blowfish.block_size))
-        encrypted_message = base64.b64encode(cipher.iv + ciphertext).decode()
+        encrypted_message = (cipher.iv + ciphertext).hex()
         logging.info("Blowfish encryption successful.")
         return encrypted_message
     
     elif algorithm == 'RC4':
         cipher = ARC4.new(key)
         ciphertext = cipher.encrypt(message.encode())
-        encrypted_message = base64.b64encode(ciphertext).decode()
+        encrypted_message = ciphertext.hex()
         logging.info("RC4 encryption successful.")
         return encrypted_message
     
@@ -53,17 +40,17 @@ def encrypt_message(algorithm, key, message):
         logging.error("Unsupported encryption algorithm.")
         raise ValueError("Unsupported encryption algorithm")
 
-# Send data to server
-def send_message_to_server(host, port, algorithm, key, key_length, encrypted_message, encrypted_key):
-    # Configure data to send
+# Funktion zum Senden der Daten an den Server
+def send_message_to_server(host, port, algorithm, key, key_length, encrypted_message):
+    # Konfiguriere die Daten zum Senden
     data = {
         'algorithm': algorithm,
         'key_length': key_length,
-        'encrypted_key': encrypted_key,
+        'key': base64.b64encode(key).decode('utf-8'),  # Symmetrischer Schlüssel als base64 (Klartext)
         'encrypted_message': encrypted_message
     }
-    
-    # Start connection to server and send data
+
+    # Verbindung zum Server herstellen und Daten senden
     logging.info("Connecting to server...")
     with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
         try:
@@ -79,12 +66,9 @@ def main():
     configure_logging()
     
     # server information
-    host = '192.168.178.51'
+    host = '192.168.178.63'
     port = 12345
     
-    # Load RSA public key (for encrypting the key)
-    public_key = load_public_key()
-    
     while True:
         # User input for encryption settings
         logging.info("Starting the client...")
@@ -149,11 +133,8 @@ def main():
         logging.info(f"Selected: {algorithm}, Key length: {key_length}")
         encrypted_message = encrypt_message(algorithm, key, message)
         
-        # Encrypt the key with the RSA public key
-        encrypted_key = encrypt_key_with_rsa(public_key, key)
-        
         # Send the data to the server
-        send_message_to_server(host, port, algorithm, key, key_length, encrypted_message, encrypted_key)
+        send_message_to_server(host, port, algorithm, key, key_length, encrypted_message)
         
         # Reopen or close connection
         again = input("Do you want to send another message? (y/n): ").strip().lower()
@@ -162,4 +143,4 @@ def main():
             break
 
 if __name__ == '__main__':
-    main()
\ No newline at end of file
+    main()
diff --git a/communication/server.py b/communication/server.py
index 4a7ce7093f6b39a99a59ad6256e4f94804db71a5..a85ffcfe4d8a383bf58b0efc8cf2fbfc04bdd5cf 100644
--- a/communication/server.py
+++ b/communication/server.py
@@ -2,34 +2,20 @@ import socket
 import json
 import logging
 from colorlog import ColoredFormatter
-from Crypto.Cipher import DES, Blowfish, ARC4, PKCS1_OAEP
-from Crypto.PublicKey import RSA
+from Crypto.Cipher import DES, Blowfish, ARC4
 from Crypto.Util.Padding import unpad
 import base64
 import sys
 import os
 sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'setup')))
-from custom_logging import configure_logging, user_input
+from custom_logging import configure_logging
 
-# Load the RSA private key to decrypt the key
-def load_private_key():
-    with open('../keys/private.pem', 'rb') as private_file:
-        private_key = RSA.import_key(private_file.read())
-    return private_key
-
-# Decrypt the received key using RSA private key
-def decrypt_key_with_rsa(private_key, encrypted_key):
-    cipher = PKCS1_OAEP.new(private_key)
-    key = cipher.decrypt(encrypted_key)
-    logging.info(f"Decrypted key: {key.hex()}")
-    return key
-
-# Decrypt received message using the key, depending on algorithm
+# Entschlüsselung der empfangenen Nachricht mit dem symmetrischen Schlüssel
 def decrypt_message(algorithm, key, encrypted_message):
     logging.info(f"Starting decryption with algorithm: {algorithm}")
     
-    # Transform received message into binaries
-    encrypted_message = base64.b64decode(encrypted_message)
+    # Umwandlung der empfangenen Nachricht von Hex zu Binär
+    encrypted_message = bytes.fromhex(encrypted_message)
     logging.info(f"Encrypted message: {encrypted_message.hex()}")
     
     if algorithm == 'DES':
@@ -59,8 +45,8 @@ def decrypt_message(algorithm, key, encrypted_message):
         logging.error("Unsupported algorithm.")
         raise ValueError("Unsupported decryption algorithm")
 
-# Manage client connection
-def handle_client(conn, addr, private_key):
+# Handle client connection
+def handle_client(conn, addr):
     logging.info(f"Handling client {addr}")
     
     # Receive up to 1024 Bytes data from client
@@ -72,19 +58,14 @@ def handle_client(conn, addr, private_key):
         data = json.loads(data)
         algorithm = data['algorithm']
         key_length = data['key_length']
-        encrypted_key = base64.b64decode(data['encrypted_key'])
+        key = base64.b64decode(data['key'])  # Symmetrischer Schlüssel als base64 (Klartext)
         encrypted_message = data['encrypted_message']
         logging.info(f"Algorithm: {algorithm}, Key Length: {key_length}")
-        user_input(f"Received data from client {addr}: Algorithm: {algorithm}, Key Length: {key_length}, Encrypted message: {encrypted_message}")
     except json.JSONDecodeError as e:
         logging.error(f"Error decoding data: {e}")
         conn.close()
         return
     
-    # Decrypt the key using RSA
-    key = decrypt_key_with_rsa(private_key, encrypted_key)
-    logging.info(f"Decrypted key from client {addr}.")
-    
     # Decrypt the message using the key
     decrypted_message = decrypt_message(algorithm, key, encrypted_message)
     logging.info(f"Decrypted message from client {addr}: {decrypted_message}")
@@ -106,9 +87,6 @@ def main():
     host = '192.168.178.63'
     port = 12345
     
-    # Load RSA private key (for decrypting the key)
-    private_key = load_private_key()
-    
     # Wait for incoming connections
     logging.info("Starting server...")
     
@@ -125,12 +103,13 @@ def main():
         while True:
             try:
                 conn, addr = s.accept()
+                logging.info("\n")
                 logging.info(f"Connection from {addr}")
-                handle_client(conn, addr, private_key)
+                handle_client(conn, addr)
                 conn.close()
             except Exception as e:
                 logging.error(f"Error handling connection: {e}")
                 continue
 
 if __name__ == '__main__':
-    main()
\ No newline at end of file
+    main()