目录

  • 1 第一单元 网络空间安全概述
    • 1.1 课程介绍
    • 1.2 信息与信息系统
    • 1.3 网络空间的概念
    • 1.4 网络空间安全
    • 1.5 网络空间安全知识体系和系统工程
  • 2 第二单元 网络空间安全体系和通用技术安全技术
    • 2.1 安全威胁
    • 2.2 网络攻击
    • 2.3 信息安全策略与模型
    • 2.4 安全服务与安全机制
    • 2.5 访问控制
  • 3 第三单元 现代密码体制与攻防对抗
    • 3.1 密码学回顾
    • 3.2 密码攻防对抗
  • 4 第四单元 安全漏洞和恶意代码
    • 4.1 漏洞的定义和描述
    • 4.2 漏洞挖掘与分析技术
    • 4.3 漏洞扫描技术
    • 4.4 常见漏洞
    • 4.5 恶意代码分类及特征
    • 4.6 病毒攻击和防范
    • 4.7 实验视频
  • 5 第五单元 防火墙和入侵检测系统
    • 5.1 防火墙的概念
    • 5.2 防火墙的分类
    • 5.3 防火墙的指标
    • 5.4 面向防火墙的攻防对抗方法
    • 5.5 下一代防火墙
  • 6 第六单元 网络安全协议
    • 6.1 网络安全协议概述
    • 6.2 安全多方计算协议
    • 6.3 比特承诺协议
    • 6.4 Kerberos认证协议
  • 7 第七单元 信任管理与可信计算
    • 7.1 信任管理和可信计算概述
    • 7.2 可信计算技术架构
    • 7.3 可信计算平台
    • 7.4 可信网络连接
  • 8 第八单元 网络内容安全和舆情控制
    • 8.1 网络不良信息及其分类
    • 8.2 网络信息的传播特点及安全问题
    • 8.3 网络内容监控技术
    • 8.4 网络不良信息监管技术
    • 8.5 网络舆情监控
  • 9 第九单元 信息安全风险评估和安全检测
    • 9.1 信息安全风险评估和安全检测概述
    • 9.2 信息安全风险评估
    • 9.3 信息系统安全测评
    • 9.4 风险评估与安全测评的方法和工具
    • 9.5 风险评估与安全测评发展趋势
  • 10 第十单元 存储备份和灾难恢复
    • 10.1 存储备份和灾难恢复概述
    • 10.2 信息存储设备与技术
    • 10.3 系统备份
    • 10.4 信息系统容灾与灾难恢复
  • 11 第十一单元 软件安全性和软件安全工程
    • 11.1 软件安全性和软件安全工程概述
    • 11.2 软件失效机理
    • 11.3 软件安全需求工程
    • 11.4 软件安全性的分析和设计
    • 11.5 软件安全编码
    • 11.6 软件安全测试
  • 12 第十二单元 信息安全管理、法律法规和标准
    • 12.1 信息安全管理
    • 12.2 信息安全法律法规
    • 12.3 信息安全标准
  • 13 第十三单元 网络空间的典型信息系统的安全防护与测评
    • 13.1 云计算系统的安全防护与测评
    • 13.2 移动智能终端的安全防护与测评
    • 13.3 工业控制网络的安全防护与测评
    • 13.4 物联网的安全防护与测评
Kerberos认证协议

Kerberos 认证协议

       Kerberos 协议是一种基于可信第三方—密钥分配中心(Key Distribution Center,KDC)的高效的网络认证机制,由美国麻省理工学院(MIT)雅典娜(Athena)项目小组在 20 世纪 80 年代提出。Kerberos 是古希腊神话中守护地狱之门的一条凶猛的三头蛇尾神犬,Kerberos 协议由此得名。 


       Kerberos 网络认证协议的设计目标是通过密钥系统为客户—服务器(C/S)应用程序提供认证服务。

       假设网络中存在 N 个用户,希望他们能够完成两两认证:如果采用公钥密码体制的认证模式,则每个用户都需要拥有一个密钥对,总体需要 N 个密钥对;如果采用对称密码体制,则每对用户需要拥有一个共享的密钥,总体需要 N(N-1)/2 个密钥对。因此,上述方案的可扩展性较差。

       如果采用 Kerberos 方案,用户之间不需彼此共享密钥,只需同可信任的第三方共享密钥:A 与 KDC 共享密钥 KA,B 与 KDC 共享密钥 KB,以此类推。同时,KDC 需要只有自己知悉的主密钥 KKDC。这样,KDC 担当了中间人的角色,以确保任何一对用户之间都能够安全地通信,而且这种方式的可扩展性很强。 

