#加密 #rust-crypto #维吉尼亚 #加密

modernized_vigenere

现代化的维吉尼亚算法

3 个版本

0.1.2 2022 年 5 月 13 日
0.1.1 2022 年 4 月 26 日
0.1.0 2022 年 4 月 25 日

#1252 in 密码学

33 每月下载量
mod_vig 中使用

MIT 许可证

7KB
73

modernized_vigenere


关于

请查看 https://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher 以了解维吉尼亚密码的简要定义。
正如您所看到的,这种加密/解密是基于基于加密/解密短语进行字母移位。
但自16世纪以来,时间已经改变了
传递信息的主要方式不再是纸张(使用字母表字母)。

今天,我们使用文件(不仅仅是ASCII文件)。
因此,这个现代化的库不是移位字母,而是字节!

因此,这个库不仅可以用于加密/解密ASCII文件,还可以用于加密/解密任何类型的文件(是的,甚至二进制文件)。


用法

只需将其

[dependencies]
modernized_vigenere = "0.1"

添加到您的项目的 Cargo.toml 文件中。
然后您可以在代码中使用该包。

函数

  • encrypt,使用参数 <输入文件> <密钥短语> <输出文件>
  • decrypt,使用参数 <输入文件> <密钥短语> <输出文件>

最简单的示例

应该是

use modernized_vigenere;

fn main() {
  modernized_vigenere::encrypt("/usr/bin/ls", "This is the en/de-cryption phrase","/tmp/ls_encrypted" );
  modernized_vigenere::decrypt("/tmp/ls_encrypted", "This is the en/de-cryption phrase", "/tmp/ls_decryted" );
}

执行时,它将加密的 ls 二进制文件写入 /tmp/ls_encrypted,
并将 /tmp/ls_encrypted 的解密版本写入 /tmp/ls_decrypted

$ cksum /usr/bin/ls /tmp/ls_encrypted /tmp/ls_decryted
4050025970 146392 /usr/bin/ls
2888056681 146392 /tmp/ls_encrypted
4050025970 146392 /tmp/ls_decryted

问候

感谢所有参与 rust、cargo、atom 或任何包的开发的人。

没有运行时依赖