2 unstable releases
0.2.0 | Jan 2, 2022 |
---|---|
0.1.0 | Mar 8, 2020 |
#1648 in Cryptography
48 downloads per month
20KB
183 lines
skipjack.rs
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):
- To represent safe, idiomatic Rust in a cryptographic context
- To be easy to read and understand with a minimal understanding of Rust, even without a background in cryptography
- 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.