About the Project
SecureCom is a secure email communication system designed to protect messages from being changed during transmission. The idea came from a simple problem: if an important message is modified while travelling between departments, the receiver may not know that the original content has been changed.
To solve this problem, we used HMAC-SHA256 to generate a unique authentication code for each message. When the receiver gets the message, the system generates the HMAC again and compares it with the original value. If the values match, the message is considered authentic. If they do not match, the system alerts the receiver that the message may have been tampered with.
What Inspired Us
We were inspired by the need for secure communication in organizations where messages can contain important or sensitive information. We wanted to create a simple demonstration of how message integrity can be protected using cryptography.
How We Built It
We built SecureCom as a web application using Python and Flask, with HTML and CSS for the interface. HMAC-SHA256 is used to create and verify the message authentication code.
The system allows a sender to create a message and generate its HMAC. On the receiver side, the received message is verified against the original HMAC. We also added a tampering simulation to demonstrate how the system detects a modified message.
What We Learned
While building SecureCom, we learned how HMAC works and how hashing and secret keys can be combined to provide message integrity and authentication. We also learned how cryptographic concepts can be implemented in a practical web application.
Challenges We Faced
One of the main challenges was understanding how the HMAC should be generated and verified correctly. We also had to make the verification process clear to the user so that they could easily understand whether a message was authentic or had been modified.
Our Goal
Our goal is to demonstrate a simple and practical way of protecting messages from undetected modification. SecureCom can serve as a basic model for understanding how message integrity can be implemented in secure communication systems.
Log in or sign up for Devpost to join the conversation.