Back

Cryptographic Implementations

I implemented symmetric and asymmetric primitives in C and Python, then validated designs through cryptanalysis and CTF challenges.

Repository
CPythonOpenSSLCTFcryptanalysisapplied crypto

Cryptography

This repository contains the code developed for the Cryptography course exercises at Politecnico di Torino.

Overview

This repository stores implementations of various cryptographic algorithms and techniques in both C and Python, following the course structure:

  • C Programming with OpenSSL: Implementation of symmetric and asymmetric cryptographic primitives, hashes, MACs, and protocols
  • Python Implementations: Code focusing on cryptographic primitives and security analysis

Environment Setup

The reference environment for these exercises is:

  • Kali Linux 2024.3+
  • Python 3 interpreter with required packages
  • OpenSSL and OpenSSL development libraries

While other platforms may work, all implementations are tested on the reference environment.

Resources

Additional resources for this course:

  • OpenSSL documentation
  • Python cryptography libraries documentation

Learning Objectives

This code repository supports the following learning objectives:

  • Improving programming skills in cryptography implementation
  • Understanding both constructive and analytical approaches to cryptography
  • Mapping theoretical concepts into practical implementations
  • Developing skills in two key languages for security work:
    • C for high-efficiency and custom solutions
    • Python for security analysis and rapid prototyping