Skip to content

Cipher allows to encrypt the given strings with the ROT cipher. ROT 3, ROT 13, ROT 47 or ROT(1-25, the user specifies a shift) can be used.

Notifications You must be signed in to change notification settings

memorisanka/Cipher_mini_project

Repository files navigation

Cipher Mini Project

Content of Project

General info

Click here to see general information about Project Cipher! Project Cipher is a project. It allows to encrypt the given strings with the ROT cipher. ROT 3, ROT 13, ROT 47 or ROT(1-25, the user specifies a shift) can be used. .

Rot-N/Rot cipher (for Rotation) is a simple character substitution based on a shift/rotation of N letters in an alphabet. E.g. one letter is replaced by another (always the same) that is located further (exactly N letters further) in the alphabet.

The Rot-47 is a shift cipher that improves the Rot-13 by allowing it to encode almost all visible ASCII characters (where Rot13 could only encode letters). To achieve this, Rot47 uses a 94-character alphabet that is a subset of the ASCII table characters between the character 33 ! and the character 126 ~.

Modules

Click here to see information about modules! The program consists of a login module and a manager.

The login module uses the SQL lite database. The module checks if the data provided during logging in are identical to those in the database. There is also an option to create a new user. The module checks if the given username is available. The password stored in the database is encrypted.

The manager is responsible for the operation of the Cipher. It displays the menu, allows you to write encrypted words to json, decrypt a given word according to the index provided by the user.

Setup

How to run program Run main.py

Technologies

  • Python
  • Pytest
  • SQL Lite

About

Cipher allows to encrypt the given strings with the ROT cipher. ROT 3, ROT 13, ROT 47 or ROT(1-25, the user specifies a shift) can be used.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages