第2章-密码学基础
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
差分分析法:除去穷举搜索密钥外,还有其他 形式的攻击方法,最著名的有Biham,Shamir 的差分分析法。这是一个选择明文攻击方法。 虽然对16轮DES没有攻破,但是,如果迭代的 轮数降低,则它可成功地被攻破。例如,8轮 DES在一个个人计算机上只需要2分钟即可被攻 破。
高级加密标准AES
散列函数的概念
散列函数没有密钥,散列函数就是把可变输入长 度串 ( 叫做预映射, Pre-image) 转换成固定长度输 出串(叫做散列值)的一种函数。 散列函数又可称为压缩函数、杂凑函数、消息摘 要、指纹、密码校验和、信息完整性检验(DIC)、 操作认证码(Message Authentication Code,MAC)。
公钥密码体制
传统密码体制的缺陷与公钥密码体制的产生
一个安全的对称密钥密码系统,可以达到下列功能: 保护信息机密 认证发送方之身份 确保信息完整性 对称密钥密码系统具有下列缺点: 收发双方如何获得其加密密钥及解密密钥? 密钥的数目太大 无法达到不可否认服务
现代密码学修正了密钥的对称性,1976年, Diffie,Hellmann提出了公开密钥密码体制 (简称公钥体制),它的加密、解密密钥是不 同的,也是不能(在有效的时间内)相互推导。 所以,它可称为双钥密码体制。它的产生,是 密码学革命性的发展,它一方面,为数据的保 密性、完整性、真实性提供了有效方便的技术。 另一方面,科学地解决了密码技术的瓶颈── 密钥的分配问题。
Internet的超级计算能力:1997年1月28日, 美国RSA数据安全公司在Internet上开展了 一项“秘密密钥挑战”的竞赛,悬赏一万美 圆,破解一段DES密文。计划公布后,得 到了许多网络用户的强力相应。科罗拉州的 程序员R.Verser设计了一个可以通过互联网 分段运行的密钥搜索程序,组织了一个称为 DESCHALL的搜索行动,成千上万的的志 愿者加入到计划中。
2.扩散性
密码还应该把明文的信息扩展到整个密文
中去,这样,明文的变化就可以影响到密 文的很多部分,该原则称为扩散性 (Difusion)。 这是一种将明文中单一字母包含的信息散 布到整个输出中去的特性。好的扩散性意 味着截取者需要获得很多密文,才能去推 测算法。
密码分析学
穷举攻击:又称作蛮力攻击,是指密码 分析者用试遍所有密钥的方法来破译密 码对可能的密钥或明文的穷举。 统计分析攻击 :指密码分析者通过分析 密文和明文的统计规律来破译密码。 数学分析攻击:指密码分析者针对加密 算法的数学依据,通过数学求解的方法 来破译密码。
第一个公钥体制是1977年由Rivest, Shamir,Adleman提出的,称为RSA公钥 体制,其安全性是基于整数的因子分解的困 难性。 RSA公钥体制已得到了广泛的应用。其后, 诸如基于背包问题的Merkle-Hellman背包公 钥体制,基于有限域上离散对数问题的 EIGamal公钥体制,基于椭圆曲线的密码体 制等等公钥体制不断出现,使密码学得到了 蓬勃的发展。
在攻击面前,虽然多重DES表现良好。不过,考虑到计 算机能力的持续增长,人们需要一种新的、更加强有力 的加密算法。1995年,美国国家标准技术研究所NIST 开始寻找这种算法。最终,美国政府采纳了由密码学家 Rijmen和Daemen发明的Rijindael算法,使其成为了高 级加密标准AES(Advanced Encryption Standard)。 Rijindael算法之所以最后当选,是因为它集安全性、效 率、可实现性及灵活性于一体。
散列函数的概念
散列函数有4个主要特点:
(1)它能处理任意大小的信息,并将其信息摘要生成固定
大小的数据块(例如128位,即16字节),对同一个源数据反 复执行Hash函数将总是得到同样的结果。 (2)它是不可预见的。产生的数据块的大小与原始信息的 大小没有任何联系,同时源数据和产生的数据块的数据看 起来没有明显关系,但源信息的一个微小变化都会对数据 块产生很大的影响。 (3)它是完全不可逆的,即散列函数是单向的,从预映射 的值很容易计算其散列值,没有办法通过生成的散列值恢 复源数据。 (4)它是抗碰撞的,即寻找两个输入得到相同的输出值在 计算上是不可行的。
公钥密码体制介绍
公钥密码体制加解密过程主要有以下几步 :
ቤተ መጻሕፍቲ ባይዱ
安全的公开密钥密码可以达到下列功能:
(1)简化密钥分配及管理问题
公钥体制用于数据加密时:用户将自己的公开 (加密)密钥登记在一个公开密钥库或实时公开, 秘密密钥则被严格保密。信源为了向信宿发送信 息,去公开密钥库查找对方的公开密钥,或临时 向对方索取公钥,将要发送的信息用这个公钥加 密后在公开信道上发送给对方,对方收到信息 (密文)后,则用自己的秘密(解密)密钥解密 密文,从而,读取信息。可见,这里省去了从秘 密信道传递密钥的过程。这是公钥体制的一大优 点。
分组密码(Block
cipher,也叫块密码) DES、IDEA 、 BLOWFISH 序列密码(Stream cipher,也叫流密码)。A5 、 FISH 、PIKE
密码学基本概念
密码算法设计的两个重要原则
1.混乱性
当明文中的字符变化时,截取者不能预知密文
会有何变化。我们把这种特性称为混乱性 (Confusion)。 混乱性好的算法,其明文、密钥对和密文之间 有着复杂的函数关系。这样,截取者就要花很 长时间才能确定明文、密钥和密文之间的关系, 从而要花很长的时间才能破译密码。
1973.5.15: 美国国家标准局(NSA)公开征求 密码体制的联邦注册; 1975.3.17:DES首次在《联邦记事》公开,它 由IBM开发,它是LUCIFER的改进; 1977.2.15:DES被采用作为非国家机关使用的 数据加密标准,此后,大约每五年对DES进行依 次审查,1992年是最后一次审查,美国政府已声 明,1998年后对DES不再审查了; 1977.2.15:《联邦信息处理》标准版46(FIPS PUB46)给出了DES的完整描述。
AES算法是具有分组长度和密钥长度均可变的多轮迭代 型加密算法。分组长度一般为128比特位,密钥长度可 以是128/192/256位。实际上,AES算法的密钥长度可 以扩展为64的任意整数倍,尽管AES标准中只有128, 192和256被认可。 AES的128位块可以很方便地考虑成一个4×4矩阵,这 个矩阵称为“状态”(state)。例如,假设输入为16字节 b0,b1,…,b15,这些字节在状态中的位置及其用矩阵的 表示如表2-8所示。注意,这些状态用输入数据逐列填充。
密码编码学
密码分析学
Crypography
Cryptoanalysis
对称密码体制
Sysmetic-key
公钥密码体制
安全协议
Public-key
Protocols
流密码
分组密码
Steam cipher
Block cipher
密码学简史
密码学简史图
密码学基本概念
密码学基础
主讲人:王弈 E-mail: wangyi@ecupl.edu.cn
本章主要内容
密码学基本概念 对称密码体制 公钥密码体制 散列函数 数字签名 信息隐藏与数字水印 无线网络中的密码应用
密码学与信息安全的关系
密码学的研究内容、地位和作用
密码学概览
密码学
Crypology
现代密码系统的组成 现代密码系统(通常简称为密码体制)一般由五 个部分组成:
明文空间M 密文空间C 密钥空间K 加密算法E 解密算法D
则五元组(M,C,K,E,D)称为一个密码 体制。
密码学基本概念
密码体制 对称密钥体制:
非对称密钥体制
根据密码算法对明文信息的加密方式,对 称密码体制常分为两类:
RSA算法
1976年:Diffie,Hellman在“New Direction in Cryptography”(密码学新方向)一文中首 次提出公开密钥密码体制的思想。 1977年:Rivest,Shamir,Adleman第一次实现 了公开密钥密码体制,现称为RSA公钥体制。
散列函数
密码算法的安全性
理论上,除一文一密外,没有绝对安全 的密码体制,通常,称一个密码体制是 安全的是指计算上安全的,即:密码分 析者为了破译密码,穷尽其时间、存储 资源仍不可得,或破译所耗资材已超出 因破译而获得的获益。
对称密码体制
经典的密码体制中,加密密钥与解密密钥是相 同的,或者可以简单相互推导,也就是说:知 道了加密密钥,也就知道了解密密钥;知道了 解密密钥,也就知道了加密密钥。所以,加、 解密密钥必须同时保密。这种密码体制称为对 称(也称单钥)密码体制。最典型的是DES数 据加密标准,应该说数据加密标准DES是单钥 体制的最成功的例子。
安全的公开密钥密码可以达到下列功能: (2)保护信息机密 任何人均可将明文加密成密文,此后只有 拥有解密密钥的人才能解密。
安全的公开密钥密码可以达到下列功能: (3)实现不可否认功能
公钥体制用于数字签名时: 信源为了他人能够验证自己发送的消息确实来自 本人,他将自己的秘密(解密)密钥公布,而将 公开(加密)密钥严格保密。与别人通信时,则 用自己的加密密钥对消息加密──称为签名,将 原消息与签名后的消息一起发送. 对方收到消息后,为了确定信源的真实性,用对 方的解密密钥解密签名消息──称为(签名)验 证,如果解密后的消息与原消息一致,则说明信 源是真实的,可以接受,否则,拒绝接受。
第96天,即竞赛公布后的第140天,1997年6月 17日晚上10点39分,美国盐湖城Inetz公司职员 M.Sanders成功地找到了密钥,解密出明文: The unknown Message is:“Stronge cryptography makes the word a safer place”(高强度密码技术使世界更安全)。 Internet仅仅利用闲散资源,毫无代价就破译了 DES密码,这是对密码方法的挑战,是Internet 超级计算能力的显示.
破译密码的类型
根据密码分析者掌握明、密文的程度密码分析可分 类为:
1、唯密文攻击:仅根据密文进行的密码攻击。 2、已知明文攻击:根据一些相应的明、密文对进行
的密码攻击。 3、选择明文攻击:可以选择一些明文,并获取相应 的密文,这是密码分析者最理想的情形。例如,在公 钥体制中。
4、选择密文攻击:密码分析者能选择不同的被加密 的密文,并可得到对应的解密的明文,密码分析者的 任务是推出密钥。 5、选择密钥攻击 :这种攻击并不表示密码分析者能 够选择密钥,它只表示密码分析者具有不同密钥之间 关系的有关知识。 6、软磨硬泡攻击 :密码分析者威胁、勒索,或者折 磨某人,直到他给出密钥为止。
其中E,P是两个置换, 表示比特的“异或”,S是一 组八个变换S1,S2,S3,… ,S8 ,称为S盒,每个盒以 6位输入,4位输出,S盒构成了DES 安全的核心。 DES算法流程图
关于DES的讨论
S盒是唯一非线性组件:有人认为其中可能含有 某种“陷门”,国家安全机关可以解密。 DES的密钥量太小:密钥量为256 1977年:Diffie.Hellman提出制造一个每秒测试 106的VLSI芯片,则一天就可以搜索完整个密钥 空间,当时造价2千万美圆。 CRYPTO’93:R.Session,M.Wiener提出并行 密钥搜索芯片,每秒测试5x107个密钥,5760片 这种芯片,造价10万美元,平均一天即可找到密 钥。
DES分组密码系统
DES密码体制:它是应用56位密钥,加密64比 特明文分组的分组秘钥密码体制 DES加密算法: (一)初始置换:x0=L0R0=IP(x); (二)16次迭代:xi-1=Li-1Ri-1, Li=Ri,Ri=Li f(Ri-1,ki) i=1,2,…,16; (三)逆置换:x16=L16R16,y=IP-1(x16)。 密钥生成器:密钥ki是由56位系统密钥k生成的 32位子密钥。 函数f及S盒:f(Ri-1,ki)=P(S(E(Ri-1)ki))