软件设计师-04,计算机组成原理03
Joker2Yue网络安全、信息安全技术
ARP:ARP Replay Attack,重放攻击
DOS:Denial of Service Attack,拒绝服务攻击
网络安全概述
网络安全五大基本要素
-
保密性:确保信息不暴露给未授权的实体,包括最小授权原则(只赋给使用者恰好够用的权限防止其看到其他保密的数据)、防暴露(将物理数据库文件名和扩展名都修改为一串乱码,防止他人轻易找到复制)、信息加密、物理保密。
-
完整性:保证数据传输过程中是正确无误的,接收和发送的数据相同,包括安全协议、校验码、密码校验、数字签名、公证等手段。
-
可用性:保证合法的用户能以合法的手段来访问数据,包括综合保障(IP过滤、业务流控制、路由选择控制、审计跟踪)。
-
可控性:控制授权范围内的信息流向及行为方式,整个网络处于可控状态下。
-
不可抵赖性:信息数据参与者不能否认自已发送的数据,参与者身份真实有效。
安全威胁分类
加密技术-保密性
基本概念
-
明文:实际传输的真正数据。
-
密文:经过加密之后的数据。
-
加密:将明文转换为密文的过程。
-
解密:将密文转换为明文的过程。
-
加密算法:一般是公开的,包括两大规则,代换(转换成完全不同的其他数据)和置换(打乱明文顺序,进行重新置换)。
-
密钥:加密和解密过程中使用的密码等,是隐藏的。
对称加密技术
-
对数据的加密和解密的密钥(密码)是相同的,也称为共享密钥加密技术,属于不公开密钥加密算法。其缺点是加密安全性不高(因为只有一个密钥),且密钥分发困难(因为密钥还需要传输给接收方,也要考虑保密性等问题)。但是其加密速度快,非常适合于大数据的加密。
-
常见的对称密钥加密算法:
非对称加密技术
-
又称为公开密钥加密技术,各个用户分别有一对密钥,称为公钥和私钥。其中,公钥是公开的,所有用户都知道,而私钥是保密的,只有自己知道。使用公钥加密后,只有对应的私钥能够解密;使用私钥加密同样只有对应的公钥能够解密。非对称加密就是运用了公钥和私钥的原理,其对数据的加密和解密的密钥是不同的,是公开密钥加密算法。
-
原理:
发送方甲方和接收方乙方都各自有公钥和私钥,且甲方的公钥加密只能由甲方的私钥解密,乙方同理。双方的公钥是可以共享的,但是私钥只能保密,此时,甲方要传输数据给乙方,明显应该使用乙方的公钥来加密。这样,只有使用乙方的私钥才能解密,而乙方的私钥只有乙方自己知道,保证了数据的保密性,也不需要分发解密的密钥。其缺点是加密速度较慢(密钥较长,计算量大,不适合加密大数据)。
-
常见的非对称加密算法:
-
相比较可知,对称加密算法的密钥一般只有56位,因此加密过程简单,适合加密大数据,但由于密钥长度较短,加密安全性较低。而非对称加密算法的密钥长度通常为1024位,安全性较高。然而,由于密钥较长,解密的计算量较大,因此不适合加密大数据。通常,非对称加密算法用于加密对称算法的密钥,从而结合两者的优势,这也是数字信封的原理。
信息摘要-完整性
基本概念及特点
所谓信息摘要,就是一段数据的特征信息。当数据发生了改变,信息摘要也会发生改变,发送方会将数据和信息摘要一起传给接收方,接收方会根据接收到的数据重新生成一个信息摘要。若此摘要和接收到的摘要相同,则说明数据正确。信息摘要是由哈希函数生成的。
信息摘要的特点包括:
-
不论数据有多长,都会产生固定长度的信息摘要。
-
任何不同的输入数据都会产生不同的信息摘要。
-
具有单向性,即只能由数据生成信息摘要,不能由信息摘要还原数据。
常见的信息摘要算法有:
-
MD5(产生128位的输出)
-
SHA(安全散列算法,产生160位的输出,安全性更高)
由上述特点可知,使用信息摘要可以保证传输数据的完整性。只需要双方比对生成的信息摘要是否相同即可判断数据有没有被篡改。然而,当发送方发送的数据和信息摘要都被篡改了,接收方拿到错误的数据生成的信息摘要也与篡改的信息摘要相同,接收方就无能为力。这个问题在后面的数字签名技术中会得到解决。
数字签名-不可抵赖性
基本概念
-
上述技术只保证了数据传输过程的保密性和完整性,但却无法保证发送者是否非法。即在传输过程中,数据被第三方截获,即使他不能解密获取真实数据,但是他可以伪造一段数据,再用加密算法加密后发送给接收方。那么接收方无法判断发送方是否合法,其只会用发送方告诉的方法来解密。此时就要用到数字签名技术来验证发送方是否合法。
-
数字签名属于非对称加密体制,主要功能包括:
-
不可否认
-
报文鉴别
-
报文的完整性
-
-
原理:若发送方需要发送数据,应该使用发送方的私钥进行数字签名,而其公钥是共享的,任何接收方都可以拿来解密。因此,接收方使用了发送方的公钥解密,就必然知道此数据是由发送方的私钥加密的。而发送的私钥只属于发送方,唯一标识了数据是由谁发送的,这就是数字签名的过程原理。
加密过程:首先,我们生成明文X并计算出其信息摘要。接下来,我们使用发送方A的私钥对X的信息摘要进行数字签名,以确保数据的完整性和认证数据来源。然后,我们使用接收方B的公钥来加密这个带有数字签名的明文X,使其安全传输。
解密过程:接收方B收到加密的数据后,使用自己的私钥进行解密,得到带有数字签名的明文X。然后,B使用发送方A的公钥来验证数字签名的有效性,以确认数据的来源和完整性。如果验证通过,接收方B将成功接收到数据。这种方式确保了数据的安全传输和认证。
数字证书
-
数字证书,也称为数字标识,是由用户申请并由证书签发机构(CA)进行核实和签发的,用于认证用户的公钥。上述技术都是在假定发送方是正确的情况下进行的加密和认证技术。然而,如果发送方本身是伪造的,也就是说发送的公钥本身是虚假的,那么后续的加密和数字签名都将失去意义。因此,对发送方的公钥进行验证是非常重要的。
-
现代数字证书的大多数版本采用X.509标准。
-
数字证书的工作原理是,每个发送方都必须向CA申请数字证书,该数字证书经过CA数字签名,也就是CA使用私钥进行签名。当发送方要发送数据时,接收方首先会下载CA的公钥,然后使用该公钥来验证数字证书的真实性。如果数字证书被验证为真实有效,那么可以确保发送方是合法的,因为CA是一家官方权威的机构,其合法性不容置疑。
-
数字证书的格式通常包括序列号、版本号、签名算法、发行者ID、发行者、主体ID、有效期和公钥等信息。
-
在确保通信安全的最安全过程中通常需要进行两个关键步骤:首先,在进行网银等安全操作时,用户需要先下载银行的数字证书。在本地客户端使用CA的公钥对数字证书进行解密,解密成功后可以确定该数字证书是由CA颁发的,因此是该银行系统的,而不是黑客伪造的。其次,一旦确认通信对方的真实性,就可以采用上述一系列加密和认证技术来对通信数据进行加密,以确保数据不会在传输过程中被截获或篡改。
PKI公钥基础设施
PKI公钥基础设施是提供公钥加密和数字签名服务的系统或平台,自的是为了管理密钥和证书。一个机构通过采用PKI框架管理密钥和证节可以建立一个安全的网络环境。
-
PKI主要包括四个部分:X.509格式的证书;CA操作协议:CA管理协议;CA政策制定。
-
PKI的基础技术包括加密、数字签名、数据完整性机制、数字信封、双重数字签名等。
-
一个PKI应用系统至少应具有以下部分:
- 公钥密码证书管理。
- 黑名单的发布和管理。
- 密钥的备份和恢复。
- 自动更新密钥。
- 自动管理历史密钥。
- 支持交叉认证。