Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Project idea : Secure Chat Application Team Size [ up to 8 students ] Description: Design and implement a secure chat application in python that
Project idea : Secure Chat Application
Team Size up to students
Description: Design and implement a secure chat application in python that allows users to communicate securely over a network. The application should incorporate cryptographic algorithms, SSLTLS protocols, and robust security measures to protect the confidentiality and integrity of the messages exchanged between users.
Project Requirements:
User signup Implement a secure user registration process where users can create an account with a unique username and password. Use secure hashing algorithms to store the account. System must check the strength of the password, however, it may accept weak passwords.
User signin: Verify users when signin
Encryption: Implement endtoend encryption for the messages exchanged between users. Use symmetric encryption algorithms AES to encrypt the messages and asymmetric encryption algorithms RSA to securely exchange and establish the session keys.
Integrity: Before encrypting the message, attach hashMAC values to message. The server must verify the integrity of messages after decryption.
Adversary implement an attacker listening to communication similar to server and attempting to gain access by trying to guess the passwords and reading all chat communication messages. Attacker must recognize automatically the password and crack view the message content. Use weak passwords in the user registration process signup that can be easily guessed by the attacker for example by brute force or other approaches.
SSLTLS Integrationoptional: Integrate SSLTLS protocols into the communication channels to provide secure connections between the client and server. Use libraries such as OpenSSL or PyOpenSSL to handle SSLTLS certificates, key exchange, and secure communication.
User Interface optional: Design a userfriendly interface for the chat application that allows users to send and receive encrypted messages. Provide features such as message history, contact lists, and realtime message updates.
Utilize network programming concepts to establish communication channels between clients and the server. Implement socket programming using Python's socket library or other suitable networking libraries.
I want from you to write me code paython all code
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started