1 个不稳定版本
0.1.0 | 2019年8月25日 |
---|
#2149 在 密码学
72KB
964 行
Ciphers v0.1.0
Ciphers 是一个 Rust 库,提供了许多经典密码的实现。
开始使用,请查看 文档。
1. 支持的密码
目前有 16 种支持的密码。
转置 | 单字母表 | 多字母表 | 多图形 | 其他 |
---|---|---|---|---|
栅栏密码 | 简单替换 | 维吉尼亚密码 | Playfair 密码 | ADFGX 密码 |
列转置密码 | 凯撒密码 | 博福特密码 | 四方形密码 | ADFGVX 密码 |
仿射密码 | 自动密钥密码 | |||
波利比乌斯方阵 | 滚动密钥 | |||
阿塔巴什密码 | 波尔塔密码 |
2. 安装
只需将以下内容放入你的 Cargo.toml。
[dependencies]
ciphers = "0.1.0"
3. 示例用法
例如,使用 维吉尼亚密码。
use ciphers::{Cipher, Vigenere};
fn main() {
let vigenere = Vigenere::new("examplekey");
// encipher
let ctext = vigenere.encipher("someexampletexthere").unwrap();
println!("ciphertext: {}", ctext);
// decipher
let ptext = vigenere.decipher(&ctext).unwrap();
println!("plaintext: {}", ptext);
}
ciphertext: WLMQTIEWTJIQEJISIBI
plaintext: SOMEEXAMPLETEXTHERE
4. 待实现
目前有 6 种待实现的密码。
转置 | 单字母表 | 多字母表 | 多图形 | 其他 |
---|---|---|---|---|
Rot13 | 格罗恩斯菲尔德密码 | 希尔密码 | 双分密码 | |
三重密码 | ||||
交错棋盘密码 |