关于DES雪崩效应的扩展(原创)

扩展DES雪崩效应 众所周知(对密码学有一点研究的),DES是每8位明文进行一次加密的。。而DES在每8位明文的加密中有着很好雪崩效应(就是对明文或者密钥改变1bit都会引起密文的巨大不同)。但是这也决定了DES对大量明文同时加密雪崩效应不明显。现举一例:用密钥infosecu加密这一段密文:HuaZhong University is so good a university ranked 5th in chi 阅读详情

     众所周知(对密码学有一点研究的),DES是每8位明文进行一次加密的。。而DES在每8位明文的加密中有着很好的雪崩效应(就是对明文或者密钥改变1bit都会引起密文的巨大不同)。但是这也决定了DES对大量明文同时加密时雪崩效应不明显。现举一例:

用密钥infosecu加密这一段密文:HuaZhong University is so good a university ranked 5th in china

得出的密文为:?K?-MíV?iA?B¥6?<a?DP¢WMd?PF?r|óq??éêg?YaùzJ?HPìò6üì'?81?+?

现把明文中的"good"改成"geod"得出密文

?K?-MíV?iA?B¥6?<a?DP¢Wq??.?óq??éêg?YaùzJ?HPìò6üì'?81?+?

两者比较一下

"good"     ?K?-MíV?iA?B¥6?<a?DP¢WMd?PF?r|óq??éêg?YaùzJ?HPìò6üì'?81?+?

"goed"     ?K?-MíV?iA?B¥6?<a?DP¢Wq??.?óq??éêg?YaùzJ?HPìò6üì'?81?+?

可以看到,密文绝大部分没有改变,也就是DES的雪崩效应只发生在goed所在的8位密文中,而对总体密文雪崩效应不强。。现对算法加强使其对总体密文都具有很好的雪崩效应。。原理如下

以64个字符的明文为例,每8个一组进行第一次DES加密,得到8组共64字节密文,现对密文进行如下分组

取出每组的第一个字符重新构成一个8各字符的分组,然后把每组的第二个字符取出同样构成8个字符的分组

这样,我们得到了密文的新的8组分组,而每组当中各有一个字符来源于原来的8个分组当中。再对新8组分别进行DES加密。也就是说,对明文的1bit的改动,导致原始某一分组的8个字节改动,而上述分组方法又把8个字节的改动平均分配到新8组中的改动,从而导致新8组经过再一次DES加密后产生的64个字符全部发生改变(建基于DES对8字符的极好雪崩效应)。。同样用上一例说明改动效果

"good"      ?zsí??±f/?VCa?°?T?]]é×_]¢S7g?V?°O?§?ê?Y?W¢E?éfWO?ò?P"?°§Q.

"goed"     B?a?T2èê?PèR?5?t?CbC[L?R??S'÷??8????OìT6+èe§v?°wL??§??^ü

可以看到,只改动一个字符,全部64个字符的密文均发生了改变,用同样的方法,我们可以把雪崩效应扩展到对更多的明文字符都产生很好的雪崩效应。

DES算法详解及实现(C语言) DES算法详解及C语言实现 阅读详情

相关推荐

DES 算法

DES全称为Data Encryption Standard,即数据加密标准,是一种使用对称密钥的分组加密算法,它是1972年由美国IBM公司研制的对称密码体制加密算法。 明文按64位进行分组,每次对一个分组进行加密;密钥长64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位, 使得每个密钥都有奇数个1),分组后的明文组和56位的密钥进行迭代加密,输出也是64bit。

哦o7575 的博客 9574

密码学实验S-DES加解密系统

实验要求:开发实现一个S-DES和RSA加解密系统,在界面上输入明文和密钥,系统可以输出正确的密文。通过曲线图分析算法雪崩效应

信息加密与哈希函数

古典密码学 <1>凯撒密码(替换思想) 消息的加密是通过将当前字母替换为在常规字母表中第n个位置之后的那个字母来完成的. <2>换位思想 保持所有字母数量不变,只改变字母的排列,一般是将明文写在一个给定大小的矩阵中,然后对行和列依据特定的序列进行置换操作. 优点:明文的统计信息完全分散在了密文中,对于“基于明文消息中所包含的统计信息的攻击行为”具备一定的抵抗力。 缺陷:不像简单替换密码那样,双换位密码并没有对消息中出现的明文字母做任何掩饰和伪装。 <3&g..

weixin_48080785的博客 1068

DES雪崩效应DES加解密代码(Python)

密码设计者将雪崩效应奉为圭臬,作者做了一个针对DES算法雪崩效应实验,希望能给正在学密码学的你们,提供一些思路

数据加密算法--详解DES加密算法原理与实现

DES算法简介 DES(Data Encryption Standard)是目前最为流行的加密算法之一。DES是对称的,也就是说它使用同一个密钥来加密和解密数据。 DES还是一种分组加密算法,该算法每次处理固定长度的数据段,称之为分组。DES分组的大小是64位,如果加密的数据长度不是64位的倍数,可以按照某种具体的规则来填充位。 从本质上来说,DES的安全性依赖于虚假表象,从密码学的术语来讲...

weixin_30779691的博客 5924

DES算法初探

本篇博客为阅读《深入浅出密码学——常用加密技术原理与应用》一书,内容有所参考和引用,部分图片和表格采用了原文,版权归原书和原作者所有,如有侵权请告知删除,在此表示感谢!DES算法是一种典型的对称加密算法,关于对称加密算法的介绍可参照我的另外一篇博客。DES算法已经不再安全,因为它的密钥空间实在太小,然而DES算法的设计理念比较优秀,是研究密码学的基础。1. 序列加密和分组加密对称加密分为分组加密和序

