目录
1.1 信息安全面临的威胁
1.1.1 安全威胁
攻击分类:
被动攻击:即窃听,是对系统的保密性进行攻击如搭线窃听、对文件或程序的非法拷贝等,以获取他人的信息,不对消息做任何修改,因而是难以检测的,所以抗击这种攻击的重点在于预防而非检测。
主动攻击:这种攻击包括对数据流的某些篡改或产生某些假的数据流。包括中断、篡改和伪造三类。
1.1.2 入侵者和病毒
信息安全的人为威胁主要来自用户(恶意的或无恶意的)和恶意软件的非法侵入,入侵信息系统的用户也称为黑客,其目的是对计算机系统实施破坏,也可能是一个犯罪分子,其目的是非法窃取系统资源,对数据进行未授权的修改或破坏计算机系统。
恶意软件指病毒、蠕虫等恶意程序,分为两类,一类需要主程序,另一类不需要。前者是某个程序中的一段,不能独立于实际的应用程序或系统程序;后者是能被操作系统调度和运行的独立程序。
1.1.3 安全业务
保密业务
目标:防止未经授权的访问,确保信息仅能被授权用户访问。
方法:加密、访问控制、安全通信协议(如SSL/TLS)。
典型应用:银行交易、军事机密、企业商业机密保护。
认证业务
目标:验证实体的身份(用户、设备、系统),确保通信的双方是可信的。
方法:用户名/密码、多因素认证(MFA)、数字证书、公钥基础设施(PKI)。
典型应用:用户登录系统、在线支付身份验证、电子邮件签名。
完整性业务
目标:防止数据被篡改或损坏,确保数据在传输或存储过程中保持完整。
方法:哈希函数、消息认证码(MAC)、数字签名。
典型应用:软件更新验证、电子合同、银行交易数据校验。
不可否认业务
目标:防止通信双方否认已发生的行为,即提供不可抵赖的证据。
方法:数字签名、时间戳服务、日志记录。
典型应用:电子合同签署、银行转账记录、电子邮件防抵赖。
访问控制
目标:限制和管理用户对系统资源的访问权限,确保只有被授权的用户可以访问特定资源。
方法:身份认证、访问控制列表、基于角色的访问控制。
典型应用:操作系统文件权限、数据库访问控制、云存储权限管理。
1.2 信息安全模型
传递消息首先要在网络中定义从发方到收方的一个路由,然后在该路由上共同执行通信协议。
安全的网络通信必须考虑以下4个方面:
加密算法;
用于加密算法的秘密信息;
秘密信息的分布和共享;
使用加密算法和秘密信息以获得安全服务所需的协议;
1.3 密码学基本概念
1.3.1 保密通信系统
密码系统主要包括以下几个基本要素:明文,密文,加密算法,解密算法和密钥。
明文:发送方即将要发送的消息。
密文:明文经过密码变换后的消息。
加密:由明文变换为密文的过程。
解密:由密文恢复出原明文的过程。
加密算法:对明文进行加密时所采用的一组规则。
解密算法:对密文进行解密时所采用的一组规则。
密钥:是一种特定的值,能使密码算法按照指定的方式进行,并产生相应的密文,密钥是密码体制安全保密的关键。
1.3.2 密码体制分类
密码体制从原理上分为单钥体制和双钥体制两大类。
单钥体制
单钥体制的加密密钥和解密密钥相同。
单钥体制有很高的保密性,很强的安全性,根据这种特性,单钥加解密算法可通过低费用的芯片来实现。
单钥体制不仅可用于数据加密,也用于消息的认证。
单钥体制对明文消息的加密有两种方式:
流密码:对明文消息按字符(如二元数字)逐位地进行加密。
分组密码:将明文消息分组(含有多个字符),逐组地进行加密。
双钥体制
双钥体制又称作公钥体制。采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,可以像电话号码一样进行注册公布;另一个则是秘密的。
双钥密码体制的特点:将加密和解密能力分开
可以实现多个用户加密的消息只能由一个用户解读,可用于公共网络中实现保密通信。
由一个用户加密的消息而使多个用户可以解读,可用于实现对用户的认证。
1.3.3 密码攻击概述
加密算法只要满足以下两条准则之一就称为是计算上安全的:
破译密文的代价超过被加密信息的价值。
破译密文所花的时间超过信息的有用期。
1.4 几种古典密码
古典密码的加密是将明文的每一字母代换为字母表中的另一字母,代换前首先将明文字母用等价的十进制数字代替,再以代替后的十进制数字进行运算,字母与十进制数字的对应关系如表1-2所示。
1.4.1 单表代换密码
1.恺撒密码
凯撒(Caesar)密码的加密代换和解密代换分别为:
其中3是加解密所用的密钥,加密时,每个字母向后移3位(循环移位,字母x移到a,y移到b,z移到c)。解密时,每个字母向前移3位(循环移位)。
2.移位变换
移位变换的加解密分别是:
3.仿射变换
仿射变换的加解密分别是:
其中a,b是密钥,为满足和
的整数。其中
表示a和26的最大公因子,表示a和26是互素的a-1表示a的逆元,即
。
1.4.2 多表代换密码
多表代换密码首先将明文M分为由n个字母构成的分组对每个分组
的加密为:
其中(A,B)是密钥,A是n*n的可逆矩阵,满足(|A|是行列式)。
。对密文分组
的解密为: