资源简介
古典密码算法的设计与实现(C++实现) ,仿射密码,置换密码,hill密码,序列密码https://blog.csdn.net/qq_32261191/article/details/78802233
代码片段和文件信息
#include
#include
#include
using namespace std;
int main()
{
string m;
int buffer[4];
int a[4];//存放m*A mod 26的结果
int b[16];//存放m和A的转置矩阵的乘积
//矩阵A的转置矩阵
int A[] = { 86510
6986
95411
51094 };
cout << “输入明文:“ << endl;
cin >> m;
system(“title = 加密“);
//把字符转化成10进制整数
for (int i = 0; m[i] != ‘\0‘; i++)
{
buffer[i] = m[i] - 97;
}
cout << “明文对应的数字:“ << endl;
for (int i = 0; i<4; i++)
{
cout << buffer[i] << ““;
}
cout << endl;
//加密C = m * A mod 26,把结果放入数组a
for (int i = 0; i<16; i++)
{
b[i] = buffer[i % 4] * A[i];
}
for (int i = 0; i < 16; i += 4)
{
a[i / 4] = (b[i] + b[i + 1] + b[i + 2] + b[i + 3]) % 26;
if (a[i / 4] < 0)
a[i / 4] += 26;
}
//转换为字符
cout << “密文为:“ <
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 998 2018-01-03 16:56 古典密码算法的设计与实现(C++实现)\hill加密.cpp
文件 848 2018-01-03 16:44 古典密码算法的设计与实现(C++实现)\hill解密.cpp
文件 920 2018-01-03 16:44 古典密码算法的设计与实现(C++实现)\仿射加密.cpp
文件 1175 2018-01-03 16:45 古典密码算法的设计与实现(C++实现)\仿射解密.cpp
文件 1506 2018-01-03 16:47 古典密码算法的设计与实现(C++实现)\序列密码加密.cpp
文件 1294 2018-01-03 16:49 古典密码算法的设计与实现(C++实现)\序列密码解密.cpp
文件 669 2018-01-03 16:45 古典密码算法的设计与实现(C++实现)\置换加密.cpp
文件 476 2018-01-03 16:45 古典密码算法的设计与实现(C++实现)\置换解密.cpp
目录 0 2018-05-11 14:54 古典密码算法的设计与实现(C++实现)
----------- --------- ---------- ----- ----
7886 9
- 上一篇:51单片机智能秒表有清零启动暂停功能有代码,通过
- 下一篇:C++回合制战斗系统
评论
共有 条评论