#include

#include

//函数声明

unsigned char xtime (unsigned char input);

void mixcolum(unsigned char input[4][4], unsigned char output[4][4]);版权文档,请勿用做商业用途

void imixcolum(unsigned char input[4][4], unsigned char output[4][4]);版权文档,请勿用做商业用途

//主函数

int main()

{

//定义并对自己的学号进行填充

unsigned char input[4][4] = {'2','0','1','0','1','2','1','0','5','8','0','0','0','0','0','0'}; unsigned char mixcolum_output[4][4]; 版权文档,请勿用做商业用途

unsigned char imixcolum_output[4][4];

int i, j;

mixcolum(input,mixcolum_output);

imixcolum(mixcolum_output,imixcolum_output);

//以下代码是按格式输出:明文,列混合后的密文,逆列混合后恢复的明文

printf("\n 明文是:\n\n");

for (i = 0; i < 4; i++)

{

for(j = 0; j < 4; j++)

{

printf("%c ",input[i][j]);

}

}

printf("\n\n 列混合之后是:\n\n");

for (i = 0; i < 4; i++)

{

for(j = 0; j < 4; j++)

{

printf("%c ",mixcolum_output[i][j]);

}

}

printf("\n\n 逆列混合之后是:\n\n");

for (i = 0; i < 4; i++)

{

for(j = 0; j < 4; j++)

{

printf("%c ",imixcolum_output[i][j]);

}

}

printf("\n");

return 0;

}

//一下为三个函数

unsigned char xtime (unsigned char input) // x乘法('02'乘法) 版权文档,请勿用做商业用途

{

int temp;

temp = input<<1; //二进制串左移一位

if(input & 0x80) //判断如果相与如果b7==1,就执行与27相异或版权文档,请勿用做商业用途

{

temp ^= 0x1b;

}

return temp;

}

void mixcolum(unsigned char input[4][4], unsigned char output[4][4]) //列混合算法 版权文档,请勿用做商业用途

{

int i, j;

for(j=0; j< 4; j++)

{

for(i=0; i<4; i++)

{

output[i][j] = xtime(input[i%4][j]) //0x02乘法 版权文档,请勿用做商业用途

^ ( input[ ( i + 1 ) % 4][j] ^ xtime( input[ ( i + 1 ) % 4][j] ) ) //0x03乘法 版权文档,请勿用做商业用途

^ input[ ( i + 2 ) % 4][j] //0x01乘法 版权文档,请勿用做商业用途

^ input[ ( i + 3 ) % 4][j]; //0x01乘法 版权文档,请勿用做商业用途

}

}

}

