阅读更多

2顶
0踩

行业应用



我们经常会遇到页面被运营商插入小广告这种事情(数据被篡改),可想而知,HTTP是有多么不安全。

如何做到的?
答:只需要设定相应的DNS,做一个中间人攻击,再将修改后的数据返回。

那么:解决上面问题需要考虑哪些因素:

HTTPS的设计的时候就主要考虑了以上的主要因素:
  • 数据加密 --传输内容进行混淆
  • 非对称加密(也叫公钥加密)
    对称加密(也叫密钥加密)
  • 身份验证 --通信双方验证对方的身份真实性
  • 数据完整性保护 --检测传输的内容是否被篡改或伪造
因此切换使用HTTPS,就可以防止页面被运营商篡改问题。
HTTPS概念如下:

简单用图表示:

安全HTTP的实现


数据完整性:

数字签名是只有信息发送者才能产生的别人无法伪造的一段文本,这段文本是对信息发送者发送信息真实性的一个有效证明,具有不可抵赖性。
报文的发送方从报文文本生成一个128位的散列值(或称为报文摘要活哈希值),发送方使用自己的私钥对这个摘要值进行加密来形成发送方的数字签名。
然后这个数字签名将作为报文的附件一起发送给报文的接收方。
报文的接收方首先从接收到的原始报文中计算出128位的散列值,再用发送方的公钥来对报文附加的数字签名进行解密。
如果两次得到的结果是一致的那么接收方可以确认该数字签名是发送方的,同时确认信息是真实的

HTTPS数据交互过程:
HTTP中没有加密机制,可以通过SSL(Secure Socket Layer 安全套接层)或TLS(Transport Layer Security 安全层传输协议)的组合使用,加密HTTP的通信内容。
SSL工作在OSI七层模型中的表示层,TCP/IP 四层模型的应用层。

SSL记录协议操作:
  • 分段 将每个上层消息分解成不大于2^14(16384)位,然后有选择的进行压缩
  • 添加MAC 在压缩数据的基础上计算MAC
  • 加密 消息加上MAC用对称加密方法加密
  • 添加SSL记录头 内容类型(8位),主版本(8位),副版本(8位),压缩长度(16位)
SSL握手过程:

SSL协议两个重要概念,SSL会话,SSL连接;
SSL连接是点到点的连接,而且每个连接都是瞬态的,每一个链接都与一个会话关联。
SSL会话是一个客户端和一个服务器之间的一种关联,会话由握手协议(Handshake Protocol)创建,所有会话都定义了一组密码安全参数,这些安全参数可以在多个连接之间共享,会话可以用来避免每一个链接需要进行的代价高昂的新的安全参数协商过程。
好的,今天的介绍先到这里了哈。
  • 大小: 412 KB
  • 大小: 314.9 KB
  • 大小: 271.4 KB
  • 大小: 237.5 KB
  • 大小: 5.5 KB
  • 大小: 45 KB
  • 大小: 5.4 KB
  • 大小: 18.8 KB
  • 大小: 23.5 KB
