🇬🇧 Overview
This academic project involved designing a client–server system in Python that uses socket communication over IPv4, enriched with encryption and checksum validation to ensure data integrity and basic security.
The interface allows for quick configuration of the IP address and port for dynamic deployment in local test environments.
The system also supports message retransmission and logging to simulate real-world unstable network conditions. It emphasizes secure data exchange and robustness between client/server.
🛠️ Technologies / Tools
- Python — main programming language
- socket — for TCP communication
- hashlib — to compute checksums
- argparse — for dynamic IP/port configuration via CLI
- threading — for handling simultaneous send/receive operations
🎯 Key Learnings
- Low-level socket programming over IPv4
- Secure communication with custom checksum verification
- Robust client–server logic for real-time messaging
- Introduction to basic cybersecurity practices through encryption and validation mechanisms