HTTP协议与HTTPS协议

HTTP协议

  • http协议是建立在TCP/IP协议智商应用层协议,默认端口为80,8080。
  • http协议的特点是无状态,无连接。 (不是一个长连接,只是连接的时候得到数据后就断开了)
  • http协议的请求,http协议的报文传输的是SCLL码,tcp也是ASCLL码,在TCP/IP协议之上,主要分为三部分:请求行、请求头和请求体。
    请求行:
    GET请求和POST 申请数据传输的两种申请方式
    第一行:包含三个信息:请求方式,url和http协议版本
    区别:
    1、url可见性:
    get,参数url可见;
    post,url参数不可见 不代表没有参数 可以抓包去看到这个参数
    2、数据传输上:
    get,通过拼接url进行传递参数;
    post,通过body体传输参数
    3、缓存性:
    get请求是可以缓存的
    post请求不可以缓存
    4、后退页面的反应
    get请求页面后退时,不产生影响
    post请求页面后退时,会重新提交请求
    5、传输数据的大小
    get一般传输数据大小不超过2k-4k(根据浏览器不同,限制不一样,但相差不大)
    post请求传输数据的大小根据php.ini 配置文件设定,也可以无限大。
    6、安全性
    这个也是最不好分析的,原则上post肯定要比get安全,毕竟传输参数时url不可见,但也挡不住部分人闲的没事在那抓包玩。安全性个人觉得是没多大区别的,防君子不防小人就是这个道理。对传递的参数进行加密,其实都一样。
    本质区别:
    GET产生一个TCP数据包;POST产生两个TCP数据包。
    对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
    请求头:
    浏览器向服务器发送一些状态数据,标识数据等等
    一个信息一行,包括信息名:信息值 按行分隔
    请求主体
    请求代理端项服务器端,发送的请求数据!
    典型的就是POST形式发送的表单数据!
    get请求,没有请求主体部分!get数据是在请求行中的url上进行传递的!
    请求主体
    请求代理端项服务器端,发送的请求数据!
    典型的就是POST形式发送的表单数据!
    get请求,没有请求主体部分!get数据是在请求行中的url上进行传递的!
  • http协议的响应
    响应包括:响应行、响应头、响应体
    响应行
    响应行包括:协议版本、状态码、状态消息
    典型的:
    1xx:消息
    2xx:成功
    3xx:请求被重定向
    4xx:浏览器端错误
    5xx:服务器端错误
    典型:
    500 服务器内部错误
    404 请求的页面没有找到
    403 没有权限
    200 请求成功
    响应头
    Content-Type: text/html 内容类型,告知浏览器接下来发送的响应主体数据是什么格式!
    Content-Length: 响应主体数据的长度!
    Date: 响应的时间。GMT时间!
    响应主体
    主要的响应数据,在浏览器的主体区域显示的数据都是相应主体!

HTTPS协议及密码学基础

  • http协议是明文传输的,因此很容易被截取和解析,泄漏个人数据。https协议是在http和tcp之间多添加了一层,进行身份验证和数据加密。

  • 明文: 明文指的是未被加密过的原始数据。
    密文:明文被某种加密算法加密之后,会变成密文,从而确保原始数据的安全。密文也可以被解密,得到原始的明文。
    密钥:密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。密钥分为对称密钥与非对称密钥,分别应用在对称加密和非对称加密上。

  • 对称加密:对称加密又叫做私钥加密,即信息的发送方和接收方使用同一个密钥去加密和解密数据。对称加密的特点是算法公开、加密和解密速度快,适合于对大数据量进行加密,常见的对称加密算法有DES、3DES、TDEA、Blowfish、RC5和IDEA。
    其加密过程中的私钥与解密过程中用到的私钥是同一个密钥,这也是称加密之所以称之为“对称”的原因。由于对称加密的算法是公开的,所以一旦私钥被泄露,那么密文就很容易被破解,所以对称加密的缺点是密钥安全管理困难。

  • 非对称加密:非对称加密也叫做公钥加密。非对称加密与对称加密相比,其安全性更好。对称加密的通信双方使用相同的密钥,如果一方的密钥遭泄露,那么整个通信就会被破解。而非对称加密使用一对密钥,即公钥和私钥,且二者成对出现。私钥被自己保存,不能对外泄露。公钥指的是公共的密钥,任何人都可以获得该密钥。用公钥或私钥中的任何一个进行加密,用另一个进行解密。
    由于加密和解密使用了两个不同的密钥,这就是非对称加密“非对称”的原因。
    非对称加密的缺点是加密和解密花费时间长、速度慢,只适合对少量数据进行加密。
    在非对称加密中使用的主要算法有:RSA、Elgamal、Rabin、D-H、ECC(椭圆曲线加密算法)等。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值