V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
pythonee
V2EX  ›  问与答

https 在交换加密方法和密钥之后就使用 http 传输数据了?

  •  
  •   pythonee · 2014-10-31 13:57:36 +08:00 · 5608 次点击
    这是一个创建于 3676 天前的主题,其中的信息可能已经有所发展或是发生改变。
    http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html

    这篇文章,阮老师讲解了整个https的握手过程,包括怎么交换密钥和加密方法,但是他说:

    "至此,整个握手阶段全部结束。接下来,客户端与服务器进入加密通信,就完全是使用普通的HTTP协议,只不过用"会话密钥"加密内容"

    那后续的传输内容岂不是仍然可能遭拦截,破解?!这段话有点毁三观,不过我觉得每次传输都要进行耗时的握手也不是事
    24 条回复    2014-11-04 14:03:16 +08:00
    billlee
        1
    billlee  
       2014-10-31 14:00:26 +08:00
    HTTPS == HTTP over TLS
    TLS 保证安全,HTTP 的通信封装在 TLS 里面。
    choury
        2
    choury  
       2014-10-31 14:00:58 +08:00 via Android
    后面用这个密钥来进行对称加密
    tabris17
        3
    tabris17  
       2014-10-31 14:02:08 +08:00
    后续传输都加密了,每次连接能包含多个HTTP请求
    azuginnen
        4
    azuginnen  
       2014-10-31 14:05:36 +08:00
    本来每次寄明信片,后来每次寄的是保险箱
    azuginnen
        5
    azuginnen  
       2014-10-31 14:06:02 +08:00
    中间人相当于是邮差
    pythonee
        6
    pythonee  
    OP
       2014-10-31 15:30:12 +08:00
    @azuginnen 关键这个保险箱如果是很容易打开的呢
    pimin
        7
    pimin  
       2014-10-31 15:36:07 +08:00 via iPhone
    @pythonee 那你就又发现了一个协议级别漏洞,
    mornlight
        8
    mornlight  
       2014-10-31 15:43:51 +08:00
    还是https啊,传输的加密密钥是之前握手时确定的嘛。握手一次后,可以用很久的...
    palytoxin
        9
    palytoxin  
       2014-10-31 15:47:35 +08:00
    tls能保证不安全状况下的加密协议协商。只要保证一次加密不被窃听,剩下的可以用对称加密算法
    tls这种不对称的加密算法 消耗资源比较大
    wy315700
        10
    wy315700  
       2014-10-31 15:49:59 +08:00
    交换完密钥以后就进入加密传输阶段了啊

    只不过加密信道里传输的是HTTP内容
    pythonee
        11
    pythonee  
    OP
       2014-10-31 17:24:06 +08:00
    @mornlight 密钥是安全的,但是"后面的传输是对称加密方法"这个说法引起我的好奇
    pythonee
        12
    pythonee  
    OP
       2014-10-31 17:24:48 +08:00
    @mornlight 而且这个对称加密算法也没有说是什么样的对称加密,是AES吗
    julyclyde
        13
    julyclyde  
       2014-10-31 17:46:35 +08:00
    @pythonee 很多算法可选。不过后面确实都是对称的
    lightening
        14
    lightening  
       2014-10-31 18:04:45 +08:00 via iPhone
    你这是语文没学好……
    lightening
        15
    lightening  
       2014-10-31 18:07:04 +08:00 via iPhone
    @pythonee 保险箱的钥匙在握手时建立,别人怎么打得开?
    Smartype
        16
    Smartype  
       2014-10-31 20:37:43 +08:00
    开始的那一步是密钥协商流程,也就是把保险箱的钥匙交换一下,至于怎么保证钥匙不被别人看到呢?用数学来保证的。具体算法就是RSA或者Diffie–Hellman–Merkle。
    完成了这一不后面就是送保险箱了,当然随时可以协商换保险箱钥匙的。这样保证对称加密的安全性。
    Smartype
        17
    Smartype  
       2014-10-31 20:40:01 +08:00
    TLS这么设计是为了兼顾安全性和效率。后面的一般使用的AES对称加密很多平台都是用硬件来做的。
    20150517
        18
    20150517  
       2014-10-31 20:43:26 +08:00 via Android
    所有基于rsa的不对称加密,后继都是用对称加密,我记得书上是说rsa加密的时候好像效率太低,面对大量的数据还是要用对称算法
    20150517
        19
    20150517  
       2014-10-31 20:44:14 +08:00 via Android
    而且现在对称加密动不动就是1024或2048位的,你怎么破解法?
    Quaintjade
        20
    Quaintjade  
       2014-10-31 21:28:29 +08:00 via Android
    除了https,还有pop3s、smtps、ftps、VPN over SSL等等。协议还是原来的,只不过通过SSL/TLS运载。
    从OSI层级上说,http,ftp之类都是应用层,tls层级更低。
    wzxjohn
        21
    wzxjohn  
       2014-10-31 21:35:02 +08:00
    @lightening 其实我觉得阮老师的很多话语都是有问题的,很容易让人理解错意思。。。
    julyclyde
        22
    julyclyde  
       2014-11-02 17:40:03 +08:00
    @wzxjohn 主要是一般新人不敢打名人的脸,怕打错了,而已。其实ruanyf真的很菜
    wzxjohn
        23
    wzxjohn  
       2014-11-02 17:43:08 +08:00   ❤️ 1
    @julyclyde 嗯。。。之前有个V友问我关于ruanyf博客里面一篇文章的问题,我去一看发现那篇文章基本没有对的。。。都是错的。。。完全在误导读者。。。
    pythonee
        24
    pythonee  
    OP
       2014-11-04 14:03:16 +08:00
    @julyclyde
    @wzxjohn

    这样的吗,那你们应该指出来的嘛
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1624 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 71ms · UTC 16:57 · PVG 00:57 · LAX 08:57 · JFK 11:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.