Generate simple encrypted messages!

Overview

Premio's Shift is a very simple text encryption, you can use it to send secret messages to your friends.

Table of Content

How it works

  • A Shift is a message encrypted using Premio's Shift.
  • Every Shift has a key to encrypt and decrypt
  • The key has no char limit
  • A key only has alphabetic characters and numbers, everything else is ignored
  • Messages have a position, being 0 the initial state

Lets look at this example using the message "ahz159" and key "2ca".

Position Message
0 ahz159
1 cja380
25 ydy104
  1. First, the key is converted to a list of key numbers, in this case: [2, 3, 1]
    • 2 is a number, so we keep it;
    • "c" is a letter, so we get it's position in the alphabet, in this case: 3
    • "a" is a letter, so we get it's position in the alphabet, in this case: 1
  2. Now multiply the list by the amount if shift we want in the message
    • If the shift is 25, we multiply all the numbers inside the key numbers list, like so:
    • [2, 3, 1] * 25 = [50, 75, 25]
  3. For each letter in the message take the corresponding number in the key numbers list and then get the new letter by summing the current place in alphabet plus the corresponding number in the key number list
    • If there is no more key number list, we start over from the first number in the list

How to use

CLI Interface

You can encrypt or decrypt yout message only using your terminal.

$ python3 cli.py -h
usage: cli.py [-h] [-m MESSAGE] [-k KEY] [-s SHIFT] [-p POS] [-t TO]
Argument Flag Description
Message -m / --message The message to shift
Key -k / --key The key to use in the shifting process
Shift -s / --shift optional, the total steps to shift
Pos -p / --pos optional, the initial position of the message
To -t / --to optional, will move the correct amount of steps to move the message to this position. (requires -p value)

Simple shift

A simple shift, encrypting the message "Hello world" with the key 123.

$ python3 cli.py -m "Hello world" -k 123 -s 25
Gcikm vmokb

Decrypt a message

Using the result from the example above, its possible decrypt the message knowing the current position the message is.

$ python3 cli.py -m "Gcikm vmokb" -k 123 -s -25
Hello world

It is also posible to use the From and To arguments to decrypt a message.

$ python3 cli.py -m "Gcikm vmokb" -k 123 -p 25 -t 0
Hello world

Using From and To

In this example the message is decrypted and then is shifted +1.

$ python3 cli.py -m "Gcikm vmokb" -k 123 -p 25 -t 0 -s 1
Igomq xqumf
Owner
Peterson Adami Candido
Peterson Adami Candido
Atomkraft - Lightweight e2e testing for cosmos blockchains

Atomkraft End-to-end testing of Cosmos blockchains should be easy and reproducib

Informal Systems 57 Dec 16, 2022
This is a simple Bitcoin non-deterministic wallet address generator coded in Python 3.

This is a simple Bitcoin non-deterministic wallet address generator coded in Python 3. It generates a Private Key in different formats (hex, wif and compressed wif) and corresponding Public Addresses

7 Dec 22, 2022
The (Python-based) mining software required for the Nintendo Switch mining project.

ntgbtminer - Nintendo Switch edition This is a version of ntgbtminer that works with the Nintendo Switch bitcoin miner. ntgbtminer ntgbtminer is a no

4 Jun 03, 2021
Accounting Cycle Program with Blockchain Component

In the first iteration of my accounting cycle program, I talked about adding in a blockchain component that allows the user to verify the inegrity of

J. Brandon Walker 1 Nov 29, 2021
Python binding to the Networking and Cryptography (NaCl) library

PyNaCl: Python binding to the libsodium library PyNaCl is a Python binding to libsodium, which is a fork of the Networking and Cryptography library. T

Python Cryptographic Authority 941 Jan 04, 2023
A simple graphical interface for encrypting sentences

A simple graphical interface for encrypting sentences

Marcus Vinícius Ribeiro Andrade 1 Oct 09, 2021
Tink is a multi-language, cross-platform, open source library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.

Tink A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse. Ubuntu

Google 12.9k Jan 05, 2023
Accept Bitcoin donations on Twitch, and integrate them into your alerts!

The system in action Check out how seamlessly the project works! Support the project You can tip me with some sats here!

Fitti 27 Jan 08, 2023
Fully configurable automated python script to collect most visted pages based on google dork

Ranked pages collector Fully configurable automated python script to collect most visted pages based on google dork Usage This project is still under

Security Analyzer 9 Sep 10, 2022
Hide secret data within a digital image using good ol' terminal

pystego Hide secret data within a digital image using good ol' terminal Installation The recommended way for installing this package is using, python

Ayush Gupta 1 Jan 06, 2022
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers.

pyca/cryptography cryptography is a package which provides cryptographic recipes and primitives to Python developers. Our goal is for it to be your "c

Python Cryptographic Authority 5.2k Dec 30, 2022
EncryptAGit - Encrypt Your Git Repos

EncryptAGit - Encrypt Your Git Repos

midnite_runr 25 Oct 06, 2022
Technical_indicators_cryptos - Using technical indicators to find optimal trading strategies to deploy onto trading bot.

technical_indicators_cryptos Using technical indicators to find optimal trading strategies to deploy onto trading bot. In the Jup Notebook you wil

Van 4 Jul 03, 2022
offline half-random brute force script for Ethereum private keys

eth200swinger offline half-random brute force script for Ethereum private keys, goes from the beginning to end of range and vice versa, saves any foun

2 Oct 06, 2022
Python implementation of EIP 1577 content hash

ContentHash for Python Python implementation of EIP 1577 content hash. Description This is a simple package made for encoding and decoding content has

Filip Š 11 Jul 19, 2022
Pogramme de chiffrement et déchiffrement césar d'un message en python3.

Chiffrement Cesar En Python3 Pogramme de chiffrement et déchiffrement césar d'un message en python3. Explication du chiffrement César avec complexité

Malik Makkes 1 Mar 26, 2022
📊Python implementation of the Colin Talks Crypto Bitcoin Bull Run Index (CBBI).

Colin Talks Crypto Bitcoin Bull Run Index (CBBI) This is a Python implementation of the Colin Talks Crypto Bitcoin Bull Run Index (CBBI). It makes use

Kamil Monicz 86 Jan 02, 2023
Audit of classmate's smart contract in blockchain seminar

Solidity-contract-audit Audit of classmate's smart contract in blockchain seminar Assignment: The task was to create a complete audit, including unit

smrza 0 Feb 04, 2022
A really, really bad way to encrypt your text

deoxyencryptingnucleicacids A really, really bad way to encrypt your text. A general description of the scheme Encoding: The ascii plaintext is first

Sam Pinkerton 1 Nov 01, 2021
PeGuard - Windows PE crypter and packing utility

PEGUARD PEGUARD is a file crypter and packing utility. This project was original

11 Nov 28, 2022