第二章 信息安全基础技术
2.1 密码学
威胁、安全属性与密码学技术的相互关系:
面临的威胁 | 所破坏信息的安全属性 | 解决问题所采用的密码学技术 |
---|---|---|
截获(泄露信息) | 机密性 | 对称加密和非对称加密 |
篡改(修改信息) | 完整性 | 哈希函数、数字签名、对称加密和非对称加密 |
伪造(伪造信息来源) | 真实性 | 数字签名 |
否认(抵赖) | 不可否认性 | 数字签名 |
2.1.1 加密与解密
数据加密是指将明文信息采取数学方法进行函数转换转换成密文,只有特定接收方才能将其解密还原成明文的过程。
- 数据加密三要素:明文、密钥、密文
- 涉及的概念:
- 明文(Plain Text):被隐蔽的原始信息,通常用 m 表示
- 密文(Cipher Text):屏蔽后的消息,通常用 c 表示
- 密钥(Key):加密和解密时使用的一组秘密消息,用来控制加密和解密算法的操作,通常用 Ke 和 Kd 表示
- 发送者、接收者:在消息传送过程中,主动提供消息的一方为发送者,得到消息的一方为接收者
- 加密(Encryption):将明文通过数学方法转换成密文的过程
- 解密(Decryption):将密文还原成明文的过程
- 加密算法:加密可以采用加密算法来实现,加密算法从密钥使用角度可分为对称加密算法和非对称加密算法
- 对称加密算法(也称单钥或私钥加密算法):发送和接收数据的双方使用同一套密钥进行加解密的算法
- 非对称加密算法(公钥加密算法):发送和接收数据的双方使用不同的两套密钥进行加解密的算法
- 对称密码与非对称密码:
- 对称密码的优点:
- 效率高,算法简单,系统开销小
- 适合加密大量数据
- 明文长度与密文长度相等
- 对称密码的缺点:
- 需要以安全方式进行密钥交换
- 密钥管理复杂
- 对称密码的优点:
- 典型的对称密码与非对称密码:
- 对称密码:
- 分组密码:DES、AES、SM4
- 序列密码:祖冲之序列密码、RC4
- 非对称密码:RSA、ECC(椭圆曲线加密)、SM2、SM3
- 对称密码:
- 混合加密算法:兼容两者优点。使用对称加密算法对明文进行加密,将对称加密密钥使用接收方的公钥加密后与密文一同发给接收方,接收方使用私钥对对称加密密钥进行解密,之后再使用对称加密密钥对密文进行解密,获取明文信息
2.1.2 哈希函数
-
对称加密与非对称加密算法主要解决的是信息的机密性问题,而实际系统和网络还可能受到消息篡改等攻击,如何确保信息的完整性,密码学的解决方法之一就是使用哈希函数
哈希函数也称杂凑函数或单向散列函数,接收消息作为输入,输出一个称为哈希值(也称散列值、消息摘要或指纹)的输出。哈希值可以看作是高输入消息的指纹。其优点是输入的消息即使仅改变一个 bit 的内容,输出的哈希值都会发生变化。我们可以通过哈希值是否发生改变来判断消息是否被篡改。
-
常用的哈希函数有:MD5、SHA-256、SHA-512等
2.1.3 数字签名
- 除了保护信息的机密性、完整性,密码学技术也可以解决信息的真实性和不可否认性。简言之前者确认对方是否是本人的认证,后者防止对方否认自己曾经的行为。数字签名技术就具备防止伪造、否认的功能。
- 数字签名技术原理:发送方使用哈希函数获得待发送消息的指纹,并使用自己的私钥对指纹进行加密,得到数字签名,之后将数字签名与消息一同发给接收方;接收方通过发送方的公钥对指纹进行解密,之后再将发送的消息通过哈希函数计算指纹,将两个指纹进行比对,相同则可证实真实性和不可否认性
2.2 身份认证
2.2.1 身份认证基本方法
-
身份认证是在计算机网络中确认操作者身份的过程
-
在分布式系统中有两类主要认证:
-
用户与主机之间的认证
用户与主机之间的认证可以基于如下一个或几个因素:
- 用户所知道的事物:口令、密码等
- 用户所拥有的事物:印章、智能卡、信用卡等
- 用户所具有的生物特征:指纹、声音、虹膜、笔迹等
-
主机与主机之间的认证
- 基于口令的认证协议
- 基于密码学的认证协议
-
-
身份认证技术不可避免要用到加密技术,可分为:
- 基于对称密钥技术的身份认证(如Kerberos)
- 基于公开密钥的身份认证(如CA)
2.2.2 数字证书和公钥基础设施
-
数字证书(又称电子证书、公钥证书或证书)是一段经认证权威机构(Certification Authority,CA)签名的、包含拥有着身份信息和公开密钥的数据体。最简单的证书包含一个公开密钥、使用者名称以及证书授权中心的数字签名。此外数字证书旨在特定的时间段有效。
-
数字证书的内容包括以下数据结构:
- 所有者公钥
- 用户或实体身份
- 发布者身份
- 第三方信任机构签名
- 有效期限
- X.509 定义该结构(ITU,IETF PKIX standards),现在为v3,即第3个版本
X.509数字证书标准:包括版本号、证书序列号、签名算法标识符、颁发者名称、有效期、主体名称、主体的公钥信息、颁发者唯一标识符(可选)、主题唯一标识符(可选)、扩展项(可选)、颁发者的签名
-
数字证书通过运用对称和非对称密码体制等密码技术建立起一套严密的身份认证系统,从而保证了:
- 信息除发送方和接收方外不被其他人窃取(保密性)
- 信息在传输过程中不被篡改(完整性)
- 发送方能够通过数字证书来确认接收方身份(真实性)
- 发送方对于自己的信息不能抵赖(不可否认性)
-
数字证书可用于:发送安全电子邮件、访问安全站点、网上证券交易、网上招标采购、网上办公、网上保险、网上税务、网上签约和网上银行等电子事物处理和安全电子交易活动
-
公钥基础设施(Public Key Infrastructure,PKI)是一种遵循既定标准的公钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务所必需的密钥和证书管理体系。简言之PKI就是利用公钥理论和技术建立的提供安全服务的设施
-
PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术
-
PKI技术采用证书管理公钥,通过第三方的可信任机构——认证中心CA,把用户的公钥和用户的其他标识信息(如名称、e-mail、身份证号等)捆绑在一起,在 Internet 中验证用户的身份
-
认证权威机构(Certification Authority,CA)专门负责数字证书的产生、发放和管理,以保证数字证书真实可靠
-
CA的主要职责:
- 证书的签发和管理:接受终端实体的证书申请,验证审查用户身份,生成数字证书,并负责数字证书的分发、发布、更新和撤销
- 证书黑名单管理:CA通过发布和维护证书作废清单(Certificate Revocation List,CRL)将已作废的证书放入黑名单,连同作废原因一起发布到CRL,用户可查询自己或其他人的证书和下载黑名单信息
- RA的设立、审查和管理:注册权威机构(Registration Authority,RA)受CA委派,负责接收证书申请和审核的机构,用于减轻CA的工作负担
2.2.3 常见身份认证应用举例
- 静态口令认证:数字证书
- 动态短信口令认证:公钥基础设施
- 动态口令牌认证(一次一密):认证权威机构
- USB KEY认证技术:银行的U盾
- 生物识别技术:人脸识别、指纹、虹膜认证技术
- 双因素认证方式:动态口令牌 + 静态密码、USB KEY + 静态密码、二层静态密码
2.3 访问控制
2.3.1 访问控制基本概念
- 访问控制策略是主体对客体的操作行为集和约束条件集。简言之访问控制策略是主体对客体的访问规则集,这个规则集直接定义了主体对客体的作用行为和客体对主体的条件约束
- 访问控制策略体现了一种授权行为,也就是客体对主体的权限允许,这种允许不超越规则集
- 访问控制相关概念:
- 主体:
- 一个提出请求或要求的实体,是动作的发起者,但不一定是动作的执行者
- 可以对其他实体施加动作的主动实体,简记为S。有时也称为用户(User)或访问者(被授权使用计算机的人员),记为U
- 主要包括用户、计算机终端、应用服务程序、进程等
- 客体:
- 接受其他实体访问的被动实体,简记为O
- 主要包括信息、资源、对象、文件、记录、硬件设施等
- 一个客体可以包含另外一个客体
- 主体:
- 访问控制由两个重要过程组成:
- 认证:检验主体的合法身份
- 授权:限制用户对资源的访问权限
- 身份认证与访问控制的区别:
- 身份认证用于确认实体是它所声明的,提供了关于某个实体身份的保证
- 正确识别、别用户的身份是认证服务的责任,而访问控制则假定在通过监控器实施访问控制前,用户的身份就已经得到验证;因此,访问控制的有效性取决于用户的正确识别,同时也取决于监控器正确的控制
- 自主访问控制(DAC):
- 根据主体身份及允许访问的权限进行决策,也称自由访问控制
- Linux、UNIX、Windows NT/SERVER 版本的操作系统都提供自主访问控制功能
- 具体实现上,首先要对用户的身份进行鉴别;然后就可以按照访问控制列表所赋予用户的权限允许和限制用户使用客体的资源