All Projects → ajitzero → scram-cli

ajitzero / scram-cli

Licence: MIT License
A command-line utility to encode messages. Python 3.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to scram-cli

VBCorLib
The VBCorLib framework brings many of the powerful .NET classes to VB6.
Stars: ✭ 81 (+523.08%)
Mutual labels:  encoding
deen
Generic data DEcoding/ENcoding application built with PyQt5.
Stars: ✭ 45 (+246.15%)
Mutual labels:  encoding
velvet-video
Java library for encoding / decoding / muxing / demuxing video and audio in various formats
Stars: ✭ 32 (+146.15%)
Mutual labels:  encoding
h264-roi
H.264 video Region of Interest encoding tool, using x264
Stars: ✭ 44 (+238.46%)
Mutual labels:  encoding
7uring
An advanced cryptography tool for hashing, encrypting, encoding, steganography and more.
Stars: ✭ 15 (+15.38%)
Mutual labels:  encoding
dark-lord-obama
AV-evading Pythonic Reverse Shell with Dynamic Adaption Capabilities
Stars: ✭ 61 (+369.23%)
Mutual labels:  encoding
librcnb
Everything can be encoded into RCNB.
Stars: ✭ 14 (+7.69%)
Mutual labels:  encoding
posprinterdriver
Android ESC/POS Printer Driver (https://play.google.com/store/apps/details?id=com.fidelier.posprinterdriver) usage notes
Stars: ✭ 61 (+369.23%)
Mutual labels:  encoding
libVES.c
VESvault End-to-End Encryption API: Encrypt Everything Without Fear of Losing the Key
Stars: ✭ 28 (+115.38%)
Mutual labels:  encryption-algorithms
Lingo
Text encoding for modern C++
Stars: ✭ 28 (+115.38%)
Mutual labels:  encoding
harsh
Hashids implementation in Rust
Stars: ✭ 48 (+269.23%)
Mutual labels:  encoding
urdu-characters
📄 Complete collection of Urdu language characters & unicode code points.
Stars: ✭ 24 (+84.62%)
Mutual labels:  encoding
avro ex
An Avro Library that emphasizes testability and ease of use.
Stars: ✭ 47 (+261.54%)
Mutual labels:  encoding
go-kml
Package kml provides convenience methods for creating and writing KML documents.
Stars: ✭ 67 (+415.38%)
Mutual labels:  encoding
vcdiff
Heavily optimized .NET Core vcdiff library
Stars: ✭ 16 (+23.08%)
Mutual labels:  encoding
bytes-java
Bytes is a utility library that makes it easy to create, parse, transform, validate and convert byte arrays in Java. It supports endianness as well as immutability and mutability, so the caller may decide to favor performance.
Stars: ✭ 120 (+823.08%)
Mutual labels:  encoding
base58
Fast implementation of base58 encoding on golang.
Stars: ✭ 121 (+830.77%)
Mutual labels:  encoding
staxrip
StaxRip is a video encoding app for Windows with a unrivaled feature set and usability.
Stars: ✭ 132 (+915.38%)
Mutual labels:  encoding
ceu-cloud-class
This is the repo for the Data Engineering 3 - Cloud and Big Data Computing course delivered at the Central European University ceu.edu
Stars: ✭ 15 (+15.38%)
Mutual labels:  encryption-algorithms
iconv
Fast encoding conversion library for Erlang / Elixir
Stars: ✭ 45 (+246.15%)
Mutual labels:  encoding

Scram CLI

forthebadge

A command-line utility to encode messages, built with Click (Python 3).

This project is created for learning about command-line application development and practicing the implementation of encoding algorithms. This project is NOT meant for production and hasn't been tested thoroughly.

Installation

git clone [email protected]:AjitZero/Scram-CLI.git
cd Scram-CLI
pip install .

Development Setup

Tested on Ubuntu 18.04 LTS and Windows 10.

git clone [email protected]:AjitZero/Scram-CLI.git
cd Scram-CLI
python3 -m venv env
source env/bin/activate
pip install --editable .

To exit the Virtual Environment, simply enter deactivate.

Documentation


Usage: scram [OPTIONS]

  scram encodes/encrypts the entered string depending on the chosen
  algorithm. Ignores non-alphabets.

Options:
  -h, --hash-type [affine|ascii|atbash|binary|caeser|morse|none|polybius-square|reverse|reverse-words|vignere]
                                  Choose algorithm.
  -v, --version                   Show current version.
  --help                          Show this message and exit.

Examples

$ scram -h caeser
Enter your message to be encoded: AjitZero
Enter offset: 5
Output: FonyEjwt
Copy result to clipboard? [y|n]: y
Copied to clipboard successfully.

$ scram -h morse
Enter your message to be encoded: Ajit Zero
Output: .- .--- .. - / --.. . .-. ---
Copy result to clipboard? [y|n]: n
Command terminated normally.

Contributing

All existing encoding algorithms require a corresponding decoder function. Have at it if you're interested!

  1. Fork it.
  2. Create your feature branch. (git checkout -b feature/yourfeature)
  3. Commit your changes. (git commit -am 'Add some yourfeature')
  4. Push to the branch. (git push origin feature/yourfeature)
  5. Create a new Pull Request and link an issue with it.

Resources

Topic Reference Link
Affine cipher Wikipedia Source
ASCII code Wikipedia Source
Atbash cipher Wikipedia Source
Book cipher Wikipedia Source
Caesar cipher Wikipedia Source
Morse code GeeksForGeeks Source
Polybius Square Wikipedia Source
Vigenère cipher Wikipedia Source

Meta

Ajit Panigrahi – @AjitZero – Ping me on Twitter or Email me for any queries.

Distributed under the MIT License. See LICENSE for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].