Https加密方式

Https加密方式Https加密介绍加密方式两者区别Https加密的选择对称加密弊端非对称加密弊端Https加密总结Https加密介绍Http直接通过明文在浏览器和服务器之间传递消息,容易被监听抓取到通信内容。Https采用对称加密和非对称加密结合的方式来进行通信。Https不是应用层的新协议,而是Http通信接口用SSL和TLS来加强加密和认证机制…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

Https加密

介绍

Http直接通过明文在浏览器和服务器之间传递消息,容易被监听抓取到通信内容。
Https采用对称加密和非对称加密结合的方式来进行通信。
Https不是应用层的新协议,而是Http通信接口用SSL和TLS来加强加密和认证机制。

加密方式

  • 对称加密:加密和解密都是同一个密匙。
  • 非对称加密:密钥成对出现,分为公钥和私钥,公钥加密需要私钥解密,私钥加密需要公钥解密。

两者区别

  • 对称加密速度快,非对称加密速度慢。
  • 对称加密要将密钥暴露,和明文传输没区别。
  • 非对称加密将公钥暴露,供客户端加密,服务端使用私钥解密。

Https加密的选择

对称加密弊端

对称加密速度快,适合Https加密算法,但是服务器和浏览器之间传递密钥的过程被人监听,相当明文传输。

非对称加密弊端

服务端只将公钥暴露,浏览器使用公钥对消息进行非对称加密,服务端用私钥解密。但是服务端向浏览器回复的时候,只能用私钥进行加密,浏览器只能用公钥解密。但是:公钥是所有人都知道的,所有人都可以读取服务端回复的消息来进行解密,所以解决不了服务端向浏览器传递消息

Https加密

对称加密和非对称加密结合方式

  1. 浏览器使用Https的URL访问服务器,建立SSL链接。
  2. 服务器收到SSL链接,发送非对称加密的公钥A返回给浏览器
  3. 浏览器生成随机数,作为对称加密的密钥B
  4. 浏览器使用公钥A,对自己生成的密钥B进行加密,得到密钥C
  5. 浏览器将密钥C,发送给服务器。
  6. 服务器用私钥D对接受的密钥C进行解密,得到对称加密钥B。
  7. 浏览器和服务器之间可以用密钥B作为对称加密密钥进行通信。

总结

这样浏览器和服务器就共享一个对称加密密钥B,重要的是不会被拦截到。只在传输密钥B的时候进行了一次非对称加密,之后就用对称加密进行传送数据。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/201137.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 增加layer—待完成[通俗易懂]

    增加layer—待完成

    2022年4月3日
    45
  • deb文件安装「建议收藏」

    deb文件安装「建议收藏」使用dpkg命令安装.deb文件使用-i参数。sudodpkg-i./google-chrome-stable_current_amd64.deb如果遇到缺少依赖项的任何问题,则必须运行以下apt命令对其进行修复:sudoaptinstall-f要通过dpkg命令删除软件包,我们将使用-r以下示例中的参数:sudodpkg-rGoogle-chrome-stable使用APT命令安装.deb文件使用aptinstall。sudoaptinstall./goo

    2022年5月27日
    45
  • 2019 Python最新面试题及答案16道题

    在Python相关的工作岗位面试中,基础语法是必考的一个部分,它考察求职者对Python语言的最基本掌握情况;其次是数据库相关的问题,如查询,修改,插入数据等,数据库所占的比重也很大,不容小觑。

    2022年1月18日
    73
  • macbookpro安装homebrew_虚拟机安装mac流畅吗

    macbookpro安装homebrew_虚拟机安装mac流畅吗Homebrew简称brew,Homebrew是一款MacOS平台下的软件包管理工具,很方便帮助我们实现安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,Homebrew官网中清楚介绍了安装和基本使用安装与卸载安装1.打开mac终端将以下命令粘贴至终端。/usr/bin/ruby-e”$(curl-fsSLhttps://…

    2025年8月6日
    6
  • es6类型转换_es6转换es5

    es6类型转换_es6转换es5>虽然我觉得没什么用,但是记一下吧[TOC]####1.新建项目项目目录结构:![](https://box.kancloud.cn/1e80da2d1c4c01681a65023089a9f18a_229x108.png)####2.src中的**index.js**为你写的es6语法代码我们例子写:“`letb=1;console.log(b);constname=”…

    2022年9月24日
    3
  • ThinkPHP函数详解:L方法

    ThinkPHP函数详解:L方法

    2021年10月9日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号