第5讲
网络环境身份认证
第4章:操作系统基础安全性第2部分/共5部分
https://www.doczj.com/doc/3f7058894.html,/wshi
石文昌
(博士/教授/博导)
N M I N U N I V E R S I T Y O F C H I N A
第2/41页
本讲内容
?主题:网络环境身份认证?教材内容:
–第4.3节:面向网络的身份认证
–第4.4节:基于PAM 的统一认证框架
N M I N U N I V E R S I T Y O F C H I N A
第3/41页
网络环境中的用户身份认证需求
用户
服务器群
客户机A
客户机B
客户机C
网络
登录
用户希望:不管操作哪台计算机,只要以相同的身份登录,都能获得所需的服务。
N M I N U N I V E R S I T Y O F C H I N A
?请参考本地主机上的身份认证方法的思路,给出一个在网络环境中进行用户身份认证的方法,要求使同一个合法用户可以在不同的主机上顺利进行身份认证。
N M I N U N I V E R S I T Y O F C H I N A
?第一部分:身份认证信息管理?第二部分:客户机软件的功能?第三部分:服务器软件的功能
用户
客户机
网络
登录
身份认证信息
N M I N U N I V E R S I T Y O F C H I N A
第6/41页
例4.9—身份认证信息的管理
用户
客户机
网络
登录
身份认证信息
wenchang:x:500:300:Wenchang Shi:/home/wenchang:/bin/bash wenchang:$1$k7TyrJaO$DS/P61XHIz1xWAqLcdnQz1:14091:0:99999:7:::sisefellow:x:300:wenchang,binliang,zhiyong,zhaohui
帐户信息
口令信息用户组信息
N M I N U N I V E R S I T Y O F C H I N A
用户
客户机
网络
登录
身份认证信息
?用户提供的:帐户信息+口令信息 身份认证请求?把请求发送给服务器?由服务器进行身份认证
N M I N U N I V E R S I T Y O F C H I N A
用户
客户机
网络
登录
身份认证信息
?身份认证请求 帐户信息+口令信息
?根据请求中的账户信息和口令信息,结合身份认证信息数据库中的对应信息,判断账户和口令的合法性。?把判断结果返回给客户机
N M I N U N I V E R S I T Y O F C H I N A
?请给出一个在网络环境中的客户机/服务器模式的用户身份认证方法,要求客户机和服务器都可以执行认证工作,允许根据用户来确定哪些认证由服务器执行,哪些认证由客户机执行。
N M I N U N I V E R S I T Y O F C H I N A
用户
客户机
网络
登录
身份认证信息
root:x:0:0:root:/root:/bin/bash -wenchang::500:300::: +weinan::501:301::: +::999:999:::
由服务器执行由客户机执行
表示所有账户
N M I N U N I V E R S I T Y O F C H I N A
用户
客户机
网络
登录
身份认证信息
?查询本机账户信息,判断是否由本机认证。?若需本机认证,则客户机执行认证。
?若需服务器认证,则向服务器发请求(含账户名和口令)。
N M I N U N I V E R S I T Y O F C H I N A
用户
客户机
网络
登录
身份认证信息
?服务器根据认证请求和认证信息数据库进行认证。?把认证结果返回给客户机。
N M I N U N I V E R S I T Y O F C H I N A
第13/41页
网上身份认证系统NIS
?美国Sun 公司开发的NIS (Network
Information Service )系统实现了对例4.10中给出的方法的支持。
N M I N U N I V E R S I T Y O F C H I N A
第14/41页
密码体制
?秘密密钥密码体制—单钥密码体制
?公开密钥密码体制—双钥密码体制
加密
解密
加密解密
公钥
私钥
N M I N U N I V E R S I T Y O F C H I N A
第15/41页
公钥加密与数字签名
?公钥加密
?数字签名
加密解密
签名验证
公钥
私钥
公钥
私钥
N M I N U N I V E R S I T Y O F C H I N A
?设Alice 和Bob 是网络中需要相互通信的两个实体,请利用公开密钥密码算法和秘密密钥密码算法,给出一个Alice 与Bob 之间的身份认证和信息加密传输的方法。
N M I N U N I V E R S I T Y O F C H I N A
Bob
Alice
(I) {[K sess ]K PUB-B }K PRI-A
(II) {[K sess ]K PUB-A }K PRI-B
(III) [M]K sess
(III) [M]K sess
Alice 的密钥对:K PUB-A ,K PRI-A Bob 的密钥对:K PUB-B ,K PRI-B
N M I N U N I V E R S I T Y O F C H I N A
?①Alice 生成会话密钥K sess ,用Bob 的公钥K PUB-B 加密,结果为:?[K sess ]K PUB-B ……⑴
?②Alice 用自己的私钥K PRI-A 对结果⑴签名,结果为:?{[K sess ]K PUB-B }K PRI-A ……⑵?③Alice 把结果⑵传送给Bob 。
?④Bob 用Alice 的公钥K PUB-A 解开结果⑵,得到结果⑴,证明结果⑵是由Alice 发送的,由此确认Alice 的身份。Bob 用自己的私钥K PRI-B 对结果⑴解密,便得到K sess 。
N M I N U N I V E R S I T Y O F C H I N A
?⑤Bob 用Alice 的公钥K PUB-A 对K sess 加密,结果为:
?[K sess ]K PUB-A ……⑶
?⑥Bob 用自己的私钥K PRI-B 对结果⑶签名,结果为:
?{[K sess ]K PUB-A }K PRI-B ……⑷
?⑦Bob 把结果⑷传送给Alice 。
?
⑧Alice 用Bob 的公钥K PUB-B 解开结果⑷,得到结果⑶,证明结果⑷是由Bob 发送的,由此确认Bob 的身份。Alice 用自己的私钥K PRI-A 对结果⑶解密,便得到K sess 。如果这个K sess 就是Alice 原来生成的那个K sess ,则表示,经过协商,Alice 和Bob 决定使用会话密钥K sess 。
?⑨Alice 和Bob 开始进行信息传输,传输的信息采用K sess 进行加密和解密。
N M I N U N I V E R S I T Y O F C H I N A
?设有一个客户机/服务器模式的网络环境,请给出一个通过服务器认证客户机上的用户的身份的方法,要求不能在网络中传输明文的或者加密过的用户口令。