实验运行效果截图
3DES进行加密
3DES进行解密
然后可以选择你想要的操作,继续加密解密或者退出。
基于CBC模式的3DES加解密
一、实验内容
基于3DES加解密算法,编程实现对任意文件实现加解密的软件。
- 编程实现DES加密和解密算法,并使用DES加解密算法实现3DES加解密算法。
- 选择一种填充方式,对需要加密的文件进行填充。
- DES的加解密的工作模式,采用密码分组链接(CBC)模式。
- 读取/写入被加密/解密文件时,采用字节流的形式进行文件读取/写入。字节流的查看采用UltraEdit的十六进制查看模式,UltraEdit是一款功能强大的实用的专业文本编辑器。
二、实验原理
2.1 DES加解密原理
DES算法是一种对称密码算法,也是一种分组加密的算法,以64位分组对数据加密的,其密钥长度为64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位,使得每个密钥都有奇数个1),分组后的明文组和56位的密钥按位替代或交换的方法形成密文组。当64位明文数据块都经过DES加密处理后,所得到的n个64位密文数据块串在一起就是密文。
DES算法的主要流程如下图所示 。
1、 IP置换
IP置换目的是将输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,
每部分各长32位。