[][src]Struct ciphers::Playfair

pub struct Playfair { /* fields omitted */ }

A Playfair cipher implementation

Methods

impl Playfair[src]

pub fn new(key: &str, pad: char) -> Self[src]

Takes the key for the Playfair cipher and returns a corresponding Playfair struct.

Panics

  • If key is not 25 chars in length.
  • If key is not valid ascii.
  • If key contains repeated characters.
  • If pad is not contained within key.

Trait Implementations

impl Cipher for Playfair[src]

fn encipher(&self, ptext: &str) -> CipherResult[src]

Enciphers the given plaintext (a str reference) using the Playfair cipher and returns the ciphertext as a CipherResult.

Example

use ciphers::{Cipher, Playfair};

let playfair = Playfair::new("ZGPTFOIHMUWDRCNYKEQAXVSBL", 'X');

let ctext = playfair.encipher("DEFENDTHEEASTWALLOFTHECASTLE");
assert_eq!(ctext.unwrap(), "RKPAWRPMYSELZCLFXUZFRSNQBPSA");

fn decipher(&self, ctext: &str) -> CipherResult[src]

Deciphers the given ciphertext (a str reference) using the Playfair cipher and returns the plaintext as a CipherResult.

Example

use ciphers::{Cipher, Playfair};

let playfair = Playfair::new("ZGPTFOIHMUWDRCNYKEQAXVSBL", 'X');

let ptext = playfair.decipher("RKPAWRPMYSELZCLFXUZFRSNQBPSA");
assert_eq!(ptext.unwrap(), "DEFENDTHEXASTWALLOFTHECASTLE");

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]