精华内容
下载资源
问答
  • HTTPS协议

    2016-09-13 21:16:03
    保存用户的信息安全可以https协议。 HTTPS是以安全为目标的HTTP...ssl已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。 ssl协议分为 SSL记录协议它建立在可靠的传输协议(如TCP)之上,为高

    保存用户的信息安全可以用https协议。


    HTTPS是以安全为目标的HTTP通道.,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL.

    什么是ssl?

    SSL及其TLS是为网络通信提供安全及数据完整性的一种安全协议.
    ssl已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。
    ssl协议分为
    SSL记录协议它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。
    SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
    ssl的工作流程
    1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;
    2)服务器根据客户的信息确定是否需要生成新的主密钥
    3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;
    4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。


    https作用:
    一种是建立一个信息安全通道,来保证数据传输的安全;
    另一种就是确认网站的真实性,凡是使用了 https 的网站,都可以通过点击浏览器地址栏的锁头标志来查看网站认证之后的真实信息,也可以通过 CA 机构颁发的安全签章来查询 。

    https与http之间的区别
    超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密.
    https协议需要到ca申请证书.
    http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
    http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
    http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
    第一次打开网页时https协议会比http协议慢一点,因为https协议读取和验证ssl证书的时间
    https是可以缓冲的

    展开全文
  • CypherPoker.JS是一个完整的,白标签,对等扑克平台,它集成了灵活且高度可定制的Web /桌面游戏客户端,强大的P2P通讯功能,具有数据库集成和可扩展API服务的帐户管理系统,自动加密货币和钱包功能等等。 开源软件...
  • Web总结(一)

    2019-06-25 08:37:05
    1、什么Web? Java Web,是Java技术来解决相关web互联网领域的技术总和。 web包括:web服务器和web客户端两部分,主要是为了实现网络交互。 Web系统应用的是B/S,是一种浏览器服务器模型,主要应用的协议是HTTP...

    1、什么是Web?
    Java Web,是用Java技术来解决相关web互联网领域的技术总和。
    web包括:web服务器和web客户端两部分,主要是为了实现网络交互。

    Web系统应用的是B/S,是一种浏览器服务器模型,主要应用的协议是HTTP协议和HTTPS协议。HTTPS协议相比于HTTP只是多了一层加密的过程。
    (HTTP协议属于应用层协议)

    2、Web系统的消息传递过程:(应用的是TCP的三次握手和四次挥手)
    (1)tcp的三次握手:
    1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。
    (2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。
    (3)第三次握手:客户端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,客户端A和服务器B进入ESTABLISHED状态,完成三次握手。
    完成三次握手,客户端与服务器开始传送数据。

    (2)为什么是三次握手?
    防止已经失效的报文段再次回到本次连接当中
    syn洪攻击
    具体原因:
    在这里插入图片描述

    (3)tcp的四次挥手:
    第一次挥手:
    客户端发送一个FIN=M,用来关闭客户端到服务器端的数据传送,客户端进入FIN_WAIT_1状态。意思是说"我客户端没有数据要发给你了",但是如果你服务器端还有数据没有发送完成,则不必急着关闭连接,可以继续发送数据。
    第二次挥手:
    服务器端收到FIN后,先发送ack=M+1,告诉客户端,你的请求我收到了,但是我还没准备好,请继续你等我的消息。这个时候客户端就进入FIN_WAIT_2 状态,继续等待服务器端的FIN报文。
    第三次挥手:
    当服务器端确定数据已发送完成,则向客户端发送FIN=N报文,告诉客户端,好了,我这边数据发完了,准备好关闭连接了。服务器端进入LAST_ACK状态。
    第四次挥手:
    客户端收到FIN=N报文后,就知道可以关闭连接了,但是他还是不相信网络,怕服务器端不知道要关闭,所以发送ack=N+1后进入TIME_WAIT状态,如果Server端没有收到ACK则可以重传。服务器端收到ACK后,就知道可以断开连接了。客户端等待了2MSL后依然没有收到回复,则证明服务器端已正常关闭,那好,我客户端也可以关闭连接了。最终完成了四次握手。

    (4)为什么是四次挥手?
    在这里插入图片描述

    3、DNS协议工作过程
    下面以域名为m.xyz.com的主机欲通过另一个主机的域名y.abc.com的IP地址为 例,简述DNS协议过程。
    主机m.xyz.com先向其本地服务器dns.xyz.com进行递归查询。
    本地域名服务器先查询高速缓存,如果不久前已经查询过域名y.abc.com的IP,那么本地域名服务器就不必向根域名服务器查询,而是直接把高速缓存中存放的上次查询的结果(即y.abc.com的IP地址)告诉用户。
    本地域名服务器采用迭代查询。他先向一个根域名服务器查询。
    根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器dns.com的IP地址。
    本地域名服务器向顶级域名服务器dns.com进行查询。
    顶级域名服务器dns.com告诉本地域名服务器,下一次应查询的权限域名服务器dns.abc.com的IP地址。
    本地域名服务器向权限域名服务器dns.abc.com进行查询。
    权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的ip地址。
    本地域名服务器最后把查询的结果告诉主机m.xyz.com

    4、http协议过程
    (1)浏览器内输入一个网址,然后回车
    (2)对网址 根据DNS 域名解析协议进行IP地址、port端口号分析
    (3)建立连接 TCP的三次握手
    (4)发送请求(客户端向服务器)
    (5)服务器收到请求,并且做出处理,把网址页面的信息拿到
    (6)服务器发送响应给浏览器,把网址的界面信息发送给浏览器
    (7)浏览器解析接收到的响应
    然后做出相应处理 根据界面信息展示界面
    (8)断开连接 tcp的四次挥手过程

    5、http1.1 http1.0 二者区别
    (1)短链接 —》 长连接
    短连接指的是:一次请求响应结束之后,就会断开连接
    长连接:一次请求响应之后会维护这个连接一段时间
    connection:keep-alive
    keep-alive:time
    tcp长连接:
    保活计时器,netty keepalive
    2个小时之后如果 c 和 s之间没有消息传送的话
    就会发送探测报文(不携带任何数据)。如果连接还存在,s能够收到
    就回复一个报文。 心跳包

    http长连接:
          基于TCP长连接,它就是让tcp的链接维持长一些。不让服务器在作出回应之后立马发送FIN去断开连接
    

    (2)content-length(解决了区分第一次第二次的状态)
    客户端需要告诉服务哪一部分是第一发送的请求,哪一部分是第二次
    (3)100 continue 状态码
    客户端需要发送一段很长很长的请求,就需要在请求行的版本协议号之后加上100 continue,
    告诉服务器,服务器就会在消息接收完之后再去判断是否需要关闭连接。
    目的:节省资源 如果没有的话就会出现反复建立连接的过程

    6、发送请求的时候发送的是怎样的请求?
    比如:分析http协议的处理过程
    以http请求报文为例,分为下面三类:
    (1)请求行
    请求方法:get:没有请求体 post:有请求体
    (2)请求头部
    包含的是我们这次请求的一些基本信息
    (3)空行
    /r/n
    7、get和post的区别?
    (1)get:没有请求体 post:有请求体
    (2)get把能够确定它所请求的信息都放在了url里
    而post 它可以把一部分信息放在body里
    浏览器会对get请求url有限制 也就是对请求内容有限制
    post
    (3)get 编码形式单一,post支持多种编码形式
    (4)数据缓存 和 浏览器的设置有关
    。。。。。。(还有很多)

    8、请求头部的含义?(http)
    Accept:告诉服务器,客户端支持的数据类型。

    Accept-Charset:告诉服务器,客户端采用的编码。

    Accept-Encoding:告诉服务器,客户机支持的数据压缩格式。

    Accept-Language:告诉服务器,客户机的语言环境。

    Host:客户机通过这个头告诉服务器,想访问的主机名。

    If-Modified-Since:客户机通过这个头告诉服务器,资源的缓存时间。

    Referer:客户机通过这个头告诉服务器,它是从哪个资源来访问服务器的。(一般用于防盗链)

    User-Agent:客户机通过这个头告诉服务器,客户机的软件环境。

    Cookie:客户机通过这个头告诉服务器,可以向服务器带数据。

    Connection:客户机通过这个头告诉服务器,请求完后是关闭还是保持链接。

    Date:客户机通过这个头告诉服务器,客户机当前请求时间。

    9、响应头部的含义?(http)
    Location:这个头配合302状态码使用,告诉用户端找谁。
    Server:服务器通过这个头,告诉浏览器服务器的类型
    Content-Encoding:服务器通过这个头,告诉浏览器数据采用的压缩格式。
    Content-Length:服务器通过这个头,告诉浏览器回送数据的长度。
    Content-Language:服务器通过这个头,告诉服务器的语言环境。
    Content-Type:服务器通过这个头,回送数据的类型
    Last-Modified:服务器通过这个头,告诉浏览器当前资源的缓存时间。
    Refresh:服务器通过这个头,告诉浏览器隔多长时间刷新一次。
    Content-Disposition:服务器通过这个头,告诉浏览器以下载的方式打开数据。
    Transfer-Encoding:服务器通过这个头,告诉浏览器数据的传送格式。
    ETag:与缓存相关的头。
    Expires:服务器通过这个头,告诉浏览器把回送的数据缓存多长时间。-1或0不缓存。
    Cache-Control和Pragma:服务器通过这个头,也可以控制浏览器不缓存数据。
    Connection:服务器通过这个头,响应完是保持链接还是关闭链接。
    Date:告诉客户机,返回响应的时间。

    10、web服务器
    作用:和客户端建立连接 tcp socket 完成建立连接 sc
    (1)接受请求 sc
    (2)解析请求 读 文件操作 一行一行读出来
    (3)处理请求 逻辑处理
    (4)响应请求 文件操作 写到一个文件里 借助scoket发送

    11、servlet 生命周期:
    (1)如果是第一次请求会先去实例化servlet对象,会运行运行方法init(跟构造方法一样)
    (2)响应客户端请求,调用service()----》判断到底是get post head put
    选择doGet doPost
    (3)调用destory()方法 服务期退出时回调用这个方法

    展开全文
  • HTTP和HTTPS协议

    2019-03-04 17:46:22
    1、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。 2、http和https使用的是完全不同的连接方式,的端口也不一样,前者是80,后者是443。 3、http的连接很简单,是无状态的;...

    网址(域名)就是IP地址的别名,就是为了能够方便客户端与服务器端的交互。

    WEB服务存在http和https两种通信方式,两种通信方式有什么区别:

    1、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

    2、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

    3、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

    4、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

    HTTPS的加密过程

    HTTPS顾名思义,就是http加上ssl,首先先介绍http通信过程:

    http:client hello和server hello在通讯的过程中,以明文的形式进行传输,采用wireshark抓包的效果如下图:

    HTTP的确是使用TCP建立连接的。TCP虽然可靠,但是却不安全,从上图就可以看出来,信息完全是暴露在外面的,很容易被别人得到,最关键的是别人可以劫持和篡改信息。

     

    为了保护信息,可以请求信息的时候采用了TLS加密,如果没有秘钥是无法解析传输的是什么信息的。信息通信采用http是不安全的,存在信息劫持、篡改的风险,https是加密传输,是安全的通信,对于加密传输存在对称加密和非对称加密,对于https加密的过程,采用对称加密进行通信存在秘钥协商过程的不安全性,因此我们采用了非对称加密算法解决了对协商过程的加密,因此https是集对称加密和非对称加密为一体的加密过程:

                               

    但是前提是两个人都有公钥的情况下才可以,这时又遇到新问题了,如何让A、B客户端安全地得到公钥

    client获取公钥最最直接的方法是服务器端server将公钥发送给每一个client用户,但这个时候就出现了公钥被劫持的问题, 那就需要用到终极武器了:SSL 证书(需要购买)和CA机构

                           

     

     

     

     

    展开全文
  • HTTP协议之基本认证

    2015-12-22 13:53:18
    http协议是无状态的, 浏览器和web服务器之间可以通过cookie来... 桌面应用程序也通过HTTP协议Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"BASE64算法加密后的字符串放在http req

    http协议是无状态的, 浏览器和web服务器之间可以通过cookie来身份识别。 桌面应用程序(比如新浪桌面客户端, skydrive客户端)跟Web服务器之间是如何身份识别呢?

      什么是HTTP基本认证

      桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64算法加密后的字符串放在http request 中的header Authorization中发送给服务端, 这种方式叫HTTP基本认证(Basic Authentication)

      当浏览器访问使用基本认证的网站的时候, 浏览器会提示你输入用户名和密码,如下图


      假如用户名密码错误的话, 服务器会返回401,如下图


      HTTP基本认证的过程

      第一步:  客户端发送http request 给服务器, 

      第二步:  因为request中没有包含Authorization header,  服务器会返回一个401 Unauthozied给客户端,并且在Response的 header "WWW-Authenticate" 中添加信息。


      第三步:客户端把用户名和密码用BASE64加密后,放在Authorization header中发送给服务器, 认证成功。

      第四步:服务器将Authorization header中的用户名密码取出,进行验证, 如果验证通过,将根据请求,发送资源给客户端


      使用Fiddler Inspectors 下的Auth 选项卡,可以很方便的看到用户名和密码:


      HTTP基本认证的优点

      HTTP基本认证,简单明了。Rest API 就是经常使用基本认证的。

      每次都要进行认证

      http协议是无状态的, 同一个客户端对 服务器的每个请求都要求认证。

      HTTP基本认证和HTTPS

      把 "用户名+冒号+密码" 用BASE64加密后的string虽然用肉眼看不出来, 但用程序很容易解密,上图可以看到Fiddler就直接给解密了。 所以这样的http request在网络上,如果用HTTP传输是很不安全的。 一般都是会用HTTPS传输,HTTPS是加密的,,所以比较安全。

      HTTP OAuth认证

      OAuth对于Http来说,就是放在Authorization header中的不是用户名密码, 而是一个token。
      微软的Skydrive 就是使用这样的方式, 如下图: 


      其他认证

      除了基本认证(Basic Authentication), 还有摘要认证digest authentication, WSSE(WS-Security)认证

      客户端的使用

      客户端如果要跟“使用基本认证的网站”交互。 非常很简单,把用户名密码加在Authorization header中就可以了。
      C#
    string url = "https://testsite";
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
    NetworkCredential nc = new NetworkCredential("username", "password");
    req.Credentials = nc;

      Linux下的curl

    curl -u username:password https://testsite/

    http://kb.cnblogs.com/page/158829/


    展开全文
  • HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付...
  • web前端面试(1)

    2020-05-19 16:41:08
    1、https协议需要到ca申请证书,一般免费证书...HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。 什么是跨域? 由浏览器同源策略限制的一类请求场景,当不同地址,不同端口,不
  • web前端面试之http

    2020-08-18 16:14:13
    URL和URI有什么区别? http和https的区别 https协议需要到ca申请证书,一般免费证书很少,需要交费。 http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。 http和https使用的是完全...
  • # Telnet 协议 Telnet是一个简单的远程终端协议(非加密、且简单),它也是因特网的正式标准。用户使用telnet客户端就可以连接到远程运行Telnet服务的设备(可以是网络设备例如:路由器、交换机,也可以是操作系统...
  • XMLHTTP开发Web 客户端

    千次阅读 2006-04-25 10:17:00
    关键字:XMLHTTP,XML,Web客户端... 不管用什么样的客户端,首先我们应该确定我们遵守的协议,或者说如何设置或获取我的数据。这里,我们的服务器端为IIS5的ASP程序,所以我们首先遵守的是HTTP协议,然后在HTTP协议
  • 服务器设置加密的子页面也可以 特点 cookie不可夸域 cookie存储在浏览器里面 cookie有数量限制在50个左右大小在4kb左右 cookie的存储时间非常灵活 cookie服务器可以设置(后端)客户端也可以设置(前段) ...
  • TCP-IP协议详解

    热门讨论 2008-11-24 20:46:50
    17.3 SLIP、CSLIP和PPP传输IP数 据报文 179 17.3.1 串行线路接口协议(SLIP) 179 17.3.2 压缩的SLIP(CSLIP) 180 17.3.3 点到点协议(PPP) 180 17.4 隧道远程访问 184 17.4.1 点到点隧道协议(PPTP) 185 17.4.2 两层...
  • 总的来说,在URL前加https://前缀表明是SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。 Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定 http效率更高,https安全性更高...
  • SSL已成为应用最广泛的互连网安全协议了,有必要对其理解,但是由于篇幅所限对其实现过程中涉及的算法等复杂原理就不做过多的进解,只能通俗的语言进行一下简单的介绍。 SSL(Security Socket Layer)的中文全称是...
  • OpenID Connect(目前版本是1.0)是OAuth 2.0协议(可参考本人此篇:OAuth 2.0 / RCF6749 协议解读)之上的简单身份层, API 进行身份交互的框架,允许客户端根据授权服务器的认证结果最终确认用户的身份,以及获取...
  • PHP与MySQL.WEB开发

    2013-04-01 17:18:52
    使用网络函数和协议函数 20.1 了解可供使用的协议 20.2 发送和读取电子邮件 20.3 使用其他Web站点的数据 20.4 使用网络查找函数 20.5 备份或镜像一个文件 20.6 进一步学习 20.7 下一章 第21章 日期和时间的管理 第22...
  • PHP和MySQL Web开发第4版

    热门讨论 2014-08-13 15:32:15
    《php和mysql web开发(原书第4版)》:开发人员专业技术丛书。 目录 读者反馈 译者序 前言 作者简介 第一篇 使用PHP 第1章 PHP快速入门教程 1.1 开始之前:了解PHP 1.2 创建一个示例应用:Bob汽车零部件商店 ...
  • 1.1 什么web应用入侵1 1.1.1 gui web入侵1 1.1.2 uri入侵2 1.1.3 方法、首部和主体3 1.1.4 资源4 1.1.5 验证、会话和授权5 1.1.6 web客户端与html5 1.1.7 其他协议6 1.2 为什么攻击web应用7 1.3 谁、何时、何处8 ...
  • 1.1 什么web应用入侵1 1.1.1 gui web入侵1 1.1.2 uri入侵2 1.1.3 方法、首部和主体3 1.1.4 资源4 1.1.5 验证、会话和授权5 1.1.6 web客户端与html5 1.1.7 其他协议6 1.2 为什么攻击web应用7 1.3 谁、...
  • 《php和mysql web开发(原书第4版)》:开发人员专业技术丛书。 目录 读者反馈 译者序 前言 作者简介 第一篇 使用PHP 第1章 PHP快速入门教程 1.1 开始之前:了解PHP 1.2 创建一个示例应用:Bob汽车零部件商店 ...
  • TCPIP协议详解(4-1)

    2008-01-16 14:49:35
    远程访问协议 175 17.1 远程互联 175 17.1.1 ISDN 176 17.1.2 电缆调制解调器 176 17.1.3 数字用户环(DSL) 176 17.1.4 无线网络 177 17.2 远程认证拨入用户服务(RADIUS) 177 17.2.1 RADIUS认证...
  • 5.2.2 使用require()制作Web站点的模版 5.2.3 使用auto_prepend_file和auto_append_file 5.3 在PHP中使用函数 5.3.1 调用函数 5.3.2 调用未定义的函数 5.3.3 理解字母大小写和函数名称 5.4 理解为什么要定义自己的...
  • 别搞成银行那种什么协议之类的,安全性要求没那么高)。 注1:登录进去之后就是winform的外壳,内嵌IE网页,这时候的用户使用就是“加了外壳的纯网页版”了,问题出在登录时的...
  • HTTPS是在HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。 HTTPS主要作用是: (1)对数据进行加密,并建立一个信息安全通道,来保证...
  • https和http有什么区别

    2019-09-21 09:52:55
    在URL前加https://前缀表明是SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。 Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器...HTTPS协议是由SSL+HTTP协议构建的可进行加密...
  • 我们在URL前加https://前缀表明是SSL加密的。你的电脑与服务器之间收发的信息传输将更加安全。 Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。 http和https使用的是完全不同的连接...
  • http和https有什么区别?

    2017-04-14 20:31:49
    在URL前加https://前缀表明是SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。Web服务器启用SSL需要获得一个服务器证书并将... HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议要比

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 165
精华内容 66
关键字:

web加密用什么协议