HTTP向HTTPS演化的过程

Nginx多域名,多证书,多服务配置,实用版 现在有一个项目,有测试环境和正式环境,已经为两个环境各自申请到域名和ssl证书正式环境xxx.com和和测试环境和和目前想要通过Nginx他们配置到同一台服务器上,要求如下实现http重定向到https添加域名和证书目前已经在服务器上将nginx安装到,并且已经为nginx创建了系统命令目录主要内容如下- conf- sbin- nginxnginx已经编译了ssl相关依赖。 阅读详情

微信公众号:Java患者
专注Java领域技术分享

HTTP的访问形式

        HTTP它出现的比较早,现在已经有HTTP/2.0了,但是使用最普遍的还是HTTP/1.1。

        当我们访问百度的时候,浏览器发送一个请求,通过网址进行访问,如“http://baidu.com”,前面部分是协议,后面就是我们的域名,他们是构成我们整个url地址中最重要的2部分。这个请求首先会到达我们的DNS,通过DNS解析成我们要访问的外网ip,浏览器拿到这个ip后会发起针对这个ip的请求,并且被访问的服务器会跟根据请求的端口号辨认出要提供什么的服务。如果url没有携带资源地址,默认会到达服务的根目录下的index.html,浏览器拿到这个页面后会进行渲染。

HTTP是无状态的

        HTTP协议是基于TCP之上的协议,定义了我们客户端和服务端文件的传输方式。如在一个HTTP请求过程,会带有request和response,他们都有一定的规范。HTTP是一个无状态的,每次请求的处理是独立的,不依赖其他请求,我们通过服务端技术Cookie和Session技术实现它的状态,从而满足我们业务场景的请求。

HTTP的缺陷

        HtTP很多的缺陷,如通过HTTP进行通信时候,请求信息request和响应信息response是可以被拦截掉的,如果是被黑客拿到这些信息,他们就可以进行很多操作,本质来说它的通信也是明文传输。

HTTP与HTTPS的区别

        HTTS是TCP与HTTP之间加一个SSL。想要了解HTTP和HTTPS的区别,我们最重要的还是要去了解什么是SSL。我们现在使用的版本大多是TLS。

什么是SSL

        SSL(Secure Sockets Layer 安全套接层),是为网络通信提供安全及数据完整性的一种安全协议。SSL在传输层与应用层之间对网络连接进行加密,防止数据传输过程中被篡改。‍我们现在使用的版本大多是TLS,他是SSL续任者。

对称加密与非对称加密

  • 对称加密:加密和解密都是使用到同一个密钥。它存在一个问题,假设客户端传输一个密文,并把密钥也携带过去,那么在传输过程中,只要传输的密钥被拿到,那么对于密文来说一样是透明的。

  • 非对称加密:有公钥和私钥的概念,通过公钥加密的数据可以用私钥解密,通过私钥加密的数据可以用公钥解密。每一个客户端都有自己的公钥,而私钥放在服务端上,这样它可以解决我们对称加密存在的问题。

协商密钥过程

非对称加密中,我们需要一个协商密钥过程,让每一个客户端拿到不同的公钥,并且保证在交互的情况下才知道用什么算法。

在传统的模式下存在一个问题,客户端向服务端发起一个请求公钥的请求,在返回公钥给客户端的过程中,公钥被中间人篡改了,后续的客户端每一次请求都会用这个假的公钥加密,而中间人可以拦截到这个请求,解密后并篡改数据,用真的公钥加密再发送给服务端。

因为协商的过程一定存在,那么怎么去解决问题呢?我们不可能把公钥直接传给客户端,而是将加密后的公钥传给客户端,这样公钥就不被其他人篡改,那么又要让客户端知道去如何解密被加密后的公钥,这是一个循环的问题。

为了解决上述的问题,引入了第三方机构。服务端发给客户端的公钥先使用第三方机构的公钥加密后发给第三方机构,第三方机构用它自己的私钥解密在一次加密,并返回给服务器,这就是数字证书。

