Skip to content

sbauer322/classic-crypto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

classic-crypto

Basic classic cryptography algorithms such as Affine, Hill Digraph, Shift, and Vigenere Square implemented in vanilla Haskell. classic-crypto was created for a class taken on introductory cryptology. Its purpose was to expedite boring and otherwise trival, yet time consuming, computations rather than perform them by hand. Originally, it was used interactively to encode and decode simple messages.

It is doubtful I will need this library again as I have not used Haskell since this was completed. It was a learning aid and I do not intend to expand upon it at this time. That said, feel free to submit pull requests or issues and I will be happy to assist.

Use

This library was created to be used interactively via a REPL. Chances are it could be used programatically, but it was never attempted.

For the most part the modules are broken down by the algorithm they encipher and decipher. Core function naming should be consistent (more or less) across modules. Util.hs plays are role in centralizing often used functions such as I/O.

Functions named along the lines of cryptanalysis typically mean the function is used for attempting to break the cipher.

Development was done on the Haskell Platform.

Only strings of the normal case insensitive English alphabet (A-Z) were used.

About

Super basic classic crypto such as Affine, Hill Digraph, Shift, and Vigenere Square in Haskell.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors