Skip to main content

Welcome to Algoritmos de Encriptamiento

Algoritmos de Encriptamiento is an educational Python project that implements three classical encryption algorithms with both a web interface and CLI. Perfect for learning cryptography fundamentals or experimenting with encryption techniques.
This project is designed for educational purposes only. The implementations (especially 32-bit RSA) are not secure for production use.

Why use this tool?

Learn by doing

Understand how classical encryption algorithms work by encrypting and decrypting your own messages

Multiple algorithms

Experiment with Caesar cipher, Transposition cipher, and RSA encryption in one place

Dual interface

Choose between an intuitive web interface or a command-line tool based on your preference

Spanish alphabet support

Full support for the Spanish alphabet including the “Ñ” character

Encryption algorithms included

Caesar cipher (Substitution)

A simple algorithm that shifts letters in the alphabet by a fixed number of positions. By default, this implementation uses a shift of 8 positions. Use case: Introduction to substitution ciphers and frequency analysis vulnerabilities.

Transposition cipher

Reorganizes message letters according to a numeric key by arranging them in a matrix. The default implementation uses 5 columns. Use case: Understanding how transposition differs from substitution and how matrix-based encryption works.

RSA encryption

Famous asymmetric cryptography algorithm that uses large prime numbers to protect messages. This implementation generates keys automatically with configurable bit length (default 32 bits). Use case: Learning public-key cryptography fundamentals and the mathematics behind RSA.

How it works

You can encrypt and decrypt messages using:
  • Web interface: A Flask-based GUI where you select the algorithm, enter your message, and choose to encrypt or decrypt
  • CLI: A terminal-based tool that applies all three algorithms to your message automatically

Installation

Set up the project with Python and pipenv

Quick start

Start encrypting messages in minutes

Security notice

The algorithms implemented here are not secure for real-world use:
  • Caesar and Transposition ciphers are easily broken with frequency analysis
  • 32-bit RSA keys are extremely weak compared to industry standards (2048+ bits)
  • No advanced techniques like padding or salt are used
For production cryptography, use proven libraries like cryptography or pycryptodome.

What’s next?

Ready to get started? Head to the installation guide to set up your environment, then jump into the quick start to encrypt your first message.

Build docs developers (and LLMs) love