由于客户端拿到的数据证书都可以使用第三方机构的公钥进行解密,那么如果中间人以正规的渠道获取属于它的数字证书,这个时候他可以替换服务端给客户端的数字证书,对于客户端来说还是不知道真假。

HTTPS的处理方式

我们协商里,客户端如何去识别数字证书的合法性?我们的数据证书必须要有一些信息,让客户端知道这个数字证书是对于服务端的,而不中间人。客户端可以去请求第三方辨别。

但是通常情况下客户端可以内置一些第三机构的数字证书和公钥(在设置里面),利用这些可以去验证发服务端过来的数据证书去识别数字证书的合法性。

如果验通过了,浏览器得到公钥了,这个公钥后会加密一个浏览器随机生成的数据作为对称加密,并传给服务端。服务器使用私钥解密,根据3个随机数生成会话密钥,返回给浏览器。

这就是我们客户端对服务端验证的过程,它用到了对称加密,非对称加密,随机数(生成会话密钥)。由于使用非对称加密在数据加密解密过程需要消耗一定时间,降低了数据传输效率。所以在交换密钥环节使用非对称加密方式,之后的建立通信交换报文阶段则使用对称加密方式。这就是HTTPS的原理。

查看

Https原理详解(http和https对比) 缘起 随着互联网的高速发展,安全问题也日益严重,传统的http已经不能满足安全方面的需求。各大搜索引擎也默认给http的网站降权,各大浏览器也会在用户访问网站的时候提示此网站使用的是http,是一个不安全的网站。如此下来,http则呼之欲出。这里一chrome为例,可以看到http的网站会提示不安全 而如果是https的网站则会提示安全 那么https相对http究竟是怎么做到安全的呢?他的原... 阅读详情

相关推荐

【编程实践】详解 HTTP、HTTPS 和 HTTP2 的区别和联系、演化史

你知道 HTTP 和 HTTPS 的区别吗?如果你想了解更多的计算机网络基础知识,那么你可能会想弄清楚这些概念。在这篇文章中,我将尽量用通俗易懂的方式来向读者讲述 HTTP 的知识。我建议大家在学习 HTTP 知识的时候,利用 Chrome 开发者工具来做实践,这可以帮助我们理解得更深刻。起源:OSI 七层网络协议HTTP 是基于文本的(所有的通信都以纯文本的形式进行)以及无状态的(当前通信状态不会发现以前的通信状态),该特性极大方便了在www上浏览网页的人。

AI天才研究院 1万+

Nginx实现多域名证书HTTPS

首先需要两个域名,获取到CA证书,两个域名就得到两套证书,实现一台服务器,两个域名。

gdvfs12的博客 2202

3D Slicer中文教程(三)—数据加载及保存方式

1.打开数据与保存数据 (1)打开数据 ——可以将数据拖拽到3D Slicer应用窗口或者从菜单栏工具栏打开。 ——多种方式加载大量数据。 有关DICOM数据,请参阅DICOM模块文档。 对于几乎所有其他(包括场景),您可以使用添加数据对话框。 有关支持的数据格式的列表,请参阅此列表。 请注意,仅部分支持列出的某些格式。 ——对于一些更复杂的格式(特别是DWI),建议首先使用DICOM到n...

weixin_33676492的博客 5533

如何部署微信小程序,并且利用Nginx配置https访问

首先进入https://mp.weixin.qq.com/网址,然后注册小程序类型账号,完成注册后,打开开发模块下的开发管理,开发管理下面存在开发设置,往下翻可以看到业务域名配置,然后把我们的域名添加进去等待审核通过即可。首先要完成项目在服务器上面的部署,对于后端服务的部署,只需要把项目打成jar包,然后执行就可以了,对于前端服务,我们把前端打包后的代码放到对应位置,然后配置nginx配置文件,然后转发到对应登录页即可。//配置监听端口,指向对应前端服务登录页,/BIServer用来转向后端访问地址。

TELOBE的博客 8510

Social-Auto-Upload实战:如何用Python+Playwright实现抖音/B站/小红书一键三连发?

本文详细介绍了如何使用Python和Playwright框架构建Social-Auto-Upload自动化上传工具,实现抖音、B站、小红书等平台的一键多发布。通过模拟真实用户操作和Cookie管理技术,该工具能有效解决内容创作者跨平台发布的重复劳动问题,提升工作效率。

