Skip to content

A straight-line implementation of the Skipjack cipher in Rust

Notifications You must be signed in to change notification settings

5l1v3r1/skipjack.rs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skipjack.rs

Build Status

Note: Skipjack is not suitable for contemporary use. This library exists as an example, and not for consumption.

skipjack.rs is a straight-line (meaning no branches or loops) Rust implementation of the Skipjack cipher, best known for its use by the NSA in the Clipper chip.

skipjack.rs has three primary goals (all for educational purposes, for yours truly):

  1. To represent safe, idiomatic Rust in a cryptographic context
  2. To be easy to read and understand with a minimal understanding of Rust, even without a background in cryptography
  3. To directly reflect the NIST specification for Skipjack (i.e., no optimizations or shortcuts)

Design

This implementation attempts to adhere closely to the NIST-provided specification in design, and does not support any modes of operation other than single-block codebook.

Installation

You should not use Skipjack (or skipjack.rs) for anything serious. But, if you'd like to play with it, you can install it via cargo:

[dependencies]

skipjack = "0.1.0"

Documentation is available on docs.rs.

About

A straight-line implementation of the Skipjack cipher in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%