Home
This package provides access to encryption and decryption of strings according to a variety of classical algorithms. Classical ciphers were created before computers, and thus work on letters rather than bits.
The Solitaire cipher is included for completeness, though it is perhaps not strictly classical.
Currently implemented ciphers:
- Caesar
- Affine
- Monoalphabetic substitution
- Vigenère
- Portas
- Hill
- Playfair
- Enigma (M3 Army)
- Solitaire
- Rail Fence
- Atbash
Contents
Installing ClassicalCiphers.jl
julia> using Pkg
julia> Pkg.add("ClassicalCiphers")
Index
Main.ClassicalCiphers.AbstractPair
Main.ClassicalCiphers.adjugate
Main.ClassicalCiphers.construct_railfence
Main.ClassicalCiphers.crack_affine
Main.ClassicalCiphers.crack_caesar
Main.ClassicalCiphers.crack_monoalphabetic
Main.ClassicalCiphers.crack_monoalphabetic
Main.ClassicalCiphers.crack_vigenere
Main.ClassicalCiphers.decrypt_affine
Main.ClassicalCiphers.decrypt_atbash
Main.ClassicalCiphers.decrypt_caesar
Main.ClassicalCiphers.decrypt_enigma
Main.ClassicalCiphers.decrypt_hill
Main.ClassicalCiphers.decrypt_monoalphabetic
Main.ClassicalCiphers.decrypt_playfair
Main.ClassicalCiphers.decrypt_portas
Main.ClassicalCiphers.decrypt_railfence
Main.ClassicalCiphers.decrypt_solitaire
Main.ClassicalCiphers.decrypt_vigenere
Main.ClassicalCiphers.encrypt_affine
Main.ClassicalCiphers.encrypt_atbash
Main.ClassicalCiphers.encrypt_caesar
Main.ClassicalCiphers.encrypt_enigma
Main.ClassicalCiphers.encrypt_hill
Main.ClassicalCiphers.encrypt_monoalphabetic
Main.ClassicalCiphers.encrypt_playfair
Main.ClassicalCiphers.encrypt_portas
Main.ClassicalCiphers.encrypt_railfence
Main.ClassicalCiphers.encrypt_solitaire
Main.ClassicalCiphers.encrypt_vigenere
Main.ClassicalCiphers.frequencies
Main.ClassicalCiphers.index_of_coincidence
Main.ClassicalCiphers.playfair_key_to_square
Main.ClassicalCiphers.string_fitness
Main.ClassicalCiphers.swap_two