美文网首页
Https为什么安全?使用到了什么关键技术?

Https为什么安全?使用到了什么关键技术?

作者: EasonDev | 来源:发表于2017-05-04 17:02 被阅读36次

    概念
    1.对称加密
    2.非对称加密(公钥加密)
    3.消息摘要
    4.消息认证码
    5.数字签名
    6.公钥证书

    推荐先查看这篇文章再进行下文阅读:
    https://foofish.net/https-story-1.html
    这里由一个请求来解释为什么需要这些东西并对其概念做简短解释,结合这篇文章希望能更便于理解。

    流程

    这个相信大概用过或了解过的都知道,�一句话:由Client发起请求进行公钥加密发送到Server,Server使用私钥进行解密,�最后将数据同样进行公钥加密返回,Client进行私钥解密后处理业务。

    看着似乎就是那么理所应当的简单啊。我本身也是这么天真的以为的就是加个密解个密么哈哈

    好 接下来就从这个看似简单的流程来说说上面这些概念都是什么作用

    首先 流程中最明显的一环“加密”先来看看这个

    对称加密与非对称加密

    对称加密:加密解密使用的是相同密钥
    优点:速度快
    缺点:因为Client要告诉Server加密方式而攻击者在拦截后知道了加密方式也就知道了解密方式。
    非对称加密:一端进行公钥加密而另一端进行私钥解密
    优点:解决了对称加密可能被拦截破解的可能
    因为拦截者没有私钥,他无从知道怎么解密
    缺点:速度比公钥慢很多

    ok到这里加密应该有个大概的概念了,加密的事情解释差不多了,�这里提个问题,如果拦截者进行了篡改这时怎么办。这就用到了消息摘 要和消息认证码

    消息摘要消息认证码

    简单来说这个是保证数据的完整唯一性,当拦截者把消息改变后,Server进行比对发现不同就会认为这是被篡改的消息

    但是问题又来了,虽说可以保整完整性,但是拦截者可以进行伪造,拦截者伪造订单信息进行攻击你会有口说不清。�这时又怎么办呢,“数字签名”

    数字签名

    数字签名就是Client把消息哈希函数处理生成消息摘要,摘要信息使用私钥加密之后生成签名发送给Server再由Server提取进行同样的哈希处理得到再与Client发送过来的签名解密如,如果相等则证明是对应的Client发送的

    这下看着似乎都很完善了。还差最后一步就是公钥证书,他是做什么的呢,如果遭到拦截者把公钥换掉了呢,这时就需要有一个权威机构来认证也就是Certification Authority)CA。

    公钥证书

    证书中有用户的姓名组织邮箱地址等信息,还有公钥信息,并由CA提供数字签名生成公钥证书(Public-Key Certificate)PKC,简称证书。

    这就是基本的大致流程了。
    菜鸟讲解,主要是为了自己熟悉也希望这相对的白话文能帮小白理解

    相关文章

      网友评论

          本文标题:Https为什么安全?使用到了什么关键技术?

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