《现代密码学 第1讲--概述讲义》由会员分享,可在线阅读,更多相关《现代密码学 第1讲--概述讲义(45页珍藏版)》请在金锄头文库上搜索。
1、现代密码学,信息技术系 郑洪英,2019年10月17日,2,1 课程相关介绍教材,使用的教材,2019年10月17日,3,1 课程相关介绍参考书籍,教 学 参 考 书 1,2019年10月17日,4,1 课程相关介绍参考书籍,教 学 参 考 书 2,2019年10月17日,5,1 课程相关介绍参考书籍,(3) Handbook of Applied Cryptology (电子书籍,Internet网上可下载),2019年10月17日,6,1 课程相关介绍课程讲授,主讲学时:40学时 实验学时:16学时,2019年10月17日,7,第一章 概述,2019年10月17日,8,1 课程相关介绍概念
2、,什么叫密码学? 密码学(Cryptology): 是研究密码编制、密码破译和密码系统设计的的一门综合性科学,其包括密码编码学和密码分析学。 密码编码学(Cryptography): 主要研究对信息进行编码,实现对信息的隐蔽。 密码分析学(Cryptanalytics):主要研究加密消息的破译或消息的伪造。,2019年10月17日,9,1 课程相关介绍密码学研究的内容,编码学研究的主要内容: 序列密码算法的编码技术 分组密码算法的编码技术 公钥密码体制的编码技术 加密算法、 数字签名方案、 密钥分配方案 认证方案 单向函数等,传统且主流的研究方向,2019年10月17日,10,1 课程相关介绍
3、密码学研究的内容,密码分析学研究的主要内容 (1) 密码算法的安全性分析和破译的理论、方 法、技术和实践 (2)密码协议的安全性分析的理论与方法 (3)安全保密系统的安全性分析和攻击的理论、方法、技术和实践,2019年10月17日,11,1 课程相关介绍密码学是干什么的?,密码学是干什么的? 密码学要解决的基本问题: (1) 信息的保密传输和存储问题; (2) 信息的认证问题.,例: 我收到你写给我1封信,那末我问: -信的内容是否被改动? -是否真是你写的信? -是否真是写给我信? -有没有人看过这封信?,2019年10月17日,12,1 课程相关介绍密码学的应用领域,密码学能够解决的问题
4、1. 信息系统的安全与保密问题; 2.电子商务、电子政务中的安全和保密问题; 3.银行系统、证券系统、保险系统等的安全问题; 4.商品、票据、信用卡等的防伪与审核问题。,2019年10月17日,13,2 密码学发展,1949年之前 密码学是一门艺术 19491975年 密码学成为科学 1976年以后 密码学的新方向公钥密码学,2019年10月17日,14,2 密码学发展第一阶段概述,第1阶段古典密码 密码学还不是科学,而是艺术 出现一些密码算法和加密设备 密码算法的基本手段出现,针对的是字符 简单的密码分析手段出现 主要特点:数据的安全基于算法的保密,2019年10月17日,15,2 密码学发
5、展第一阶段中的例子,第1阶段古典密码 几个典型的密码:卡撒密码、维几尼亚密码; 几个典型的战例: 一战时德国人的ADFGVX密码被法国密码分析家破译,间接的导致了德国一战的失败; 二战德国人的恩尼格马密码被破,直接导致德军二战的失败,2019年10月17日,16,2 密码学发展第一阶段中的实例,Phaistos圆盘,一种直径约为160mm的Cretan-Mnoan粘土圆盘,始于公元前17世纪。表面有明显字间空格的字母,至今还没有破解。,2019年10月17日,17,2 密码学发展第一、二阶段中的密码机,20世纪早期密码机,2019年10月17日,18,2 密码学发展第二阶段概述,第2阶段 19
6、491975 计算机使得基于复杂计算的密码成为可能 相关技术的发展: 1949年Shannon的The Communication Theory of Secret Systems 1967年David Kahn的The Codebreakers 1971-73年IBM Watson实验室的Horst Feistel等几篇技术报告 主要特点:数据的安全基于密钥而不是算法的保密,2019年10月17日,19,2 密码学发展第三阶段大事记,第3阶段 1976 1976年:Diffie & Hellman 的 “New Directions in Cryptography” 提出了不对称密钥密码;
7、1977年Rivest,Shamir & Adleman提出了RSA公钥算法 1977年DES正式成为标准,2019年10月17日,20,2 密码学发展第三阶段大事记,80年代出现“过渡性”的“Post DES”算法,如IDEA,RCx,CAST等 90年代对称密钥密码进一步成熟 Rijndael,RC6, MARS, Twofish, Serpent等出现 90年代逐步出现椭圆曲线等其他公钥算法 2001年Rijndael成为DES的替代者 2004年著名的MD5算法被中国的王小云破译,2019年10月17日,21,3 保密系统信息传输中的基本概念,信源 M,m,加密器,解密器,接收者,m,
8、干扰型对手,搭线信道 (主动攻击),C ,搭线信道 (被动攻击),窃听型对手,m,密钥源 K1,k1,密钥源 K2,k2,密钥信道,明文消息空间M,密文消息空间C,密钥空间K1和K2,在单钥体制下K1=K2=K;总体(M,C,K1,K2,EK1,DK2)为保密通信系统,2019年10月17日,22,信息传输中的角色,2019年10月17日,23,4 密码学的基本概念基本概念,明文:被隐蔽的消息称作明文,通常用m表示。其英文为Message和Plaintext 明文就是没有被加密的消息. 密文:将明文隐蔽后的结果称作密文或密报,通常用c表示。其英文为Ciphertext 密文就是加密后的结果.,
9、2019年10月17日,24,4 密码学的基本概念基本概念,加密( Encryption ):将明文变换成密文的过程称作加密,该过程表示为 解密( Decryption ):由密文恢复出明文的过程称作解密,该过程表示为 密钥( key ) :控制或参与密码变换的可变参数称为密钥。 密钥又分为加密密钥和解密密钥。 加密密钥是加密时用的密钥; 解密密钥是解密时用的密钥;,2019年10月17日,25,4 密码学的基本概念密码体制的概念,密码体制的概念: 一个密码体制(Cryptosystem)由四部分组成: (1) 明文空间M; -所有可能的明文构成的集合 (2) 密文空间C; -所有可能的密文构
10、成的集合 (3) 密钥空间 -所有可用的密钥构成的集合 -又包括加密密钥和解密密钥 (4) 密码算法。 包括加密算法和解密算法.,4 密码学的基本概念加密函数分析,-从加密函数的角度理解密码体制的概念- 加密函数: 将明文m加密为密文c,即 其 (1) 定义域是明文空间M; (2) 值域是密文空间C; (3) 加密函数就是加密算法; (4) 控制参数 就是加密密钥,4 密码学的基本概念解密函数分析,-针对解密函数分析- 解密函数: 将密文c 解密为明文m ,即 其 (1) 定义域是密文空间C; (2) 值域是明文空间M; (3) 解密函数就是解密算法; (4) 控制参数 就是解密密钥.,201
11、9年10月17日,28,4 密码学的基本概念加、解密函数说明,加、解密密钥 与 成对使用; 加密函数 与 解密函数互为逆函数,即对所有明文m, 都有 一个密文只能有一个解密结果!,2019年10月17日,29,4 密码学的基本概念好的密码体制的条件,好的密码体制满足的条件: (1) 即使达不到理论上是不可破的,也应当是实际上不可破的。 (2)保密性不依赖于对加密体制或算法的保密,而依赖于密钥。(Kerckhoff 假设) (3)加密算法和解密算法适用于密钥空间中的所有元素。弱密钥除外! (4)易于实现和使用。 -知道密钥时加、解密快捷!,2019年10月17日,30,4 密码学的基本概念密码分
12、析学中的概念,破译:对于一个密码体制,如果能够根据密文确定明文或密钥,或者根据明文和相应的密文确定密钥,我们 就说这个密码体制时可破译的;否则,称其为不可破译的。,2019年10月17日,31,4 密码学的基本概念攻击方法,1、攻击密码体制的方法 (1)穷举攻击: 如果可能的密钥太少会怎样? -若对每个可能的密钥都逐一测试,则一定可以碰到正确的密钥,利用它就可解密! 穷举攻击就是逐一利用每个可能的密钥对密文进行解密测试,并将解密结果合理的那个密钥判断为正确密钥。,2019年10月17日,32,4 密码学的基本概念攻击方法,要想能抵抗穷举攻击,一个密码算法的可能密钥总数不能太少! 一个密码算法的
13、可能密钥的总数称为该密码算法的密钥量. 目前,密钥量少于264的密码算法是不安全的! 密钥量为2128的密码算法是安全的! 为什么?,2019年10月17日,33,4 密码学的基本概念攻击方法,假设密钥量为2128101280.3011038.5 考查该密码算法的抗穷举攻击能力。 假想为计算机速度为10亿次/每秒 10亿109 1年3652436003.15107秒 1年可以穷举的密钥量为: 3.15107 109 3.151016个密钥 2128个密钥需要1038.5/ 3.1510161022年才能穷举完。(一万亿亿年),2019年10月17日,34,4 密码学的基本概念攻击方法,(2)统
14、计分析攻击: 密码分析者通过分析: (A) 密文与明文之间, 或 (B) 明文-密文对与密钥之间的统计规律来进行破译。 一个设计的不太差的密码算法一般只能用这种方法进行攻击!,2019年10月17日,35,4 密码学的基本概念攻击方法,(3)解密变换攻击: 密码分析者针对加密变换的数学基础,通过数学求解的方法来设法找到相应的解密变换或等价的解密变换实现攻击。 这种攻击通常用于对公钥密码的攻击之中!对付这种攻击的手段就是:采用坚实的数学基础和足够复杂的加密算法。,2019年10月17日,36,4 密码学的基本概念攻击方法,对密码体制进行攻击时, 攻击对象是什么? (1) 求出明文 ! (2) 求
15、出密钥, 进而求出明文 !,2019年10月17日,37,4 密码学的基本概念攻击者的能力,对敌手攻击能力的假设 Kerckhoff 假设-假设敌手知道除使用的具体密钥之外的一切信息,目的是恢复明文! 即一切秘密蕴于密钥之中!,2019年10月17日,38,4 密码学的基本概念攻击方法,按敌手可利用的知识的类别的多少,攻击方法可分为:,2019年10月17日,39,4 密码学的基本概念加密方案的安全性,加密方案的安全性 无条件安全:无论提供的密文有多少,如果由一个加密方案产生的密文中包含的信息不足以唯一地决定对应的明文 除了一次一密的方案外,没有无条件安全的算法 安全性体现在: 破译的成本超过
16、加密信息的价值 破译的时间超过该信息有用的生命周期,2019年10月17日,40,4 密码学的基本概念攻击的复杂性分析,攻击的复杂性分析 数据复杂性(data complexity)用作攻击输入所需要的数据 处理复杂性(processing complexity)完成攻击所需要的时间 存储需求(storage requirement)进行攻击所需要的数据量,2019年10月17日,41,4 密码学的基本概念密码管理的相关法规,密码管理的相关法规 我国规定: (1)密码产品和安全产品必须经过审查后才能使用! (2)只审查具有设计资格的单位设计的密码方案! (3)军用密码的审查由总参机要局具体负责;党、