TCP+TLS

作者: 98Future | 来源:发表于2017-10-29 06:41 被阅读0次

TCP 传输是保证到达和按顺序的。 UDP的话是不保证一定传到也不保证顺序。 那为什么还要用UDP? 因为有一些实时的,比如直播。 某一个Frame的丢失其实无所谓,用TCP的话保证到底和顺序也许会卡屏。

然后TCP是Bi-directional的,each independent.

Flags那个格子表示到底是ACK, SIN 还是什么。

HdrLen表示整个header的size是多少,这样才知道怎么read options那个field。

sequence number:  random generated, 表示 First byte of data!

Acknowledge number: Next Expected Byte.

Handshake: 建立connection

如果Attacker知道Ports 和 Sequence number, 他可以inject data. 如果attacker 可以see TCP traffic的话,就能看到port 和 seq numbers.

他可以fake server的data,然后发送过来给client。 由于他到达速度会比server的还快。client会接到wrong data。

即便Attacker看不到TCP traffic,还是可以猜一下port和seq number

总结:

在TCP之上再加一层加密的protocol:

SSL/TLS是用对称加密! 双方有same key. 两种办法把这个key 共享

1. RSA加密

2. Diffie Hellman

另一种方法:

RSA容易screw up。如果你不小心泄露了Private Key 就完蛋了。

所以TLS用Diffie/Hellman. By the way, TLS = SSL.

交换supported protocol:

如果有中间人, 他可以做到Drop掉他想drop的加密protocols in ClientHello message.但是在finished part of TLS, TLS会verify integrity of handshake. 服务器与客户端互换用MAC加密过的prior dialog。所以中间人还必须break Mac.

负责网站certificate 的private key的意义。

如果你拥有他 你就可以山寨一个网站出来 别人想确认是不是的时候  那个key可以用来create fake certificate.

Syn攻击:

相关文章

  • TCP+TLS

    TCP 传输是保证到达和按顺序的。 UDP的话是不保证一定传到也不保证顺序。 那为什么还要用UDP? 因为有一些实...

网友评论

      本文标题:TCP+TLS

      本文链接:https://www.haomeiwen.com/subject/jsbepxtx.html