void imixcolum(unsigned char input[4][4], unsigne

aes c语言 逆列混合函数,c语言aes列混合和逆列混合的实现(3页)-原创力文档相关推荐

  1. 计算机二级链表,计算机二级c语言上机考试——结构体与链表(3页)-原创力文档...

    1:某学生的记录由学号.8门课程成绩和平均分组成, 学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:求出该学生的平均分,并放入记录的ave成员中. void fun(STREC *a ...

  2. C语言数组测试函数,(完整word版)C语言数组与函数阶段测试题答案---(20200807070313)(8页)-原创力文档...

    } } C语言数组与函数阶段测试题答案 一.选择题( 18*2=36 分) 1. 在定义" int a[5][6]; "后,第 11个元素是 [ C ] A.a[2][5] B . ...

  3. 山东大学 计算机技术基础 c语言 去年 大补考 的 试题,山东大学专科《计算机基础》试题参考答案(4页)-原创力文档...

    专科<计算机基础>试题 单项选择 1.完整的计算机系统由( C )组成. A.运算器.控制器.存储器.输入设备和输出设备 B.主机和外部设备 C.硬件系统和软件系统 D.主机箱.显示器.键 ...

  4. C语言对p1口取反,单片机c语言编程基础(5页)-原创力文档

    单片机的外部结构: 1. DIP40双列直插: 2. P0,P1,P2,P3四个8位准双向I/O引脚:(作为I/O输入时,要先输出高电平) 3. 电源VCC(PIN40)和地线GND(PIN20): ...

  5. c语言常用符号与英文,C语言常用符号与英文(7页)-原创力文档

    C语言常用符号与英文 c语言的符号含义 main() {int w=4,x=3,y=2,z=1; printf("%d\n"): 优质解答 举例: a=1; b=2; a>b ...

  6. c语言围棋对弈程序设计,C语言围棋对弈程序设计(59页)-原创力文档

    C语言围棋对弈程序设计 用C语言编写一个围棋对弈棋室的程序,模仿两人对弈的过程,其中包括自动提子功能,和自动点目功能. 1.围棋的一些基本常识: (1)围棋棋子的"气" 见右图1所 ...

  7. 大学c语言11页,C语言程序设计题库(11页)-原创力文档

    一.选择题(每题 1 分,共 20 分) 1.C 语言程序从 main() 函数开始执行,所以这个函数要写在( D ). A .程序文件的开始 B .程序文件的最后 C.它所调用的函数的前面 D .程 ...

  8. 每个c语言程序写完后 都要按照,c语言基础学习小结(习题总结)(5页)-原创力文档...

    书山有路勤为径 学海无涯苦作舟 一.思考题. 1.你如何向别人解释清楚什么是编程.什么是计算机语言? 2.什么是C语言? 二.解答题. 1.用C语言编写程序:求任意两个整数的和.如果是小数的话,要求输 ...

  9. 歌手比赛系统c语言程序注释,C语言程序课程设计—歌手比赛系统(20页)-原创力文档...

    淮南师范学院 课程设计报告 歌手比赛系统 姓 名:胡欢欢 学号: 1008010109 专 业:计算机科学与技术 班 级: 10 级( 1)班 指导教师:彭飞 职称: XXX 2013 年 3 月 7 ...

最新文章

  1. 一位职场老鸟的 10 年复盘,帮你避坑不吃亏!
  2. 文件上传服务器jvm调优,JVM性能调优解决方案(12页)-原创力文档
  3. [摘录]遇见未知的自己(一)
  4. 修改session的存储机制
  5. Keras处理TIFF图像
  6. Hadoop生态圈以及各组成部分的简介
  7. c++中判断某个值在字典的value中_Python核心知识系列:字典
  8. python测试开发面试题_python测试开发面试之深浅拷贝
  9. 打乱 数字_崔召幼儿园中班悦享时光——亲子益智游戏数字配对
  10. 的生物合成方式主要包括_J EXP BOT 综述| 植物次级代谢产物在调控微生物组组分及功能中的作用...
  11. 关于苹果Mac上设置固件密码的方法?
  12. 每天CookBook之JavaScript-018
  13. paip.android APK安装方法大总结系统应用的安装
  14. 双电阻差分电流采样_电阻电桥基础
  15. 虚拟化部署----USB Server
  16. php session fixation,什么是session fixation攻击
  17. P1967 货车运输( 最大生成树+LCA or Kruskal重构树)
  18. 大脑神经中枢分布图结构,大脑神经网络结构图片
  19. 如何确定抽样的样本数量
  20. java编程思想----8,对象的容纳

热门文章

  1. 29 个 PHP 的 Excel 处理类
  2. 博客园上海地区活动——LinkCoder主题社区第二期:淘宝服务化架构的设计和实践...
  3. java的字符串指针数组,C语言字符串中的指针与数组
  4. Java接口四个类四则运算_java 实现四则运算小程序
  5. 操作系统知识点大总结
  6. Python之网络编程(实现一个多用户同时在线的FTP用户管理程序)
  7. android 字母搜索栏,android仿微信通讯录搜索示例(匹配拼音,字母,索引位置)
  8. c++向量和数组的区别_Matlab入门基础知识(5)对数组的操作
  9. cookie可存的最大限制_一文梳理Web存储,从cookie,WebStorage到IndexedDB
  10. 1900页Python系列PPT分享四:字符串与正则表达式(109页)