第二章:第二章:密码学基础一、密码学的基本概念一、密码学的基本概念二、密码体制分类二、密码体制分类三、密码分析三、密码分析2024/9/141一、密码学的基本概念一、密码学的基本概念密码学密码学(Cryptology):研究信息系统安全保密的科学它包含两个分支,密码编码学密码编码学(Cryptography),对信息进行编码实现隐蔽信息的一门学问密码分析学密码分析学(Cryptanalytics),研究分析破译密码的学问2024/9/142 几个概念(一)几个概念(一) 明文明文(消息)(Plaintext) :被隐蔽消息 密文密文(Ciphertext)或密报密报(Cryptogram):明文经密码变换成的一种隐蔽形式加密加密(Encryption):将明文变换为密文的过程解密解密(Decryption):加密的逆过程,即由密文恢复出原明文的过程加密员加密员或密码员密码员(Cryptographer):对明文进行加密操作的人员2024/9/143 几个概念(二)几个概念(二) 加密算法加密算法(Encryption algorithm):密码员对明文进行加密时所采用的一组规则。
接收者接收者(Receiver):传送消息的预定对象解密算法:解密算法:接收者对密文进行解密时所采用的一组规则密钥密钥(Key):控制加密和解密算法操作的数据处理,分别称作加密密钥加密密钥和解密密钥解密密钥截截收收者者(Eavesdropper):在信息传输和处理系统中的非受权者,通过搭线窃听、电磁窃听、声音窃听等来窃取机密信息2024/9/144几个概念(三)几个概念(三) 密码分析密码分析(Cryptanalysis):截收者试图通过分析从截获的密文推断出原来的明文或密钥 密码分析员密码分析员(Cryptanalyst):从事密码分析的人 被被动动攻攻击击(Passive attack):对一个保密系统采取截获密文进行分析的攻击 主主动动攻攻击击(Active attack):非法入入侵侵者者(Tamper)、攻攻击击者者(Attcker)或黑黑客客(Hacker)主动向系统窜扰,采用删除、增添、重放、伪造等窜改手段向系统注入假消息,达到利已害人的目的2024/9/145保密系统模型保密系统模型信源Mm接收者m非法接入者搭线信道(主动攻击)C ’搭线信道(被动攻击)密码分析员m‘k1k2密钥信道2024/9/146 保密系统应当满足的要求保密系统应当满足的要求l系统即使达不到理论上是不可破的,即pr{m m’’=m m}=0,也应当为实际上不可破的。
就是说,从截获的密文或某些已知明文密文对,要决定密钥或任意明文在计算上是不可行的l系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥这是著名的Kerckhoff原则l加密和解密算法适用于所有密钥空间中的元素l系统便于实现和使用2024/9/147认证与认证系统认证与认证系统认证系统认证系统(Authentication system) 防止消息被窜改、删除、重放和伪造的一种有效方法,使发送的消息具有被验证的能力,使接收者或第三者能够识别和确认消息的真伪实现这类功能的密码系统称作认证系统保密性保密性 保密性是使截获者在不知密钥条件下不能解读密文的内容认证性认证性 使任何不知密钥的人不能构造一个密报,使意定的接收者解密成一个可理解的消息(合法的合法的消息)2024/9/148安全认证系统应满足下述条件安全认证系统应满足下述条件意定的接收者能够检验和证实消息的合法性和真实性消息的发送者对所发送的消息不能抵赖除了合法消息发送者外,其它人不能伪造合法的消息而且在已知合法密文c c和相应消息m m下,要确定加密密钥或系统地伪造合法密文在计算上是不可行的。
必要时可由第三者作出仲裁2024/9/149 完整性完整性(integrity) 在有自然和人为干扰条件下,系统保持检测错误和恢复消息和原来发送消息一致性的能力实际中常常借助于纠、检错技术和杂凑技术来保证消息的完整性2024/9/1410二、密码体制分类二、密码体制分类n密码体制有密码体制有2大类:大类:n单钥体制单钥体制(One-key system):: 加密密钥和解密密钥相同n双钥体制双钥体制(Two key system): 加密密钥和解密密钥不同2024/9/1411密码体制分类密码体制分类 单钥体制单钥体制加密器EK解密器DK密文明文明文K密钥产生器K2024/9/1412密码体制分类密码体制分类 单钥体制单钥体制n单钥体制主要研究问题:单钥体制主要研究问题:n密钥产生(Key generation),n密钥管理(Key management)n分类:分类:n流密码(Stream cipher)n分组密码(Block cipher)n单钥体制不仅可用于数据加密,也可用单钥体制不仅可用于数据加密,也可用于消息的认证于消息的认证2024/9/1413密码体制分类密码体制分类 双钥体制双钥体制双双钥钥体体制制或公公钥钥体体制制(Public key system) (Diffie和Hellman,1976) 每个用户都有一对选定的密钥(公钥k k1;私钥k k2),公开的密钥k k1可以像号码一样进行注册公布。
2024/9/1414公钥体制的主要特点公钥体制的主要特点n加密和解密能力分开n可以实现多个用户加密的消息只能由一个用户解读(用于公共网络中实现保密通信)n只能由一个用户加密消息而使多个用户可以解读(可用于认证系统中对消息进行数字签字)n无需事先分配密钥2024/9/1415三、密码分析三、密码分析 截收者在不知道解密密钥及通信者所采用的加密体制的细节条件下,对密文进行分析,试图获取机密信息研究分析解密规律的科学称作密码分析学密码分析在外交、军事、公安、商业等方面都具有重要作用,也是研究历史、考古、古语言学和古乐理论的重要手段之一2024/9/1416密码分析密码分析 密码设计和密码分析是共生的、又是互逆的,两者密切有关但追求的目标相反两者解决问题的途径有很大差别 密码设计是利用数学来构造密码 密码分析除了依靠数学、工程背景、语言学等知识外,还要靠经验、统计、测试、眼力、直觉判断能力……,有时还靠点运气2024/9/1417密码分析方法密码分析方法--穷举破译法穷举破译法 对截收的密报依次用各种可解的密钥试译,直到得到有意义的明文; 或在不变密钥下,对所有可能的明文加密直到得到与截获密报一致为止,此法又称为完全试凑法完全试凑法(Complete trial-and-error Method)。
只要有足够多的计算时间和存储容量,原则上穷举法总是可以成功的但实际中,任何一种能保障安全要求的实用密码都会设计得使这一方法在实际上是不可行的 2024/9/1418密码分析方法密码分析方法—分析法分析法 确定性分析法确定性分析法 利用一个或几个已知量(比如,已知密文或明文-密文对)用数学关系式表示出所求未知量(如密钥等)已知量和未知量的关系视加密和解密算法而定,寻求这种关系是确定性分析法的关键步骤 统计分析法统计分析法 利用明文的已知统计规律进行破译的方法密码破译者对截收的密文进行统计分析,总结出其间的统计规律,并与明文的统计规律进行对照比较,从中提取出明文和密文之间的对应或变换信息2024/9/1419 密码可能经受的攻击密码可能经受的攻击攻击类型攻击者拥有的资源惟密文攻击n加密算法n截获的部分密文已知明文攻击n加密算法,n截获的部分密文和相应的明文选择明文攻击n加密算法n加密黑盒子,可加密任意明文得到相应的密文选择密文攻击n加密算法n解密黑盒子,可解密任意密文得到相应的明文2024/9/1420无条件安全和计算安全无条件安全和计算安全 无条件安全无条件安全 如果算法产生的密文不能给出唯一决定相应明文的足够信息,无论截获多少密文,花费所少时间都不能解密密文。
Shannon指出,仅当密钥至少和明文一样长时达到无条件安全(即一次一密) 计算安全计算安全 破译密文的代价超过被加密信息的价值 破译密文所花时间超过信息的有效期2024/9/1421。