5、计算d,使得d×emodФ(n)=1。
结果的密钥和公钥分别为{e,n}和{d,n}。
看看一个例子:
(1)选择两个素数p=17和q=11。
(2)计算n=p×q=17×11=187。
(3)计算Ф(n)=(p-1)(q-1)=16×10=160。
(4)选择与Ф(n)=160互素,并且小于Ф(n)的e,我们选择e=7。
(5)确定d满足demodl60=1并且d<160。
正确的值d=23,因为23×7=161=1×160+1。
结果密钥为:
公钥PU={7,187},私钥PR={23,187}。
(重点)Diffie-Hellman密钥交换
这个算法的目的是使得两个用户能够安全地交换密钥,并把这个密钥用在随后的消息加密中(常规加密)。
算法只能用于密钥的交换。
Diffie-Hellman密钥交换的安全性在于:
计算离散对数是非常困难的。
离散对数:
1、定义素数p的本原根为其乘方能够产生从1到p-1的所有整数的数。
也就是说,如果a是素数p的本原根,那么下列数字:
amodp,a2modp,...,ap-1modp是互不相同的数,而且以某种排列包含了从1到p-1的所有整数。
2、对于任何小于p的整数b和素数p的本原根a来说,能够找到唯一的指数i.满足:
b=aimodp其中0≤i≤(p-1)
称指数i为b对于基数a和运算modp的离散对数。
记为i=inda,p(b)。
·Diffie-Hellman密钥交换过程:
1)、选择共用的公有元素:
素数p及a
2)、用户A密钥:
选择私有的XA(XA
3)、用户B密钥:
选择私有的XB(XB
4)、用户A和B交换公有的YA和YB
5)、由用户A产生(公共)密钥:
K=(YB)XAmodp
6)、由用户B产生(公共)密钥:
K=(YA)XBmodp
例子:
1、选择素数p=71和本原根a=7。
2、A和B分别选择私钥XA=5和XB=12。
3、计算公钥:
YA=75mod71=51
YB=712mod71=4
4、A和B交换公钥各自的公钥
5、由用户A产生密钥:
K=(YB)XAmod71=45mod71=30
6、由用户B产生密钥:
K=(YA)XBmod71=5112mod71=30
2、如何使用RSA算法分配密钥?
如何使用Diffie-Hellman算法分配密钥?
RSA分配密钥
1.发送方A生成密钥K
2.然后,发送方A用接收方B的公钥PUb来加密并发送给B
3.接收方B用自己的私钥PBb解密得到密钥K
Diffie-Hellman:
服务器和客户端各自产生一个Diffie-Hellman公钥值。
交换以后,双方再分别做Diffie-Hellman计算来创建共享的密钥K。
3、如何使用RSA算法实现数字签名?
P141
(不考查数学证明)
(五)身份认证及其应用。
约12%
1、Kerberos4消息交换的过程。
(一定要注意每个步骤的顺序和意义,请参考讲义,比课本清楚一些)——课件P157
老师口述:
(考得不多)
第一阶段:
用AS服务器进行登录
第二阶段:
跟TGS服务器用公钥来换取服务票
第三阶段:
直接访问对方的服务器
2、设计Kerberos用于解决什么问题?
——课件P149/150
在一个开放的分布式环境中,Kerberos使服务器能够限制访问,确保只有授权用户才能访问服务器,并且能够认证服务请求。
同时,Kerberos提供了一个集中式认证服务器,其功能是为服务器认证用户和为用户认证服务器服务。
特点:
Kerberos只依赖于对称加密(DES算法),而不使用公钥加密。
3、请说明为什么要使用公钥证书?
(老师口述)
使用公钥证书的目的是为了防止公钥假冒,所以使用公钥证书。
公钥会被假冒,但公钥不需要保密,然而公钥不需要保密并不代表不需要安全性。
要保证公钥的完整和公钥的来源是安全的,就需要公钥证书。
解决方法:
给公钥做数字签名
4、请说明公钥证书的产生过程,以及使用公钥证书的时候如何验证证书有效。
——课件P145
(老师口述)
公钥证书的产生过程(老师口述)
首先得拥有一份公钥PU,还拥有公钥的个人信息(名字、版本号、用法..),
接着把公钥以及公钥所有者的个人信息送去给CA,CA去做一个哈希,从而得到一个摘要,然后这个摘要去做加密(用CA的私钥来加密)得到一份密文的摘要,然后密文摘要返回给用户附加在未经签名的证书后,这一份东西加起来就叫做公钥证书。
如何验证证书有效(老师口述)
将公钥以及公钥所有者的个人信息拿出来做Hash就会得到一个哈希码,然后把签名拿出来去做解密(用CA的公钥解密),解密出来进行比较,如果一致,证明是有效的。
5、X.509数字证书3个版本的格式分别包含哪些部分?
——课件P168(次要)
X.509最初版本是X.509v1,组成部分包括签名算法标识符,有效期,主体的公钥信息,签名
X.5092版在X.509v1基础上引入了主体和发证人唯一标识符的概念,以解决主体和/或签发人名称在一段时间后可能重复使用的问题。
X.5093版是最新的版本(1996年)。
它在X.5092基础上引入扩展的概念,因此任何人均可定义扩展并将其纳入证书中。
6、什么是证书链?
——课件P171
(老师口述)
如果证书的颁发机构我不信任,我可以要求证书的颁发机构同时持有一份公钥证书,
此外,证书的颁发机构又持有一份证书,这份证书的颁发机构又持有一份证书,把这几份证书串起来就形成了证书链。
答题:
(六)IP安全。
约12%
1、AH和ESP服务的区别?
(老师口述)
AH只可以做认证。
ESP可以做加密,而且可以做加密和认证。
2、传输模式和隧道模式的主要区别是什么?
书本P223
(老师口述)
传输模式是上层的IP数据包被改变了,工作在网络层和传输层之间。
隧道模式是其IP数据包不做改变,只是在IP包的外面再包一层IP包,完全工作在网络层。
3、IPSec认证头的格式,以及ESP安全封包的格式。
——课件P199/210
IPSec认证头:
ESP安全封包:
4、AH认证的范围在传输模式和隧道模式中的区别。
(老师口述)
AH认证的范围是包含IP头的(除新IP头可变区域外),隧道模式中是有2个IP头的,而在传输模式中只有1个IP头。
5、ESP加密和认证的范围在传输模式和隧道模式中的区别。
——课件P197
(老师口述)
ESP认证的范围是不包含IP头的。
6、安全组合(SA组合)有哪些形式?
(要会看图,课堂ppt例子)——P222
形式:
传输邻接、隧道嵌套
四种安全关联进行组合的例子:
安全关联的基本组合
(1)
所有的安全都是在实施了IPSec的终端系统之间。
安全关联的基本组合
(2)
仅在网关(路由器、防火墙)之间提供了安全,而没有主机实施IPSec。
安全关联的基本组合(3)
在第二种形式上附加了端到端的安全机制。
安全关联的基本组合(4)
支持远程用户通过Internet到达组织的防火墙,获得防火墙后的服务器/工作站的访问权限。
在远程用户与防火墙之间只需要隧道模式。
(七)SSL与传输层安全。
约12%
1、SSL协议栈对应在TCP/IP协议中的位置。
——课件P253
2、SSL协议栈包含哪四种协议?
分别的作用是什么?
——课件P263
(1)SSL记录协议
SSL记录协议为SSL连接提供了以下两种服务:
机密性、消息完整性
(2)SSL修改密码规格协议
该协议只包含一条消息,该消息仅有一个字节,值为1,它唯一的功能是使得延迟状态改变为当前状态。
更新了在这一连接上应用的密码机制。
(3)SSL报警协议
报警协议用于向对等实体传送SSL相关的报警信息。
(4)SSL握手协议
这一协议允许客户和服务器进行相互的身份认证;
同时,客户和服务器还通过该协议进行协商,以决定在一次会话中相关的加密、密钥问题。
3、SSL记录协议的5个操作步骤。
——课件P260
(老师口述)
1.分片
2.压缩
3.添加MAC
4.加密
5.添加SSL记录头
答题:
SSL记录协议运行过程:
4、(重点)SSL握手协议的消息类型,配合一个建立客户和服务器之间逻辑连接的消息交换过程来解释。
(请参考讲义,比课本要更好理解)——P269
第一阶段:
客户端发起连接
第二阶段:
服务器认证和密钥交换
第三阶段:
客户认证及密钥交换(客户端发送证书、密钥交换、证书验证)
第四阶段:
结束阶段(改变加密套件,结束握手协议)
5、SSL如何计算pre_master_secret和master_secret?
其他密钥参数又是如何计算的?
(仅考查SSL,不考查TLS)P283
(老师口述)
pre_master_secret和master_secret都是通过哈希来算的,公式都差不多。
(简单知道一下公式)
预备主密钥(pre_master_secret)的交换有两种可能:
RSA:
客户生成一个48字节的预备主密钥,之后用服务器的公共RSA密钥对其进行加密并将其发送给服务器,服务器用私钥对密文进行解密以得到预备主密钥。
Diffie-Hellman:
客户和服务器都生成一个Diffie-Hellman公钥,交换之后,双方都执行Diffie-Hellman计算过程以创建共享的预备主密钥。
客户和服务器都是用下面的公式计算主密钥(master_secret):
master_secret=
MD5(pre_master_secret||SHA('A'||pre_master_secret||
ClientHello.random||ServerHello.random))||
MD5(pre_master_secret||SHA('BB'||pre_master_secret||
ClientHello.random||ServerHello.random))||
MD5(pre_master_secret||SHA('CCC'||pre_master_secret||
ClientHello.random||ServerHello.random))
ClientHello.random和ServerHello.random是在初始的hello消息中交换的两个临时值。
从主密钥中计算密钥原料(keymaterial)的方法:
key_block=MD5(master_secret||SHA('A'||master_secret||
ServerHello.random||ClientHello.random))||
MD5(master_secret||SHA('BB'||master_secret||
ServerHello.random||ClientHello.random))||
MD5(master_secret||SHA('CCC'||master_secret||
ServerHello.random||ClientHello.random))||...
该计算过程一直延续到产生足够长度的输出。
该算法结构的结果可以看作一个伪随机数函数,主密钥可以看作该函数的种子,客户和服务器随机数可以看作临时值以增加密码破译的难度。
6、什么是HTTPS协议?
——书本P150
HTTPS是指用HTTP和SSL的结合来实现网络浏览器和服务器之间的安全通信。
HTTPS和HTTP的主要区别表现在:
HTTPS的URL地址开始于https:
//,而不是http:
//;一个标准的HTTP连接使用的是80端口,如果指定HTTPS时,将使用443端口。
当使用HTTPS时,通信的以下元素被加密:
(1)要求文件的URL
(2)浏览器表单的内容
(3)文件的内容
(4)从浏览器发送到服务器和从服务器发送到浏览器的cookie
(5)HTTP报头的内容
巧记:
向某URL发送表单或者媒体文件,传输的时候携带着cookie+HTTP的报头内容
(八)网络访问控制。
约6%
1、常见的网络访问强制措施有哪些?
1.认证
2.访问控制
3.数据机密性
4.数据完整性
5.不可抵赖性
6.可用性服务
2、可认证扩展协议EAP支持的认证方法有哪几种?
①EAP-MD5支持使用CHAP和静态密码进行认证
②EAP-TLS支持使用x.509v3数字证书进行认证
3、EAPoL协议的具体流程包含的6个数据帧的作用分别是什么?
①EAPOL-Start:
主机向服务器发送EAPOL-Start
②EAP-REQUEST-Identity:
请求验证身份
③EAP-RESPONSE-Identity:
回应用户名
④EAP-REQUEST-MD5_Challenge:
要求验证密码的MD5校验值
⑤EAP-RESPONSE-MD5_Challenge:
使用Challenge加密口令
⑥EAP-Success:
判断正确性
(九)无线网络安全。
约6%
1、无线网络安全威胁主要有哪些?
通常可采用什么技术来保证无线网络安全?
—书本P163
主要威胁:
(1)偶然连接
(2)恶意连接
(3)Adhoc网络(4)非传统型网络
(5)身份盗窃(MAC欺诈)(6)中间人攻击
(7)拒绝服务(DoS)(8)网络注入
采用技术:
1)改变路由器的标识符
2)改变路由器的预设置密码
3)只允许专用计算机访问无线网络
4)加密
5)使用杀毒软件,反间谍软件和防火墙
6)关闭标识符广播
巧记:
1.配置路由器:
标识符、密码
2.配置好路由器后:
开始使用专用计算机,开机有密码,进入桌面看到360杀毒软件并弹出广告广播
2、移动设备安全策略中的基本配置有哪些?
①设备安全:
包括开启自动锁定,开启密码,安装杀毒软件等
②数据流安全
③屏障安全
3、IEEE802.11i操作有哪5个阶段?
①发现
②认证
③密钥的产生及配送
④保密数据传输
⑤连接终止
巧记:
发现是自己人(来使),确认一下身份,从口袋中拿出的钥匙交给他,他保密进行传递,连接中断。
4、成对密钥发布的4次握手,并解释如何生成成对临时密钥PTK。
①访问接入点→站点:
生成PTK的所有元素
②站点→访问接入点:
后面的每个报文都会有MIC
③访问接入点→站点:
访问接入点向站点证明自己有效,同样有MIC加入其中
④站点→访问接入点:
PTK已经装好
巧记(联想图)
注意:
以上内容仅作为复习参考,并不代表考试题目100%由以上内容构成。