V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
httpbin - 协议调试工具
httpstatuses - 协议状态码查询
httpie - cURL-like tool for humans
Fiddler
JhOOOn
V2EX  ›  HTTP

https 和 tcp 传输安全的问题

  •  
  •   JhOOOn · 2016-04-28 09:47:54 +08:00 · 3537 次点击
    这是一个创建于 3160 天前的主题,其中的信息可能已经有所发展或是发生改变。

    http 是建在 tcp 之上的传输, https 在 http 基础上加了一个 ssl 层保证了传输通道的安全(不知道我理解的对吧)。 那么如果直接通过 tcp 传输,怎么保证数据安全呢?

    1. tcp 通道安全?(相对于 https 是安全的,那么 tcp 如何做到呢?)
    2. 内容安全比较好的加密方式?

    请大家解答下,谢谢

    8 条回复    2016-04-28 18:46:56 +08:00
    nbndco
        1
    nbndco  
       2016-04-28 09:52:00 +08:00
    ssl 通道建立了直接发不就完了
    jasontse
        2
    jasontse  
       2016-04-28 10:02:21 +08:00 via iPad
    错了, HTTPS 的层级关系是 TCP ➡️ TLS ➡️ HTTP 。
    TCP 负责传输, TLS 保证安全性, HTTP 才是内容。
    shiji
        3
    shiji  
       2016-04-28 10:07:19 +08:00   ❤️ 1
    1. TLS over TCP
    2. 主流的其实都很安全。
    JhOOOn
        4
    JhOOOn  
    OP
       2016-04-28 10:13:53 +08:00
    @shiji 谢谢,明白了,已打赏
    firefox12
        5
    firefox12  
       2016-04-28 10:27:46 +08:00   ❤️ 1
    TCP 本身也有校验机制,可以保证一定概率 “意外”地被修改,但是无法保证 “故意的”被修改。

    简单的比方,我们找顺丰送快递, 东西放在一个铁盒子里。 铁盒子可以保护东西被破坏。 对方打开铁盒子就可以拿到我们的东西。 这个铁盒子可以保护 10 吨的压力。 一般的情况是不会有问题的,但是也可能遇到 100 吨压力,就坏了。但是铁盒子不写名字,所以快递员 可以把铁盒子 里的东西换掉换成废纸,这点是铁盒子保护不了的。

    如果要安全保证 怎么办, 我们送给顺丰的是一个 保险箱,东西放在保险箱里面。 保险箱直接放在铁盒子里面。 铁盒子受到 100 吨压力,就坏了,铁盒子 也会丢,但是不要紧里面的保险箱 谁都打不开,因为它们没钥匙。快递员没办法打开保险箱。

    铁盒子 就是 tcp, 保险箱就是 tls.
    tony1016
        7
    tony1016  
       2016-04-28 12:03:40 +08:00
    很简单的原理,把 TCP 装载的数据加密了,截获不就没用了嘛
    paw
        8
    paw  
       2016-04-28 18:46:56 +08:00
    先 TCP 握手,建立数据通道 OK 后, TLS 再在 TCP 链路之上开始握手协商加密,完成之后, TCP 链路上的数据都是加密的

    http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   830 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:13 · PVG 05:13 · LAX 13:13 · JFK 16:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.