D3-01 8–10 分钟 重要程度:高
密码学目标、算法与散列
CISSP 不要求你手算密码算法,但要求你知道加密、散列、签名和密钥机制分别解决什么问题。
一、必须记住
- 密码学目标包括保密性、完整性、身份验证和不可否认性。
- 对称加密速度快,适合大量数据,但密钥分发困难,也不提供不可否认性。
- 非对称加密使用公钥/私钥,适合密钥交换、数字签名和小块数据。
- 散列提供完整性校验,不能提供保密性。
- 数字签名通常结合私钥和消息摘要,提供完整性、身份验证和不可否认性。
二、核心概念
保密性、完整性、身份验证、不可否认性
加密主要保护保密性;散列主要验证完整性;数字签名把散列与非对称加密结合,用来证明消息没有被改动且签署者无法合理否认。
对称与非对称
对称加密只有共享密钥,速度快,适合大量资料;非对称加密有公钥和私钥,速度慢,但可扩展性较好,适合密钥交换、签名和证书。
散列与 HMAC
散列函数产生消息摘要。HMAC 在散列基础上加入共享秘密密钥,可验证消息完整性和来源,但因为双方共享同一个秘密,所以不提供不可否认性。
三、CISSP 判断规则
- 问大量数据加密,优先对称加密。
- 问密钥交换或数字签名,优先非对称加密。
- 问文件是否被改动,优先散列或消息摘要。
- 问不可否认性,优先数字签名,不选单纯对称加密。
四、常见陷阱
- 散列不是加密,不能解密回原文。
- 对称加密双方都知道密钥,因此不能证明只有某一方签署。
- 非对称加密通常不适合直接加密大量数据。
五、英文关键字
Cryptography (密码学) 定义:用数学机制保护信息的保密性、完整性、身份验证和不可否认性。 Symmetric encryption (对称加密) 定义:通信双方共享同一密钥,速度快,适合大量数据。 Asymmetric encryption (非对称加密) 定义:使用公钥和私钥,适合密钥交换、数字签名和证书。 Hashing (散列) 定义:产生消息摘要,用于验证完整性,不能还原原文。 HMAC (基于散列的消息认证码) 定义:用共享秘密和散列验证完整性与来源,但不提供不可否认性。 Digital signature (数字签名) 定义:用私钥签署消息摘要,支持完整性、身份验证和不可否认性。 Nonrepudiation (不可否认性) 定义:让主体难以合理否认自己执行过的动作或签署。 Confidentiality (保密性) 定义:防止未授权披露。
考试判断:看到 disclosure、leakage、unauthorized access,优先想到保密性。 Integrity (完整性) 定义:防止未授权修改,保证数据准确可靠。
考试判断:看到篡改、错误修改、数据不可靠,优先想到完整性。
考试判断:看到 disclosure、leakage、unauthorized access,优先想到保密性。 Integrity (完整性) 定义:防止未授权修改,保证数据准确可靠。
考试判断:看到篡改、错误修改、数据不可靠,优先想到完整性。
小测验
1. 哪种机制最适合确认下载文件没有被篡改?
散列产生消息摘要,适合验证完整性。
2. 大量资料加密通常优先使用哪类算法?
对称加密速度快,适合大量数据。
3. 哪种机制最能支持不可否认性?
数字签名使用私钥签署摘要,可支持完整性、身份验证和不可否认性。
本节进度
完成后会保存在当前浏览器。线上版可保存;不同手机、平板之间暂不自动同步。
尚未完成