第2讲 密码学的基本概念
- 格式:ppt
- 大小:94.50 KB
- 文档页数:21
密码学密码学(第⼆讲)古典密码古典密码张焕国武汉⼤学计算机学院⽬录1 , 密码学的基本概念密码学的基本概念古典密码2 , 古典密码3 ,数据加密标准(DES) ,数据加密标准(DES )4 , ⾼级数据加密标准(AES) ⾼级数据加密标准(AES)5 ,中国商⽤密码(SMS4) ,中国商⽤密码(SMS4)6 ,分组密码的应⽤技术7 , 序列密码8 ,习题课:复习对称密码9 ,公开密钥密码(1) ,公开密钥密码(1⽬录10, 公开密钥密码(2 10 , 公开密钥密码(2) 11, 数字签名(1 11, 数字签名(1) 12,数字签名(2 12,数字签名(2) 13, HASH函数 13 , HASH 函数 14, 14 , 认证 15, 15 , 密钥管理 16, PKI技术 16 , PKI技术17,习题课:复习公钥密码 17 ,习题课:复习公钥密码 18,总复习/ 18 ,总复习/检查:综合实验⼀,古典密码⼀,古典密码虽然⽤近代密码学的观点来看,许多古典密码是很不安全的,或者说是极易破译的.但是我们不能忘记古典密码在破译的.但是我们不能忘记古典密码在历史上发挥的巨⼤作⽤. 历史上发挥的巨⼤作⽤. 另外,编制古典密码的基本⽅法对于另外,编制古典密码的基本⽅法对于编制近代密码仍然有效. 编制近代密码仍然有效⼀,古典密码⼀,古典密码C. D. Shannon:采⽤混淆,扩散和乘积的⽅法来设计密码混淆:使密⽂和明⽂,密钥之间的关系复杂化扩散:将每⼀位明⽂和密钥的影响扩⼤到尽可能多的密⽂位中. 乘积和迭代:多种加密⽅法混合使⽤对⼀个加密函数多次迭代古典密码编码⽅法: 置换,代替,加法⼀,古典密码⼀,古典密码1,置换密码把明⽂中的字母重新排列,字母本⾝不变, 但其位置改变了,这样编成的密码称为置换密码.最简单的置换密码是把明⽂中的字母顺序倒过来 , 最简单的置换密码是把明⽂中的字母顺序倒过来, 然后截成固定长度的字母组作为密⽂. 然后截成固定长度的字母组作为密⽂. 明⽂:明晨 5点发动反攻. 明⽂:明晨5点发动反攻. MING CHEN WU DIAN FA DONG FAN GONG 密⽂:GNOGN 密⽂:GNOGN AFGNO DAFNA IDUWN EHCGN IM把明⽂按某⼀顺序排成⼀个矩阵, 然后按另⼀顺序选出矩阵中的字母以形成密⽂,最后截成固定长度的字母组作为密⽂.例如: 明⽂:MING 明⽂:MING CHEN WU DIAN FA DONG FAN GONG 矩阵:MINGCH 矩阵:MINGCH 选出顺序:按列 ENWUDI ANFADO 改变矩阵⼤⼩和取出序列 NGFANG 可得到不同的密码 ONG 密⽂:MEANO 密⽂:MEANO INNGN NWFFG GUAA CDDN HIOG⼀,古典密码⼀,古典密码理论上: ① , 置换密码的加密钥是置换矩阵 p , 解密钥是置换矩阵p-1 .P= 1 2 3 a1 a2 a3 … … n an② , 置换密码经不起已知明⽂攻击.⼀,古典密码⼀,古典密码2, 代替密码⾸先构造⼀个或多个密⽂字母表, ⾸先构造⼀个或多个密⽂字母表 , 然后⽤密⽂字母表中的字母或字母组来代替明⽂字母或字母组,各字母或字母组的相对位置不变, 或字母组,各字母或字母组的相对位置不变 , 但其本⾝改变了. 但其本⾝改变了. 这样编成的密码称为代替密码.①单表代替密码②多表代替密码③多名代替密码⼀,古典密码⼀,古典密码⑴ . 单表代替密码只使⽤⼀个密⽂字母表, 只使⽤⼀个密⽂字母表,并且⽤密⽂字母表中的⼀个字母来代替明⽂字母表中的⼀个字母. 个字母来代替明⽂字母表中的⼀个字母. 明⽂字母表:A = { a 0 , a 1 , ... , a n - 1 } ...,密⽂字母表:B 密⽂字母表:B = { b 0 , b 1 , ... , b n - 1 } ..., 定义⼀个由A 定义⼀个由A到 B 的映射: f:A→B 的映射:f f(a i )= b i 设明⽂:M 设明⽂: M = ( m 0 , m 1 , ... , m n - 1 ) , ..., 则密⽂: C =(f(m0 ),f(m1 ), ...,f(mn-1 )) . 则密⽂:C ),...,f(m )). 简单代替密码的密钥就是映射函数 f 简单代替密码的密钥就是映射函数f或密⽂字母表 B.⼀,古典密码⼀,古典密码⑴单表代替密码①,加法密码 A 和 B 是有 n个字母的字母表. 定义⼀个由A到B的映射: f:A→B 定义⼀个由A 的映射:f:A→Bf(a i )= b i =a j j=i+k mod n 加法密码是⽤明⽂字母在字母表中后⾯第 k 个字母来代替. K=3 时是著名的凯撒密码.⼀,古典密码⼀,古典密码⑴单表代替密码②,乘法密码 A 和 B 是有n个字母的字母表. 定义⼀个由A到B的映射: f:A→B 定义⼀个由A 的映射:f:A→Bf(a i )= b i = a j j=ik mod n 其中,( n,k)=1. 其中, ( n,k)=1. 注意: 只有(n,k)=1 ,才能正确解密. 只有(n,k)=1,⼀,古典密码⼀,古典密码⑴单表代替密码③密钥词组代替密码:随机选⼀个词语,去掉其中的重复字母, 写到矩阵的第⼀⾏,从明⽂字母表中去掉这第⼀⾏的字母,其余字母顺序写⼊矩阵.然后按列取出字母构成密⽂字母表.⼀,古典密码⼀,古典密码举例:密钥: HONG YE 选出顺序:按列矩阵: HONGYE 选出顺序:按列 ABCDFI JKLMPQ 改变密钥,矩阵⼤⼩ RSTUVW 和取出序列,得到不同的 XZ 密⽂字母表. 密⽂字母表 : B={ HAJRXOBKSZNCLTGDMUYFPVEIQW }⑵,多表代替密码单表代替密码的安全性不⾼,⼀个原因是⼀个明⽂字母只由⼀个密⽂字母代替.构造多个密⽂字母表, 在密钥的控制下⽤相应密⽂字母表中的⼀个字母来代替明⽂字母表中的⼀个字母.⼀个明⽂母来代替明⽂字母表中的⼀个字母.⼀个明⽂字母有多种代替.Vigenere密码: 著名的多表代替密码密码:著名的多表代替密码⼀,古典密码⼀,古典密码Vigenre⽅阵 Vigenre⽅阵A B 密C ⽂H 明⽂字母 AB C D E F G H I J K LM N O P Q R S TU V WX YZAB C D E F G H I J K LM N O PQ R S T UV WX YZ BCDE FG HIJ KLMNO PQ RSTUVWXYZA CDE FG HIJ KLMNO PQ RSTUVWXYZAB H I J K LM N O P Q R S TU V WXY ZAB C D EF G字 X X YZAB C D E F G H I J K LM N O P Q R S TU V W 母 Y YZAB CDEFGHIJKLMNOPQRSTUVW X Z ZAB C D E F G H I J K LM N O PQ R S TU VWX Y⼀,古典密码⼀,古典密码Vigenre密码的代替规则是⽤明⽂字母在 Vigenre ⽅阵中的列和密钥字母在 Vigenre⽅阵中的⾏的交点处的字母来代替该明⽂字母. 例如, 点处的字母来代替该明⽂字母 . 例如 , 设明⽂字母为 P, 密钥字母为 Y , 则⽤字母 N来代替明⽂字母 P.明⽂: 明⽂ : MING CHEN WU DIAN FA DONG FAN GONG 密钥: 密钥 : XING CHUI PING YE KUO YUE YONG DA JIANG LIU 密⽂: 密⽂ : JQAME OYVLC QOYRP URMHK DOAMR NP解密就是利⽤Vigenre⽅阵进⾏反代替. ⽅阵进⾏反代替.⼀,古典密码⼀,古典密码3,代数密码:① Vernam密码 Vernam密码明⽂,密⽂,密钥都表⽰为⼆进制位:M=m1,m2,… ,mn K =k1,k2,… ,kn C =c1,c2,… ,cn ②加密: c1= mi⊕ ki ,i=1,2,… ,n 解密: m1= ci⊕ ki ,i=1,2,… ,n ③因为加解密算法是模2加,所以称为代数密码. 因为加解密算法是模2 ④对合运算:f=f-1, 模 2加运算是对合运算. 对合运算:密码算法是对和运算,则加密算法=解密算法,⼯程实现⼯作量减半.⑤ Vernam密码经不起已知明⽂攻击. Vernam密码经不起已知明⽂攻击.⼀,古典密码⼀,古典密码⑥如果密钥序列有重复,则Vernam密码是不安全如果密钥序列有重复,则 Vernam密码是不安全的. ⼀种极端情况:⼀次⼀密⑦⼀种极端情况:⼀次⼀密密钥是随机序列. 密钥⾄少和明⽂⼀样长. ⼀个密钥只⽤⼀次. ⑧⼀次⼀密是绝对不可破译的,但它是不实⽤的. ⑨⼀次⼀密给密码设计指出⼀个⽅向,⼈们⽤序列密码逼近⼀次⼀密.⼆,古典密码的穷举分析1 ,单表代替密码分析①加法密码因为 f(ai )= b i =aj 因为f(a j=i+k mod n所以k=1,2,... ,n - 1,共n- 1种可能,密钥空所以 k=1,2, ,n- 1,共间太⼩.以英⽂为例,只有25种密钥. 间太⼩.以英⽂为例,只有 25种密钥. 经不起穷举攻击.⼆,古典密码的穷举分析1 ,单表代替密码分析②乘法密码因为 f(ai )= b i =aj 因为f(a j=ik mod n , 且( k,n)=1 . n, 且(k,n)=1. 所以 k 共有φ(n)种可能,密钥空间更⼩. 所以k 对于英⽂字母表,n=26, 对于英⽂字母表,n=26 , k=1,3,5,7,9,11,15,17,19,21,23,25 取掉1 ,共11种,⽐加法密码更弱.取掉 1 ,共 11种,⽐加法密码更弱. 经不起穷举攻击.⼆,古典密码的穷举分析1 ,单表代替密码分析③密钥词语代替密码因为密钥词语的选取是随机的,所以密⽂字母因为密钥词语的选取是随机的,所以密⽂字母表完全可能穷尽明⽂字母表的全排列.以英⽂字母表为例,n=26,所以共有26!种可以英⽂字母表为例,n=26,所以共有26 !种可能的密⽂字母表. 26! ≈4× 26 ! ≈4 ×1026⽤计算机也不可能穷举攻击. 注意: 穷举不是攻击密钥词语代替密码的唯⼀注意:穷举不是攻击密钥词语代替密码的唯⼀⽅法.三,古典密码的统计分析2 ,密钥词组单表代替密码的统计分析任何⾃然语⾔都有⾃⼰的统计规律. 如果密⽂中保留了明⽂的统计特征,就可⽤如果密⽂中保留了明⽂的统计特征,就可⽤统计⽅法攻击密码. 由于单表代替密码只使⽤⼀个密⽂字母表, ⼀个明⽂字母固定的⽤⼀个密⽂字母来代替, ⼀个明⽂字母固定的⽤⼀个密⽂字母来代替, 所以密⽂的统计规律与明⽂相同. 所以密⽂的统计规律与明⽂相同.因此,单表代替密码可⽤统计分析攻破.三,古典密码的统计分析英语的统计规律每个单字母出现的频率稳定. 最⾼频率字母 E 次⾼频率字母 T A O I N S H R 中⾼频率字母 D L 低频率字母 C U M W F G Y P B 最低频率字母 V K J X Q Z三,古典密码的统计分析英语的统计规律频率最⾼的双字母组: TH HE IN ER AN RE ED ON ESST EN AT TO NT HA ND OU EA NG AS OR TI IS ET IT AR TE SE HI OF 三,古典密码的统计分析英语的统计规律频率最⾼的三字母组: THE ING AND HER ERE ENT THA WAS ETH FOR DHT HAT SHE ION HIS ERS VER其中THE的频率是ING的其中THE的频率是ING的3倍!三,古典密码的统计分析英语的统计规律英⽂单词以E,S,D,T 为结尾的超过⼀半. 英⽂单词以E 英⽂单词以T,A,S,W 为起始字母的约占⼀英⽂单词以T 半.还有其它统计规律! 还有其它统计规律! 教科书上有⼀个完整的统计分析例⼦.三,古典密码的统计分析经得起统计分析是对近代密码的基本要求!复习题①已知置换如下: 1 2 3 4 5 6 P= 3 5 1 6 4 2 明⽂=642135 ,密⽂= 明⽂= 642135 ,密⽂= 密⽂=214365 密⽂= 214365 , 明⽂= ②使加法密码算法称为对合运算的密钥k ②使加法密码算法称为对合运算的密钥k称为对合密钥, 以英⽂为例求出其对合密钥.复习题③已知⼀个加法密码的密⽂如下: BEEAKFYDJXUQYHYJIQRYHTYJIQFBQDUYJIIKF UHCQD ⽤穷举法求出明⽂.④以英⽂为例,⽤加法密码,取密钥常数 k= 7,对明⽂ 7, 对明⽂INFORMATION SECURITY, 进⾏加密,求出密⽂. SECURITY, ⑤证明,在置换密码中,置换p是对合的,当且仅当对任意证明,在置换密码中,置换p 的 i和j(i, j=1,2,3,…,n), 若 p(i)=j, 则必有p(j)=i . j=1,2,3,…,n), p(i)=j, 则必有p(j)=i ⑥编程实现Vigenre密码. 编程实现Vigenre密码. ⑦分析仿射密码的安全性.谢谢!单字母替换密码及实例通过把信息隐藏起来的这种秘密通信称为Staganography(隐⽂术),由希腊词Steganos(意为“覆盖”)和Graphein(意为“写”)派⽣⽽来。
密码学基本概念
密码学是一门研究保护信息安全的学科,其基本目标是保证信息在传输过程中不被非法获取和篡改。
在密码学中,有一些基本概念需要了解。
1. 密码学基础
密码学基础包括加密、解密、密钥、明文和密文等概念。
加密是将明文转换为密文的过程,解密则是将密文还原为明文的过程。
密钥是用于加密和解密的秘密码,明文是未经过加密的原始信息,密文则是加密后的信息。
2. 对称加密算法
对称加密算法指的是加密和解密时使用同一个密钥的算法,如DES、AES等。
在对称加密算法中,密钥必须保密,否则会被攻击者轻易获取并进行破解。
3. 非对称加密算法
非对称加密算法指的是加密和解密时使用不同密钥的算法,如RSA、DSA等。
在非对称加密算法中,公钥用于加密,私钥用于解密。
公钥可以公开,私钥必须保密,否则会被攻击者轻易获取并进行破解。
4. 数字签名
数字签名是用于保证信息的完整性和真实性的技术。
数字签名使用非对称加密算法,签名者使用私钥对信息进行加密,接收者使用公钥进行验证。
如果验证通过,则说明信息未被篡改过。
5. Hash函数
Hash函数是一种将任意长度的消息压缩成固定长度摘要的函数,常用于数字签名和消息验证。
Hash函数具有不可逆性,即无法通过消息摘要还原出原始数据。
以上就是密码学的基本概念,掌握这些概念对于理解密码学的原理和应用非常重要。
密码科普小知识1. 密码学基本概念:密码学(Cryptography)是一门研究如何隐匿信息以确保其安全性的学科,包括加密算法的设计、分析以及各种密码系统的应用。
2. 加密与解密:加密是将明文(原始信息)通过特定的算法转化为密文的过程,目的是防止未经授权的人获取和理解信息内容。
解密则是将密文还原为原来的明文过程,只有拥有正确密钥的人才能进行有效解密。
3. 对称加密与非对称加密:对称加密(如DES、AES等):加密和解密使用同一密钥,优点是速度快效率高,但密钥管理相对复杂,需要保证密钥在通信双方的安全传输。
非对称加密(如RSA、ECC等):使用一对公钥和私钥,公钥用于加密,私钥用于解密。
安全性更高,因为私钥不需要在网络上传输。
4. 哈希函数:哈希函数(Hash Function)是一种特殊的密码学算法,它可以将任意长度的消息压缩成固定长度的摘要,如MD5、SHA 系列等,主要用于数据完整性校验和密码存储等领域。
5. 数字签名:数字签名利用非对称加密技术,确保信息的完整性和发送者的身份真实性,发送者用自己的私钥对消息摘要进行加密形成数字签名,接收者用发送者的公钥验证签名的真实性。
6. 密钥管理:密钥管理是密码学中的重要环节,涉及密钥的生成、分发、更新、撤销及销毁等一系列操作,对于信息安全至关重要。
7. 安全协议:SSL/TLS(Secure Sockets Layer/Transport Layer Security)协议广泛应用于互联网安全通信,采用混合加密方式确保网络数据传输的安全性。
8. 密码学的应用领域:除了传统的网络安全,现代密码学还应用于数字货币(如比特币中的椭圆曲线加密)、云计算环境的数据保护、物联网设备的身份认证等诸多场景。
网络安全技术第二讲密码学基础(一)罗守山博士、教授北京邮电大学软件学院内容提要♦1 基本概念和术语♦2.现代对称加密技术♦3 非对称密码体制♦4 签名认证体系♦5 密码政策介绍1 基本概念和术语♦密码学是网络安全的基础。
–虽然网络安全技术多种多样,但最终都是要提供六种安全服务:机密性、鉴别、完整性、不可抵赖性、访问控制和可用性。
–能支持这六种安全服务的安全机制,例如:数据加密、消息鉴别、身份认证、数字签名等等大多数都是基于密码学及其衍生。
(1)密码学(Cryptology)♦密码学是研究信息系统安全保密的科学。
分为密码编码学和密码分析学。
–密码编码学(Cryptography)主要研究对信息进行编码,实现对信息的隐蔽。
–密码分析学(Cryptanalytics)主要研究加密消息的破译或消息的伪造。
(2)保密通信模型♦在不安全的信道上实现安全的通信是密码学研究的基本问题。
♦消息发送者对需要传送的消息进行数学变换处理,然后可以在不安全的信道上进行传送;♦接收者在接收端通过相应的数学变换处理可以得到信息的正确内容;♦而信道上的消息截获者,虽然可能截获到数学变换后的消息,但无法得到消息本身,这就是最基本的保密通信模型。
首先进行采样数字通信系统♦信源编码–目的:采集数据、压缩数据以利于信息的传送。
–算法:算术编码、矢量量化(VQ)编码、相关信源编码、变换编码等。
♦信道编码–目的:数据在信道上的安全传输,使具有自我纠错能力,又称纠错码。
–算法:BCH码、循环码、线性分组码等。
♦密码学–目的:保密通信。
–算法:公钥密码体系、对称钥密码体系。
♦其中发送者对消息进行数学变换的过程称为加密过程;♦接收者相应的数学变换过程称为解密过程;♦需要传送的消息称为明文;♦经过加密处理后的消息称为密文;♦信道上消息的截获者通常被称为攻击者、分析者或者搭线者。
♦下图就是一个最基本的保密通信模型:图示保密通信(加密与解密)(3)密码体制♦一个密码体制(有时也称加密方案或密码系统)是一个使通信双方能进行秘密通信的协议。