首页 > 其他分享 >http和https

http和https

时间:2024-08-28 14:27:52浏览次数:4  
标签:加密 请求 http https 服务器 私钥 客户端

C++遍历数组的有几种方式?

answer:1、下标遍历,传统的遍历方式 2、指针遍历,数组本身也是指针,所以可以使用指针进行遍历 3、for(range-based),用于同一类型的范围数据进行遍历 4、迭代器,使用迭代器iter的函数集可以进行较快的遍历,自动回收。

http和https的区别?

answer:主要区别后置增加了安全加密,使用ssl协议进行加密,保证数据的安全,前者使用明文传输。另外访问端口也不一样,http是80,https是443,https需要使用ca证书。实质上https=http+加密+认证+完整性保护,后三个可以认为是ssl,分别代表ssl协议的私密性、身份认证和完整性

http的访问流程?

answer:1、浏览器根据域名解析对应的IP地址,DNS解析(浏览器缓存---系统缓存---路由器缓存---ISPDNS服务缓存)

      2、找到了服务器,浏览器和服务器建立TCP连接,TCP三次握手

      3、浏览器给服务器发送请求,封装请求json

      4、服务器响应返回对应的请求数据,比如数据库查询接口,返回数据库查询数据。

      5、接收到数据,界面部分进行渲染和显示

https的访问加密流程?

answer:

    1、客户端向服务器发起https请求,连接服务器的443端口

    2、服务器将非对称加密的公钥传递给客户端,用证书的形式回传给客户端

    3、客户端受到该公钥证书进行验证,有问题,停止https请求,没有问题,客户端随机生成一个私钥,clientkey,用于对称加密数据。在使用公钥对这个clientkey数据进行非对称加密。客户端发起第二次https请求

    4、服务器使用私钥进行解密,得到clientkey,使用clientkey对数据进行堆成加密

    5、将加密后的数据传递给客户端,客户端进行对称解密。完成第二次的https请求

    

 

https的加密算法?

answer:

    1、对称加密,使用相同的私钥进行加解密,安全性比较低,是和长数据进行加密

      1.1、对称加密DES

    2、非对称加密,加密和解密的过程中使用不同的秘钥,一个是公钥,对外公开,一个是私钥,仅仅加密端持有,适合少量数据进行加密。

      2.1、客户端请求使用公钥加密,服务端私钥解密

      2.2、服务端返回使用私钥加密,客户端公钥解密

      2.3、私钥和公钥可以互相推导,但是很难

    3、哈希算法

    4、数字签名,为了验证数据的完整性,使用哈希算法对数据生成摘要,然后对摘要进行私钥加密,生成数字签名,附在数据下面,发给客户端,客户端收到之后先公钥解密,然后得到摘要和自己计算出的摘要进行对比,相同则代表没发生变化

    5、CA证书,为了验证正确的交互方,不是为了保证公钥的安全性。证书用自己的私钥对服务器的公钥和相关信息进行加密,生成CA证书,服务器发送的附上证书即可。

SSL了解?

    ssl协议的私密性、身份认证和完整性。

https响应状态码?

  1、100-199:服务器接受到部分请求,需要客户端提交剩余请求

  2、200-299:表示服务器成功接受请求并完成处理过程,常用200OK

  3、300-399:为完成请求,客户端须进一步细化请求,比如请求资源移动到新的地址,常用302(页面移动),304(使用缓存资源)

  4、400-499:客户端请求存在错误。常见的404(服务器无法找到请求页面,nginx配置问题),403(请求权限不够)

  5、500-599:服务器端出现错误,常用500(请求未完成,请求接口没打开)

 

标签:加密,请求,http,https,服务器,私钥,客户端
From: https://www.cnblogs.com/sukkimy/p/17183894.html

相关文章

  • 【Shell脚本】监控 httpd 的进程数,根据监控情况做相应处理
    #!/bin/bash################################################################################################################################需求:#1.每隔10s监控httpd的进程数,若进程数大于等于500,则自动重启Apache服务,并检测服务是否重启成功#2.若未成功则需......
  • 使用Kotlin+协程+Flow+Retrofit+OkHttp搭建一套网络请求工具
    文章目录一、前言二、搭建Java工程1.打开AndroidStudio建一个Android工程2.修改该工程的build.gradle文件为Java工程,并配置如下:3.搭建一个RetrofitUtils请求工具类,这都是常规操作了,如下4.建一个NetWorkAPi作为Retrofit请求接口:5.建一个WXRepository为了和A......
  • Asp.Net Core中Typed HttpClient高级用法
    另一个常见的需求是根据不同的服务接口创建不同的HttpClient实例。为了实现这一点,ASP.NETCore提供了TypedHttpClient的支持。下面是使用TypedHttpClient的示例代码:publicinterfaceIExampleService{Task<string>GetData();}publicclassExampleService:IExampl......
  • HTTP协议头部与Keep-Alive
    一、HTTP头部字段 一)字段总结1Accept:告诉WEB服务器自己接受什么介质类型,/表示任何类型,type/*表示该类型下的所有子类型,type/sub-type。2Accept-Charset:浏览器申明自己接收的字符集Accept-Encoding:浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什......
  • asyncio + httpx异步请求板子
    AI写的asyncio+httpx异步请求板子importasyncioimporthttpximportjsonimportaiofilesfrompathlibimportPathproject_dir=Path(__file__).resolve().parent#使用代理proxy="http://username:password@ip:port"#异步并发数max_concurrency=5input_f......
  • 程序员必备的的5个刷题网站。大厂面试稳了 力扣 https://leetcode.cn
    程序员必备的的5个刷题网站。大厂面试稳了力扣https://leetcode.cn1、leetcode力扣。网址:https://leetcode.cnLeetCode是一个定位为求职的刷题网站,其中又以算法题为主。很多大厂在面试的时候,都会考算法。有空就刷一刷这里面的算法题,你的算法水平肯定会有大幅的提升,不管是求职,......
  • oracle system信息统计,​Oracle的SYSTEM和SYSAUX表空间 转载:https://blog.csdn.net
    一般情况下,业务数据应该存放在单独的数据表空间,而不应该使用系统已存在的表空间,尤其不能将业务数据保存到SYSTEM和SYSAUX表空间中,所以,DBA需要着重关注SYSTEM和SYSAUX表空间的占用情况。Oracle服务器使用SYSTEM表空间管理整个数据库。这个表空间包含系统的数据字典和关于数据库的......
  • python aiohttp创建很多线程的问题及解决例子解析
    在使用aiohttp进行异步HTTP请求时,创建大量线程可能会导致性能问题。根据搜索结果,这个问题通常与DNS查询有关,因为默认情况下,每次发送请求时aiohttp.ClientSession都会进行DNS查询,这是一个阻塞操作,会为每次查询创建一个新线程。为了解决这个问题,可以通过指定一个AsyncR......
  • HTTPS
    对称加密:发送方和接受方用同样的规则来为数据进行加密,也可以说用同样的密钥来解开密文。问题是:如何有第三方知道加密和解密规则后就很容易破解。非对称加密:用两个密钥来进行加密和解密,公开密钥是所有人都知道的密钥,私有密钥是持有方才有的密钥。一般来说私钥放在服......
  • Nond.Js基础(2)——请求响应与HTTP协议
    目录一、请求响应与HTTP协议1、创建web服务器 2、请求与响应1、req2、res3、根据不同url地址处理请求:3、HTTP协议请求报文:get类型接口:post类型接口: 响应报文:一、请求响应与HTTP协议1、创建web服务器 //引入模块consthttp=require('http');//http.creat......