【信息安全】基于CBC的3DES加解密-实验报告

实验运行效果截图

3DES进行加密

3DES进行解密

然后可以选择你想要的操作,继续加密解密或者退出。

基于CBC模式的3DES加解密

一、实验内容

基于3DES加解密算法,编程实现对任意文件实现加解密的软件。

  1. 编程实现DES加密和解密算法,并使用DES加解密算法实现3DES加解密算法。
  2. 选择一种填充方式,对需要加密的文件进行填充。
  3. DES的加解密的工作模式,采用密码分组链接(CBC)模式。
  4. 读取/写入被加密/解密文件时,采用字节流的形式进行文件读取/写入。字节流的查看采用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位。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/411728.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android活动(activity)与服务(service)进行通信

文章目录 Android活动(activity)与服务(service)进行通信活动与服务进行通信服务的生命周期 Android活动(activity)与服务(service)进行通信 活动与服务进行通信 上一小节中我们学…

基于FPGA的SD卡的数据读写实现(SD NAND FLASH)

文章目录 目录 1、存储芯片分类 2、NOR Flash 与 NAND Flash的区别 3、什么是SD卡? 4、什么是SD NAND? 5、SD NAND的控制时序 6、FPGA实现SD NAND读写 1、存储芯片分类 目前市面上的存储芯片,大致可以将其分为3大类: ① …

【回眸】QAC软件指南——错误分析篇(完整版)

前言 近期需要再次测一下代码,相比以前测试更有经验,也做了比较多的记录,正好将经验通过博客保留下来,为以后可能的QAC测试做准备。 安装导入分析代码 这部分在上一篇中已经详细介绍,具体请见,如有疑问可…

百元蓝牙耳机什么牌子的好?四大宝藏机型真实推荐,快速收藏!

作为一位蓝牙耳机爱好者,无论是上班、娱乐、学习我都离不开蓝牙耳机。通勤时候能听听音乐,是最好的享受,可以让我更加放松,尽情享受音乐带来的乐趣。但市面上的大多数蓝牙耳机都是货不对板的,不是音质一般、就是续航时…

谷歌发布 3 款 Gemini 新模型;字节开源 FLUX Dev Hyper SD Lora,8 步生图丨 RTE 开发者日报

开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

Seata执行原理分析-AT、XA、TCC、SAGA比较

分布式事务简介 1.1 本地事务 大多数场景下,我们的应用都只需要操作单一的数据库,这种情况下的事务称之为本地事务(Local Transaction)。本地事务的ACID特性是数据库直接提供支持。本地事务应用架构如下所示: 在JDBC编程中,我们…

priority_queue模拟

一、什么是priority_queue? priority_queue是C标准库中的一个容器适配器,用于实现优先队列(priority queue)的数据结构。优先队列是一种特殊的队列,其中的元素按照一定的优先级进行排序,每次取出的元素都是优先级最高…

从零开始掌握Vue实例

从零开始掌握Vue实例:深入理解数据绑定与生命周期的核心秘诀 引言 简要介绍主题: 在学习Vue.js的过程中,Vue实例是最基础也是最关键的部分。Vue实例是Vue应用的核心,它是数据、DOM元素和Vue组件之间的桥梁。掌握Vue实例的使用对于…

文件上传面板中限制需要的文件格式,并且隐藏“所有文件”选项

直接说需求:需要实现在文件上传面板中限制需要的文件格式,并且不想展示“所有文件”这个选项,应该怎么做嘞?效果如下图: 这里用到了 window.showOpenFilePicker 方法实现,首先定义接受的格式及限制&#xf…

格行“信号增强技术”引领行业创新,格行随身WiFi带你感受不一样的速度与激情,行业第一的随身WiFi并非浪得虚名!

近年来,随着市场保有量的不断提升与相关技术的不断扩展,我国随身WiFi市场已经到了发展质量更高的“2.0”阶段,消费者对随身WiFi的需求变得多元且“高级”。与之对应的供给端,品牌之间的竞争也从未停止,有的品牌选择卷价…

如何使用ssm实现实验室仪器设备管理系统

TOC ssm354实验室仪器设备管理系统jsp 绪论 1.1 研究背景 当前社会各行业领域竞争压力非常大,随着当前时代的信息化,科学化发展,让社会各行业领域都争相使用新的信息技术,对行业内的各种相关数据进行科学化,规范化…

快来尝尝,食家巷荞面甜甜圈超赞

当荞面与甜甜圈相遇,便诞生了食家巷荞面甜甜圈,一种独具特色的美食体验。 食家巷荞面甜甜圈,外形圆润可爱,色泽金黄诱人。那精致的环状造型,仿佛是一个小小的魔法圈,散发着迷人的魅力。 与传统甜甜圈…

计算机网络面试真题总结(七)

文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 文章收录在网站:http://hardyfish.top/ 什么是对称加密、非对称加密? 对称加密是一种常用的加…

探索AI智能问答:改变未来交流的新动力

人工智能(AI)是当今科技领域中最具潜力和影响力的技术之一,AI智能问答系统更是这一领域中的一颗璀璨明珠。随着大数据和机器学习的发展,AI智能问答系统已经不仅仅是科幻小说中的幻想,而是正逐步融入我们的日常生活,从客户服务到教…

生成式AI扩散模型-Diffusion Model【李宏毅2023】概念讲解、原理剖析笔记

目录 一、Diffusion的基本概念和运作方法 1.Diffusion Model是如何运作的? 2.Denoise模块内部正在做的事情 如何训练Noise predictor? 1)Forward Process (Diffusion Process) 2)noise predictor 3.Text-to-Image 4.两个A…

入门Java第一步—>IDEA的下载与安装与JDK的环境配置(day01)

1.JDK的下载与安装 jdk的安装链接分为不同操作系统如下,点击链接跳转下载页面: windows操作系统JDK下载链接(按住键盘ctrl键单击链接即可): 链接7天有效,有需要的评论区找我哈 通过网盘分享的文件:jdk-8u271-windows-x64.exe 链…

人工智能如何将人机交互提升到新水平

随着人工智能模型在语音识别和合成、文本处理和多模态性方面的卓越表现,终极语音用户界面可能很快就会无处不在。欢迎来到雲闪世界。 添加图片注释,不超过 140 字(可选) 那是一个典型的星期五下午,我们刚刚结束了一个…

如何用wireshark分析找出url接口和param参数???

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

Linux 内核源码分析---IPv6 数据包

IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。 由于IPv4最大的…

Tapd敏捷开发平台的使用心得

Tapd敏捷开发平台的使用心得 一、Tapd 简介 TAPD(Tencent Agile Product Development),腾讯敏捷产品研发平台行业领先的敏捷协作方案,贯穿敏捷产品研发生命周期的一站式服务,了解敏捷如下图 二、几个核心模块概念 需求迭代缺陷故事墙前期项目需求的管理,可以按类别建…