HILL加密算法的C语言实现
来源:互联网 发布:switch case用法 java 编辑:程序博客网 时间:2024/05/01 08:09
找到一个HILL加密算法,做了一个简单的修改,源码如下:
#include<stdio.h> #define N 3 //可加密的字符串长度---------------------------------------------------------------------------------------------------------------char plaintext[N]; //明文,输入时输入字符,参与运算时强制转换成整数int ciphertext[N]; //密文,保存成整数,输出时强制转换成字符int key[N][N]; //密钥矩阵,也就是密匙----------------------------------------------------------------------------------------------------------------void getPlainText() //获得明文字符串{printf("请输入明文:");scanf("%s",plaintext); printf("\n"); }---------------------------------------------------------------------------------------------------------------- void getKey() //输入密钥矩阵{int i,j; printf("请输入加密矩阵:\n"); for(i=0;i<N;i++) for(j=0;j<N;j++) scanf("%d",&key[i][j]); printf("\n"); }---------------------------------------------------------------------------------------------------------------- void hill() //Hill加密算法{int i,j; for(i=0;i<N;i++){ //矩阵的乘法for(j=0;j<N;j++){ //计算转换依据,0~25对应a~z ciphertext[i]+=key[i][j]*(int)(plaintext[j]-'a'); ciphertext[i]%=26; } } printf("\n"); }----------------------------------------------------------------------------------------------------------------- void printCipherText() //输出加密后的密文{int i; printf("加密后的密文是:");for(i=0;i<N;i++) //把参与计算后是整数强制转换成对应的字符printf("%c",(char)(ciphertext[i]+'a')); printf("\n"); }------------------------------------------------------------------------------------------------------------------- void main() { getPlainText(); //明文getKey(); //密钥hill(); //加密printCipherText(); //密文}
0 0
- HILL加密算法的C语言实现
- Hill 加密算法
- DES加密算法的C语言实现
- DES加密算法的C语言实现
- AES 加密算法的 C 语言实现
- AES 加密算法的 C 语言实现
- RSA加密算法的C语言实现
- Hill密码的加密与解密(C语言)
- 凯撒加密算法C语言实现
- c语言实现idea加密算法
- MD5加密算法C语言实现
- C语言实现MD5加密算法
- c语言des加密算法实现
- 一个简单的加密算法Kaiser(C语言实现)
- DES加密算法—实现(C语言)
- MD5加密算法(c语言实现)
- 学习笔记-C语言实现MD5加密算法
- DES加密算法—实现(C语言)
- kerberos 认证方式-主机认证
- 第四周作业
- POJ1481_The die is cast(DFS+DFS)
- mysql重装卸载不干净 Error 1045
- 1、关于The connection to adb is down, and a severe error has occurred 启动android模拟器时.有时会报The connection
- HILL加密算法的C语言实现
- hibernate的一点总结
- PHP将文本网址转成超链接
- 生活日记1
- uboot 12.04 ctags cscope shell file.
- UVA784_Maze Exploration(DFS)
- 基于网络环境下的教育教学新思路初探
- Mysql精简方式140M->4M
- UVA439_Knight Moves(BFS)