导图社区 计算机考研 信息安全(二)——密码学
这是一篇关于计算机考研 信息安全(二)——密码学的思维导图。密码学是研究如何隐密地传递信息的学科,是数学和计算机科学的分支,和信息论也密切相关。而互联网的出现和繁荣,密码学技术得到了飞跃式发展。
编辑于2021-04-18 00:20:57数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的聚集。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
这是一篇关于计算机考研 信息安全(五)——消息认证、数字签名及PGP的思维导图。消息认证 (Message Authentication):是一个证实收到的消息来自可信的源点且未被篡改的过程。
这是一篇关于计算机考研 信息安全(四)——公私钥密码体制的思维导图。密码体制也叫密码系统,是指能完整地解决信息安全中的机密性、数据完整性、认证、身份识别、可控性及不可抵赖性等问题中的一个或几个的一个系统。对一个密码体制的正确描述,需要用数学方法清楚地描述其中的各种对象、参数、解决问题所使用的算法等。
社区模板帮助中心,点此进入>>
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的聚集。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
这是一篇关于计算机考研 信息安全(五)——消息认证、数字签名及PGP的思维导图。消息认证 (Message Authentication):是一个证实收到的消息来自可信的源点且未被篡改的过程。
这是一篇关于计算机考研 信息安全(四)——公私钥密码体制的思维导图。密码体制也叫密码系统,是指能完整地解决信息安全中的机密性、数据完整性、认证、身份识别、可控性及不可抵赖性等问题中的一个或几个的一个系统。对一个密码体制的正确描述,需要用数学方法清楚地描述其中的各种对象、参数、解决问题所使用的算法等。
信息安全(二)——密码学
密码学的基本概念
密码学(Cryptology):
研究信息系统安全保密的科学。
密码编码学(Cryptography):
研究对信息进行编码,实现对信息的隐蔽。
密码分析学(Cryptanalytics) :
研究加密消息的破译或消息的伪造。
消息被称为明文(Plaintext)。
用某种方法伪装消息以隐藏它的内容的过程称为加密(Encrtption),被加密的消息称为密文(Ciphertext),而把密文转变为明文的过程称为解密(Decryption)。
密码算法:
用于加密和解密的数学函数。 密码员对明文进行加密操作时所采用的一组规则称作
加密算法(Encryption Algorithm)。 \所传送消息的预定对象称为接收者(Receiver)。接收者对密文解密所采用的一组规则称为* 解密算法(Decryption Algorithm)
加密过程
密码学的目的:Alice和Bob两个人在不安全的信道上进行通信,而破译者Oscar不能理解他们通信的内容。 加密和解密算法的操作通常都是在一组密钥的控制下进行的,分别称为加密密钥(Encryption Key) 和解密密钥(Decryption Key)。 加密和解密算法的操作通常都是在一组密钥的控制下进行的,分别称为加密密钥(Encryption Key) 和解密密钥(Decryption Key)。
密码体制
一个五元组(P,C,K,E,D)满足条件: 1) P是可能明文的有限集;(明文空间) 2) C是可能密文的有限集;(密文空间) 3) K是一切可能密钥构成的有限集;(密钥空间) 4) 任意k∈K,有一个加密算法ek∈E和相应的解密算法dk∈D,使得ek : P→C和dk : C→P分别为加密解密函数,满足dk(ek(x))=x,其中 x ∈P。
加密算法基本原理
代替:明文中的元素映射成另一个元素 置换 :重新排列 要求:不允许信息丢失,即算法可逆
基于密钥的算法,按照密钥的特点分类:
==对称密码算法(symmetric cipher)==:加密密钥和解密密钥相同,或实质上等同,即从一个易于推出另一个。又称秘密密钥算法或单密钥算法。 ==非对称密钥算法(asymmetric cipher)==:加密密钥和解密密钥不相同,从一个很难推出另一个。又称公开密钥算法(public-key cipher) 。
密码分析破解类型:
唯密文攻击 密码分析者仅知道有限数量用同一个密钥加密的密文
已知明文攻击 密码分析者除了拥有有限数量的密文外,还有数量限定的一些已知“明文—密文”对
选择明文攻击 密码分析者除了拥有有限数量的密文外,还有机会使用注入了未知密钥的加密机,通过自由选择明文来获取所希望的“明文—密文”对。
选择密文攻击 密码分析者除了拥有有限数量的密文外,还有机会使用注入了未知密钥的解密机,通过自由选择密文来获取所希望的“密文—明文”对。
选择文本攻击
密码的安全性
==无条件安全(Unconditionally secure)== 无论破译者有多少密文,他也无法解出对应的明文,即使他解出了,他也无法验证结果的正确性。 (除一次一密钥,都不是无条件安全) ==计算上安全(Computationally secure)== 破译的代价超出信息本身的价值 破译的时间超出了信息的有效期
现代密码学基本原则
设计加密系统时,总假定密码算法是可以公开的,需要保密的是密钥。“ 一切秘密在于密钥之中,而加密算法可以公开 ” 即Kerckhoff原则。
密码学的起源和发展三个阶段:
1949年之前:密码学是一门艺术
古典密码(classical cryptography)
隐写术(steganography):不同于加密。 如果把一封信锁在保险柜中,把保险柜藏在纽约的某个地方…,然后告诉你去看这封信。这并不是安全,而是隐藏。
1949~1975年:密码学成为科学
计算机使得基于复杂计算的密码成为可能 1949年Shannon的“The Communication Theory of Secret Systems” 1967年David Kahn的《The Codebreakers》 1971-73年IBM Watson实验室的Horst Feistel等的几篇技术报告 Smith,J.L.,The Design of Lucifer, A Cryptographic Device for Data Communication, 1971 Smith,J.L.,…,An Expremental Application of Cryptogrphy to a remotely Accessed Data System, Aug.1972 Feistel,H.,Cryptography and Computer Privacy, May 1973 数据的安全基于密钥而不是算法的保密
1976年以后:密码学的新方向——公钥密码学
1976年Diffie & Hellman的“New Directions in Cryptography”提出了不对称密钥密码 1977年Rivest,Shamir & Adleman提出了RSA公钥算法 90年代逐步出现椭圆曲线等其他公钥算法 公钥密码使得发送端和接收端无密钥传输的保密通信成为可能! 1977年DES正式成为标准80年代出现“过渡性”的“post DES”算法,如IDEA,RCx,CAST等 90年代对称密钥密码进一步成熟 Rijndael,RC6, MARS,Twofish,Serpent等出现 2001年Rijndael成为DES的替代者
经典密码体制
代替密码(substitution cipher)
就是明文中的每一个字符被替换成密文中的另一个字符。接收者对密文做反向替换就可以恢复出明文。
简单代替密码(simple substitution cipher):
又称单字母密码(monoalphabetic cipher),明文的一个字符用相应的一个密文字符代替。
多字母密码(ployalphabetic cipher):
明文中的字符映射到密文空间的字符还依赖于它在上下文的位置。
恺撒密码(Caesar Cipher):
已知的最早(也是最简单的方式)的简单替代密码是朱里斯.恺撒所用的密码。恺撒密码是把字母表中的每个字母用该字母后面第3个字母进行代替。例如: 明文:meet me after the toga party 密文:PHHW PH DIWHU WKH WRJD SDUWS 既然字母表是循环的,因此Z后面的字母是A。能够通过列出所以可能性定义如下所示的变换:
移位密码(Shift cipher)
对每个明文字母p,恺撒加密可转化为移位密码,其中加密算法: C = E(p) = (p+k) mod (26),其中k在1~25之间取值。 解密算法是:p = D(C) = (C-k) mod (26) 如果已知密文是恺撒密码,则使用强行攻击密码分析容易取得结果 直接对所有25个可能的密钥进行尝试。
模运算