16安全性和保密性设计
2021-04-25 10:49:53 0 举报
AI智能生成
系统架构师考试时整理的安全性和保密性设计部分内容
作者其他创作
大纲/内容
16.1 加密和解密
加密和解密的过程
信息的发送方准备好要发送信息的原始形式,叫作明文
然后对明文经过一系列变换后形成信息的另一种不能直接体现明文含义的形式,叫作
密文
由明文转换为密文的过程叫作加密
在加密时所采用的一组规则或方法称为加密算法
接收者在收到密文后,再把密文还原成明文,以获得信息的具体内容,这个过程叫作解密
16.1.1对称密钥加密算法
1.DES 算法
DES 算法的过程,简单来说,就是把要加密的明文分成 64 位的数据段作为输入,再
使用根据 64 位密钥变化生成的 52 个子密钥,对输入的数据段依次进行初始置换、16 轮迭代、逆初始置换,然后得到 64 位密文
2.IDEA 算法
IDEA 算法对数据的处理是以 64 位为单位的,在加密前把要加密的明文按每 64 位作
为一个数据段进行分割然后分别加密
16.1.2 不对 称密钥加密算法
RSA
RSA 加密过程
首先把需要加密的明文按比特位分成等长的数据段,使得每个数据段对应的十进制数小于 N,即数据段的长度小于 log2N。然后依次对每个明文数据段 m 做加密运算可以得到密文 c∶c = me mod N
RSA 数字签名
RSA 加密算法不仅可以用于信息的加密,而且还可以用于发送者的身份验证或数字签名
16.2 数字签名与数字水印
散列函数
散列函数是一种公开的数学函数。散列函数运算的输入信息也可叫作报文。散列函数运算后所得到的结果叫作散列码或者叫作消息摘要
特点
(1)不同内容的报文具有不同的散列码,而一旦原始报文有任何改变,哪怕改变一位信息,则通过散列函数计算后得到的散列码也将完全不同。这样,这个散列码就好比是这个报文所特有的“指纹”
(2)散列函数是单向的,即求解某一个报文的散列码非常容易,但是根据散列码来倒推原始报文是非常困难的
(3)对于任何一个报文,无法预知它的散列码
(4)散列码具有固定的长度,不管原始报文的长度如何,通过散列函数运算后的散列码都具有一样的长度。例如,MD5(Message Digest Algorithm 5,消息摘要算法第 5 个版本)散列算法的散列码长度为 128 位,并且不管是对一部百科全书,还是对某个人的工资进行MD5 散列运算,得到的散列码长度都是 128 位
常见的散列函数有 MD5、SHA、HMAC 等。MD5 是一种非常著名的散列算法,已经成为国际标准,具有很好的安全性能。MD5 算法在对输入的报文进行计算时,是以 512 位为单位进行处理的,结果生成一个 128 位长的消息摘要;SHA、HMAC 等算法都是对任意长度的报文以 512 位为单位进行处理,最后得出一个 160 位的消息摘要
数字签名
组成
签名算法和验证算法。通过使用签名算法签名一个消息,所得到的签名能够通过一个验证算法来验证签名的真实性和有效性
过程
信息的发送方对信息利用自己的私钥进行签名,接着发送方把这个签名和信息一起发送给接收方。接收方收到信息后利用发送方的公钥来对其中的数字签名进行验证,确认其合法性
目前已经有大量的数字签名算法,例如,RSA 数字签名算法、EI Gamal、Fiat-Shamir、Guillon-Oucsquerrter、DSS(Digital Signature Standard,数字签名标准)、DSA(Digital SignatureAlgorithm,数字签名算法)、椭圆曲线等
1.RSA 结合 MD5 数字签名
主要过程
信息的发送方通过对信息进行散列运算生成一个消息摘要,接着发送方用自己的私钥对这个消息摘要进行加密,就形成发送方的数字签名。然后,把这个数字签名作为信息的附件和信息一起发送给信息的接收方。接收方收到信息后,首先对收到的信息进行与发送者相同的散列运算得到一个消息摘要,接着再用发送方的公钥来对信息中附加的数字签名进行解密得到发送方计算出的散列码
具体步骤
(1)信息发送者 A 要向 B 发送一份信息,A 先按双方约定的散列算法对该信息进行
散列运算,得到一个该信息特有的消息摘要 H,从前面所述可以知道,只要改动信息中任何一位,重新计算出的消息摘要值就会与原先的值不相符。这样就保证了信息的不可更改性
(2)接着把该消息摘要用 A 自己的私钥加密,得到 A 对该信息的数字签名 S。
(3)然后 A 把信息原文与数字签名 S 一起发送给 B。
(4)当 B 收到后,先用 A 的公钥对数字签名 S 解密得到 A 的消息摘要 H。
(5)再用同样的散列算法对收到的信息进行散列运算,得到消息摘要 H'。
(6)比较 H 与 H',如相等则说明信息确实来自它所声称的发送者 A
2.数字签名标准
DSS 是美国国家标准与技术学会的数字签名标准
DSS 为计算和验证数字签名指定了一个数字签名算法——DSA
DSA 是 El Gamal 数字签名算法的一个改进版本,它通过选择较小规格的参数减少数字签名的数据量,从而减少了存储空间和传输带宽
DSS 中指定 SHA 作为其散列算法
数字信封
数字信封是公钥密码体制在实际中的一个应用,是用加密技术来保证只有规定的特定收信人才能阅读通信的内容
在数字信封中,信息发送方采用对称密钥来加密信息内容,然后将此对称密钥用接收方的公开密钥来加密(这部分称数字信封),之后,将它和加密后的信息一起发送给接收方,接收方先用相应的私有密钥打开数字信封,得到对称密钥,然后使用对称密钥解开加密信息。这种技术的安全性相当高
16.3 数字证书与密钥管理
密钥分配中心
密钥分配中心(Key Distribution Center,密匙分配中心)技术
KDC 方案中,每一个用户都只保存自己的私钥 SK 和 KDC 的公钥 PKKDC,而在通
信时再经由 KDC 获得其他用户的公钥 PK 或者仅仅在某一次通信中可以使用的对称密钥加密算法的临时密钥 K
数字证书和公开密钥基础设施
1.数字证书
数字证书提供了一个在公钥和拥有相应私钥的实体之间建立关系的机制。目前最常用的数字证书格式是由国际标准 ITU-T X.509 v3 版本定义的
2.PKI(Public Key Infrastructure,公开密钥基础设施)
PKI 在信息系统中的作用就相当于作为公共设施在社会生活中的作用,其目标是向广大的信息系统用户和应用程序提供公开密钥的管理服务
PKI 是指由数字证书、证书颁发机构(Certificate Authority,CA),以及对电子交易、通信等所涉及的各方的合法性进行检查和验证的其他注册机构组成的一套系统
(1)PKI 的结构模型
管理实体是PKI 的核心,是 PKI 服务的提供者
CA 和注册机构(RegisteAuthority,RA)是两种管理实体
CA 是 PKI 框架中唯一能够发布和撤销证书的实体,维护证书的生命周期
RA 负责处理用户请求,在验证了请求的有效性后,代替用户向 CA 提交
端实体是 PKI 的用户,是 PKI 服务的使用者
证书库是一个分布式数据库,用于证书和 CRL 的存放和检索
(2)PKI 层次模型
最低层是传输层,向上提供 PKI 报文的可靠传输,它可以是传输层协议或应用层协议。中间层是密码学服务层,向上提供加密、解密、数字签名、消息摘要等基本密码学服务,可由 RSA、MD5 等方法实现。最高层是证书服务层,使用前面两层提供的加密和传输服务,向用户提供证书的请求、签发、发布、撤销和更新等服务
(3)X.509 数字证书
特点
① 支持多种算法
② 支持多种命名机制
③ 可以限制证书(公开密钥)的用途
④ 定义证书遵循的策略
⑤ 控制信任关系的传递
16.4 安全协议
16.4.1 IPSec 协议简述
网络安全协议IPSec(IP Security)。该协议把密码技术应用在网络层,以向信息的发送方和接收方提供源地址验证、数据传输的完整性、存取控制、保密性等安全服务,保护通信免遭窃听、抵御网络攻击,而且更高层的应用层协议也可以直接或间接地使用这些安全服务,为其上层协议如TCP、UDP 等提供透明的安全保护服务,在 Internet 这样不安全的网络中为通信提供安全保证
IPSec 协议的基本工作原理是:发送方在发送数据前对数据实施加密,然后把密文数据发送到网络中去,开始传输。在整个传输过程中,数据都是以密文方式传输的,直到数据到达目的节点,才由接收方对密文进行解密,提取明文信息
16.4.2 SSL 协议
SSL 是用于安全传输数据的一种通信协议。它采用公钥加密技术、对称密钥加密技术等保护两个应用之间的信息传输的机密性和完整性。但是,SSL 也有一个不足,就是它本身不能保证传输信息的不可否认性
基本安全性
(1)通道是保密的,经过握手确定密钥之后,所有的消息被加密
(2)通道是被认证的,通信中的服务器端总是被认证,客户端可选认证
(3)通道是可靠的,用 MAC 对传送的消息进行完整性检查,保证通道上数据的完整性
16.4.3 PGP 协议
PGP(Pretty Good Privacy)是美国人 PhilZimmermann 于 1995 年提出的一套电子邮件加密方案。它可以用来对邮件加密以防止非授权者阅读,还能对邮件加上数字签名而使收信人可以确认邮件确实是由发送方发出的
16.9 安全性规章
16.9.1 安全管理制度
(1)机房安全管理制度。
(2)系统运行管理制度,包括系统启动、关闭、系统状态监控、系统维护等。
(3)人员管理制度,包括管理人员、设计人员、操作人员、人事变更等。
(4)软件管理制度。
(5)数据管理制度。
(6)密码口令管理制度。
(7)病毒防治管理制度。
(8)用户登记和信息管理制度。
(9)工作记录制度。
(10)数据备份制度。
(11)审计制度。
(12)安全培训制度等
16.9.2 计算机犯罪与相关法规
1.计算机犯罪
2.我国的相关法律、法规
16.8 系统的安全性设计
16.8.1 物理安全问题与设计
物理安全包括物理设备本身是否安全可靠,还包括设备的位置与环境的安全、限制物理访问、地域因素等几个方面
物理安全还要求在设计中注意物理设备的冗余备份,例如,核心设备或部件都应该是热备份系统,具有实时或准实时切换的能力
16.8.2 防火墙及其在系统安全中的应用
1.防火墙的基本原理防火墙通常使用的采用包过滤、状态检测、应用网关等几种方式控制网络连接
2.防火墙的优点在系统中使用防火墙,对于系统的安全有很多的优点
(1)可以隔离网络,限制安全问题的扩散
(2)通过防火墙可以对网络中的安全进行集中化管理,简化网络安全管理的复杂度
(3)能够有效地记录 Internet 上的活动
3.正确使用防火墙虽然防火墙的技术日渐成熟起来,成为维护网络安全的一个重要的手段
(1)防火墙虽然能对来自外部网络的非法连接作很严格的限制,但是对来自本地网络内部的攻击却无从防范
(2)即使对于来自外部的攻击,目前的任何防火墙也不能做到完全阻挡所有的非法入侵
(3)防火墙不能防范病毒,无法抵御基于数据的攻击
(4)防火墙不能防范全部的威胁,而只能防备已知的威胁
(5)防火墙不能防范不通过它的链接
16.8.3 入侵检测系统
入侵检测(Intrusion Detection)系统可以在系统中发生一些不正常的操作时发出警报,防患于未然。设置硬件防火墙,可以提高网络的通过能力并阻挡一般性的攻击行为;而采用入侵检测系统,则可以对越过防火墙的攻击行为及来自网络内部的违规操作进行监测和响应
入侵检测技术,通过对计算机网络或计算机系统中的若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象
16.7 网络安全体系
16.7.1 OSI 安全架构
1.OSI 安全服务
(1)对象认证服务
(2)访问控制服务
(3)数据保密性服务
(4)数据完整性服务
(5)禁止否认服务
2.OSI 安全机制
(1)加密机制
(2)数字签名机制
(3)访问控制机制
(4)数据完整性机制
(5)鉴别交换机制
① 口令:由发送方提交,由接收方检测。
② 加密:将交换的信息加密,使得只有合法用户才可以解读。
③ 实体的特征或所有权:例如,指纹识别、身份卡识别等
(6)业务流填充机制
(7)路由控制机制
(8)公证机制
3.OSI 安全服务与安全机制之间的关系
OSI 安全服务与安全机制之间不是一一对应的关系。有的服务需要借助多种机制来实线,同时,有些机制可以提供多种服务
16.7.2 VPN 在网络安全中的应用
1.VPN 技术的优点
(1)网络通信安全
(2)方便的扩充性
(3)方便的管理
(4)节约成本显著
2.VPN 的原理
(1)安全隧道技术。即把传输的信息经过加密和协议封装处理后再嵌套装入另一种协议的数据包中送入网络中,像普通数据包一样进行传输。经过这样的处理,只有源端和目标端的用户对加密封装的信息能进行提取和处理,而对于其他用户而言,这些信息只是无意义的垃圾
(2)用户认证技术。在连接开始之前先确认用户的身份,然后系统根据用户的身份进行相应的授权和资源访问控制
(3)访问控制技术。由 VPN 服务的提供者与最终网络信息资源的提供者共同协商确定用户对资源的访问权限,以此实现基于用户的访问控制,实现对信息资源的保护
三个部分
(1)安全传输平面。安全传输平面实现在 Internet 上安全传输和相应的系统管理功能,这是由安全隧道代理和管理中心共同完成的
① 安全隧道代理
② VPN 管理中心
(2)公共功能平面。公共功能平面是安全传输平面的辅助平面,向 VPN 用户代理提供相对独立的用户身份认证与管理、密钥的分配与管理功能,分别由用户认证管理中心和VPN 密钥分配中心完成
16.6 身份认证与访问控制
访问控制技术
(1)用户标识与认证
(2)逻辑访问控制
(3)审计与跟踪
(4)公共访问控制
16.6.1 身份认证技术
1.口令认证方式
2.基于公钥签名的认证方式
3.持卡认证方式
4.基于人体生物特征的认证方式
5.动态口令技术(一次性口令技术)
6.PPP 中的认证协议
7.RADIUS 协议
16.6.2 访问控 制技术
1.访问控制策略
访问控制策略一般可以划分为三类:自主访问控制(Discretionary Access Control, DAC),强制访问控制(Mandarory Access Control,MAC),基于角色的访问控制(Roal Based AccessControl,RBAC)。其中 DAC、MAC 是属于传统的访问控制策略,而 RBAC 则是后来出现的一种访问控制策略,被认为具有很大的优势,具有很好的发展前景
2.访问许可的授权对访问许可的授权有三种类型
(1)等级型
(2)拥有型
(3)自由型
16.5 计算机病毒与防治
16.5.1 计算机病毒概述
计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码
计算机病毒的特征
计算机病毒多种多样,但是它们都具有共同的特征,即传染性、非授权性、潜伏性和破坏性
计算机病毒的分类
按照操作系统分,可分为攻击 DOS 系统的病毒、攻击 Windows 系统的病毒、攻击
Unix/Linux 系统的病毒、攻击 OS/2 系统的病毒、攻击 Macintosh 系统的病毒、攻击手机的病毒、其他操作系统上的病毒
按照链接方式分,计算机病毒可分为源码型病毒、嵌入型病毒、Shell 病毒、宏病毒、脚本型病毒、操作系统型病毒
按照破坏情况分,计算机病毒可分为良性病毒和恶性病毒。按传播媒介来分,计算机病毒可分为单机病毒和网络病毒
计算机病毒的组成
病毒程序一般由传染模块、触发模块、破坏模块和主控模块组成,相应地完成病毒的传染、触发和破坏等任务。也有少数病毒不具备所有的模块
16.5.2 网络环境下的病毒发展新趋势
16.5.3 计算机病毒的检测与清除
1.特征码检测
2.校验和检测
3.行为监测
4.启发式扫描
5.虚拟机
病毒的清除
将病毒代码从宿主中去除,使之恢复为可正常运行的系统或程序,称为病毒清除。大多数情况下,采用反病毒软件或采用手工处理方式可以恢复受感染的文件或系统
16.5.4 计算机病毒的预防
(1)一定要在计算机中安装反病毒软件
(2)不要轻易使用来历不明的或者没有经过确认的软件
(3)电子邮件的附件应该先检查病毒后再开启,并在发送邮件之前检查病毒
(4)定期使用反病毒软件扫描系统
(5)确保所使用的反病毒软件的扫描引擎和病毒代码库为最新的,因为旧的扫描引擎和病毒代码库不会检查到新出现的病毒
(6)为防止引导型病毒对系统的破坏,应该在系统安装完成后立即制作系统应急启动盘
(7)对于一些重要的文件,要定期进行备份
(8)利用安全扫描工具定时扫描系统和主机
(9)使用反病毒软件时,最好先查毒,找到了带毒文件后,再确定是否进行杀毒操作
(10)建立本单位的计算机病毒防治管理制度;并对计算机用户进行反病毒培训
0 条评论
下一页
为你推荐
查看更多