PROJECTS

Integration of ASCON cryptosystem in a SoC with FPGA

Oct 2023 - May 2024

This project a part of the "Software Analysis and Development" of the Master 1 CRYPTIS, which spans the whole academic year. The project is about implementing the ASCON cryptosystem - a lightweight cryptosystem that was recently selected as a new NIST standard for lightweight cryptography - on an FPGA device. By implementing ASCON on an FPGA, the project aims to leverage the advantages of FPGAs, such as hardware acceleration and security, to improve the performance and security of cryptographic operations.


Key points:

  • Study theoretical concepts: Basic concepts of FPGAs, cryptography, and the ASCON cryptosystem.
  • Learn FPGA programming: Study Verilog hardware description language, mainly its syntax and semantics, in order to designing and simulating digital circuits.
  • Design and implement Ascon modules: Designing and implementing the individual modules of the ASCON cryptosystem in both Python and Verilog.
  • Test Ascon modules: Ensure the modules are working correctly by testing them in simulation and on the provided FPGA devices.
  • Integrate Ascon into FPGA SoC: Integrating the Verilog implementation of ASCON into the experiment FPGA devices with the help of the provided SoC platform.
  • Evaluate performance and security: Evaluating the performance and security of the ASCON implementation on the FPGA.

Tools: FPGA, Verilog, Yosys, C/C++

WhisperNet

Jan 2024

This project a part of the "Network Audit and Security" course.
It is a tool written in Python, designed for covert communication using the ICMP protocol.


Features:

  • ICMP-based covert data transfer: Uses ICMP packets for discreet communication.
  • Flexible security options: Supports XOR obfuscation and AES encryption.
  • Chat functionality over UDP or TCP: Allows secure chat sessions over covert channels.

Tools: Python, Scapy, Bash

Proxy Server

Jan 2024

This project a part of the "Network Protocols and Programming" course.
It is a proxy server functions as a middleman connecting the user (web browser) and the Internet (servers).


Features:

  • Enhanced privacy and security: By going through the proxy, the client can avoid threads from malicious content.
  • Caching: By caching frequently accessed resources locally, proxy servers accelerate subsequent access to those resources.
  • Content filtering and access control: Proxy servers can filter content based on predefined rules, replacing or redacting inappropriate content, and blocking access to specific websites or types of content.

Tools: Python, HTML

Hexfresh: Gamification in fresher training system

Oct 2021 - Jun 2022

This project is a graduation project of the Software Engineering bachelor's program. It's a multi-platform fresher training system applies gamification for enterprises, targeting small and medium-sized companies. Hexfresh speeds up the training process by providing a specific roadmap for new employees while creating a feeling of excitement for learners through the application of gamification.
Hexfresh includes a web application for Fresher and Mentor, a mobile application for Fresher and Mentor, a web application for the Admin, and several API servers.
I was responsible for the mobile application development and the Scrum master role.

Gamification is the strategic attempt to enhance systems, services, organizations, and activities by creating similar experiences to those experienced when playing games in order to motivate and engage users. This project applies gamification through the use of points, badges, and leaderboards to create a competitive environment for learners as well as to provide a sense of achievement and recognition with phases and checklists.


Tools: ReactJS, React Native, Node.js, ExpressJS, MySQL, MongoDB