day7的博客 1399

AI赋能运筹优化:从参数生成到智能求解的工程实践

运筹学通过线性规划、整数规划等数学模型,为供应链、物流、生产排程等复杂决策问题寻找最优解,其核心价值在于提升资源利用效率与决策科学性。传统方法依赖精确的输入参数与专家经验,面临数据不准、建模门槛高、求解调优难等挑战。人工智能技术的引入,正从原理层面重塑这一流程:通过深度学习模型生成更贴合现实的动态参数(如需求分布、行驶时间),利用自然语言处理降低建模门槛,并借助强化学习对求解器进行智能参数调优。这种AI与运筹学的融合,在工程实践中显著提升了优化系统的自适应能力与求解效率,使其在应对实时交通、柔性生产调度等动

weixin_26913055的博客 595

80端口默认转到443端口及443端口配置

server {     listen       80;     server_name  www.cookie.com;     charset utf-8;      rewrite ^(.*) https://$server_name$1 permanent;        location / {         root   /www/cookie.com/www

Cookie_1030的专栏 1万+

Windows沙盒神器Sandboxie Plus保姆级教程:从安装到实战测试可疑软件

本文详细介绍了Windows沙盒神器Sandboxie Plus的安装、配置与实战应用,帮助用户安全测试可疑软件。从系统要求、安装步骤到核心功能如多沙盒管理、文件共享和快照恢复,全面解析了这款轻量级沙盒工具的优势与使用技巧,特别适合需要隔离运行未知程序的用户。

weixin_29323049的博客 1152

如何使用Nginx来实现企业微信域名校验

企业微信域名校验Nginx配置

一枚自我成长的程序猿 6078

Matlab信号处理

Matlab信号处理 需要安装的APP: Signal Analyzer app:提供一个可以在时域和频域可视化、测量、分析和比较信号的工具; Filter Builder和Filter Designer app:可以很方便通过下拉菜单和填写参数的方式来设计和分析数字滤波器; 对于小波分析,Matlab提供了: 1.Wavelet Signal Denoise app:利用离散小波变换对信号去噪; 2.Signal Multiresolution Analyzer app:对信号进行多分辨率的分析和可视化

Huichin_Min的博客 4397

项目管理-(补充)七种基本质量工具

七种基本质量工具,用于PDCA循环的架构内 解决与质量相关的问题,分为老七工具和新七工具。 1)老七种:刘英只点劣质茶(流程图、因果图、直方图、散点图、帕累托图、控制图、核查表)2)新七种:锯树联亲测动优(矩阵图、树形图、关联图、亲和图、过程决策程序图、活动网络图、优先矩阵)

weixin_42081167的博客 4602

http与https

前言 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 近两年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行 HTTPS, 国内外的大型互联网公司很多也都已经启用了全站 HTTPS,这...

weixin_30783913的博客 91

内存预取黑科技:__builtin_prefetch在数据库和游戏开发中的高阶用法

本文深入探讨了GCC内置函数`__builtin_prefetch`在数据库和游戏开发中的高阶应用。通过LevelDB的SSTable文件读取优化和UE5引擎场景数据流式加载的实战案例,详细解析了预取参数调优的艺术,并借助perf工具量化分析了不同策略的性能提升效果。文章还介绍了与`__builtin_expect`等内置函数的协同优化技巧,帮助开发者最大化缓存命中率。

weixin_29019241的博客 414

HTTPS协议

HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 近两年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行 HTTPS, 国内外的大型互联网公司很多也都已经启用了全站 HTTPS,这也是未来...

lr199966的博客 274

AUTOSAR知识点:PDUR(PDU Router)基础知识

通过定义路由表和实现相应的路由和缓冲逻辑,PDUR能够确保PDU在不同ECU之间的可靠传输。在上述示例中,我们定义了一个简单的PDUR路由表,其中列出了源ECU和目标ECU之间的映射关系。当收到来自源ECU的PDU时,PDUR模块会根据路由表查找目标ECU,并将PDU传输到相应的目标ECU。PDUR的主要功能是将接收到的PDU从一个ECU路由到另一个ECU,并确保数据的正确传输。需要注意的是,上述示例是一个简化的实现,实际的PDUR模块可能包含更复杂的功能和逻辑。

