DES类密码体制的差分分析

一.DES的简介

      Data Encryption Standard(DES),虽然已被淘汰使用,但是对于研究密码攻击人员,学习差分分析很有必要。

      首先简单介绍一下DES工作原理,是分组密码的一种,明文是64位,每一轮的子密钥是56位。16轮Feistel结构。下图是一个3轮的例子。


1.首先,64位明文经过初始置换(Initial Permutation,IP)函数,对明文进行初始置换。初始置换只进行一次,在第一轮之前进行,根据初始置换表进行(在我看来就是打乱初始明文的顺序)

2.初始置换之后,64位明文被分成左右两部分明文,称左明文L0,右明文R0.

3.每一轮DES都包括以下:

(1)子密钥变换,一开始密钥是有64位,分别放弃第8i(i=1,...,8)位得到56位密钥,56位密钥经过压缩置换表选择其中的48位。

(2)扩展置换,扩展置换是将右明文R0从32位扩展到48位。具体过程大概是把右明文R0分为8组,每一组4位,然后每个4位通过重复第1位和第4位扩展为6位,经过扩展置换之后右明文变为了48位。

(3)S盒置换,如下图所示。经过扩展之后的48位右明文R0和48位子密钥进行异或反应。异或之后的48位分成8组,每组6位,分别进入Si(i=1,...,8)盒,每一个S盒通过查表把6位转换成4位,最后形成32位输出。

(5)异或和交换。最初的左明文L0和P盒置换之后输出的结果进行异或运算,形成下一轮的右明文。最初的右明文是下一轮的左明文。如下图所示(以三轮为例)

4.经过16轮之后,最后,把左明文和右明文重新连接起来,对组成的块进行最终置换(Final Permutation,FP),最终置换只进行一次,最终置换之后,输出64位密文。

二.差分分析简介

1.差分分析的原理

  差分分析是一种选择明文攻击,通过分析明文对中的差异对结果密文的差分的影响,这些差分是用来给可能的密钥进行分配概率,确定最有可能的密钥。差分在这里指的是明文对的异或。

2.3轮DES的差分分析

  我们以3轮DES为例,选择明文异或,L0’为任意值,R0'=0.找出在第三轮中进入S1盒的6个子密钥比特,以下图为例,设L是初始的左明文,R是初始右明文,l是三轮之后的输出密文。a,b,c分别代表第一轮第二轮第三轮的输入异或,A,B,C分别代表第一轮,第二轮,第三轮的输出异或。根据DES基本原理,我们可以得出结论 l=L(+)A(+)C(这里不能添加异或符号,用(+)代替)。针对本例选择的明文,R0’=0,所以a=0,自然A=0.所以l=L(+)C,即C=l(+)L.

        假设k是输入S1盒的可能对数,再回顾一下F函数中关于S盒的工作流程,首先输入6比特的值(Se)和6位密钥(Sk)进行异或,异或之后进入S盒成为进入S盒的实际值(Si表示),得出Sk=Se(+)Si.

      进一步举例说明,如果在DES第三轮里面进入S1的密文比特分别是Se=1,Se*=35,且输出XOR是D,则Sk的值一定会在下表中出现。(我来解释一下为什么哦,首先输入对一个是1,一个是35,那他们的输入异或是34,输出异或是D,我们可以查S1XOR分布表,共有8对,实际不算顺序应该只有4对,跟师姐请教之后说应该是穷举得出的。如下表,然后根据Sk=Se(+)Si,每一行都产生两个密钥,分别是Se(+)Si,Se*(+)Si)

3.n轮特征

     3.1一轮特征

     下面一轮特征概率是1(对任何L'),这是概率大于1/4的唯一一圈特征。该特征在破译DES型密码体质的所有特征中具有特殊的重要性。(这个很好理解,输入异或是0,那么这两个输入值相同,输出的值一定相同,则输出异或一定是0)

下面这一轮特征的概率是14/64.

  a'=0110,0000,0000,0000,0000,0000,0000,0000    

a’经过扩展之后是001100,000000,000000,000000,000000,000000,000000,000000  (C,0,0,0,0,0,0,0)x

   A'=0000,0000,1000,0000,1000,0010,0000,0000

P置换之后是(E0000000)x

接下来查S1盒的XOR分布表,可以发现Cx——>Ex,概率p=14/64,其余都是0x——>0x,p=1,所以整个这一轮的特征概率是14/64.

2.三轮特征

这种情况是可能出现的,当X=19600000时,概率大约是1/234,用来对9轮及以上的DES进行攻击。

3.六轮DES的破译

    六轮DES9比三轮DES更加复杂,采用两个p=1/16的统计特征,选择最常计算的密码值。在这两个特征中,每一个特征都能找到K6的30个密钥比特,加上公用的3个S盒,所以由两个特征发现的密钥比特为42,其他的14个密钥比特可以通过穷举得出。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,402评论 6 499
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,377评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,483评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,165评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,176评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,146评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,032评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,896评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,311评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,536评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,696评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,413评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,008评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,815评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,698评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,592评论 2 353

推荐阅读更多精彩内容