Skip to content

Develop Secure Multi-Cipher CLI Tool in Python #11

@HashSlap

Description

@HashSlap

Description:
Create a Python-based command-line tool that allows users to choose between multiple ciphers (Caesar, AES, Vigenère) to encrypt or decrypt data securely. The tool should include secure key handling and support for both string and file-based encryption. This project introduces contributors to real-world CLI applications and modular encryption architecture.

Expected Tasks:

  • Create a new folder: tools/
  • Build a multi_cipher_tool.py script with:
    • CLI argument parsing (argparse) to select cipher, mode, input, and key
    • Integration of existing Caesar, AES, and Vigenère implementations
    • A simple CLI interface (e.g., --cipher aes --mode encrypt --input "hello" --key "1234")
  • Implement secure key generation and storage for AES
  • Add support for reading and writing to text files
  • Create a MULTI_CIPHER.md documenting:
    • Architecture
    • CLI options
    • Example use cases
  • Update the root README.md with a short description and link

Stretch Tasks:

  • Add support for encryption of images or PDFs
  • Include a secure password-based key derivation function (e.g., PBKDF2)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions