分组密码和数据加密标准

合集下载

密码学分组密码

密码学分组密码
4. 加密和解密运算简单,易于软件和硬件的高速实现。
5. 数据扩展。一般无数据扩展,在采用同态置换和随机化 加密技术时可引进数据扩展。
6. 差错传播尽可能小。
设计分组密码常用的一些方法介绍 1. 代换
将n长的明文分组变换为唯一n长密文分组, 这样的变换是可逆的,称明文分组到密文 分组的可逆变换为代换。
D1(28 位)
8 2 16 1
(56 位) 置换选择 2
k1
(48 位)
循环左移
循环左移
Ci(28 位)
Di(28 位)
置换选择 2 ki
(56 位)
(48 位)
置换选择1和置换选择2
DES解密
和Feistel密码一样,DES的解密和加密使 用同一算法,只是子密钥的使用顺序相 反。
子密钥是独立产生的,可以独立存储。
DES加解密过程
令i表示迭代次数,表示逐位模2求和,f为加密函
数。DES的加密和解密过程表示如下。
加密过程:
L0R0 IP( 64bit输入码 )
பைடு நூலகம்
Li Ri1
i 1,2,,16
Ri Li1 f (Ri1, ki ) i 1,2,,16
64bit密文 IP1(R16L16 )
解密过程:
20 21 22 23 24 25
24 25 26 27 28 29
28 29 30 31 32 1
E的作用:
将32比特 的输入膨 胀为48比 特。
则输出为:B = t32 t1 t2 …… t32 t1
选择扩展运算:
12 34 56 78 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

密码学——精选推荐

密码学——精选推荐

密码学密码学符号说明:D(K,Y) ⽤密钥K和对称算法解密密⽂YD(PR a,Y) ⽤A的私钥PR a和⾮对称算法解密密⽂YD(PU a,Y) ⽤A的公钥PR a和⾮对称算法解密密⽂YE(K,X) ⽤密钥K和对称算法加密明⽂XE(PR a,,X) ⽤A的私钥和对称算法加密明⽂XE(PU a,X) ⽤A的公钥和对称算法加密明⽂XK 密钥PR a⽤户A的私钥PU a⽤户A的公钥C 密⽂P 明⽂gcb(a,b) 表⽰a和b的最⼤公因⼦OSI安全框架安全攻击:分为被动攻击和主动攻击。

被动攻击包括⾮授权阅读消息、⽂件以及流量分析。

主动攻击包括对消息或⽂件的篡改以及拒绝服务等。

安全机制:安全机制是⼀种处理过程(或实现该处理过程的设备),⽤来检测、阻⽌攻击或者从攻击状态恢复为正常状态。

安全机制的例⼦有加密算法、数字签名和认证协议。

安全服务:安全服务包括认证、访问控制、数据保密性、数据完整性、⾮否认性以及可⽤性。

密码算法和协议的4个领域对称加密:⽤于加密任意⼤⼩的数据块或数据流的内容,包括消息、⽂件、加密密钥和⼝令。

⾮对称加密:⽤于加密⼩的数据块,如加密密钥或数字签名中使⽤的Hash函数值。

数据完整性算法:⽤于保护数据块(例如⼀条消息)的内容免于修改。

认证协议:有许多基于密码算法的认证⽅案,⽤来认证实体的真实性。

对称密码模型对称加密⽅案有5个基本成分明⽂:原始可理解的消息或数据,是算法的输⼊加密算法:加密算法对明⽂进⾏各种代替和变换密钥:密钥也是加密算法的输⼊。

密钥独⽴于明⽂和算法。

算法根据所⽤的特定密钥⽽产⽣不同的输出。

算法所⽤的确切代替和变换也依靠密钥。

密⽂:作为算法的输出,看起来完全随机⽽杂乱的消息,依赖于明⽂和密钥。

对于给定的消息,不同的密钥产⽣不同的密⽂,密⽂看上去是随机的数据流,并且其意义是不可理解的。

解密算法:本质上是加密算法的逆运算。

输⼊密⽂和密钥,输出原始明⽂。

注:发送者和接收者必须在某种安全的形式下获得密钥并且必须保证密钥安全。

杨波,_《现代密码学(第2版)》第三章 3.1-3.4节

杨波,_《现代密码学(第2版)》第三章 3.1-3.4节

