一、安全威胁
1.攻击
1)主动攻击
中断:对系统的可用性进行攻击,破坏计算机硬件、软件及网络。
篡改:修改数据文件中的数据、替换某一程序使其执行不同的功能、修改网络中传送的消息内容等。
伪造:在网络中插入伪造的消息影响真实性。
2)被动攻击
被动攻击即窃听,是对系统的保密性进行攻击如窃听、对文件或程序的非法拷贝盗窃来获取重要信息。
2.病毒
病毒是一种计算机程序或代码,它的主要目标是在计算机系统中自我复制并传播,同时对系统造成有害影响。类比生物学中的病毒,计算机病毒通过植入到其他文件或程序中来感染其他计算机,并且可以在不同的系统中传播。
常见的恶意程序和病毒:
(1) 间谍软件:间谍软件旨在悄悄地收集用户的个人信息和在线活动。它可以监视浏览器历史记录、键盘输入、敏感数据等,并将这些信息发送给恶意软件的控制者。间谍软件通常通过欺骗性的下载或捆绑在其他软件中传播。
(2)广告软件:广告软件常常以广告形式出现,并在用户的计算机上显示弹出广告、横幅广告或其他类型的广告。广告软件通常通过免费软件捆绑安装,当用户安装这些软件时,广告软件也会同时安装。它旨在为广告商提供流量和曝光机会,但可能会对用户体验和系统性能产生负面影响。
(3)木马:木马是一种伪装成合法程序的恶意软件。它通过欺骗性手段诱使用户下载和安装,一旦被激活,木马可以在用户不知情的情况下打开后门,允许攻击者远程访问受感染的计算机。木马可以用于窃取敏感信息、损坏文件、监视用户活动等恶意行为。
(4)蠕虫:蠕虫是一种自我复制的恶意程序,可以在计算机网络中快速传播,并感染其他主机。与病毒不同,蠕虫可以独立地传播,而无需依赖宿主文件。蠕虫通常利用网络漏洞或弱密码来感染计算机,并在感染的计算机之间传播自身。
二、基础知识
1.密码系统要素
密码系统主要包括以下几个基本要素:明文,密文,加密算法,解密算法和密钥。
明文(Plaintext):明文是指待加密的原始数据或消息。它可以是文字、数字、图像、文件或任何其他形式的数据。
密文(Ciphertext):密文是通过应用加密算法将明文转换而成的加密数据。密文是不可读的,并且没有密钥或解密算法的情况下很难还原为明文。
加密算法(Encryption Algorithm):加密算法是用于将明文转换为密文的数学函数或过程。加密算法采用密钥作为输入,并使用特定的算法对明文进行变换,生成相应的密文。加密算法可以是对称加密算法或非对称加密算法。
-
对称加密算法:对称加密算法使用相同的密钥进行加密和解密。发送方使用密钥将明文加密为密文,接收方使用相同的密钥解密密文还原为明文。
-
非对称加密算法:非对称加密算法使用一对密钥,即公钥和私钥。发送方使用接收方的公钥加密明文,接收方使用自己的私钥解密密文还原为明文。
解密算法(Decryption Algorithm):解密算法是用于将密文转换为明文的数学函数或过程。解密算法与加密算法相对应,使用相同的密钥或匹配的私钥对密文进行解密操作,从而还原为原始的明文数据。
密钥(Key):密钥是在密码系统中用于加密和解密数据的关键部分。密钥可以是一串数字、字母、符号的随机序列。对称加密算法使用相同的密钥进行加密和解密,而非对称加密算法使用一对密钥,即公钥和私钥。
-
对称密钥:对称密钥是一种共享密钥,同一密钥用于加密和解密数据。发送方和接收方必须事先共享相同的密钥。
-
公钥和私钥:非对称密钥系统中,公钥用于加密数据,私钥用于解密数据。公钥可以公开分发给任何人,而私钥必须保密并掌握在数据接收方的手中。
2.密码体制分类
(1)对称密码体制
对称密码体制也称为传统密码体制或秘密密钥密码体制。在对称密码体制中,加密和解密使用相同的密钥。发送方使用密钥将明文加密为密文,接收方使用相同的密钥解密密文还原为明文。对称密码体制具有高效性和速度快的优点,适用于大量数据的加密和解密操作。常见的对称密码算法有DES(数据加密标准)、3DES、AES(高级加密标准)和RC4等。
(2)非对称密码体制
非对称密码体制使用一对密钥,即公钥和私钥。公钥用于加密数据,私钥用于解密数据。发送方获取接收方的公钥加密明文,并将密文发送给接收方,接收方使用自己的私钥解密密文还原为明文。非对称密码体制具有密钥分发和身份验证的优势,广泛应用于数字签名、密钥交换和安全通信等领域。常见的非对称密码算法有RSA、DSA(数字签名算法)和ECC(椭圆曲线密码)等。
(3)散列函数密码体制
散列函数密码体制使用散列函数来处理数据,产生固定长度的哈希值。散列函数具有将任意长度的输入数据转换为固定长度哈希值的特性。散列函数常用于验证数据完整性、密码存储和防止篡改。它们通常不涉及密钥的使用。常见的散列函数有MD5、SHA-1、SHA-256和SHA-3等。
(4)混合密码体制
混合密码体制将对称密码体制和非对称密码体制相结合,充分利用了它们各自的优势。在混合密码体制中,对称密码体制用于加密大量数据,而非对称密码体制用于密钥分发和身份验证。通常的做法是使用非对称密码体制加密对称密钥,然后使用对称密码体制加密实际的数据。这种体制既具备高效性又能够保障安全性,是现代加密通信的常用方式。
3.密码攻击
密码攻击是指对密码系统进行破解或破坏的各种尝试和方法。攻击者的目标是获取被保护的信息或破解密码系统的安全性。
(1)字典攻击
字典攻击是一种基于试错的攻击方法。攻击者使用一个预先准备好的字典,其中包含常见的密码、词典中的单词、常见的用户名等,逐个尝试这些可能的密码组合,直到找到正确的密码。这种攻击方法依赖于用户使用弱密码或常见密码的习惯。
(2)暴力攻击
暴力攻击是一种穷举攻击方法,尝试所有可能的输入组合来破解密码。攻击者通过逐个尝试所有可能的密码,从而找到正确的密码。暴力攻击通常需要大量的计算资源和时间,尤其是在密码长度较长或密码强度较高的情况下。
(3)密码嗅探
密码嗅探是指攻击者截获网络上的数据流量,并尝试从中获取用户的密码。攻击者可以使用网络嗅探工具来监视数据包,并提取其中的明文密码或利用其他手段对加密数据进行解密。这种攻击方法通常用于攻击不安全的无线网络或未加密的通信协议。
(4)侧信道攻击
侧信道攻击是一种利用密码系统在实际实现中产生的物理或操作特征泄露信息的攻击方法。攻击者可以通过分析密码系统的功耗、电磁辐射、时钟频率等侧信道信息,推断出密钥或其他敏感信息。这种攻击方法不直接攻击密码算法本身,而是利用密码系统在实际实现中的漏洞或特征。