没有合适的资源?快使用搜索试试~ 我知道了~
信息安全个人基础实验报告.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 181 浏览量
2021-09-13
17:02:54
上传
评论
收藏 1.11MB DOCX 举报
温馨提示
试读
37页
。。。
资源推荐
资源详情
资源评论
实验 4 信息隐藏和加解密
——关于 DES 和 RSA 加密算法的实验报告
实验环境与实验目的:C 语言,完成对记事本格式文件的信息隐藏(加密)和提
取(解密)过程。
DES 算法概述 DES 算法为密码体制中的对称密码体制,又被称为美国数据加密
:
标准,是 1972 年美国 IBM 公司研制的对称密码体制加密算法。 明文按 64 位进
行分组,密钥长 64 位,密钥事实上是 56 位参与 DES 运算(第 8、16、24、32、
40、48、56、64 位是校验位, 使得每个密钥都有奇数个 1)分组后的明文组和
56 位的密钥按位替代或交换的方法形成密文组的加密方法。
DES 算法实现过程:
从子密钥 Ki的生成算法描述图中我们可以看到:初始 Key值为 64位,但 DES
算法规定,其中第 8、16、......64位是奇偶校验位,不参与 DES运算。故 Key
实际可用位数便只有 56位。即:经过缩小选择换位表 1 的变换后,Key 的位数
由 64 位变成了 56位,此 56位分为 C0、D0两部分,各 28位,然后分别进行第
1 次循环左移,得到 C1、D1,将 C1(28位)、D1(28位)合并得到 56位,再
经过缩小选择换位 2,从而便得到了密钥 K0(48位)。依此类推,便可得到K1、
K2、......、K15。
#include "memory.h"
#include <tchar.h>
{ENCRYPT,DECRYPT}; //ENCRYPT==0 表示加密 DECRYPT==1表示解密
char bufer[1024]; //定义了一个 1024个字符组来充当计算过程中的临时变
char key[64];
//定义了一个接受密匙的字符组
char context[1024]; //定义了一个 1024个字符的组来存储明文 和密文的空间
58, 50, 42, 34, 26, 18, 10, 2,
60, 52, 44, 36, 28, 20, 12, 4,
62, 54, 46, 38, 30, 22, 14, 6,
64, 56, 48, 40, 32, 24, 16, 8,
57, 49, 41, 33, 25, 17, 9, 1,
59, 51, 43, 35, 27, 19, 11, 3,
61, 53, 45, 37, 29, 21, 13, 5,
63, 55, 47, 39, 31, 23, 15, 7
};
const static char IPR_Table[64] =
{
// 32位置换函数 P 使用的 S 盒的输出
const static char P_Table[32] = {
16, 7, 20, 21,
剩余36页未读,继续阅读
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功