所谓扩散,就是将明文的统计特性散布到密文 所谓扩散,就是将明文的统计特性散布到密文 扩散 中去, 中去,实现方式是使得密文中每一位由明文中多位 产生 。 例如对英文消息M=m1m2m3…的加密操作 例如对英文消息 的加密操作
k yn = chr ∑ ord ( mn+i )( mod 26 ) = ii=1 其中ord(mi)是求字母 i对应的序号,chr(i)是求序 是求字母m 其中 是求字母 对应的序号, 是求序 对应的字母。 号i对应的字母。这时明文的统计特性将被散布到 对应的字母 密文中, 密文中,因而每一字母在密文中出现的频率比在明 文中出现的频率更接近于相等, 文中出现的频率更接近于相等,双字母及多字母出 现的频率也更接近于相等。在二元分组密码中, 现的频率也更接近于相等。在二元分组密码中,可 对数据重复执行某个置换, 对数据重复执行某个置换,再对这一置换作用于一 函数,可获得扩散。 函数,可获得扩散。
表示n=4的代换密码的一般结构,4比特输入产 的代换密码的一般结构, 比特输入产 图3.2表示 表示 的代换密码的一般结构 个可能输入状态中的一个, 生16个可能输入状态中的一个,由代换结构将这一 个可能输入状态中的一个 状态映射为16个可能输出状态中的一个 个可能输出状态中的一个, 状态映射为 个可能输出状态中的一个,每一输出 状态由4个密文比特表示 个密文比特表示。 状态由 个密文比特表示。
加密映射和解密映射可由代换表来定义,如表3.1 加密映射和解密映射可由代换表来定义,如表 所示。这种定义法是分组密码最常用的形式, 所示。这种定义法是分组密码最常用的形式,能用于 定义明文和密文之间的任何可逆映射。 定义明文和密文之间的任何可逆映射。
如果分组长度太小, 如果分组长度太小,系统 密码,容易通过对明文的统计分析而被攻破。 从实 现的角度来看,分组长度很大 很大的可逆代换结构是不 现的角度来看,分组长度很大的可逆代换结构是不 实际的。 实际的。 仍以表3.1为例,该表定义了n=4时从明文到密 仍以表 为例,该表定义了 时从明文到密 为例 文的一个可逆映射,其中第2列是每个明文分组对 文的一个可逆映射,其中第2列是每个明文分组对 应的密文分组的值,可用来定义这个可逆映射。 应的密文分组的值,可用来定义这个可逆映射。因 此从本质上来说, 此从本质上来说,第2列是从所有可能映射中决定 列是从所有可能映射中决定 某一特定映射的密钥。密钥需要64比特 一般地, 比特。 某一特定映射的密钥。密钥需要 比特。一般地, 对n比特的代换结构,密钥的大小是n×2n比特。如 比特的代换结构,密钥的大小是 × 比特。 比特的代换结构 比特的分组, 对64比特的分组,密钥大小应是 ×264=270≈1021比 比特的分组 密钥大小应是64× 因此难以处理。 特,因此难以处理。

网络安全重点-DES 和 AES

网络安全重点-DES 和 AES

对称分组加密算法:处理固定大小的明文输入分组,且对每个明文分组产生同等大小的密文分组。

有DES(数据加密标准)和AES(高级加密标准)、3DES。

DES:1.DES算法是一种用56位密钥来加密分组长度为64位数据的对称密钥算法(实际上函数要求一个64位的密钥作为输入,但是第8、16、24、32、40、48、56、64 等8位是校验位,使得每个密钥都有奇数个1,所以参与加密过程的只有56位)。

2.DES算法的入口参数有三个:Key:8个字节共64位,是DES算法的工作密钥;Data:8个字节64位,是要被加密或被解密的数据;Mode:DES的工作方式,有两种:加密或解密。

3.DES的解密过程和加密相似,解密时使用与加密同样的算法,不过子密钥(见文中解释)的使用次序要反过来。

DES算法的组成:初始置换函数IP、子密钥Ki及获取、密码函数F、逆置换函IP-1。

DES的明文分组长度为64位(比特)。

初始置换函数IP接受长度为64位的明文输入,逆置换函数IP-1输出64位的密文。

在子密钥的获取过程中,通过密钥置换Pc-1获取从Kl到K16共16个子密钥,这16个子密钥分别顺序应用于密码函数的16次完全相同的迭代运算中。

求密钥:PC2的压缩置换:输入:56位;输出:48位。

