没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
密钥加解密实验
一、实验描述
本实验的学习目的是让学生熟悉加密的概念,熟悉和了解加密算法(cipher)、加密模式
(encryption mode)、以及初始向量(IV)的定义与作用。此外,学生还可以通过使用工具来编写
基 于 Openssl 库 的 C 语 言 程 序 来 实 现 消 息 的 加 密 / 解 密 。 可 以 参 见 实 验 楼 课 程 :
https://www.shiyanlou.com/courses/241。
二、实验环境
1. 本实验中,将使用 openssl 命令行工具及其库。实验环境中已自带命令行工具,需
安装 openssl 开发库。
2. 具体实验环境:linux 加载 Openssl 库或者使用 windows 平台的 MinGW 加载 OpenSSL
库(BB 平台可以下载编译好的 MinGW 和相关使用文档),两种平台上都可以进行实验,任
选其一。
3. Linux 平台可以使用虚拟机软件 VM 或者 VirtualBox 来加载 Ubuntu 或者 CentOS 镜像。
如果不了解虚拟机相关安装方法可以参见:http://www.cis.syr.edu/~wedu/seed/lab_env.html,
网页上有较详细的 VirtualBox 下的 Ubuntu 镜像(两种版本建议选择 Ubuntu16.04)和详细的
安装方法(User Manual),安装方法百度也可。
4. Linux 下 Openssl 库的加载方法:
$ sudo apt-get update
$ sudo apt-get install libssl-dev
5. 另外本实验还需要十六进制编辑器。Windows 平台下,可以使用 winhex 或其他编辑
器(第一次作业已用到)。linux 平台可以使用 bless 十六进制编辑器,可以使用命令:$ sudo
apt-get install bless
三、实验内容
3.1 使用 openssl enc 命令来加密/解密一个文件。
命令基本格式如下:
$ openssl enc ciphertype -e -in plain.txt -out cipher.bin -K 00112233445566778899aabbccddeeff
-iv 0102030405060708
请将上述命令代码中的 ciphertype 替换成指定的加密类型,比如-aes-128-cbc, -aes-128-cfb,
-bf-cbc 等,在本实验中你至少需要使用三种不同的密码(cypher)与加密模式(encryption mode)
可以通过输入 man enc 命令了解到各选项的含义以及 openssl 所支持的所有加密类型。
在实验报告中回答下面问题:
1. 配置好实验环境,并截图。
2. 创建一个文本文件,并任意输入内容,保存后作为输入文件,执行上面的命令行中的加
密命令,给出实验结果截图。然后使用对应的解密命令,解密加密文件,并对比解密后的输
出和原始输入文件是否相似。
3. 找一张 bmp 图片(可以使用 bb 平台提供的 bmp 图片,也可以使用其他任意 bmp 图片),
作为输入文件,分别采用 aes-128-ecb 方式和 aes-128-cbc 方式加密并输出为图像文件。如果
食色也
- 粉丝: 30
- 资源: 351
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- juhua-p8YYy-v0e13a7b5(1).apk
- Neo4j资源:Neo4j.rb的性能测试相关程序
- 排序算法之堆排序算法:用C++语言实现堆排序算法
- 基于Springboot的房屋租赁系统(源代码+论文+说明文档+PPT)-计算机专业精品毕业设计和课程设计
- leidian.py
- 直接插入排序算法:C语言实现直接插入排序算法
- 基于Springboot的大学生就业招聘系统(源代码+论文+说明文档+PPT)-计算机专业精品毕业设计和课程设计
- 基于Vue的H5结婚请帖前端设计源码
- saxaxasxasx
- 基于SSM++jsp的实验室耗材管理系统(源代码+论文+说明文档+PPT)-计算机专业精品毕业设计和课程设计
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0