来自: 吕一明
2
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • ASP.NET应用程序的安全方案(一)—身份验证

    摘要:本文ASP.NET应用程序身份验证的概念,介绍了各种身份验证模式并进行了比较,阐述了选择身份验证模式的机制,并给出了一种基于窗体身份验证模式的实现方法。 关键字:身份验证 authentication ASP.NET WEB应用 1.身份验证概念     任何成功的应用程序安全策略的基础都是稳固的身份验证和授权手段,以及提供机密数据的保密性和完整性的安全通讯。     身份验证(auth

  • Asp.net中基于Forms验证的角色验证授权

    Asp.net中基于Forms验证的角色验证授权Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验证用的最多,也最灵活。Forms 验证方式对基于用户的验证授权提供了很好的支持,可以通过一个登录页面验证用户的身份,将此用户的身份发回到客户端的Cookie,之后此用户再访问这个web应用就会连同这个身份Cooki

  • application_authenticaterequest

    在.net中的global.asax中有application_authenticaterequest事件与application_beginrequest事件是在每次访问aspx文件都会触发.但是application_beginrequest中不能对已经经过froms身份验证的身份ticket票进行识别.所以只能放到application_authenticaterequest中去.

  • .net 身份验证方式有哪些及原理

    Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验证用的最多,也最灵活。       Windows: 使用IIS验证方式       Forms: 使用基于窗体的验证方式       Passport: 采用Passport cookie验证模式       None: 不采用任何验证方式 1、

  • Web 应用安全验证标准之一 --身份认证验证点

    No 验证内容 等级 1 2 3 v1.1 验证除了认定可以公开的资源,其它资源需要登录认证后才能访问。 V V V v1.2...

  • 构建Forms验证(砖载)

    构建基于forms的验证机制过程如下:1,设置IIS为可匿名访问和asp.net web.config中设置为form验证2,检索数据存储验证用户,并检索角色(如果不是基于角色可不用)3,使用FormsAuthenticationTicket创建一个Cookie并回发到客户端,并存储角色到票据中,如:FormsAuthentication.SetAuthCookie(Username,true |...

  • FormsAuthenticationTicket使用方式

    System.Web.Security 中 FormsAuthenticationTicket 的使用//加密数据放入Cookie中 FormsAuthenticationTicket ticket = new FormsAuthenticationTicket( version: 1, name: userId, issueDate: Date

  • 窗体身份验证

           窗体身份验证使用用户登录到站点时创建的身份验证票,然后在整个站点内跟踪该用户。窗体身份验证票通常包含在一个 Cookie 中。然而,ASP.NET 2.0 版支持无 Cookie 窗体身份验证,结果是将票证传入查询字符串中。   如果用户请求一个需要经过身份验证的访问的页,且该用户以前没有登录过该站点,则该用户重定向到一个配置好的登录页。该登录页提示用户提供凭据(通常是用户名和密码)

  • ASP.NET WEBAPI 的身份验证和授权

    定义 身份验证(Authentication):确定用户是谁。 授权(Authorization):确定用户能做什么,不能做什么。 身份验证 WebApi 假定身份验证发生在宿主程序称中。对于 web-hosting,宿主是 IIS。这种情况下使用 HTTP Module 进行验证。 验证时,宿主会创建一个表示安全上下文的主体对象(实现 IPrincipal),将它附加到当前线程。主体对...

  • ASP.NET 安全认证

    ASP.NET 安全认证(一)——如何运用 Form 表单认证作者:寒羽枫(cityhunter172)序代码写 N 久了,总想写得别的。这不,上头说在整合两个项目,做成单一登录(Single Sign On),也有人称之为“单点登录”。查阅相关文档后,终于实现了,现在把它拿出来与大家一起分享。或许大家会问:“这与标题不符呀?”别急,在下笔之前,我脑子里想到了我刚使用 Form 认

  • ASP.NET应用程序的安全方案/简单 Forms 身份验证

    摘要:本文ASP.NET应用程序身份验证的概念,介绍了各种身份验证模式并进行了比较,阐述了选择身份验证模式的机制,并给出了一种基于窗体身份验证模式的实现方法。 关键字:身份验证 authentication ASP.NET WEB应用 1.身份验证概念 任何成功的应用程序安全策略的基础都是稳固的身份验证和授权手段,以及提供机密数据的保密性和完整性的安全通讯。 身份验证(authe...

  • ASP.NET Web.config 安全配置(用户登录)

    <br /><br />别人空间讲解:<br />在webconfig中有一个重要节点 <system.web> 其中包括了一个身份验证配置节点<br /><authentication mode="Windows"/><br />其中 authentication 是节点名,mode是模式,上述代码表示 采用windows身份验证,那么此时身份验证将交给iis处理,而iis中默认设<br /><authentication mode="Forms" ><br />      <forms defaultU

  • C# .NET 调用API接口和SOAP接口的基本身份验证

    调用API接口: 首先需要CredentialCache 对象,然后设置NetworkCredential 的用户名密码和Basic;最后需要在request的Headers中加上Authorization节点,此节点是由basic和用户名+密码的ASCIIEncoding类型的二进制字符串组成的。request的PreAuthenticate属性必须设置成true。 Credential...

  • Asp.Net 用户验证(自定义IPrincipal和IIdentity)

     Asp.Net 用户验证(自定义IPrincipal和IIdentity)引言前一段时间有两个朋友问我,为什么在HttpModule中无法获得到Session值,因为他们希望自定义一个HttpModule,然后在其中获取Session来进行用户验证。我奇怪为什么不使用.Net Framework已经提供的验证机制,而要和Asp时一样,自己手工进行cookie+Session验证?

Global site tag (gtag.js) - Google Analytics