Affine_Cipher_加密解密
1.0.0
作者: Leo Martinez III - LinkedIn
联系方式: [email protected]
创建时间: 2024 年春季
此 Python 程序实现了仿射密码(一种替代密码),用于加密和解密消息。仿射密码使用一对密钥 alpha (a) 和 beta (b) 将明文转换为密文,反之亦然。
加密公式为:E(x) = (ax + b) mod m,其中 x 是明文字母索引,a 和 b 是密钥,m 是字母表大小。
该程序处理不区分大小写的情况并忽略输入中的空格。
密文是通过使用仿射变换转换明文的每个字母而生成的。
解密公式为:D(y) = (a_inv * (y - b)) mod m,其中 y 为密文字母索引,a_inv 为 a 的模乘逆,b 为密钥,m 为字母表大小。
与加密类似,该程序处理不区分大小写的情况并忽略输入中的空格。
该程序提示用户在加密(“e”)或解密(“d”)之间进行选择。
用户输入 alpha (a) 和 beta (b) 值,确保它们落在有效范围内。
执行 GCD(最大公约数)检查以确保输入有效。
提供密文和明文的示例值用于测试目的。
程序是在 Google Colab 中使用 Python 3.9 创建的
运行该程序所需的所有内容以及附加安装信息都将包含在此文件夹中。
以下是项目的简要说明:
src:包含源代码python脚本的文件夹:main.py(使用此文件运行程序)
README.md:包含该项目的最基本信息
LICENSE:包含有关 Github 存储库的许可证信息
此外,请确保“数学”python 正确安装在虚拟环境中,因为需要 .gcd() 方法来确保错误检查以协助解密完整性。