Crate classic_crypto[][src]

Expand description

A number of classical ciphers implemented in Rust, with the capability to supply a character set for any [Language].

Modules

error
key

All key representations reside in this module, even if said key is only used for a single cipher. All keys implement the Key trait, and any keys that have state implement StatefulKey (lookup tables such as ClassicVigSquare do not need to implement this trait). Keys typically implement KeyFrom<T> and SetKey<T> for initialization and set operations.

lang

Module containing structs for generalizing cipher algorithms, so that individual ciphers are only aware of the requirements of the cipher alphabet, such as the number of letters needed.

util

Contains functions that are used across the library

Structs

Affine
Atbash
Autokey
Baconian
Beaufort
Bellaso
BlockTransposition
Caesar
ClassicVigenere
ColumnTransposition
Enigma
KeyedVigenere
Morse
Porta
Railfence
Rot13
Scytale
SimpleSubstitution

Traits

Asymmetric

Trait implemented by Asymmetric ciphers (where encryption and decryption are unique operations).

Keyed

Trait implemented by ciphers that require a Key

Solve

Trait implemented by ciphers which can be automatically solved

Symmetric

Trait implemented by Symmetric ciphers (where encryption and decryption are identical).