密码学基础1
第四章 密码学基础1
混乱:
指明文、密钥和密文之间的统计关系尽可能
复杂,使得攻击者无法理出三者的相互依赖 关系。
s-p网络的轮函数包括3个变换:代换、 置换、密钥混合。
4.3.2 DES数据加密标准
1 算法简介
数据加密标准(Data Encryption Standard,DES) 是使用 最广泛的密码系统。1973年美国国家标准局征求国家 密码标准文字,IBM公司于1974年提交,于1977年被 采纳为DES。 DES出现后20年间,在数据加密方面发挥了不可替代的 作用。20世纪90年代后,随着技术的发展,密钥长度 偏短,DES不断传出被破译的进展情况。1998年12月 美国国家标准局不再用DES作为官方机密,推荐为一般 商业应用,于2001年11月发布了高级加密标准 (AES)。
字母表是循环的,Z后面的是A,能定义替换
表,即密钥。 明文:a b c d e f g h I j k l m n o p q r s t uvwxyz 密文: D E F G H I J K L M N O P Q R S T U VWXYZABC
Caesar算法能用如下公式表示: C=E(3,m)=(m+3) mod 26 如果对字母表中的每个字母用它之后的第k个 字母来代换,而不是固定其后面第3个字母, 则得到了一般的Caesar算法: C=E(k,m)=(m+k) mod 26
如果加密、解密用不同的密钥,是非对 称加密。图解
Ek1(P)=C
Dk2(C)=P Dk2(Ek1(P))=P
4.1.3密码的分类 1按应用技术分:
手工密码 机械密码 电子机内乱密码
通过电子电线,程序进行逻辑运算,以少量制乱
第2章 密码学基础
明文是原始的信息(Plain text,记为P) 密文是明文经过变换加密后信息(Cipher(塞佛) text,记为C) 加密是从明文变成密文的过程(Enciphering,记为E) 解密是密文还原成明文的过程(Deciphering,记为D) 密钥是控制加密和解密算法操作的数据(Key,记为K)
非对称密钥体制
在非对称加密中,加密密钥与解密密钥不同,此时不需要通 过安全通道来传输密钥,只需要利用本地密钥发生器产生解密密 钥,并以此进行解密操作。由于非对称加密的加密和解密不同, 且能够公开加密密钥,仅需要保密解密密钥,所以不存在密钥管 理问题。非对称加密的另一个优点是可以用于数字签名。但非对 称加密的缺点是算法一般比较复杂,加密和解密的速度较慢。在 实际应用中,一般将对称加密和非对称加密两种方式混合在一起 来使用。即在加密和解密时采用对称加密方式,密钥传送则采用 非对称加密方式。这样既解决了密钥管理的困难,又解决了加密 和解密速度慢的问题。
2.2
密码破译
密码破译是在不知道密钥的情况下,恢复出密文中隐藏 的明文信息。密码破译也是对密码体制的攻击。 密码破译方法
1. 穷举攻击 破译密文最简单的方法,就是尝试所有可能的密码组合。经 过多次密钥尝试,最终会有一个钥匙让破译者得到原文,这个过 程就称为穷举攻击。
逐一尝试解密 密 文
解 密
错误报文
对称密钥体制
对称加密的缺点是密钥需要通过直接复制或网络传输的方式 由发送方传给接收方,同时无论加密还是解密都使用同一个密钥 ,所以密钥的管理和使用很不安全。如果密钥泄露,则此密码系 统便被攻破。另外,通过对称加密方式无法解决消息的确认问题 ,并缺乏自动检测密钥泄露的能力。对称加密的优点是加密和解 密的速度快。
2.3.1 对称加密技术
信息加密技术
一、加密技术
1. 2. 3. 4. 5.
密码学基础 对称加密算法 非对称加密体制 数据完整性机制 数字签名
二、密钥管理与证书
密码分配与管理 2. 数字证书
1.
学华软软件 学华软软件学 网络 术系
宏
1.1 密码学基础---加密和解密
KE
KD
M
加 密
C
C
解 密
M
加密(E) 加密 M:明文 : C:密文 : KE:加密密钥
双密钥,私钥保密, 公开密钥算法 ,双密钥,私钥保密,公钥公开 KE:加密密钥 KD:解密密钥 KE≠KD
A与B方传输信息: 与 方传输信息 方传输信息: 传输方A: 拥有( 私钥 私钥, 公钥 公钥) 传输方 拥有(A私钥,B公钥) 传输方B: 拥有(B私钥 A公钥 私钥, 公钥) 传输方B: 拥有(B私钥,A公钥)
加密过程: 主要是重复使用混乱和扩散两种技术。 加密过程 主要是重复使用混乱和扩散两种技术。
混乱(Confusion)是改变信息块使输出位和输入位无明显的统计关系。 是改变信息块使输出位和输入位无明显的统计关系。 混乱 是改变信息块使输出位和输入位无明显的统计关系 扩散(Diffusion)是将明文位和密钥的效应传播到密文的其它位。 是将明文位和密钥的效应传播到密文的其它位。 扩散 是将明文位和密钥的效应传播到密文的其它位
2.非对称密钥密码体制: (双密钥,私钥保密,公钥公开) .非对称密钥密码体制 双密钥,私钥保密,公钥公开)
(1)不需要对密钥通信进行保密,所需传输的只有公开密钥,极大地简 化了密 不需要对密钥通信进行保密,所需传输的只有公开密钥, 不需要对密钥通信进行保密 钥管理。 钥管理。缺点是速度慢 (2)改进了传统加密方法,还提供了传统加密方法不具备的应用,如数字签名、 )改进了传统加密方法,还提供了传统加密方法不具备的应用,如数字签名、 防抵赖等。 防抵赖等。
密码学基础(一)常见密码算法分类
密码学基础(一)常见密码算法分类对称算法是指一种加密密钥和解密密钥相同的密码算法,也称为密钥算法或单密钥算法。
该算法又分为分组密码算法(Block cipher)和流密码算法(Stream cipher)。
•分组密码算法o又称块加密算法o加密步骤一:将明文拆分为 N 个固定长度的明文块o加密步骤二:用相同的秘钥和算法对每个明文块加密得到 N 个等长的密文块o加密步骤三:然后将 N 个密文块按照顺序组合起来得到密文•流密码算法o又称序列密码算法o加密:每次只加密一位或一字节明文o解密:每次只解密一位或一字节密文常见的分组密码算法包括 AES、SM1(国密)、SM4(国密)、DES、3DES、IDEA、RC2 等;常见的流密码算法包括 RC4 等。
•AES:目前安全强度较高、应用范围较广的对称加密算法•SM1:国密,采用硬件实现•SM4:国密,可使用软件实现•DES/3DES:已被淘汰或逐步淘汰的常用对称加密算法二、非对称密码算法(Asymmetric-key Algorithm)非对称算法是指一种加密密钥和解密密钥不同的密码算法,也称为公开密码算法或公钥算法。
该算法使用一个密钥进行加密,另一个密钥进行解密。
•加密秘钥可以公开,又称为公钥•解密秘钥必须保密,又称为私钥常见非对称算法包括 RSA、SM2(国密)、DH、DSA、ECDSA、ECC 等。
三、摘要算法(Digest Algorithm)算法是指将任意长度的输入消息数据转换成固定长度的输出数据的密码算法,也称为哈希函数、哈希函数、哈希函数、单向函数等。
算法生成的定长输出数据称为摘要值、哈希值或哈希值,摘要算法没有密钥。
算法通常用于判断数据的完整性,即对数据进行哈希处理,然后比较汇总值是否一致。
摘要算法主要分为三大类:MD(Message Digest,消息摘要算法)、SHA-1(Secure Hash Algorithm,安全散列算法)和MAC(Message Authentication Code,消息认证码算法);另国密标准 SM3 也属于摘要算法。
1_密码学基础
➢ 1967年David Kahn的《The Codebreakers》 ➢ 1971-73年IBM Watson实验室的Horst Feistel等的几篇技
33
密码学基础
破译分析I: 尝试全部可能
使用简单替代(移n位) 密钥未知 已知密文: CSYEVIXIVQMREXIH 如何找到密钥? 仅有26个可能密钥 尝试全部的可能!看哪个能找到合
理的含义 穷举搜索 答案: 密钥 = 4
34
密码学基础
更复杂的替代
密钥是一些字母的组合 不一定是移位 例如:
明文:Caesar was a great soldier 密文:Fdhvdu zdv d juhdw vroglhu
第12页
2.3.1 形形色色的密码技术
二战著名的(ENIGMA)密码 ➢ 德国人Arthur Scheribius人发明 ➢ 德国人将其改装为军用型,使之更为复杂可靠 ➢ 1933年,纳粹最高统帅部通信部决定将“ENIGMA”作为德
➢ 经验告诉我们一个秘密的算法在公开时就很容易破解了 ➢ 密码的算法不可能永远保持隐秘 ➢ 理想的情况是在密码算法被破解之前找到算法的弱点
5
密码学基础
黑盒子密码系统
密钥
密钥
明文 加密
密文
解密
密码的通用方式
密码学基础
明文
6
密码发展历史
形形色色的密码技术 密码发展史
第7页
2.3.1 形形色色的密码技术
第三阶段:1976年以后,密码学的新方向——公钥密 码学。公钥密码使得发送端和接收端无密钥传输的保 密通信成为可能。
密 码 学 基 础
左28位Ci
右28位D
左右合并 换位选择2
48位密钥Ki
数据加密标准DES
DES的雪崩效应
在相同密钥加密时,明文的微小变化(如1位)会 引起密文的较大变化. 对相同明文,用两个差别很小(如1位)的密钥加 密,产生的密文差别较大.
DES具有很强的雪崩效应
数据加密标准DES
DES的雪崩效应
如下两个明文只差1位:
R i-1(32位) E
32 4 8 12 16 20 24 28
1 5 9 13 17 21 25 29
2 6 10 14 18 22 26 30
3 7 11 15 19 23 27 31
4 8 12 16 20 24 28 32
5 9 13 17 21 25 29 1
48位
⊕
S3 S4 P S5
0
0 1 2 3
1
2
3
4
5
6 7
8
9 10 11 12 13 14 15
14 4 13 0 15 7 4 1 14 15 12 8
1 2 15 4 14 2 8 13 6 2 4 9
11 8 3 10 6 12 5 9 0 7 13 1 10 6 12 11 9 5 3 8 2 1115 12 9 7 3 10 5 0 1 7 5 11 3 14 10 0 6 13
现代密码学
公开密钥算法 加密密钥(公钥) ≠ 解密密钥(私钥) 数学基础:单向函数,单向陷门函数 应用方面:加密/解密 数字签名 密钥交换 代表:RSA体制,Rabin体制等
密钥管理
密钥生成
1、密钥长度与密钥空间 2、好密钥与弱密钥 好密钥:自动处理设备产生的随机的位串 弱密钥:特定的密钥比其他密钥的安全性差。例如,用 户个人信息,简写字母,各种数据库单词及其不同变形
密码学基础知识
密码学基础知识密码学是一门研究数据的保密性、完整性以及可用性的学科,广泛应用于计算机安全领域、网络通信以及电子商务等方面。
密码学的基础知识是研究密码保密性和密码学算法设计的核心。
1. 对称加密和非对称加密在密码学中,最基本的加密方式分为两类:对称加密和非对称加密。
对称加密通常使用一个密钥来加密和解密数据,同时密钥必须保密传输。
非对称加密则使用一对密钥,分别为公钥和私钥,公钥可以公开发布,任何人都可以用它来加密数据,但只有私钥持有人才能使用私钥解密数据。
2. 散列函数散列函数是密码学中常用的一种算法,它将任意长度的消息压缩成一个固定长度的摘要,称为消息摘要。
摘要的长度通常为128位或更长,主要用于数字签名、证书验证以及数据完整性验证等。
常见的散列函数有MD5、SHA-1、SHA-256等。
3. 数字签名数字签名是一种使用非对称加密技术实现的重要保密机制,它是将发送方的消息进行加密以保证消息的完整性和真实性。
发送方使用自己的私钥对消息进行签名,然后将消息和签名一起发送给接收方。
接收方使用发送方的公钥来验证签名,如果消息被篡改或者签名无法验证,接收方将拒绝接收消息。
4. 公钥基础设施(PKI)PKI是一种包括数字证书、证书管理和证书验证的基础设施,用于管理数字证书和数字签名。
数字证书是将公钥与其拥有者的身份信息结合在一起的数字文件,它是PKI系统中最重要的组成部分之一。
数字证书通过数字签名来验证其真实性和完整性,在通信和数据传输中起着至关重要的作用。
总之,密码学是计算机科学中重要的领域之一,其应用广泛,影响深远。
掌握密码学基础知识非常有必要,对于安全性要求较高的企业和组织来说,更是至关重要。
第13章 密码学基础
版权所有,盗版必纠
13.1.1 密码学发展历史
• 古典密码算法有:替代加密、置换加密; • 对称加密算法包括DES和AES; • 非对称加密算法包括RSA、背包密码、Rabin、 椭圆曲线等。 • 目前在数据通信中使用最普遍的算法有DES算法 和RSA算法等。 • 除了以上这些密码技术以外,一些新的密码技 术如辫子密码、量子密码、混沌密码、DNA密码 等近年来也发展起来,但是它们距离真正的实用 还有一段距离。
版权所有,盗版必纠
13.1 密码学概述
• 小小的密码还可以导致一场战争的胜负。例如,计算机时 代的到来使得美国在1942年制造出了世界上第一台计算 机。二战期间,日本采用的最高级别的加密手段是采用 M-209转轮机械加密改进型—紫密,在手工计算的情况下 不可能在有限的时间破解,美国利用计算机轻松地破译了 日本的紫密密码,使日本在中途岛海战中一败涂地,日本 海军的主力损失殆尽。1943年,在解密后获悉日本山本 五十六将于4月18日乘中型轰炸机,由6架战斗机护航, 到中途岛视察时,罗斯福总统亲自做出决定截击山本,山 本乘坐的飞机在去往中途岛的路上被美军击毁,山本坠机 身亡,日本海军从此一蹶不振。密码学的发展直接影响了 二战的战局!
版权所有,盗版必纠
13.1.1 密码学发展历史
• 经典密码学(Classical Cryptography)。其两大类别
分别为:
• (1).
• • 经典加密法的资讯很易受统计的攻破,资料越多,解破就 更容易,使用分析频率就是好办法。经典密码学现在仍未 消失,常被用于考古学上,还经常出现在智力游戏之中。 在20世纪早期,包括转轮机的一些机械设备被发明出来用 于加密,其中最著名的是用于第二次世界大战的密码机 “迷”(Enigma),如图13.2所示。 这些机器产生的密码 相当大地增加了密码分析的难度。比如针对Enigma的各 种各样的攻击,在付出了相当大的努力后才得以成功。
02-1密码学基础一1页版
网络安全技术第二讲密码学基础(一)罗守山博士、教授北京邮电大学软件学院内容提要♦1 基本概念和术语♦2.现代对称加密技术♦3 非对称密码体制♦4 签名认证体系♦5 密码政策介绍1 基本概念和术语♦密码学是网络安全的基础。
–虽然网络安全技术多种多样,但最终都是要提供六种安全服务:机密性、鉴别、完整性、不可抵赖性、访问控制和可用性。
–能支持这六种安全服务的安全机制,例如:数据加密、消息鉴别、身份认证、数字签名等等大多数都是基于密码学及其衍生。
(1)密码学(Cryptology)♦密码学是研究信息系统安全保密的科学。
分为密码编码学和密码分析学。
–密码编码学(Cryptography)主要研究对信息进行编码,实现对信息的隐蔽。
–密码分析学(Cryptanalytics)主要研究加密消息的破译或消息的伪造。
(2)保密通信模型♦在不安全的信道上实现安全的通信是密码学研究的基本问题。
♦消息发送者对需要传送的消息进行数学变换处理,然后可以在不安全的信道上进行传送;♦接收者在接收端通过相应的数学变换处理可以得到信息的正确内容;♦而信道上的消息截获者,虽然可能截获到数学变换后的消息,但无法得到消息本身,这就是最基本的保密通信模型。
首先进行采样数字通信系统♦信源编码–目的:采集数据、压缩数据以利于信息的传送。
–算法:算术编码、矢量量化(VQ)编码、相关信源编码、变换编码等。
♦信道编码–目的:数据在信道上的安全传输,使具有自我纠错能力,又称纠错码。
–算法:BCH码、循环码、线性分组码等。
♦密码学–目的:保密通信。
–算法:公钥密码体系、对称钥密码体系。
♦其中发送者对消息进行数学变换的过程称为加密过程;♦接收者相应的数学变换过程称为解密过程;♦需要传送的消息称为明文;♦经过加密处理后的消息称为密文;♦信道上消息的截获者通常被称为攻击者、分析者或者搭线者。
♦下图就是一个最基本的保密通信模型:图示保密通信(加密与解密)(3)密码体制♦一个密码体制(有时也称加密方案或密码系统)是一个使通信双方能进行秘密通信的协议。
密码学基础_图文
解密过程与加密过程类似,不同的只是进行模26减,而不是模26 加。
使用Vigenère表可以方便地进行加密和解密。
@
基本概念
• 密码学(Cryptology): 是研究信息系统安全保密 的科学.
➢ 密码编码学(Cryptography): 主要研究对信息 进行编码,实现对信息的隐蔽.
➢ 密码分析学(Cryptanalytics):主要研究加密消 息的破译或消息的伪造.
密码新技术
• 量子密码(单量子不可复制定理) • DNA密码 • 化学密码 • ……
• 消息被称为明文(Plaintext)。用某种方法伪装消息以 隐藏它的内容的过程称为加密(Encrtption),被加密 的消息称为密文(Ciphertext),而把密文转变为明文 的过程称为解密(Decryption)。
• 对明文进行加密操作的人员称作加密员或密码员 (Cryptographer).
• 例如:明文INTELLIGENT用密钥PLAY加密为: M=INTE LLIG ENT K=PLAY PLAY PLA
Ek(M)=XYTC AMIE TYT
• 例 设m=6,且密钥字是CIPHER,这相应于密钥。假定明文串 是 this cryptosystem is not secure 首先将明文串转化为数字串,按6个一组分段,然后模26“加”上 密钥字得:
密码算法分类-iii
• 按照明文的处理方法: ➢ 分组密码(block cipher):将明文分成固定长度
的组,用同一密钥和算法对每一块加密,输出 也是固定长度的密文。 ➢ 流密码(stream cipher):又称序列密码.序列密 码每次加密一位或一字节的明文,也可以称为 流密码。
密码学基础知识
密码学基础知识密码学是研究加密、解密和信息安全的学科。
随着信息技术的快速发展,保护敏感信息变得越来越重要。
密码学作为一种保护信息安全的方法,被广泛应用于电子支付、网络通信、数据存储等领域。
本文将介绍密码学的基础知识,涵盖密码学的基本概念、常用的加密算法和密码学在实际应用中的运用。
一、密码学的基本概念1. 加密与解密加密是将明文转化为密文的过程,而解密则是将密文转化为明文的过程。
加密算法可分为对称加密和非对称加密两种方式。
对称加密使用同一个密钥进行加密和解密,速度较快,但密钥的传输和管理相对复杂。
非对称加密则使用一对密钥,公钥用于加密,私钥用于解密,更安全但速度较慢。
2. 密钥密钥是密码学中重要的概念,它是加密和解密的基础。
对称加密中,密钥只有一个,且必须保密;非对称加密中,公钥是公开的,私钥则是保密的。
密钥的选择和管理对于信息安全至关重要。
3. 摘要算法摘要算法是一种不可逆的算法,将任意长度的数据转化为固定长度的摘要值。
常见的摘要算法有MD5和SHA系列算法。
摘要算法常用于数据完整性校验和密码验证等场景。
二、常用的加密算法1. 对称加密算法对称加密算法常用于大规模数据加密,如AES(Advanced Encryption Standard)算法。
它具有速度快、加密强度高的特点,广泛应用于保护敏感数据。
2. 非对称加密算法非对称加密算法常用于密钥交换和数字签名等场景。
RSA算法是非对称加密算法中最常见的一种,它使用两个密钥,公钥用于加密,私钥用于解密。
3. 数字签名数字签名是保证信息完整性和身份认证的一种方式。
它将发送方的信息经过摘要算法生成摘要值,再使用私钥进行加密,生成数字签名。
接收方使用发送方的公钥对数字签名进行解密,然后对接收到的信息进行摘要算法计算,将得到的摘要值与解密得到的摘要值进行比对,以验证信息是否完整和真实。
三、密码学的实际应用1. 网络通信安全密码学在网络通信中扮演重要的角色。
密码学基础01-概述+对称密码
伴随计算机和通信技术旳迅速发展和普及应用,出现
了电子政务、电子商务、电子金融等主要旳应用信息系统
。在这些系统中必须确保信息旳安全传递和存储
>>
0
>>
1
>>
0
>>
1
>>
0
>>
密码学旳发展
• 1949年之前:古典密码(classical cryptography)
1. 密码学多半是具有艺术特征旳字谜,出现某些密码算法和机械
密钥(private key)私钥,简称私钥。
>>
0
>>
1
>>
0
>>
1
>>
0
>>
>>
0
>>
1
>>
0
>>
1
>>
0
>>
>>
0
>>
1
>>
0
>>
1
>>
0
>>
>>
0
>>
1
>>
0
>>
1
>>
0
>>
>>
0
>>
1
>>
0
>>
1
>>
0
>>
密码学基础
一些传统加密技术的应用
(3)一次一密钥密码 每一次使用一个新的密钥进行加密, 然后该密钥就被丢弃,下次再要加密时 再选择一个新密钥。是一种理想的加密 方案。 在你的日常生活中,你是否用到或知 道一次一密钥的情况?
几个密码实例
Phaistos圆盘,一种直径约为160mm的Cretan圆盘,一种直径约为 圆盘 的 Mnoan粘土圆盘,始于公元前 世纪。表面有明 粘土圆盘, 世纪。 粘土圆盘 始于公元前17世纪 显字间空格的字母,至今还没有破解。 显字间空格的字母,至今还没有破解。
几个密码实例
• 第一次世界大战期德国间谍依靠字
码算法一起用来加/解密。
密钥
在设计加密系统时,加密算法是可以公开的,真 正需要保密的是密钥。改变了密钥也就改变了密 文. 密钥的可能值的范围叫做密钥空间。密钥通常是 一串无意义的字符串。 密钥长度( 密钥长度(位) 40 56 64 112 128 组合个数 240=1099511627776 256=7.205759403793×1016 × 264=1.844674407371×1019 × 2112=5.192296858535×1033 × 2128=3.402823669209×1038 ×
密码的分类
4、分组密码和序列密码
• •
分组密码:将明文以固定长度进行分 组,每组明文用相同的密码和算法进行 变换,得到一组密文。 序列密码:把报文、语音、图像等原 始信息转换为明文数据序列,再将其与 密钥进行“异或”运算,生成密文序列 发给接收者,接收者再用相同的密钥序 列与密文序列进行解密(异或),恢复 明文序列。
密码的分类
2、替代密码、移位密码
• •
替代密码:也叫置换密码,即加密时 将明文中的每个或第组字符由另一个或 另一组字符所替代。 移位密码:也叫换位密码,加密时只 对字母重新排序,每个字母的位置变了, 但没被隐藏起来。
密码学基础
密钥空间
232 = 4.3 x 109 256 = 7.2 x 1016 2128 = 3.4 x 1038 2168 = 3.7 x 1050
以1µ s加密106 次 的速率需要的时间
2.15 毫秒 10 小时 5.4 x 1018 年 5.9 x 1030 年
19
攻击的复杂性
攻击的复杂性,可以采用以下不同的方式来 衡量:
数据复杂性:所需数据量;
时间复杂性:所需的时间; 空间复杂性:所需的存储空间。
20
算法的破译程度
算法的破译程度按照严格递减的顺序排列为:
完全破译:找到了密钥K。
完全演绎:找到了等效算法。 局部演绎:找到了截获密文的对应明文。 信息推导:得到有关密钥和明文的信息。
密码学基本概念
• 密码学(Cryptology): 是研究信息系统秘密通信 和破译密码的方法的一门科学. 密码编码学(Cryptography): 主要研究对信息进 行编码,实现对信息的隐蔽. 密码分析学(Cryptanalytics):主要研究加密消 息的破译或消息的伪造,恢复被隐藏的信息的本来 面目. 密码系统包含明文字母空间、密文字母空间、密 钥空间和算法,两个基本单元是算法和密钥。
替换 (Substitution),明文中的每个元素 (比特、字母、一组比特或者一组字母) 都 被映射到另外一个元素。 变换、移项(Transposition),明文中每个 元素都被 再排列。
信息安全保密性的衡量
信息安全保密性的高低是通过破解它的难易 程度来衡量的。
18
保密算法的安全
算法的安全依赖于破译该算法的困难程度 (费用、时间、数据量)。
密码算法分类-i
• 按照保密的内容分: 受限制的算法:算法的保密性基于保持算法的秘密。
网络安全综合习题及答案解析
第 1 章密码学基础一、选择题1. 计算机网络是地理上分散的多台(C)遵循约定的通信协议,通过软硬件互联的系统。
A. 计算机B. 主从计算机C. 自主计算机D. 数字设备2. 密码学的目的是(C)。
A. 研究数据加密B. 研究数据解密C. 研究数据保密D. 研究信息安全3. 假设使用一种加密算法,它的加密方法很简单:将每一个字母加5,即a加密成f。
这种算法的密钥就是5,那么它属于(A)。
A. 对称加密技术B. 分组密码技术C. 公钥加密技术D. 单向函数密码技术4. 网络安全最终是一个折衷的方案,即安全强度和安全操作代价的折衷,除增加安全设施投资外,还应考虑(D)。
A. 用户的方便性B. 管理的复杂性C. 对现有系统的影响及对不同平台的支持D. 上面3项都是5.A方有一对密钥(K A公开,K A秘密),B方有一对密钥(K B公开,K B秘密),A方向B方发送数字签名M,对信息M加密为:M’= K B公开(K A秘密(M))。
B方收到密文的解密方案是(C)。
A. K B公开(K A秘密(M’))B. K A公开(K A公开(M’))C. K A公开(K B秘密(M’))D. K B秘密(K A秘密(M’))6. “公开密钥密码体制”的含义是(C)。
A. 将所有密钥公开B. 将私有密钥公开,公开密钥保密C. 将公开密钥公开,私有密钥保密D. 两个密钥相同二、填空题1.密码系统包括以下4个方面:明文空间、密文空间、密钥空间和密码算法。
2.解密算法D是加密算法E的逆运算。
3.常规密钥密码体制又称为对称密钥密码体制,是在公开密钥密码体制以前使用的密码体制。
4.如果加密密钥和解密密钥相同,这种密码体制称为对称密码体制。
5.DES算法密钥是64位,其中密钥有效位是56位。
6.RSA算法的安全是基于分解两个大素数的积的困难。
7.公开密钥加密算法的用途主要包括两个方面:密钥分配、数字签名。
8.消息认证是验证信息的完整性,即验证数据在传送和存储过程中是否被篡改、重放或延迟等。
密码学基础
另一种是将明文的消息进行分组, 逐组进行加密,称之为分组密码。 单钥密码也成为对称密码。 在密码学中,单钥体制不仅可以用 于加密,还可以用于消息的认证。
双钥密码体制
双钥密码体制是由Diffie-Hellman于1976年 首先引入的。采用双钥体制的每一个用户 都有一对密钥,其中一个密钥是可以公开 的,称为公钥;另一个是秘密的,称为私 钥。双钥密码体制也称为公钥密码体制, 又称非对称密码体制。
双钥体制的主要特点在于加密和解密能 力的分开,因而可以实现有多个用户加 密的消息可以有一个用户解读,或由一 个用户加密的消息,可以被多个用户解 读。基于这两个特点,前者可以用于在 公共网络中实现保密通信,后者可实现 对用户的认证。
密码攻击方法
按敌手获得信息量的多少将攻击的类型划分为 以下4类。 密码分析学是指在没有加密密钥的情况下,攻击 密文的过程 ♦唯密文攻击(ciphertext only ) --只知道算法与一些密文 --利用统计方法 --需要能够识别明文
密码学(Cryptology): 是研究信息系统安全 保密的科学,包括密码编码学和密码分 析学。
一个通信保密系统由以下几部分组成: • 明文消息空间M • 密文消息空间C • 密钥空间K EK : M C • 加密变换 • 解密变换 DK : C M 称总体 (M , C, K , Ek , Dk ) 为保密通信系统。
2.
入侵者和病毒 信息安全的人为威胁主要来自用户和恶意 软件的非法侵入。 黑客:入侵信息系统的用户。实施破译或 进入计算机系统;或者对计算机系统进行 破坏;或非法窃取系统资源(如窃取信用 卡号或非法资金传送),对数据进行未受 权的修改或破坏计算机系统。
恶意程序
需要主程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息安全理论与技术第四讲密码学基础(三)⏹讨论议题• 密钥分配• 公钥密码算法– Diffie-Hellman密钥交换算法–背包算法– RSA算法– EIGamal算法–椭圆曲线密码算法ECC⏹密钥分配(Key Distribution)建立密钥分本协议必须考虑两个因素:1)传输量和存储量就尽可能的小;2)每一对用户U和V都能独立计算一个秘密密钥。
对于通信方A和B来说密钥分配方式由以下几种方式:1)A选择密钥并手工传递给B;2)第三方C选择密钥分别手工传递给A,B;3)用A、B原有共享密钥传送新密钥(采用旧密作用于+新密钥方式);4)与A、B分别有共享密钥的第三方C的加密连接,C就可以用加密连接传送新密钥给A和/或B。
• N个用户集需要N(N-1)/2个共享密钥。
简单的密钥分配:1)A产生公/私钥对{ PU a,PR a}并将PU a和其标识ID a的消息发送给B;2)B产生秘密钥K S,并用A的公钥对K S,加密后发送给A;3)A计算D(PU a E(PU a,K S)得出秘密钥K S。
因为只有A能解密该消息,只有A和B知道K S;4)A丢掉PU a,PR a,B丢掉PU a。
A和B 可以用传统的密码和会话密钥K S安全通信。
●Key Distribution Center密钥分发中心●问题的提出1)密钥管理量的困难传统密钥管理:两两分别用一对密钥时,则n个用户需要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密钥空间急剧增大。
如:n=100 时, C(100,2)=4,995n=5000时, C(5000,2)=12,497,500(2)数字签名的问题传统加密算法无法实现抗抵赖的需求。
密钥分发1)每个用户与KDC有共享主密钥(Master Key);2)N个用户,KDC只需分发N个Master Key;3)两个用户间通信用会话密钥(Session Key);(会话密钥:端系统之间的通信使用一个临时的密钥进行加密,这个密钥叫会话密钥)4)用户必须信任KDC;5)KDC能解密用户间通信的内容⏹公开密钥密码起源1)公钥密码又称为双钥密码和非对称密码,是1976年由Diffie和Hellman在其“密码学新方向”一文中提出的,见划时代的文献:W.Diffie and M.E.Hellman, New Directrions inCryptography, IEEE Transaction on Information Theory, V.IT-22.No.6, Nov1976,PP.644-654;2)RSA公钥算法是由Rivest,Shamir和Adleman在1978年提出来的, Communitions of the ACM. Vol.21.No.2.Feb. 1978, PP.120-126⏹公开密钥密码的重要特性1.加密与解密由不同的密钥完成;加密:X→Y:Y = E KU(X);加密密钥是公开的;解密:Y→X:X = D KR(Y) = D KR(E KU(X));解密密钥是保密的;2.知道加密算法,从加密密钥得到解密密钥在计算上是不可行的;3.两个密钥中任何一个都可以用作加密而另一个用作解密(不是必须的);X = D KR(E KU(X)) = E KU(D KR(X))⏹基于公开密钥的加密过程⏹基于公开密钥的鉴别过程⏹用公钥密码实现保密•用户拥有自己的密钥对(K U,K R);•公钥K U公开,私钥K R保密;•A→B:Y=E KUb(X)•B: D KRb(Y)= D KRb(E KUb(X))=X⏹用公钥密码实现鉴别•条件:两个密钥中任何一个都可以用作加密而另一个用作解密•鉴别:A→ALL: Y=E KRa(X)ALL:D KUa(Y)=D KUa(E KRa(X))=X⏹公钥密钥的应用范围•加密/解密:发送方用接收方的公开密钥加密报文;•数字签名(身份鉴别):发送用自己的私有密钥“签署”报文;•密钥交换:两方合作以便交换会话密钥。
⏹基本思想和要求:•涉及到各方:发送方、接收方、攻击者;• 涉及到数据:公钥、私钥、明文、密文;• 公钥算法的条件:1)产生一对密钥是计算可行的;2)已知公钥和明文,产生密文是计算可行的;3)接收方利用私钥来解密密文是计算可行的;4)对于攻击者,利用公钥来推断私钥是计算不可行的;5)已知公钥和密文,恢复明文是计算不可行的;6)(可选)加密和解密的顺序可交换。
这些要求最终可以归结为一个叫陷门单向函数:单向陷门函数是满足下列条件的函数f:(1)给定x,计算y=f k(x)是容易的;(2)给定y, 计算x使x=f k-1(y)是不可行的。
(3)存在k,已知k 时,对给定的任何y,若相应的x存在,则计算x使f k-1(x) 是容易的。
⏹公钥密码基于的数学难题1)背包问题;2)大整数分解问题(The Integer Factorization Problem,RSA体制);3)有限域的乘法群上的离散对数问题(The Discrete Logarithm Problem,ElGamal体制);4)椭圆曲线上的离散对数问题(The Elliptic Curve Discrete Logarithm Problem,类比的ElGamal体制)⏹经典例子:1)Diffie-Hellman密钥交换算法;2)背包算法;3)RSA算法;4)EIGamal算法;5)椭圆曲线密码算法ECC一、Diffie-Hellman密钥交换Diffie-Hellman密钥交换算法的有效性依赖于计算离散对数的难度。
简言之,可以如下定义离散对数:首先定义一个素数p的原根,为其各次幂产生从1 到p-1的所有整数根,也就是说,如果a是素数p的一个原根,那么数值a mod p, a2 mod p, ..., a p-1 mod p是各不相同的整数,并且以某种排列方式组成了从1到p-1的所有整数。
对于一个整数b和素数p的一个原根a,可以找到惟一的指数i,使得b = a i mod p其中0 ≤i ≤ (p-1)指数i称为b的以a为基数的模p的离散对数或者指数。
该值被记为ind a ,p(b)。
基于此背景知识,可以定义Diffie-Hellman密钥交换算法。
该算法描述如下:1、有两个全局公开的参数,一个素数P和一个整数a,a是P的一个原根。
2、假设用户A和B希望交换一个密钥,用户A选择一个作为私有密钥的随机数X A<P,并计算公开密钥Ya=a Xa mod p。
A对X A的值保密存放而使Y A能被B公开获得。
类似地,用户B选择一个私有的随机数X B<P,并计算公开密钥Y b=a Xb mod p。
B对X B的值保密存放而使Y B能被A公开获得。
3、用户A产生共享秘密密钥的计算方式是K=Y b Xa mod p。
同样,用户B 产生共享秘密密钥的计算是K=Ya Xb mod p。
这两个计算产生相同的结果:K = (Y B)XA mod P= (a XB mod P)XA mod P= (a XB)XA mod P (根据取模运算规则得到)= a XBXA mod P= (a XA)XB mod P= (a XA mod P)XB mod P= (Y A)XB mod P因此相当于双方已经交换了一个相同的秘密密钥。
4、因为X A和X B是保密的,一个敌对方可以利用的参数只有P、a、Y A和Y B。
因而敌对方被迫取离散对数来确定密钥。
例如,要获取用户B的秘密密钥,敌对方必须先计算X B = ind a ,P(Y B)然后再使用用户B采用的同样方法计算其秘密密钥K。
Diffie-Hellman密钥交换算法的安全性依赖于这样一个事实:虽然计算以一个素数为模的指数相对容易,但计算离散对数却很困难。
对于大的素数,计算出离散对数几乎是不可能的。
下面给出例子。
密钥交换基于素数P = 97和97的一个原根a = 5。
A和B分别选择私有密钥X A = 36和X B = 58。
每人计算其公开密钥 Y A = 536 = 50 mod 97Y B = 558 = 44 mod 97在他们相互获取了公开密钥之后,各自通过计算得到双方共享的秘密密钥如下:K = (Y B)XA mod 97 = 4436 = 75 mod 97K = (Y A)XB mod 97 = 5058 = 75 mod 97从|50,44|出发,攻击者要计算出75很不容易。
–下图给出了一个利用Diffie-Hellman计算的简单协议。
用户A 用户B2、Diffie-Hellman密钥交换的攻击二、背包问题• 背包问题描述:给定重量分别为a1,a2,…a n的n个物品,装入一个背包中,要求重量等于一个给定值那么,究竟是那些物品?• 0-1背包问题:–给定一个正整数S和一个背包向量A=(a1,…,a n),其中ai是正整数,求满足方程S = ∑a i x i的二进制向量X=(x1,…,x n)。
1、背包问题用于公钥密码学• 做法:明文为X,S为密文;• 奥妙在于有两类背包,一类可以在线性时间内求解,另一类则不能;• 把易解的背包问题修改成难解的背包问题;1)公开密钥使用难解的背包问题;2)私钥使用易解的背包问题;2、易解的背包问题——超递增背包• 满足下列条件的背包:a i > ∑a j (j = 1,…,i-1),这样的背包也被称为简单背包• 求解:–从最大的a i开始,如果S大于这个数,则减去a i,记x i为1,否则记x i为0–如此下去,直到最小的a i• 例如背包序列{2, 3, 6, 13, 27, 52}:求解70的背包;结果为{2, 3, 13, 52};所以,密文70对应的明文为110101。
3、基于背包问题的公钥密码系统——MH公钥算法• 加密–将明文分为长度为n的块X=(x1,…,x n)–然后用公钥A ' = (a1', …, a n'),将明文变为密文S = E(X) = ∑a i' x i • 解密–先计算S ' = w-1S mod m,再求解简单背包问题S ' = ∑a i x i4、Eaxmple-从私钥计算公钥• 私钥{2,3,6,13,27,52},且n=31, m=1052*31 mod 105= 623*31 mod 105=936*31 mod 105=8113*31 mod 105= 8827*31 mod 105=10252*31 mod 105= 37• 公钥{62,93,81,88,102,37}5、Eaxmple-加密6、Eaxmple-解密7、背包密码系统的意义:1)是第一个公钥密码系统;2)有较好的理论价值;3)在实践过程中,大多数的背包方案都已被破解,或者证明存在缺陷。