A Node.js API created with Typescript to encrypt text with the Cesar Cipher and crack the encryption from texts encrypted with this same cipher.
Encryption Cracking Example:
Input:
"Iziv}{livi$xlex$Qev}${irx$Xli$peqf${ew$wyvi$xs$ks2"
Output:
"Everywhere that Mary went The lamb was sure to go."
This project is a work in progress and will receive more advanced features in the future.
-
30/04/2020
Full suport for ASCI and ANSI printable Chars;
Teach route to improve the API reference table;
This project was developed with the following technologies:
- ASCII and ANSI printable characters full support;
- Atbash
- Rail-fence
- Baconian
- Simple Substitution
- Columnar Transposition
- Vigenère
- Bifid
The Cesar Cipher is one on the oldest known cipher and also one of the simplest. It is a simple substitution cipher in which each letter in the plaintext is 'shifted' a certain number of places down the alphabet.
For example:
plaintext: "attack at dawn"
password: 2
// Since the password is 2 you will shift each letter 2 positions in the alphabet.
encrypted: "cvvcem cv fcyp"
To improve the security you can add more characters to your "alphabet" as I did in this API.
Being a simple substitution cipher you can brute force it with 26 possible passwords.
But if you prefer a more elegant solution, it is possible to estimate with great precision which are the most likely passwords based on the number of times that each letter is repeated in the ciphertext.
For this you can compare your results with a relational table of the most used letters in your language.
This project is under the MIT license. See the LICENSE for details.
Made with ♥ by Victor Alvarenga 👋 Get in touch!