Kerberos 认证协议的假定

      在一个 C/S 体系结构的分布式网络环境中,使用一个或多个 Kerberos 服务器来实现身份鉴别。在客户机请求访问应用服务器上的资源服务时,首先由客户机向 KDC 请求一张身份证明并交给应用服务器验证,服务器验证通过方可为客户机提供所请求的资源服务。

       KDC 主要由两个独立的逻辑部分组成:认证服务器(Authentication Server,AS)和票据授权服务器(Ticket Granting Server,TGS)。KDC 持有一个密钥数据库。本质上,网络中的每个实体(C/S)均与 KDC 分享一个密钥,该密钥只有实体自身与 KDC 知道,密钥的内容用于证明实体彼此的身份。

       客户机要访问应用服务器的资源,必须首先通过应用服务器的认证。这种认证的前提是客户机向应用服务器提供从 KDC 获得的一个会话票据,而这个会话票据是由服务器的主密钥加密过的。 Kerberos 实际上就是一种基于票据(ticket)的认证方式。

       实践中,Kerberos 的票据分发过程比较复杂,客户机在从 KDC 处获得会话票据前,需要先获得一个票据授权票据(Ticket Granting Ticket,TGT),这个 TGT 仍然是由 KDC 来分发的。

Kerberos 认证协议的流程

       整个kerberos认证的过程较为复杂,三次通信中都使用了密钥,且密钥的种类一直在变化,并且为了防止网络拦截密钥,这些密钥都是临时生成的Session Key,即他们只在一次Session会话中起作用,即使密钥被劫持,等到密钥被破解可能这次会话都早已结束。


Kerberos 协议的优点

1.优良的性能 

Kerberos 认证具有较高的性能。虽然 Kerberos 认证过程涉及客户机、服务器和 KDC 三方,但是一旦客户机获得了用于访问某个服务器的票据,该服务器就可以根据票据实现对客户机的验证,不需 KDC 继续参与。同时,服务器是通过验证客户端提供的票据来进行身份认证的,客户机一旦获得了特定服务器的信任,以后就能够直接登录网络来重复使用该票据,通过可恢复的服务票证来实现身份认证。 

2.支持双向认证 

Kerberos 可以实现通信双方的双向认证,客户机在访问服务器的资源之前可以要求对服务器的身份进行验证。 

3.良好的互操作性 

Kerberos 被公布后,获得了广泛应用和改进,目前已经成为网络分布式计算领域一个被广泛接受的标准,易于实现不同平台之间协同工作、分步计算等互操作。 

4.高度的透明性 

用户在使用 Kerberos 认证的过程中,只需在登录时输入密码(口令),合法用户直观上感觉不到 Kerberos 的存在,因此 Kerberos 对于合法用户来说完全透明。

Kerberos 协议的缺点

1.密码体制和密钥管理方面的不足 

一方面,Kerberos 协议大多采用对称密码体制来实现加解密运算,安全性不及公钥密码体制;另一方面,在分布式网络中用户数较大时,在 N 个用户同时通信时,仍然需要 N(N-1)/2 个密钥,如果再采用公钥密码体制,密钥管理将变得更复杂。 

2.性能与安全瓶颈问题 

Kerberos 拥有每个用户口令的单向函数值(通常是哈希值),Kerberos 中的 AS 和 TGS 采用集中式管理方式,AS 与 TGS 负责用户间通信密钥的分配,系统的性能和安全性过分依赖这两个服务自身的性能和安全性,容易形成瓶颈。该协议也不提供数据完整性检测等。