top of page

An encrypted mail storage server

Overview

I built this sometime around February-March 2017. In all simplicity, the project was a simple client-server email communication project. The server would receive e-mails from multiple clients, encrypt it, and then store it into its local database. The diagram below illustrates the process flow.

overview.png

Technology Stack

Python2, smtpd, smtplib for mail server, AESCipher library for encryption and SQLite as the database

Working

The tool was command-line based and here are a few screenshots of the project in action: 

Step 1: First, we start the SMTP server

serverStarts.png

Step 2: The client code is run and the e-mail is typed

clientMailTyped.png

Step 3: The client hits Enter to send the mail

clientMailSent.png

Step 4: The server receives the mail, encrypts it with the clients' key and stores it.

(Mail printed on the screen for demo purposes)

clientMailRecv.png

Epilogue

I developed this mini-project as part of my Computer Networks class. I always wanted my projects to be something different than the usual topics everyone picked. Needless to say building this was an incredible learning experience for me :) 

bottom of page