Cryptography Projects

Project 1

Hill-Cipher-decryption in Python

In this task, I wrote a Python code that would implement the Hill Cipher Decryption given the input fields like the ciphertext and its adjacent matrix.

πŸ“Œ Skills & Tools: Python, Cryptanalysis, Matrix Operations

View on GitHub


RSA Encryption in Python

The Rivest-Shamir-Adleman (RSA) algorithm is a widely used public-key cryptographic system that enables secure data transmission. It is based on the mathematical properties of prime numbers and modular arithmetic. I Developed a python code in jupyter to implement the working of algorithm step by step.

πŸ“Œ Skills & Tools: Public key Cryptography, Python, RSA Security

View on GitHub


Quantum Cryptography research project

I Researched Quantum Key Distribution (QKD) Used Shor’s Algorithm to demonstrate breaking RSA encryption.

πŸ“Œ Skills & Tools: Quantum Cryptography, Shor's Algorithm

View on GitHub

DevSecOps Projects

Jenkins Pipeline for Secure CI/CD

DevSecOps Project

The project is a React-based web application designed to demonstrate the integration of a Jenkins pipeline for Continuous Integration and Continuous Deployment (CI/CD). The goal is to automate the entire process of building, testing, code quality analysis, deployment, and production release. React is used for building the user interface, providing a dynamic and interactive web experience.

πŸ“Œ Skills & Tools: Jenkins, Docker, CI/CD, DevSecOps, Static Code Analysis

View on GitHub

Scripting Projects

Ping using icmplib

This Python project allows users to ping multiple hostnames and check their availability. Using the icmplib library, it sends four ICMP packets to the selected host, measuring response times and determining whether the host is reachable. The program starts with a predefined list of websites and lets users add more. It then displays the list and prompts users to select a hostname by index to initiate the ping. The program handles errors such as invalid input and unreachable hosts gracefully, ensuring robustness. This project enhances troubleshooting skills and helps in network diagnostics.

πŸ“Œ Skills & Tools: Python, icmplib, loop structures for automation

View on GitHub


Custom Ping application

Scripting Project

This is a python code that will create custom ICMP packets and send requests to any domain for ping. In this task, I created my own ping application, where I can ping IP and domain names of different websites, I used socket programming in Python to develop the code, although there were many challenges that I had to encounter and I had to take some help to understand the logic of Checksum calculation. Overall, there was a lot to learn from this task.

πŸ“Œ Skills & Tools: Python, socket programming, checksums

View on GitHub


Creating a DNS Server

Scripting Project

This Python script simulates a local DNS server using UDP on port 53. The server listens for incoming hostname queries from clients and responds with predefined IP addresses and CNAME (Canonical Name) records stored in a dictionary. If a hostname matches an entry in the dictionary, the server returns the corresponding IP and CNAME; otherwise, it replies with "Host not found." This project demonstrates DNS resolution simulation and socket programming for network security research and testing.

πŸ“Œ Skills & Tools: Python, UDP, Socket library

View on GitHub


Firewall Handler for Spring4shell vulnerability

Scripting Project

In this challenge, I analyzed the Spring4Shell (CVE-2022-22965) vulnerability, investigated security bypasses, and wrote an Incident Postmortem Report detailing the detection, impact, and resolution of the attack. I also implemented a firewall rule in Python to block malicious requests and prevent future exploitation.

πŸ“Œ Skills & Tools: Python, incidence response, threat detection, SOC analysis, Firewall

View on GitHub

Machine learning

Comparison of Classification algorithms

Machine learning

This project compares different classification algorithms on the Spambase dataset to determine which approach yields the highest accuracy. The algorithms tested include: K-Nearest Neighbours (KNN) Logistic Regression Random Forest Support Vector Machines (SVM)

πŸ“Œ Skills & Tools: Python, Classification algorithms, Machine Learning

View on GitHub

Amazon AWS

Deploying a Wordpress Website and Amazon AWS

Machine learning

This project involves deploying a highly available WordPress application on AWS using services like EC2, RDS, ELB, S3, and CloudFormation. A custom VPC is created with public and private subnets, routing traffic via NAT and IGW. An RDS MySQL 8.0.35 instance is set up in a private subnet, while an Application Load Balancer (ALB) in public subnets distributes traffic to EC2 instances hosting WordPress. These instances, launched with Amazon Linux 2, use user data scripts for setup and integrate with an S3 bucket for media storage. An Auto Scaling Group (ASG) with a Launch Template dynamically adjusts instances based on CPU utilization, deploying them into private subnets. CloudFormation templates manage the infrastructure, ensuring scalability and resilience. Testing includes verifying ALB access, ASG scaling, S3 integration, and RDS Multi-AZ functionality, demonstrating a robust AWS-hosted WordPress architecture.

πŸ“Œ Skills & Tools: AWS EC2, RDS (MySQL 8.0.35), Elastic Load Balancer (ALB), S3, CloudFormation, Auto Scaling Group (ASG), VPC, Subnets, NAT Gateway, IGW, Amazon Linux 2, Bash Scripting, Apache/Nginx, WordPress, Offload Media Plugin, Security Groups, IAM Roles & Policies, CloudWatch, Route 53, Scaling Policies, Infrastructure as Code (IaC), High Availability Architecture, Networking & Security, System Administration.

View on GitHub