加密明文:扩展运算E:32位的R0扩展成48位。

然后R0(t48)与密钥K1进行异或得到48位结果。

S盒:S盒接收6位的输出,经过置换输出4位的数据。

总共输入有:48位;输出有:32位,得到R0(S32)。

对R0(S32)进行置换运算P,得到R0(P32)。

将R0(P32)与L0进行XOR运算得R1(32位)。

R1(32位)与L1(32位)构成第一轮加密后的结果。

s盒是DES算法的核心,它是算法中唯一的非线性部分,是算法安全的关键;有8个s盒,每个s盒输入6位,输出四位,即输入48位,输出32位;输入的6位中的第一位和第六位表示行数,中间四位表示列数,找到s盒中对应的数值。

5.6差分密码分析原理

5.6差分密码分析原理

第六节差分密码分析原理1差分分析(differential cryptanalysis)方法是一种选择明文攻击。

该方法的基本思想是: 通过分析一对特选的明文对的差相应密文对的差的影响来提取密钥信息。

这种攻击方法主要适用于攻击迭代密码。

2需要解决的问题1.是否存在差分优势?2.如何求单轮变换的差分优势?3.如何求多轮变换的差分优势?4.差分优势和选择明文的关系?34对分组长度为n 的r 轮迭代密码, 将两个n 比特串x 与x *的差分定义为:*x x x ∆=⊕ (4.8)如果给定一对n 长的明文m 和m *, 那么在密钥的控制下, 第i 轮迭代所产生的中间密文差为 *()()()c i c i c i ∆=⊕ 0i r ≤≤ (4.9)其中⊕表示比特串集合上的一个特定的群运算。

现在的差分攻击多数定义为模2运算。

概念5因为k i是第i 轮迭代的子密钥, 所以()((1),)i c i f c i k =−*()((1),)((1),)i i c i f c i k f c i k ∆=−⊕− 这里, 每轮迭代所用的子密钥ik 与明文统计独立, 且可以认为它服从均匀分布。

当i= 0时,c(0) = m, c*(0) = m*, ∆c(0) = ∆m= m⊕m* ;当i= r时,∆c=∆c(r)。

6因为k i是第i轮迭代的子密钥, 所以c(i) = f(c(i−1), k i)∆c(i) = f(c(i−1), k i) ⊕f(c*(i−1), k i) 这里, 每轮迭代所用的子密钥与明文统计独立, 且可以认为它服从均匀分布。

78例 在DES 中, 令***0000,m L R m L R ==. 如果*00R R =, 则明文差 **'000000(,0)m L R L R L α=∆=⊕=,其中'*000L L L =⊕。

9假如DES 只有一轮迭代, 而不是16 轮迭代, 那么我们根据DES 轮函数可以计算出 L 1 = R 0 L 1* = R 0*R 1 = L 0 ⊕ f (R 0, k 1) R 1* = L 0* ⊕ f (R 0*, k 1) 于是**'111110(0,)L R L R L α=⊕=→L 1⊕L 1* = 0→R 1⊕R 1* = L 0′这个差分一轮的概率是1。

国密算法标准

国密算法标准

国密算法标准
国密算法标准是指中国国家密码管理局(National Cryptography Administration,简称NCA)发布的密码算法标准,主要用于保障国家信息安全。

国密算法标准包括对称加密算法、非对称加密算法、数字签名算法等,其中的国密SM2、SM3、SM4等已成为中国密码领域的代表性算法。

以下是一些国密算法标准的主要内容:
1.SM2(椭圆曲线公钥密码算法):SM2是一种基于椭圆曲线的
非对称加密算法,用于数字签名、密钥交换等场景。

SM2算法
已广泛用于中国的数字证书和身份认证领域。

2.SM3(密码杂凑算法):SM3是一种密码杂凑算法,类似于SHA-
256。

它被用于数字签名、消息认证码(MAC)等场景,确保消
息的完整性和不可伪造性。

3.SM4(分组密码算法):SM4是一种对称加密分组密码算法,
用于保护数据的机密性。

它可以用于加密和解密数据,适用于
各种安全通信和存储场景。

这些算法被认为是国家信息安全的基石,其设计和应用受到国家密码管理局的监管和推动。

在中国,特别是在政府、金融、电信等关键领域,对这些国密算法的使用有一定的规定和要求。

此外,国际上也关注和研究这些算法的性能和安全性。

需要注意的是,由于密码学领域的迅速发展,相关标准可能会随时更新。

因此,建议在使用这些算法时查阅最新的国密算法标准文档。

分组密码的设计准则

分组密码的设计准则
完全性、非线性性、相关(关系)免疫性。
• DES加密原理
➢初始置换
➢每个循环的详细过程
➢密钥的产生
➢DES算法的安全强度
➢3DES
应用密ห้องสมุดไป่ตู้技术
3.3 高级加密标准
• Rijndael算法:本质上是一种对称分组密码
体制,采用替代/置换网络,每轮由三层组 成。它是一个迭代分组密码,分组长度和 密钥长度都是可变的。
应用密码技术
3.1.3 分组密码的设计准则
• S盒的设计准则 • P盒的设计准则 • 轮函数F的设计准则 • 迭代的轮数 • 子密钥的生成方法
应用密码技术
3.2 数据加密标准
• DES处理的明文长度是64位,密文分组长度
也是64位,密钥长度位56位(要求输入64位)
• DES的一般设计原则:随机性、雪崩效应、
➢扩散:每一位明文的影响尽可能迅速地作用到 较多的输出密文位中去。主要使用换位算法。
➢混乱:密文和明文之间的统计特性关系尽可能 地复杂化。主要使用替代算法。
➢乘积密码:是指依次使用两个或两个以上的基 本密码,所得结果的密码强度将强于所有单个 密码的强度,即是扩散和混乱两种基本密码操 作的组合变换。
应用密码技术
• AES:处理的分组大小为128位,密钥长度
为128位、192位或256位,相应的迭代轮数 为10、12、和14轮。
应用密码技术
3.4 其他分组密码
• DES变形、RC系列分组密码、IDEA密码等。 • KASUMI密码。
应用密码技术
分组密码的操作模式(补充)
• 电子密码本模式(ECB) • 密码分组链接模式(CBC) • 计数器模式(CTR模式) • 输出反馈模式(OFB) • 密码反馈模式(CFB)

第3章 分组密码(3)

第3章 分组密码(3)

2. SM4算法流程
2019/8/6
2019/8/6
2019/8/6
7
777
2019/8/6
2019/8/6
2019/8/6
8
888
3. 密钥扩展算法
2019/8/6
2019/8/6
2019/8/6
9
999
2019/8/6
2019/8/6
T变换和L变 换
2019/8/6
10
111000
4. 具体实例
RC5的算法特性与许多算法不尽相同,它具有有可变的字长(因此输入的分 组长度是可变的),可变的加密轮数和可变的密钥长度;只使用了微处理器上常 实现,另一方面,由于没有复杂的运算,它的加密速度非常快。
RC5已经在RSA公司的许多产品应用,比如作为无线客户端与服务器之间的 加密算法。
RC5的设计原理与具体算法本书不再作讨论,有兴趣的读者可以查阅相关资 料。
2019/8/6
2019/8/6
2019/8/6
17
1177
RC6是AES候选算法之一,由Rivest、Robshaw、Sidney和Yin提交的,它可能是最 简单的AES算法,RC6是RC5的进一步改进。像RC5那样,RC6实际上是利用数据的循 环移位。它的明文分组块大小为128位,密钥可以为128、192或256,共进行20轮 的加密。
IDEA的设计者在设计时已尽最大努力使该算法不受差分密码分析的影响, 赖学嘉已证明IDEA算法在其8轮迭代的第4轮之后便不受差分密码分析的影响。 IDEA比同时代的算法:FEAL,REDOC-II、LOKI、Snefru和Khafre都要坚固,而 且到目前为止几乎没有任何关于IDEA密码分析攻击法的成果案例发表,因此目 前IDEA的攻击方法只有“直接攻击”或者说是“密钥穷举”法了。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
40
Recommended Reading
• 王育民刘建伟编著, 通信网的安全----理论 与技术,2000,5 • Scneier, B. Applied Cryptography, New York: Wiley, 1996 • Mel, H.X. Baker, D. Cryptography Decrypted. Addison Wesley, 2001
4
图示:n=3时,一个n位到n位的分组密码
BOX S
n=3 0 2n=8 0 1 2n=8 0 1 2 3 4 5 6 7
5
1
Transformer
Transformer
2 3 4 5 6 7
0
1
1
1
Feistel密码
• 大多数传统分组加密算法都采用Feistel密 码结构,包括DES在内。 • Feistel建议使用乘积密码来增强密码的强 度。
34
计时攻击
• 通过对执行给定的多种密文解密所需时 间的观察,来获得关于密钥或明文的信 息。 • 利用加/解密算法对于不同的输入所花的 时间有着细微的差别。 • DES可以抵御计时攻击。
35
差分分析和线性分析
• 1990年,以色列密码学家Eli Biham和Adi Shamir提出了差分密码分析法,可对DES 进行选择明文攻击。 • 线性密码分析比差分密码分析更有效。
17
示 意 图
DES
18
DES描述
• DES利用56比特串长度的密钥K来加密长度为 64位的明文,得到长度为64位的密文。
19
DES加解密过程
• 令i表示迭代次数,⊕表示逐位模2求和,f为加 密函数。DES的加密和解密过程表示如下。
20
初始置换IP和初始置换的逆置换IP-1
21
DES 的 一 轮 迭 代
3
分组密码的原理
• Feistel密码结构的设计动机
– n比特明文M(n) → n比特密文C(n)

映射/代换的总数 2n! ≈n×2n 具有上述代换个数的分组密码称为理想分组密码 – 映射/ 代换本身就是密钥,当n的规模不大时(如n =4,密钥长度为64bit),密钥规模很大n×2n,在 实际中使用大规模分组的任意可逆代换密码是不可 行的(理想分组密码在实际中难以实现)。 – Feistel提出在实际中所需的分析密码体制应该是对 理想分组密码的一种近似体制。 – Feistel密码是对理想分组密码的近似。
DES的强度
• DES具有很好的雪崩效应
–雪崩效应——明文或密钥微小的变化将对密 文产生很大的影响。
• • • •
密钥的使用(密钥长度问题) S盒的问题 计时攻击问题 差分分析和线性分析
30
密钥长度问题
• 关于DES算法的一个最有争议的问题就是担心 实际56比特的密钥长度不足以抵御穷举式攻击, 因为密钥量只有256 ≈ 1017个 • 早在1977年,Diffie和Hellman已建议制造一个 每秒能测试100万个密钥的VLSI芯片。每秒测 试100万个密钥的机器大约需要一天就可以搜 索整个密钥空间。他们估计制造这样的机器大 约需要2000万美元。
• 严格雪崩效应准则(SAC)
–S盒的输入的任意一位i发生变化,输出的任 意一位j发生变化的可能性为1/2。 –增强扩散特性。
• 独立准则(BIC)
–对任意的i、j、k,当输入中的一位i发生变 换时,输出位中的j和k位的变化是彼此无关 的。 –加强混淆的有效性。
39
实现的设计原则
• 软件实现的要求:使用子块和简单的运算。密码运 算在子块上进行,要求子块的长度能自然地适应软 件编程,如8、16、32比特等。应尽量避免按比特置 换,在子块上所进行的密码运算尽量采用易于软件 实现的运算。最好是用处理器的基本运算,如加法、 乘法、移位等。 • 硬件实现的要求:加密和解密的相似性,即加密和 解密过程的不同应仅仅在密钥使用方式上,以便采 用同样的器件来实现加密和解密,以节省费用和体 积。尽量采用标准的组件结构,以便能适应于在超 大规模集成电路中实现。
– 在单个加密机制中依次使用两个或两个以上不同类 型的基本密码(如:代换和置换),所得结果的密 码强度将强于每个单个密码的强度。
7
代换-置换网络
BOX S
n=3 0 2n=8 0 1 2n=8 0 1 2 3 4 5 6 7 1
1 0 0
BOX P
0 0 0 0 0 0 1 0
Transformer
• 加密
Li = Ri-1 Ri = Li-1 ⊕ f(Ri-1, Ki)
• 解密
Li-1 = Ri ⊕ f(Li, ki) Ri-1 = Li
14
数据加密标准DES
DES的产生 • 1973年5月15日, NBS开始公开征集标准加密算 法,并公布了它的设计要求: (1)算法必须提供高度的安全性 (2)算法必须有详细的说明,并易于理解 (3)算法的安全性取决于密钥,不依赖于算法 (4)算法适用于所有用户 (5)算法适用于不同应用场合 (6)算法必须高效、经济 (7)算法必须能被证实有效 (8)算法必须是可出口的
• 密钥长度
–密钥越长意味着更高的安全性,但是会降低加/解 密的速度。 –安全性的l增加来自于更好的抗穷举攻击能力和更好 的混淆性能。
• 迭代轮数
–单轮加密不能提供足够的安全性,而多轮加密可取 得很高的安全性
10
Feistel密码结构
• 子密钥生成算法
–子密钥生成算法越复杂,密码分析攻击就越困难。
36
弱密钥与半弱密钥
• 弱密钥: EK•EK = I,DES存在4个弱密钥 • 半弱密钥: EK1 = EK2,至少有12个半弱密 钥
37
分组密码的设计原理
• DES的设计标准
–S盒的设计准则 –置换P的设计准则
• 迭代轮数 • 轮函数F的设计
–严格雪崩效应准则 –独立准则
• 密钥扩展算法
38
分组密码的设计原理
15
DES的产生(续)
• 1974年8月27日, NBS开始第二次征集,IBM 提交了算法LUCIFER,该算法由IBM的 工程师在1971~1972年研制。 • 1975年3月17日, NBS公开了全部细节 • 1976年,NBS指派了两个小组进行评价 • 1976年11月23日,采纳为联邦标准,批准 用于非军事场合的各种政府机构 • 1977年1月15日,“数据加密标准”FIPS PUB 46发布
第三章
分组密码和数据加密标准
主讲人:王弈 Email:wangyi@
1
内容提要
• • • • • 分组密码的原理 数据加密标准DES DES的强度 差分分析和线性分析 分组密码的设计原理
2
分组密码的原理
• 分组密码
–是一种加/解密算法,将输入的明文分组当 做一个整体处理,输出一个等长的密文分组。
26
置换函数P
• • • • 16 07 20 21 29 12 28 17 01 15 23 26 05 18 31 10 02 08 24 14 32 27 03 09 19 13 30 06 22 11 04 25
27
密 钥 的 产 生
28
置换选择1——PC-1 置换选择2——PC-2
29
• 轮函数
–轮函数越复杂,抗击密码分析的攻击能力就越强。
• 快速软件加/解密
–算法的执行速度是一个很受关注的指标。
• 简化分析难度
–尽管希望设计的算法能提高密码分析攻击的难度, 但是算法本身的简洁明了有助于对其本身脆弱性的 分析,从而设计出更强的算法。
11
12
Feistel网络结构
13
Feistel密码结构
24
选择压缩/代换运算S
25
S盒
• 对每个盒,6比特输入中的第1和第6比特 组成的二进制数确定的行,中间4位二进 制数用来确定的列。 • 相应行、列位置的十进制数的4位二进制 数表示作为输出。 • 例如的输入为101001,则行数和列数的二 进制表示分别是11和0100,即第3行和第4 列。第3行和第4列的十进制数为3,用4 位二进制数表示为0011,所以的输出为 0011。
Transformer
2 3 4 5 6 7
0
1
0Leabharlann 0 0 0110
8
代换-置换网络
K1 S11 S 21 S 31 S 41
K2 S12 S 22 S 32 S 42
K3
……
9
Feistel密码结构
• Feistel网络的实现依赖于以下参数的选择和特 征: • 分组长度
–分组越长意味着安全性越高(其他参数不变),但 是会降低加/解密的速度。 –安全性的增加来自于更好的扩散性能。
41
31
密钥长度问题
• 在CRYPTO’93上,Session和Wiener给出了一 个非常详细的密钥搜索机器的设计方案,这个 机器基于并行运算的密钥搜索芯片,所以16次 加密能同时完成。此芯片每秒能测试5000万个 密钥,用5760个芯片组成的系统需要花费10万 美元,它平均用1.5天左右就可找到DES密钥。 • 1997年1月28日,美国的RSA数据安全公司在 RSA安全年会上公布了一项“秘密密钥挑战” 竞赛,其中包括悬赏1万美元破译密钥长度为 56比特的DES。美国克罗拉多洲的程序员 Verser从1997年2月18日起,用了96天时间,在 Internet上数万名志愿者的协同工作下,成功地 找到了DES的密钥,赢得了悬赏的1万美元。
• Feistel建议交替使用代换和置换,增强密 码的扩散和混淆性能。
6
香农理论 1949
• 混淆Confusion
– 尽可能使密文和加密密钥之间的关系变得复杂,以 阻止攻击者发现密钥。
相关文档
最新文档