1 / 31

第 2章密码学基础

第 2章密码学基础. 第1章. 主要内容:. 2.1 密码的含义 2.2 古典密码 2.3 密码发展史 2.4 密码编码学的分类. 主要目标:. 掌握密码学的基本概念 加密技术是网络安全的核心技术之一. 2.1 密码的含义. MXDXBVTZWVMXNSPBQXLIMSCCSGXSCJXBOVQXCJZMOJZCVC TVWJCZAAXZBCSSCJXBQCJZCOJZCNSPOXBXSBTVWJC JZDXGXXMOZQMSCSCJXBOVQXCJZMOJZCNSPJZHGXXMOSPLH

glyn
Download Presentation

第 2章密码学基础

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第2章密码学基础 第1章

  2. 主要内容: 2.1 密码的含义 2.2 古典密码 2.3 密码发展史 2.4 密码编码学的分类

  3. 主要目标: 掌握密码学的基本概念 加密技术是网络安全的核心技术之一

  4. 2.1 密码的含义 MXDXBVTZWVMXNSPBQXLIMSCCSGXSCJXBOVQXCJZMOJZCVC TVWJCZAAXZBCSSCJXBQCJZCOJZCNSPOXBXSBTVWJC JZDXGXXMOZQMSCSCJXBOVQXCJZMOJZCNSPJZHGXXMOSPLH JZDXZAAXZBXHCSCJXTCSGXSCJXBOVQX  plaintext from Lewis Carroll, Alice in Wonderland 明文

  5. 2.1 密码的含义 为什么需要密码? 为了保证信息的私密性、完整性、真实性和不可否认性必须使用技术手段对其进行处理。 通过适当的加密管理机制可以保证网络通信的安全。

  6. Crypto-密码 Cryptology  The art and science of making and breaking “secret codes” 密码学:编制和破译“密码”的科学和技术 Cryptography making “secret codes” 密码编制学:研究“密码”的编制 Cryptanalysis breaking “secret codes” 密码分析学:研究“密码”的破译 Crypto all of the above (and more)

  7. 现代密码学 现代密码学: 密码编制学:研究“密码”的编制,即用各种学科的专业知识结合设计生成算法,将原始的数据转变为受该密码体制保护的状态呈现出来。 密码分析学:研究“密码”的破译,将受该密码体制保护状态的数据还原为最初的原始状态。 第7页

  8. 基本概念和术语 • 加密(encryption) • 将报文(或消息)进行编码,以模糊其含义的过程。 • encode(vt编码), encipher(vt译成密码) • 解密(decryption) • 将加密过的报文恢复为原始形式。 • decode(vt解码), decipher(vt译解)

  9. 基本概念和术语 明文(plaintext)和密文(ciphertext) 报文的原始方式为明文,加密后成为密文 密钥(key):实现加密和解密的参数信息。 第9页

  10. 加密技术的基本特性 机密性 保证信息在存储和传输过程中不被泄露给未经授权者 完整性 保证信息在存储和传输过程中不被篡改、替换、删减 可用性 保证授权者在存储和传输过程中正常使用信息 抗否认性 指保证信息发送方不能对自身的发送行为进行否认和抵赖。 第10页

  11. 数据加密常见方式 数据存储加密 数据传输加密 目的:防止数据在传输过程中被侦听、截获、篡改和丢弃。 分为:链路加密(OSI第二层) 节点加密(OSI第二层) 端到端加密(OSI第七层) 第11页

  12. How to Speak Crypto A cipher or cryptosystem is used to encrypt the plaintext 一个密码或者密码系统被用来加密明文 The result of encryption is ciphertext 加密的结果称为密文 We decryptciphertext to recover plaintext 我们通过解密将密文恢复成明文

  13. How to Speak Crypto A keyis used to configure a cryptosystem 在加密解密过程中要使用密钥 A symmetrickeycryptosystem uses the same key to encrypt as to decrypt 在对称密钥密码中,加密和解密过程使用相同的密钥 A publickeycryptosystem uses a public key to encrypt and a private key to decrypt 对于公钥密码,加密和解密过程中使用的密钥不相同,其中加密密钥被公开称公钥,解密密钥必须保密,称私钥。

  14. 密码的目标 • 对于任何一个密码系统,其目标都是: 只有掌握密钥的情况下才能将密文恢复成明文。 即:攻击者即使掌握了密码算法的全部细节和其他信息,仍然不能在没有密钥的情况下恢复明文。

  15. Crypto as Black Box key key encrypt plaintext plaintext decrypt ciphertext A generic use of symmetric key crypto

  16. E 加密 算法 D 解密 算法 明文M 明文M 密文 解密密钥 Kd 加密密钥 Ke 密码体系示意图 加密函数E作用于M得到密文C,用数学表示为: E(M)=C.   相反地,解密函数D作用于C产生M D(C)=M.

  17. 2.2 古典密码 • 介绍四种古典密码 • 简单代替密码 • 双重置换密码 • 一次一密 • 电子本密码

  18. 代换和置换思想 • 代换是古典密码中用到的最基本的处理技巧。所谓代换,就是将明文中的一个字母由其它字母、数字或符号替代的一种方法。 • 置换(permutation):将明文字符按照某种规律重新排列而形成密文的过程。

  19. 2.2.1 简单代替密码 • 简单代替密码的简单实现 就是将明文按照字母表中当前字母后移N位加密产生的。 通过查找明文行中的字母,并用密文行中对应的字母进行代替。 第19页

  20. Simple Substitution Plaintext: fourscoreandsevenyearsago Key: Plaintext Ciphertext • Ciphertext: IRXUVFRUHDQGVHYHQBHDUVDJR • Shift by 3 is “Caesar’s cipher”

  21. 2.2.1 简单代替密码 • 简单代替密码的解密 通过查找密文行中的字母,并用明文行中对应的字母进行代替。 • 移动3位的简单代替密码,称为凯撒(Caesar)密码

  22. 凯撒密码 • 例:使用其后的第三个字母代换该字母 • 明文:meet me after the toga party • 密文:PHHW PH DIWHU WKH WRJD SDUWB 第22页

  23. Ceasar’s Cipher Decryption Plaintext: spongebobsquarepants • Suppose we know a Ceasar’s cipher is being used: • Given ciphertext: • VSRQJHEREVTXDUHSDQWV Plaintext Ciphertext

  24. 2.2.1 简单代替密码 • 如果限定简单代替就是字母表 则所有可能的密钥k是0~25。 • 若攻击者截获密文CSYEVIXIVQMREXIH 则攻击者能够尝试所有26种可能的密钥,来解密密文,并判断所解密文是否具有意义。

  25. 数学描述 • 用数字表示每个字母: • a b c d e f g h i j k l m n o p q r s t u v w x y Z • 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 • c = E(p) = (p + k) mod (26) • p = D(c) = (c – k) mod (26) • 明文p ∈Z26,密文c ∈Z26,密钥k取[1,25],只有25个 第25页

  26. Not-so-Simple Substitution Shift by n for some n{0,1,2,…,25} Then key is n Example: key n = 7 Plaintext Ciphertext

  27. Cryptanalysis I: Try Them All A simple substitution (shift by n) is used But the key is unknown Given ciphertext: CSYEVIXIVQMREXIH How to find the key? Only 26 possible keys  try them all! Exhaustive key search(穷举搜索) Solution: key is n = 4

  28. 蛮力破解 什么是蛮力破解? 通过尝试所有可能的密钥直至遇到正确的密钥,即穷举搜索密钥。 所以密钥数应该足够大,以使得攻击者在合理的时间范围内没有办法穷举。

  29. 蛮力破解 多大的密钥空间才足够? 假设攻击者拥有处理速度非常快的计算机,每秒钟能够尝试240个密钥,则密钥空间256将耗时216秒约18小时,而264个密钥的穷举将超过半年。

  30. 2.2.1 简单代替密码 • 简单代替密码不仅可以是移动n位, 任何一个26位字符的置换都可以作为密钥。 For example Plaintext Ciphertext • Then 26! > 288 possible keys! • 如果一个简单代替密码能够使用任何一个置换作为密钥,则有26!约等于288种可能密钥。

  31. 蛮力破解 26! 约等于288 种密钥? 假设攻击者拥有处理速度非常快的计算机,每秒钟能够尝试240个密钥,则穷举288的密钥空间将超过89亿年。

More Related