菜鸟进阶中。。。 1万+

DES雪崩效应分析

明文固定,密钥改变一个字节 假定明文为11111111(00000001 00000001 00000001 00000001 00000001 00000001 00000001 00000001); 密钥为12345678(00000001 00000010 00000011 00000100 00000101 00000110 00000111 00001000)。 密钥变动为103456...

weixin_30244681的博客 5509

DES雪崩效应和密码强度和随机性测试

《密码学导论》实验报告 PB15051157 茹思淞 1、实验内容及要求 题目一:分组密码的轮数对雪崩效应的影响 编写 DES 或 AES 加密/解密算法算法中迭代轮数可自由设定。 针对不同的迭代轮数, 测试并统计当明文改变 1 个比特, 或密钥改变 1 个比特时, 密文的变化。 a) 至少测试 3 种不同的迭代轮数 b) 统计时,

SiSong_Ru的博客 7912

DES加密算法解析

一个更严格的定义是严格雪崩效应准则SAC(Strict Avalanche Criterion),参见文献[WEBS86],即对于所有的i和,它要求若S 盒的输入的任意一位i发生变化,输出的任意位i发生变化的可能性为 1/2(参见附录S 中关于S 盒的讨论)尽管 SAC是对S盒而言的,作为个标准它同样适用于整个F函数。其中该系统的密钥位是已知的。函数F给 Feistel密码注入了混淆的成分,F 的明显标准是非线性,任何形式的分析就会越困难,越难将F近似表示为某些线性等式,F的非线性度就越高。

s2765504026的博客 5548

对称加密算法(三)(DES

DES 加密算法介绍

myDarling_的博客 1693

对称密码(DES

1.编码(≠加密)过程明文字母→ASCII(十进制)→二进制。

2401_88324198的博客 475

DES算法设计

DES算法设计 一、摘要 项目 DES算法设计 明文 02468aceeca86420 密钥 0f1571c947d9e859 密文 DA02CE3A89ECAC3B 时间 0.000590848922729s 加密方法及大体思路 运用各种线性非线性加密表格,以及轮函数和子密钥对明文进行加密,最终得到密文 运行环境 PyCharm Community Edition 2020.1.1;IDLE(python 3.7 64-bit) 二、正文 (一)、获得密文并估计时间

weixin_55759908的博客 2154

4.3 DES的一个例子

这一节通过一个具体的例子展示了DES算法加密过程,并通过雪崩效应的实验强调了算法的敏感性和安全性。通过跟踪明文、密钥和密文的变化,我们可以更深入地理解DES算法的工作原理和其安全性特点。DES加密过程的展示:本节通过一个具体的例子详细展示了DES加密的每一步,包括初始置换、16轮迭代和逆初始置换。子密钥的应用:每轮迭代中使用不同的子密钥,并展示了这些子密钥如何影响每一轮的输出。雪崩效应:通过改变明文或密钥中的一位来展示雪崩效应,即微小的输入变化如何导致密文的显著不同,这是加密算法安全性的关键指标。

tang7mj的博客 253

区块链基础知识——哈希函数

哈希函数是一种数学函数,可根据输入的内容输出其对应的哈希值。散列函数的输入具有任意长度,但输出始终具有固定的长度。

qq_53633989的博客 2364

微服务架构之雪崩效应

雪崩效应,在微服务系统中,是一个很常见的现象,对于其解决或者避免方式,每个开发人员的理解见仁见智,但方案无非就是以上几种,具体使用哪种,则依赖于具体的场景。比如,笔者从业于某互联网公司的广告相关业务,在节假日的时候,流量会较平时增加,也遇到过因为流量变大导致的整个系统短时间内访问异常的情况,解决方案有以下几种:1、提前扩容,针对可能存在性能瓶颈的服务实例,节前提前扩容,做到临时以防万一。2、服务降级。

延宝小白马的博客 469

DES算法原理

DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位(每组的第8位作为奇偶校验位),产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 轮循环,使用异或,置换,代换,移位操作四种基...

dongxuek的博客 1690

DES加密算法|密码学|网络空间安全

DES简介 数据加密标准(Data Encryption Standard,缩写为 DES)是一种对称密钥加密块密码算法,它基于使用56位密钥的对称算法。 然而DES现在已经不是一种安全的加密方法,主要因为它使用的56位密钥过短。 算法原理与流程 DES是一种分组加密算法,每次都处理固定的64位大小的明文,返回64位的密文,对于长度为n的,可以分成若干个64位的,剩余的小于64位的可以按照某种具体的规则来填充位。 流程大概这样是 这个过程中有三个重要的框架: 左边的Feistel加密结构 右上角的密钥生

Suryxin's blogs 6700

DES算法(C++实现)

DES算法的本质就是置换,通过多轮次多变化的置换将64bit的数据加密成密文,从而达到除了暴力破解(遍历密钥)之外没有其他(足够高效的)解法的目的。DES算法的相关原理网上都有比较详尽的描述,理解起来并不困难,只是实现起来稍有点麻烦,一不小心就有可能出错。在我实现的过程中主要参考了网上的一篇 博客,实现之后的结果可以正常加密出结果,解密之后也可以得出原文,同时具有雪崩效应

PTkin的博客 2960
上一篇: DES加密算法在C#下的实现
下一篇: 扩展DES的雪崩效应
tren
博客等级 码龄22年 1粉丝 5原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值