TLS/SSL 协议详解 (5) 运用密码学原理构建安全信道3
来源:互联网 发布:网络作家村 编辑:程序博客网 时间:2024/06/13 02:54
保证数据的完整性
到目前为止,我们后续的报文可以加密通信了。现在只要保证,后续加密的数据不被篡改就行了,或者说,SSL需要辨别数据是否被篡改的能力。
这时候摘要就派上用场了。回顾第三章中,我们提到的摘要的特性:
1:不同的数据,即使是一字节改变,其摘要的结果变化非常大。
2:无论摘要的输入长度是多少,其输出是固定长度,对于MD5而言输出16字节,对于SHA1而言,输出20字节。
3:无法从摘要的结果中得出原文。只有输入相同的明文数据经过相同的摘要算法才能得到相同的结果。
为了达到能够辨别数据被修改的能力,我们这加密:
好了,假设密文中某一字节被改变,那么接受者收到报文解密后,必定要么明文部分是错误的,不是”GET …”,要么摘要部分是错误的。此时接受者只要对明文做一次摘要,然后拿自己的结果和收到的摘要比较一下是否相同,就能判断数据是否被改动过。过程如下:
上述加密过程屏蔽了padding相关操作,但并不影响理解如何保证数据完整性。
阅读全文
0 0
- TLS/SSL 协议详解 (5) 运用密码学原理构建安全信道3
- TLS/SSL 协议详解(3) 运用密码学原理构建安全信道1
- TLS/SSL 协议详解 (4) 运用密码学原理构建安全信道2
- TLS/SSL 协议详解 (2) SSL有关的密码学原理
- SSL/TLS 协议详解
- SSL/TLS 协议详解
- SSL/TLS 协议详解
- SSL/TLS协议详解
- SSL/TLS 协议详解
- SSL/TLS 协议详解
- SSL/TLS 协议详解
- SSL/TLS 协议详解
- 安全传输协议SSL和TLS及WTLS的原理
- 安全传输协议SSL和TLS及WTLS的原理
- SSL/TLS原理详解
- SSL/TLS原理详解
- SSL/TLS原理详解
- SSL/TLS原理详解
- mysql语法基础
- POI创建DOCX常用操作
- CMake: include called with wrong number of arguments. include() only takes one file.
- 目标检测3 Fast R-CNN
- android中的序列化和反序列化
- TLS/SSL 协议详解 (5) 运用密码学原理构建安全信道3
- C# 如何在PDF文档中添加打印按钮
- 异常
- HDU 1003
- JS函数声明和预解析的理解
- 编译Android 7.0 内核报错
- 数据库知识整合
- POJ
- [HDU 6165]FFF at Valentine