EcmFsharp的博客 1156

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

HTTPS详解

前言 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 近两年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行 HTTPS, 国内外的大型互联网公司很多也都已经启用了全站 HT...

ct_bao的博客 324

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HTTPS 基本原理

HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。近些年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行 HTTPS, 国内外的大型互联网公司很多也都已经启用了全站 HTTPS,这也是未来互联网发展的趋势。

宇博士的博客 1143

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

理解Https

之前的文章讲golang webSocket编程的文章中提到过Http协议的概念,通过之前的了解我们也知道Http协议其实就是基于传输层的TCP协议和网络层的IP协议实现的一个协议,所以他拥有TCP/IP的所有特性。也正是因为它使用TCP/IP协议,导致它会有以下问题: 通信使用明文,通信内容有可能会被窃听 不验证通信方的身份,有可能遭遇伪装 通信内容可能遭到篡改 1. HTTP存在的风险 ...

卓立的博客 409

HTTPS系列干货(一)

转自:https://zhuanlan.zhihu.com/p/27395037 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 近两年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行...

lms的专栏 239

HTTPS超文本传输安全协议

1.什么是HTTPS HTTPS = HTTP+ SSL HTTPS是对HTTP的安全强化,在HTTP的基础上引入了加密和认证过程。通过加密和认证构建一条安全的传输通道。所以HTTPS 可以看成是:在安全通道内,对数据进行对称加密后传输。这样即使黑客打破了安全通道,还有一层数据加密。极大的保障了数据通信的安全性。 2.HTTPS 的演化 我们将从HTTP的不安全方面着手,通过三个场景的阐述,来说明...

u010304442的博客 1246

HTTPS系列笔记记录(一):HTTPS 和SSL/TLS协议原理详解

前言: HTTPS(也称为HTTP over Transport Layer Security(TLS), HTTP over SSL,和HTTP Secure)是一种通过计算机网络进 行安全通信的通信协议,广泛应用于互联网,比喻Google,百度......。简单的来说HTTPS是HTTP的升级安全版。 作用: HTTPS提供了与正在通信的网站和相关联的Web服务器的身份

_William_Cheung的博客 1744

Web基础与HTTP协议

Web基础与HTTP协议

Hard work results, technology is willing to dream 748

从HTTP到HTTPS迁移,你的Cookie安全设置‘踩坑’了吗?聊聊Set-Cookie头被Block的那些事

本文深入解析了从HTTP到HTTPS迁移过程中Set-Cookie头被拦截的常见问题,探讨了Secure属性的关键作用及配置陷阱。通过实际案例和技术方案,帮助开发者避免Cookie安全设置中的常见错误,确保协议升级过程中的会话连续性。

weixin_30614109的博客 344

linux 允许ssl采用中强度加密_彻底搞清HTTPS安全通讯之SSL/TLS加密协议

一、 简介SSL(Secure Socket Layer 安全套接层),由网景在20世纪90年代开发的安全协议;1995年Netscape发布SSL v2.01996年Netscape发布SSL v3.01999年 IETF(Internet工程任务组)发布TLS v1.0,用于替代SSL v3.02006年 发布TLS v1.12008年 发布TLS v1.22018年 发布TLS v1.3至2...

weixin_39885067的博客 620

服务器加密算法

全称:Open Secure Sockets Layer(开放安全套接字层)对称加密算法(AES、DES等)非对称加密算法(RSA、ECC等)哈希算法(SHA系列、MD5等)消息认证码(HMAC)数字签名和证书处理随机数生成// 指向哈希算法的指针// 算法特定的数据// 公钥上下文(用于签名)

m0_73821826的博客 524
上一篇: 我也想从零开始了解一下JVM虚拟机
下一篇: java中将maven的源码打包到本地成source.jar
新时代Java农民工
博客等级 码龄7年 16粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值