SSL 协议的工作原理图解安全套接字 SSL 协议的工作原理1、密码学的相关概念 密码学(cryptography):目的是通过将信息编码使其不可读,从而达到安全性
明文(plain text):发送人、接受人和任何访问消息的人都能理解的消息
密文(cipher text):明文消息经过某种编码后,得到密文消息
加密(encryption):将明文消息变成密文消息
解密(decryption):将密文消息变成明文消息
算法:取一个输入文本,产生一个输出文本
加密算法:发送方进行加密的算法
解密算法:接收方进行解密的算法
密钥(key):只有发送方和接收方理解的消息对称密钥加密(Symmetric Key Cryptography):加密与解密使用相同密钥
非对称密钥加密(Asymmetric Key Cryptography):加密与解密使用不同密钥
2、相关的加密算法介绍 DES 算法即数据加密标准,也称为数据加密算法
加密过程如下: 在 SSL 中会用到分组 DES、三重 DES 算法等加密算法对数据进行加密
当然可以选用其他非 DES 加密算法,视情况而定,后面会详细介绍
3、密钥交换算法 使用对称加密算法时,密钥交换是个大难题,所以 Diffie 和 Hellman 提出了著名的Diffie-Hellman 密钥交换算法
Diffie—Hellman 密钥交换算法原理: (1)Alice 与 Bob 确定两个大素数 n 和 g,这两个数不用保密(2)Alice 选择另一个大随机数 x,并计算A 如下:A=gx mod n(3)Alice 将 A 发给 Bob(4)Bob 选择另一个大随机数 y,并计算 B 如下:B=gy mod n(5)Bob 将 B 发给 Alice(6)计算秘密密钥 K1 如下:K1=Bx mod n(7)计算秘密密钥 K2 如下:K2=