pub struct Scytale { /* private fields */ }
Expand description

A Scytale cipher.

This struct is created by the new() method. See its documentation for more.

Trait Implementations§

Initialize a Scytale cipher with a specific cylinder height.

Panics
  • The key is 0.

Encrypt a message using a Scytale cipher.

Whilst all characters (including utf8) can be encrypted during the transposition process, it is important to note that the space character is also treated as padding. As such, whitespace characters at the end of a message are not preserved during the decryption process.

Examples

Basic usage:

use cipher_crypt::{Cipher, Scytale};

let s = Scytale::new(6);
assert_eq!("Pegr lefoporaryr !", s.encrypt("Prepare for glory!").unwrap());

Decrypt a message using a Scytale cipher.

Examples

Basic usage:

use cipher_crypt::{Cipher, Scytale};

let ct = Scytale::new(6);
assert_eq!("Prepare for glory!", ct.decrypt("Pegr lefoporaryr !").unwrap());

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.