介绍一下HTTPS吧?

HTTPS

  1. HTTPS概念:英文名是HTTP over SSL/TLS,HTTPS 的语法、语义仍然是 HTTP,但在 HTTP 下层的五层会话层换成了 SSL/TLS,默认端口从80调整为443

    SSL/TLS:SSL 即Secure Sockets Layer(安全套接层),由网景公司1994年开发的安全协议,处于OSI五层(会话层),TLS·即Transport Layer Security(传输层安全),它是SSL的3.1版本。

  2. 通信安全需要的四个必要特性

    1. 机密性(混合加密(对称+非对称)解决)是指对数据的“保密”,只能由可信的人访问,对其他人是不可见的秘密,HTTP没有机密性所以wireshark抓包之后能清楚的看到传输的数据。

      1. 对称加密是指加密解密使用同一把密钥,是“对称”的,只要保证了密钥的安全,那整个通信过程就可以说具有了机密性,常用的对称加密算法有AES和CHACHA20

      2. 非对称加密是指使用“公钥”加密、“私钥”解密的加密方式,公钥的信任需要通过CA颁发的证书进行认证,接收方拥有自己的私有密钥,不需要通过传输获得。比较著名的非对称加密算法是基于“整数分解”问题的RSA算法,使用两个超大素数的乘积作为生成密钥的材料,想要从公钥推算出私钥非常困难;还有基于“椭圆曲线离散对数”问题的ECC算法,使用特定的曲线方程和基点生成密钥,其子算法ECDHE用于密钥交换,ECDSA用于数字签名

      3. 混合加密是指混合使用对称加密和非对称加密的加密方式,之所以需要混合加密是因为非对称加密虽然安全但太慢了,在交换对称加密密钥阶段使用非对称加密,交换报文阶段使用对称加密。

    2. 完整性(摘要算法解决)是指数据在传输过程中没有被修改。

      摘要算法是指通过哈希函数将数据转换为固定长度的字符串,所以数据要配合摘要一起发送,为了防止数据和摘要一起被黑客修改,要保证机密性,使用密钥加密数据和摘要。

    3. 身份认证(数字签名解决)是指保证消息只能发送给可信的人。

    4. 不可否认(数字签名解决)是指不能否认已经发生过的行为。

      数字签名使用非对称加密,但是是使用私钥加密,公钥解密,考虑非对称加密效率低,我们仅加密摘要,拿到数字签名后对比原文验证即可知道对方身份是否可信。

#Java开发##学习路径#
全部评论
我一直没搞明白怎么做到的公钥加密然后用自己的私钥能解密的🤔
点赞 回复 分享
发布于 2022-05-05 11:48
之前弄网页,了解过一点,不过后来没坚持下来
点赞 回复 分享
发布于 2022-03-11 19:02

相关推荐

不愿透露姓名的神秘牛友
03-28 13:48
hory权:校招vip纯神人了,还说自己是什么师范大学的
点赞 评论 收藏
分享
03-20 12:22
门头沟学院 Java
牛客998737654号:没有hc了吧,但是我接到到后端的面试邀请
投递美团等公司7个岗位
点赞 评论 收藏
分享
评论
3
11
分享

创作者周榜

更多
牛客网
牛客企业服务