网络信息安全复习资料2.docx
《网络信息安全复习资料2.docx》由会员分享,可在线阅读,更多相关《网络信息安全复习资料2.docx(55页珍藏版)》请在冰豆网上搜索。
网络信息安全复习资料2
计算题:
1、设密钥交换基于Diffie-Hellman算法,素数P=97和97的一个原元(即本原根),a=5。
A和B两用户分别选择秘密密钥(即私钥)XA=36和XB=58,试计算出A和B两用户的公开密钥?
共享的密钥?
2、替代
▪明文的字母由其它字母或数字或符号代替
▪若该明文被视为一个比特序列,则替代涉及到用密文比特模式代替明文比特模式
典型代表:
单字母替换
(1)恺撒密码
破译以下密文:
wuhdwblpsrvvleoh
TREATYIMPOSSIBLE
加密算法:
Ci=E(Pi)=Pi+3
字母表:
(密码本)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
defghijklmnopqrstuvwxyzabc
恺撒密码(caesarcipher)
破译以下密文:
wuhdwblpsrvvleoh
TREATYIMPOSSIBLE
加密算法:
Ci=E(Pi)=Pi+3
字母表:
(密码本)
ABCDEFGHIJKLMNOPQRSTUVWXYZ(对应数字0:
a,1….25:
z)
defghijklmnopqrstuvwxyzabc
恺撒密码的改进
⏹已知加密与解密算法
⏹C=E(p)=(p+k)mod(26)
⏹p=D(C)=(C-k)mod(26)
⏹25个可能的密钥k,适用Brute-ForceCryptanalysis
⏹明文的语言是已知的且易于识别
恺撒密码的特点
⏹单字母密码(简单替换技术)
⏹简单,便于记忆
⏹缺点:
结构过于简单,密码分析员只使用很少的信息就可预言加密的整个结构
其它单字母替换
⏹使用密钥
⏹key
ABCDEFGHIJKLMNOPQRSTUVWXYZ
keyabcdfghijlmnopqrstuvwxz
⏹spectacular
ABCDEFGHIJKLMNOPQRSTUVWXYZ
spectaulrbdfghijkmnoqvwxyz
⏹泄露给破译者的信息更少
⏹对字母进行无规则的重新排列
E(i)=3*imod26
ABCDEFGHIJKLMNOPQRSTUVWXYZ
adgjmpsvybehknqtwzcfilorux
⏹任意替换:
26!
>4x1026可能的key,大于56位DES的密钥空间。
⏹基于语言统计规律仍可破译
⏹
单字母替换:
⏹任意替换:
26!
>4x1026可能的key,大于56位DES的密钥空间。
⏹基于语言统计规律仍可破译
(2)多表代替密码-Playfair
⏹Playfair:
将明文中的双字母组合作为一个单元对待,并将这些单元转换为密文的双字母组合。
⏹5×5变换矩阵:
I与J视为同一字符
CIPHE
RABDF
GKLMN(cipher)
OQSTU
VWXYZ
⏹加密规则:
按成对字母加密
1)相同对中的字母加分隔符(如x)
2)balloonbalxloon
3)同行取右边:
heEC
4)同列取下边:
dmMT
5)其他取交叉:
ktMQODTR
Playfair举例
以前面的5×5变换矩阵(cipher)为例
CIPHE
RABDF
GKLMN(cipher)
OQSTU
VWXYZ
(1)balloonbalxloondbspgsug
(2)bookbookrsqg
(3)fillfilxlxaespsp
Playfair密码分析
⏹Playfair有26X26=676种字母对组合
⏹字符出现几率一定程度上被均匀化
⏹基于字母频率的攻击比较困难
⏹依然保留了相当的结构信息
多字母代替密码
Vigenérecipher(1858)
⏹是一种多表移位代替密码
设d为一固定的正整数,d个移位代换表=(1,2,…d)由密钥序列K=(k1,k2,…,kd)给定,第i+td个明文字母由表i决定,即密钥ki决定
ek(xi+td)=(xi+td+ki,)modq=y
dk(yi+td)=(xi+td-ki)modq=x
例子:
q=26,x=polyalphabeticcipher,K=RADIO
明文x=polyalphabeticcipher
密钥k=RADIORADIORADIORADIO
密文y=GOOGOCPKTPNTLKQZPKMF
Vigenérecipher-破译
⏹依然保留了字符频率某些统计信息
⏹重码分析法:
间距是密钥长度整数倍的相同子串有相同密文,反过来,密文中两个相同的子串对应的密文相同的可能性很大。
abcdefghijklm
00010203040506070809101112
nopqrstuvwxyz
13141516171819202122232425
密钥:
cryptographycryptographycr
明文:
yourpackagereadyroomathree
密文:
AFSGIOIPGPG
“完美”的替换密码
⏹使用非重复的加密字母序列加密会使密码分析至今能使用的任何工具失效。
⏹一次性密钥(OneTimePad)
⏹相同的PAD,发方与收方绝对同步;
⏹打印、分发、保存与使用问题
⏹长随机数序列(对OTP的近似实现)
⏹ri+1=ri*c+bmodw
⏹c和b为常数,w为计算机能表示的最大整数
3、置换
▪通过执行对明文字母的置换,取得一种类型完全不同的映射,即置换密码。
▪若该明文被视为一个比特序列,则置换涉及到用密文比特模式代替明文比特模式
(1)
⏹换位密码把明文按列写入,按行读出
⏹密钥包含3方面信息:
行宽,列高,读出顺序
key:
4312567(先读第一列)
plaintext:
attackp
ostpone
duntilt
woamxyz
ciphertext:
TTNAAPTMTSUOAODWCOIXPETZ
⏹完全保留字符的统计信息
⏹使用多轮加密可提高安全性
(2)
K是一个m*m矩阵,在Z/(26)上可逆,即存在K-1使得:
KK-1=I(在Z/(26))
对每一个k∈K,定义ek(x)=xK(mod26)和dk(y)=yK-1(mod26)
注:
▪明文与密文都是m元的向量(x1,x2…,xm);(y1,y2,…,ym),Z/(26)为同余类环
▪在这个环上的可逆矩阵Amxm,是指行列式detAmxm的值∈Z*/(26),它为Z/(26)中全体可逆元的集合。
▪Z*/(26)={a∈Z/(26)|(a,26)=1},Z*/(26)={1,3,5,7,9,11,15,17,19,21,23,25}
4、公钥密码
公钥密码
公钥密码体制的加密功能、
•A向B发消息X,
•B的公钥为KUb,私钥为KRb
•加密Y=EKUb(X)
•解密X=DKRb(Y)
5.3RSA算法
•明文、密文是0到n-1之间的整数,通常n的大小为1024位或309位十进制数
•费马小定理:
若p是素数,a是正整数且不能被p整除,则:
ap-1=1(modp)。
或者另一种形式:
ap=a(modp),这种形式不要求a与p互素。
•欧拉定理:
对任意互素的a和n,有aΦ(n)=1(modn)。
其中,Φ(n)是欧拉函数,即小于n且与n互素的正整数的个数。
•大整数分解问题:
将两个整数乘起来是简单的,但是将一个整数分解为几个整数的乘积是困难的,尤其是当这个数比较大的时候。
迄今为止没有有效的算法来解决这个问题,甚至我们连这个问题的计算复杂度量级是多少都不知道。
Euler函数
•所有模m和r同余的整数组成剩余类[r]
•剩余类[r]中的每一个数和m互素的充要条件是r和m互素
•和m互素的同余类数目用φ(m)表示,称m的Euler函数
•当m是素数时,小于m的所有整数均与m互素,因此φ(m)=m-1
•对n=pq,p和q是素数,φ(n)=φ(p)φ(q)=(p-1)(q-1)
例子:
设p=3,q=5,那么
φ(15)=φ(3)*φ(5)=(3-1)*(5-1)=8
这8个模15的剩余类是:
{1,2,4,7,8,11,13,14}
欧拉函数
证明:
对于质数p,q,满足φ(n)=(p-1)(q-1)
考虑模为n的数集Zn={0,1,2,....,pq-1}而不和n互质的集合由下面三个集合的并构成:
1)能够被p整除的集合{p,2p,3p,....,(q-1)p}共计q-1个
2)能够被q整除的集合{q,2q,3q,....,(p-1)q}共计p-1个
3){0}
很显然,1、2集合中没有共同的元素,因此φ(n)中元素个数=pq-1-(p-1)-(q-1)=(p-1)(q-1)
欧拉定理
对于互质的整数a和n,有a^φ(n)≡1(modn)
费马定理
a是不能被质数p整除的正整数,则有a^(p-1)≡1(modp)
证明:
φ(p)=p-1,代入欧拉定理即可证明。
RSA算法的实现
▪实现的步骤如下:
Bob为实现者
(1)Bob寻找出两个大素数p和q
(2)Bob计算出n=pq和φ(n)=(p-1)(q-1)
(3)Bob选择一个随机数e(0(4)Bob使用辗转相除法计算d=e-1(modφ(n)),即ed1(mod(p-1)(q-1))
•(5)Bob在目录中(e,n)作为公钥.
(6)(d,n)或者d作为私钥.
▪密码分析者攻击RSA体制的关键点在于如何分解n。
若分
解成功使n=pq,则可以算出φ(n)=(p-1)(q-1),然后由公
开的e,解出秘密的d
RSA算法编制
▪参数T={N};
▪私钥SK=D;
▪公钥PK=E;
设:
明文M,密文C,那么:
用公钥作业:
MEmodN=C
用私钥作业:
MDmodN=M
RSAExample
1.Selectprimes:
p=17&q=11
2.Computen=pq=17×11=187
3.Computeø(n)=(p–1)(q-1)=16×10=160
4.Selecte:
gcd(e,160)=1;choosee=7
5.Determined:
de=1mod160andd<160Valueisd=23since23×7=161=1×160+1
6.PublishpublickeyKU={7,187}
7.KeepsecretprivatekeyKR={23,187}
•sampleRSAencryption/decryptionis:
•givenmessageM=88(nb.88<187)
•encryption:
C=887mod187=11
•decryption:
M=1123mod187=88
加密算法:
假设M是明文(M解密算法:
假设C是密文,那么明文就是M=Cdmodn。
证明:
(1)由于Cd=Me*d=Mk*Φ(n)+1(modn)。
如果M和n是互素的,显然直接由欧拉定理我们就能得到:
Cd=Mk*Φ(n)*M1=M(modn)=M。
ed1(mod(p-1)(q-1))
2)如果M和n不互素,由于n是两个素数p和q的乘积且Me*d=1(mod(p-1))且e*d=1(mod(q-1))。
则e*d可以写成:
e*d=k*(p-1)+1,e*d=h*(q-1)+1
由费马小定理:
Me*d=Mk*(p-1)+1=M(modp)和Me*d=Mh*(q-1)+1=M(modq)。
所以我们有:
Cd=Me*d=M(modp*q)=M(modn)=M
RSA的安全性
RSA的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此可以确保RSA算法的安全性。
现在,人们已能分解多个十进制位的大素数。
因此,模数n必须选大一些,因具体适用情况而定。
目前,人们已能分解140多个十进制位的大素数,这就要求使用更长的密钥,速度更慢。
RSA算法的安全性分析
▪密码分析者攻击RSA体制的关键点在于如何分解n
▪若分解成功使n=pq,则可以算出φ(n)=(p-1)(q-1),然后由公开的e,解出秘密的d
▪若使RSA安全,p与q必为足够大的素数,使分析者没有办法在多项式时间内将n分解出来
▪素数:
只能被1和它本身整除的自然数;否则为合数。
▪每个合数都可以唯一地分解出素数因子
▪6=2·3
▪999999=3·3·3·7·11·13·37
▪27641=131·121
▪从2开始试验每一个小于等于√27641的素数。
▪整数n的十进制位数因子分解的运算次数所需计算时间(每微秒一次)
▪501.4x10103.9小时
▪759.0x1012104天
▪1002.3x101574年
▪2001.2x10233.8x109年
▪3001.5x10294.0x1015年
▪5001.3x10394.2x1025年
为了抵抗现有的整数分解算法,对RSA模n的素因子p和q还有如下要求:
(1)|p-q|很大,通常p和q的长度相同;
(2)p-1和q-1分别含有大素因子p1和q1
(3)P1-1和q1-1分别含有大素因子p2和q2
(4)p+1和q+1分别含有大素因子p3和q3
▪为了提高加密速度,通常取e为特定的小整数
▪如EDI国际标准中规定e=216+1
▪ISO/IEC9796中甚至允许取e=3
▪这时加密速度一般比解密速度快10倍以上
RSA的速度
•由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论是软件还是硬件实现。
•速度一直是RSA的缺陷。
一般来说只用于少量数据加密。
RSA的缺点
•A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。
•B)分组长度太大。
•C)为保证安全性,n至少也要600bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大
数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。
•D)目前,SET(SecureElectronicTransaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。
大素数产生
•素数生成过程:
随机选择一个奇数n(如通过伪随机数发生器)
随机选择a,使a进行素性测试(例如用Miller-Rabin算法),若n没有通过测试,抛弃n,转到
如果通过了足够次数的测试,认为n是素数。
•素数理论:
在N附近,每ln(N)个整数中有一个素数
•补充反复平方乘
例如:
5**20=95,367,431,640,625=25mod35;
原理:
如20=10100
(0,1,10,101,1010,10100)=(0,1,2,5,10,20)
1=0*2+1;
2=1*2;
5=2*2+1;
10=5*2;
20=10*2;
5、Diffie-Hellman密钥交换算法
Diffie-Hellman密钥交换:
•允许两个用户可以安全地交换一个秘密信息,用于后续的通讯过程
•算法的安全性依赖于计算离散对数的难度
素数p的原始根定义:
如果a是素数p的原始根,则数amodp,a2modp,…,ap-1modp是不同的并且包含1到p-1的整数的某种排列。
对任意的整数b,我们可以找到唯一的幂i满足b=aimodp0<=i<=(p-1)i在离散对数算法中称为以a为基的指数modp。
记为inda,p(b)*Diffie-Hellman密钥交换协议描述
▪:
:
Alice和Bob协商好一个大素数p,和大的整数g,1
▪p和g无须保密,可为网络上的所有用户共享
▪当Alice和Bob要进行保密通信时,他们可以按如下步骤来做:
(1)Alice选取大的随机数x,并计算X=gx(modP)
(2)Bob选取大的随机数x,并计算X=gx(modP)
(3)Alice将X传送给Bob;Bob将X传送给Alice
(4)Alice计算K=(X)X(modP);Bob计算K=(X)X(modP),
易见,K=K=gxx(modP)
▪由(4)知,Alice和Bob已获得了相同的秘密值K
▪双方以K作为加解密钥以传统对称密钥算法进行保密通信
交换示例
为了计算简单,使用很小数字。
设P=47和47的一个原元,a=3。
A选择秘密密钥XA=8,B选择秘密密钥XB=10,各自计算其公开密钥。
(1)双方各自计算
用户A计算:
YA=38mod47=6561mod47=28mod47
用户B计算:
YB=310mod47=59049mod47=17mod47
(2)交换YA和YB;
(3)交换密钥后,A、B分别计算共享的秘密会话密钥KA、KB:
用户A计算:
KA=YBXAmod47=178mod47=4mod47
用户B计算:
KB=YAXBmod47=2810mod47=4mod47
A和B双方独立地决定采用4作为会话密钥。
简答题:
1、信息安全定义
通俗定义:
是指计算机及其网络系统资源和信息资源不受自然和人为有害因素的威胁和危害,即是指计算机、网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭到破坏、更改、泄露。
学术定义:
通过各种计算机、网络、密码技术和信息安全技术,保护在公用通信网络中传输、交换、和存储的信息的机密性、完整性和真实性,并对信息的传播及内容有控制能力。
网络安全结构层次包括:
物理安全、安全控制、安全服务。
2、恶意攻击
主动攻击:
以各种方式有选择地破坏信息,如添加、修改、删除、伪造、重放、冒充、乱序、病毒等,人为通过网络通信连接进行的。
窃听,流量分析:
威胁到机密性。
被动攻击:
(1)不干扰网络信息系统正常工作情况下,进行侦听或监控数据传输。
(2)计算机病毒、木马、恶意软件等。
这些威胁一般是用户通过某种途径(如使用了带病毒的U盘,带病毒或木马或恶意软件的网页/图片/邮件等)感染上的。
中断、篡改、伪装、重放:
威胁到完整性;拒绝服务:
威胁到可用性
3、安全漏洞
漏洞:
(1)漏洞是指信息系统中的软件、硬件或通信协议中存在缺陷或不适当的配置,从而可使攻击者在未授权的情况下访问或破坏系统,导致信息系统面临安全风险。
(2)即使使用者在合理配置了产品的条件下,由于产品自身存在的缺陷,产品的运行可能被改变以产生非设计者预期的后果,并可最终导致安全性被破坏的问题,包括使用者系统被非法侵占、数据被非法访问并泄露,或系统拒绝服务等。
4、代表性软件安全漏洞
(1)后门,
在软件的开发阶段,程序员常会在软件内创建后门以便可
以修改程序中的缺陷。
如果后门被其他人知道,或是在发
布软件之前没有删除后门,那么它就成了安全风险。
后门产生的必要条件有以下三点:
a.必须以某种方式与其他终端节点相连:
无线、有线。
b.目标机默认开放的可供外界访问的端口必须在一个以上,端口:
传输层寻址。
c.目标机存在程序设计或人为疏忽,导致攻击者能以权限较高的身份执行程序。
并不是任何一个权限的帐号都能够被利用的,只有权限达到操作系统一定要求的才允许执行修改注册表,修改log记录等相关修改。
(2)操作系统的安全漏洞
新华社天津2008-10-28电(记者张建新、王宇丹)就在微软“黑屏”计划被热议的时候,微软操作系统再次爆出特大安全漏洞,通过该漏洞可能会引发大面积远程攻击甚至用户电脑被黑客完全控制。
(3)协议本身的漏洞
A.考虑网络互连缺乏对安全方面的考虑。
B.TCP/IP是建立在三次握手协议基础之上,本身就存在一定不安全的因素,握手协议的过程当中有一定局限性。
例:
SYN洪泛攻击;IP伪装攻击。
C.网络的开放性,TCP/IP协议完全公开,远程访问使许多攻击者无须到现场就能够得手,连接的主机基于互相信任的原则等等性质使网络更加不安全。
(4)网络软件与网络服务的漏洞
美国电话电报公司9日承认,这家电信运营商为苹果公司平板电脑iPad提供无线网络服务的网站存在安全漏洞,导致超过11万用户电子邮箱地址等隐私泄露。
这些用户包括白宫高官、美军将领、纽约市长、传媒巨头。
隐私泄露不但可能给用户带来麻烦,更可能给美国电话电报公司和苹果公司合作关系蒙上一层阴影。
(5)口令设置的漏洞
5、安全服务
一种由系统提供的对系统资源进行特殊保护的处理或通信服务;安全服务通过安全机制来实现安全策略。
已经定义出5种服务:
5类14个特定服务:
认证;数据完整性;数据保密;存取控制;不可否认。
(1)信息的机密性
信息的机密性(dataconfidentiality)在于保护信息免于被暴露攻击。
正像X.800给服务下的定义那样,服务的内容非常宽泛,包含信息的整体和部分的机密性,也包含信息免于被进行流量分析,即它可以保护信息免于窃听和流量分析。
(2)信息的完整性
信息的完整性(dataintegrity)在于保护信息免于被恶意方篡改、插入、删除和重放。
它可以保护信息的整体和部分。
(3)身份认证
认证发送方和接收方的身份(对等实体身份认证);
认证信息的来源(数据源身份认证)。
(4)不可否认性
不可否认性(nonrepudiation)在于保护信息免于被信息发送方或接收方否认。
在带有源证据的不可否认性中,如果信息的发送方否认,信息的接收方过后可以检验其身份;在带有交接证据的不可否认性