Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

网络: HTTPS: 解读RFC2818 #40

Open
xvno opened this issue Apr 27, 2019 · 1 comment
Open

网络: HTTPS: 解读RFC2818 #40

xvno opened this issue Apr 27, 2019 · 1 comment

Comments

@xvno
Copy link
Owner

xvno commented Apr 27, 2019

Refs

@xvno
Copy link
Owner Author

xvno commented May 19, 2019

握手流程

  1. Handshake: ClientHello --->: ssl/tls version, supported cipher suit list
  2. Handshake: ServerHello <---: selected cipher suit
  3. Handshake: Certificate <---: 证书
  4. Handshake: ServerHelloDone <---: 告诉浏览器最初握手结束
  5. Handshake: ClientKeyExchange --->: 浏览器验证 S-3服务端发来的 证书的有效性, 并用解析出的PublicKey加密一个Pre-master secret发送给服务端
  6. ChangeCipherSpec --->: 告诉服务器以后要用对称加密咯
  7. Handshake: Finished --->: x1 能否协商成功, 就得看服务端能否解析这个报文.
  8. ChangeCipherSpec <---: 告诉浏览器服务端也要用对称加密了
  9. Handshake: Finished <---: x2 能否协商成功, 就得看服务端能否解析这个报文.

防止窃听/篡改/冒充

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant