Package: pycryptools
It is currently under early development, but little by little new algorithms will be addedPyCrypToolsVersion 2.0.0 | 17/01 Last UpdatePyCrypTools is a python library that brings us a series of algorithms to encrypt and decrypt inputs.888       888 888     888       d8888 888
888   o   888 888     888      d88888 888
888  d8b  888 888     888     d88P888 888        (code by WUAL)
888 d888b 888 888     888    d88P 888 888            twitter.com/codewual
888d88888b888 888     888   d88P  888 888     github.com/14wual
88888P Y88888 888     888  d88P   888 888            youtube: WualPK
8888P   Y8888 Y88b. .d88P d8888888888 888     
888P     Y888  "Y88888P" d88P     888 88888888See commits updates (CHANGELOG) here:LinkInstallpipinstallpycryptoolsTerminal Commandpycryptools --algorithm -mode messageAvilale algorithm:AvilableAlgorithm:--atbash--scytale--polybios--caesar--alberti--jefferson--vigenere--morse--letter-to-numberAvilale modes:AvilableModes:-e[forencrypt]-d[fordecrypt]-n[nonemode]ExamplesResult:OWRILHO|EXAMPLEfrompycryptools.scytaleimportscytalemessage="example"keyword="random"encrypt=scytale.encrypt(message,keyword)print(encrypt)decrypt=scytale.decrypt(encrypt,keyword)print(decrypt)Modern AlgorithmsPyCrypToolscurrently has 1 modern algorithm.(Under development) Not yet availableRail FenceClassics AlgorithmsPyCrypToolscurrently has 9 classics algorithms.AtBashScytalePolybiosCaesarAlbertiJeffersonMorseVigenereLetter-NumberRail FenceAtBashUsage:frompycryptools.atbashimportAtbashmessage="example"encrypt=Atbash.encrypt(message)print(encrypt)decrypt=Atbash.decrypt(encrypt)print(decrypt)Atbash is a monoalphabetic substitution encryption algorithm. This means that it uses a single substitution table to encode all the letters in the original message. In the case of Atbash encryption, the substitution table is built from a given keyword and consists of reversing the order of the letters of the alphabet to substitute each letter of the original message.ScytaleUsage:frompycryptools.scytaleimportScytalemessage="example"keyword="random"encrypt=Scytale.encrypt(message,keyword)print(encrypt)decrypt=Scytale.decrypt(encrypt,keyword)print(decrypt)To encrypt a message, the message is written on a strip of paper or a stick and wrapped around the cylindrical object using the keyword to determine the number of columns. The message is then read across the columns, from top to bottom. The result is an encrypted message in which the letters appear in a different order than in the original message.To decrypt the message, you need to know the keyword used to encrypt it, since it determines the number of columns and the order in which the letters must be read.PolybiosUsage:frompycryptools.polybiosimportPolybiosmessage="example"encrypt=Polybios.encrypt(message)print(encrypt)decrypt=Polybios.decrypt(encrypt)print(decrypt)The Polybios cipher is a polyalphabetic substitution cipher technique that uses a 5x5 table to assign a pair of numerical coordinates to each letter of the alphabet. The table is built using a 5x5 matrix where the letters of the alphabet are placed in a specific order, rather than in alphabetical order.Alberti DiskUsage:frompycryptools.albertiimportAlbertimessage="example"outer_alphabet="ABCDEFGHIJKLMNOPQRSTUVWXYZ"inner_alphabet="XZYWVUTSRQPONMLKJIHGFEDCBA"encrypt=Alberti.encrypt(message,inner_alphabet,outer_alphabet)print(encrypt)decrypt=Alberti.decrypt(encrypt,inner_alphabet,outer_alphabet)print(decrypt)The Alberti disk is a mechanical device used to encrypt and decrypt messages using the polyalphabetic substitution cipher. It was invented by the Italian humanist and scientist Leon Battista Alberti in the 15th century. The disk consists of two overlapping wheels, each with an alphabet printed on its rim. The top wheel, known as the recorder wheel, is free to rotate and has a hole in the center through which the bottom wheel, known as the decryption wheel, can be seen.Jefferson WheelUsage:frompycryptools.jeffersonimportJeffersonmessage="jefferson"disks=Jefferson.generate_disks()encrypted=Jefferson.encrypt(message,disks);print(encrypted)decrypted=Jefferson.decrypt(encrypted,disks);print(decrypted)The Jefferson Wheel Cipher is a mechanical encryption device that uses a set of rotating disks to encrypt and decrypt messages. Each disk has the alphabet written on it in a different order, and the order of the disks can be changed to create a unique encryption key.MorseUsage:frompycryptools.morseimportMorsemessage="morse code"encrypted=Morse.encrypt(message);print(encrypted)decrypted=Morse.decrypt(encrypted);print(decrypted)Morse code is a system of representing letters, numbers, and punctuation marks by means of a series of dots and dashes of variable length. It was developed by Samuel Morse in the 19th century and was mainly used in telegraphy (telegraphing), to transmit messages through electrical signals.In Morse code, each letter, number, or punctuation mark is represented by a unique pattern of dots and dashes. For example, the letter "A" is represented by a dot followed by a dash, while the letter "N" is represented by three consecutive dashes. The space between letters is represented by a dot, while the space between words is represented by three consecutive dots.VigenereUsage:frompycryptools.vigenereimportVigeneremessage="vigenere";keyword="example"encrypt=Vigenere.encrypt(message,keyword);print(encrypt)decrypt=Vigenere.decrypt(encrypt,keyword);print(decrypt)The VigenÃ¨re cipher is a polyalphabetic substitution encryption method that uses a key-based character substitution table. The table is built from a character array, where each column represents a letter of the key and each row represents a letter of the alphabet.Letter NumberUsage:frompycryptools.letter_numberimportLetterNumbermessage="letter number"encrypt=LetterNumber.encrypt(message,keyword);print(encrypt)decrypt=LetterNumber.decrypt(encrypt,keyword);print(decrypt)Letter-to-number encryption consists of replacing each letter of the alphabet in a message with a specific number. It is a form of simple substitution ignition in which a table of correspondence between letters and numbers is used to encrypt and decrypt the message.LicenseCopyright Â© 2023 Carlos Padilla.This project isCC0 1.0 Universallicensed.ðŸš€ Know meLinkeding -https://www.linkedin.com/in/cpadilla10/Twitter -https://twitter.com/codewualYouTube -https://www.youtube.com/channel/UC0B3mTwPPdKPEwLerauEtdg