当前位置:首页 » 云服务器 » ocsp服务器搭建

ocsp服务器搭建

发布时间: 2023-05-04 06:19:50

1. 玉龙HTTPS对网站性能SEO有哪些影响

1前言

HTTPS在保谈肆纯护用户隐私,防止流量劫持方面发挥着非常关键的作用,但与此同时,HTTPS也会降低用户访问速度,增加网站服务器的计算资源消耗。

本文主要介绍https对用户体验的影响。

本文最早发表于网络运维部官方博客

2HTTPS对访问速度的影响

在介绍速度优化策略之前,先来看下HTTPS对速度有什么影响。影响主要来自两方面:

1.协议交互所增加的网络RTT(roundtriptime)。

2.加解密相关的计算耗时。

下面分别介绍一下。

2.1网络耗时增加

由于HTTP和HTTPS都需要DNS解析,并且大部分情况下使用了DNS缓存,为了突出对比效果,忽略主域名的DNS解析时间。

用户使用HTTP协议访问(或者)时会有如下网络上的交互耗时:

可见,用户只需要完成TCP三次握手建立TCP连接就能够直接发送HTTP请求获取应用层数据,此外在整个访问过程中也没有需要消耗计算资源的地方。

接下来看HTTPS的访问过程,相比HTTP要复杂很多,在部分场景下,使用HTTPS访问有可能增加7个RTT。:

HTTPS首次请求需要的网络耗时解释如下:

1.三次握手建立TCP连接。耗时一个RTT。

2.使用HTTP发起GET请求,服务端返回302跳转到。需要一个RTT以及302跳转延时。

a)大部分情况下用户不会手动输入来访问HTTPS,服务端只能返回302强制浏览器跳转到https。

b)浏览器处理302跳转也需要耗时。

3.三次握手重新建立TCP连接。耗时一个RTT。

a)302跳转到HTTPS服务器之后,由于端口和服务器不同,需要重新完成三次握手,建立TCP连接。

4.TLS完全握手阶段一。耗时至少一个RTT。

a)这个阶段主要是完成加密套件的协商和证书的身份认证。

b)服务端和浏览器会协商出相同的密钥交换算法、对称加密算法、内容一致性含咐校验算法、证书签名算法、椭圆曲线(非ECC算法不需要)等。

c)浏览器获取到证书后需要校验证书的有效性,雹磨比如是否过期,是否撤销。

5.解析CA站点的DNS。耗时一个RTT。

a)浏览器获取到证书后,有可能需要发起OCSP或者CRL请求,查询证书状态。

b)浏览器首先获取证书里的CA域名。

c)如果没有命中缓存,浏览器需要解析CA域名的DNS。

6.三次握手建立CA站点的TCP连接。耗时一个RTT。

a)DNS解析到IP后,需要完成三次握手建立TCP连接。

7.发起OCSP请求,获取响应。耗时一个RTT。

8.完全握手阶段二,耗时一个RTT及计算时间。

a)完全握手阶段二主要是密钥协商。

9.完全握手结束后,浏览器和服务器之间进行应用层(也就是HTTP)数据传输。

当然不是每个请求都需要增加7个RTT才能完成HTTPS首次请求交互。大概只有不到0.01%的请求才有可能需要经历上述步骤,它们需要满足如下条件:

1.必须是首次请求。即建立TCP连接后发起的第一个请求,该连接上的后续请求都不需要再发生上述行为。

2.必须要发生完全握手,而正常情况下80%的请求能实现简化握手。

3.浏览器需要开启OCSP或者CRL功能。Chrome默认关闭了ocsp功能,firefox和IE都默认开启。

4.浏览器没有命中OCSP缓存。Ocsp一般的更新周期是7天,firefox的查询周期也是7天,也就说是7天中才会发生一次ocsp的查询。

5.浏览器没有命中CA站点的DNS缓存。只有没命中DNS缓存的情况下才会解析CA的DNS。

2.2计算耗时增加

上节还只是简单描述了HTTPS关键路径上必须消耗的纯网络耗时,没有包括非常消耗CPU资源的计算耗时,事实上计算耗时也不小(30ms以上),从浏览器和服务器的角度分别介绍一下:

1,浏览器计算耗时

a)RSA证书签名校验,浏览器需要解密签名,计算证书哈希值。如果有多个证书链,浏览器需要校验多个证书。

b)RSA密钥交换时,需要使用证书公钥加密premaster。耗时比较小,但如果手机性能比较差,可能也需要1ms的时间。

c)ECC密钥交换时,需要计算椭圆曲线的公私钥。

d)ECC密钥交换时,需要使用证书公钥解密获取服务端发过来的ECC公钥。

e)ECC密钥交换时,需要根据服务端公钥计算masterkey。

f)应用层数据对称加解密。

g)应用层数据一致性校验。

2,服务端计算耗时

a)RSA密钥交换时需要使用证书私钥解密premaster。这个过程非常消耗性能。

b)ECC密钥交换时,需要计算椭圆曲线的公私钥。

c)ECC密钥交换时,需要使用证书私钥加密ECC的公钥。

d)ECC密钥交换时,需要根据浏览器公钥计算共享的masterkey。

e)应用层数据对称加解密。

f)应用层数据一致性校验。

由于客户端的CPU和操作系统种类比较多,所以计算耗时不能一概而论。手机端的HTTPS计算会比较消耗性能,单纯计算增加的延迟至少在50ms以上。PC端也会增加至少10ms以上的计算延迟。

服务器的性能一般比较强,但由于RSA证书私钥长度远大于客户端,所以服务端的计算延迟也会在5ms以上。

2. HTTPS--握手,证书及秘钥协商

一、学习思路

二、HTTPS 协议层次

SSL和TLS为数据安全通信提供支持。

三、HTTPS设计思路

1、服务器生成公钥对A,把公钥和其他信息info发送给CA机构,申请证书;

2、CA机构,有一套自己的公钥对S,CA机构将info生成数字摘要,并使用S私钥对摘要进行加密,CA机构在操作系统系统有有一套证书,保存的是S公钥;

3、CA机构将info和加密后的数字摘要生成证书发送给服务器;

4、服务器进行https通信时,先发送证书;

5.6.7、客户端收到证书后,首先验证证书合法性,获取OS内部受信任的CA证书,使用OS公钥对证书摘要进行解密出hash值,再使用相同的hash算法对证书内容进行搜芦hash计算,比较两个hash值是否一致,一致则认为证书合法;

8、客户端验证证书合法后,client生成对称秘钥对,并使用公钥A将秘钥对加密,陵庆发送给服务器,之后的交互数据,则使用对称秘钥加密。(实际过程并未如此)

由此可见,整个HTTPS过程涉及到两对公钥对,一是用户加密数据通信的对称秘钥,放在数字证书中;二是CA机构的公钥对,放在OS内,用于验证证书是否合法

四、TLS握手

整个交互过程可以分为三个阶段:tcp握手,tls握手(明文或者密文),tls数据交互(密文)

tls握手用于验证双方及协商通信的尺漏握加密秘钥。

一般的,tls握手过程是明文交互的,也可以使用RSA对称加密,双方协商一致就可以。

有三种情况的握手:

a、只验证服务器的SSL握手过程

b、验证服务器和客户端的SSL握手过程

c、恢复原有会话的SSL握手过程

下图展示了“a、只验证服务器的SSL握手过程”

注意,第4阶段,server key exchange是可选的,作为证书的补充

下列场景才会有server key exchange

协商采用了RSA加密,但服务器端的证书没有提供RSA公钥

协商采用了DH加密,但服务器端的证书没有提供DH参数

协商采用了fortezza_kea加密,但是服务端的证书没有提供参数

4.1、TLS会话缓存机制

为了加快建立握手的速度,减少协议带来的性能降低和资源消耗,TLS协议有两类会话缓存机制:

会话标识session ID和会话记录session ticket.

client -> server:  clienthello(session id)

server -> client:  serverhello, change cipher spec, encrypted handshake message

client -> server:  change cipherspec, encrypted handshake message

客户端再次和服务器建立连接,则在client中session

ID中携带记录的信息,发送给服务器。

服务器根据session ID检索缓存记录,如果没有检索到,则按正常的握手进行;

如果检索到,则返回change_cipher_spec与encrypted_handshake_message;

如果客户端能够验证通过服务器加密数据,则客户端同样发送change_cipher_spec与encrypted_handshake_message信息;

服务器验证数据通过,则握手建立成功,开始进行正常的加密数据通信;

4.2、客户端重连

客服端和服务器之间建立了有效TLS连接并通信;

客户端需要更新秘钥,主动发出client_hello信息;

服务器识别重建连接请求后,发送server_hello信息;

客户端和服务器开始新的重建连接过程;

4.3、服务器重连

客服端和服务器之间建立了有效TLS连接并通信;

客户端访问受保护的信息;

服务端返回hello_request信息;

客户端收到hello_request信息之后发送client_hello信息,开始重新建立连接;

五、证书

5.1、证书结构

版本:标识证书的版本(1,2和3)

序列号:标识证书的唯一标识符

签名算法:本证书所用签名算法

颁发者:证书颁发者的可识别名

使用者:证书拥有者的可识别名

公钥:证书发布的公钥

CRL:证书吊销列表,包含CA已经吊销的证书序列号及其吊销日期

证书策略:

使用者秘钥标识符

颁发机构秘钥标识符:用于证书链的验证

证书吊销列表(CRL)与证书状态在线查询协议(OCSP)

一般CA都只是每隔一定时间(几天或者几个月)才发布新的吊销列表,所以CRL不能及时反映证书状态。

而OCSP就能满足实时在线查询证书状态的要求。OCSP服务器会返回证书的三个状态:正常、吊销和未知。

在颁发机构信息访问提供了OCSP服务器地址 http://ocsp.wsign.com

浏览器在访问https网站是,先检查此证书是否已经被吊销,如果证书已经被吊销,则会显示警告信息: “此组织的证书已被吊销。安全证书问题可能显示试图欺骗您或截获您向服务器发送的数据。建议关闭此网页,并且不要继续浏览该网站。 ”

5.2、信任链

CA组织结构是一个树结构,一个root CA下面有多个mid CA,而mid CA又可以包含多个mid CA。

root CA和mid CA都可以颁发证书给用户,颁发的分别是root证书和中间证书,最终用户用来认证公钥的证书被称为end-user证书。

如果end-user证书是mid CA颁发的,那么握手阶段,需要把中间证书也一并发给客户端。

证书链验证过程:

六、秘钥协商过程

在TLS握手阶段确定了双方使用的密码学套件。

(秘钥协商、证书验证、数据加密是三个独立的过程)

举例:

TLS_ DHE_RSA _WITH_ AES_256_CBC_SHA

DHE_RSA :表示握手过程中使用的非对称加密算法(秘钥交换用的是DHE, 证书用的RSA),如果WITH只有一个,那么表示交换信息和证书用的是同一个算法

        (可选的主要的密钥交换算法包括:RSA, DH, ECDH, ECDHE。可选的主要的证书算法包括:RSA, DSA, ECDSA。两者可以独立选择,并不冲突)

AES_256_CBC_SHA :表示加密信道的对称加密算法和hash算法

 

七、秘钥交换算法

双方在握手过程中,通过秘钥交换算法,确定后续通信的秘钥

常用的秘钥交换算法:RSA、DH类秘钥交换算法

7.1、RSA秘钥交换过程:

A->B

B:把公钥放在证书中

A:使用随机数算法,生成一个秘钥key,用公钥加密,发送给B。

RSA面临的问题:一旦私钥外泄(私钥参与了协商过程),那么key就能解密之前监听的所有的密文(向前不安全),安全性取决于私钥是否保存完好。

7.2、更安全的DH类秘钥交换算法

DH类秘钥算法有:DH, DHE, ECDH, ECDHE

DH(静态DH算法,秘钥交换始终选择相同的私钥,因此,每次的共享私钥都相同)

DHE(临时DH算法,每个连接生成一个临时的DH秘钥,因此同一秘钥永远不会被使用两次。向前保密)

7.3、DHE秘钥交换算法(基于离散对数难题)简单说明:

    A->B

    A:生成一个随机数X(作为自己的私钥),a= g^x mod p (g的x次方对p取模),p 是个大素数,g是生成数,将a发送给B        

    B:生成一个随机数Y(作为自己的私钥),b= g^y mod p,将b发送给A。

   A: 计算 key1 = b^x mod p

    B:计算 key2 = a^y mod p

    根据数学逻辑,key1=key2,所以秘钥交换成功

DHE安全性体现在:传输的只是a、b、p、g,中间没有传输私钥x和y,在已知这四个数很难得出x和y(依赖于离散),保证了安全。

DH秘钥计算举例:

假设 g =10, p = 7,x = 3, a = 6,y = 11 , b = 5

key1 = ((g^x)mod p)^y mod p = ((10^3)mod 7)^11 mod 7 =6

key2 = ((g^y)mod p)^x mod p = ((10^11)mod 7)^3 mod 7 =6

7.4、基于ECDHE的秘钥交换算法(基于椭圆离散对数难题)

ECDHE的运算是把DHE中模幂运算替换成了点乘运算,速度更快,可逆更难

A->B

A:生成一个随机数Ra,计算Pa(x,y) = Ra * Q(x, y),Q(x, y)为全世界公认的某个椭圆曲线算法的基点。将Pa(x, y)发送至服务器。

B:生成随机值Rb,计算Pb(x,y)= Rb * Q(x, y)。将Pb(x, y)发送至客户端。

A:计算Sa(x,y) = Ra * Pb(x, y)

B:计算Sb(x,y) = Rb * Pa(x, y)

算法保证了Sa =Sb = S,提取其中的S的x向量作为密钥(预主密钥)

3. IOS系统 H5 Https请求后端很慢

如果最近发现iOS APP打开h5非常慢,达到告兄5秒以上,而安卓是正常,如果刚好你又是使用了Let's Encrypt 的免费SSL服务,恭喜你,你可能是一位运营商干扰的受害者。

正常的域名dig信息

错误的dig信息

SSL服务,如果新版系统的ios web浏览器来浏览,会在加密通信的某个阶段,对CA证书的有效性进行验证,如果验证不了,一般也会允许访问,但会提示错误,这个验证,如果域名访问不了,你造成了等待超时才返回,这就是慢的原因。而非webview或安卓webview访问,因为没有实现ocsp验证的流程,故访问速度是正常的,没有区别。

因为Let's Encrypt的OCSP验证阶段,需要使用域名ocsp.int-x3.letsencrypt.org(x后面的数字可能是1-4中之一)进行验证,而这个域名对应的服务器是托管在 a771.dscq.akamai.net ,不知何故,最近墙把它拦截了,就导致袜亏袭所以h5的访问卡在这了,当然,如果你不用ssl是没有问题的。

1、不用ssl

2、等墙解封

3、在webserer配置 OCSP Stapling功能

如果你采用第3个方法,这里详细解释一下。

ocsp stapling是什么,简单的讲,就是将原来由各个用户去发起验证证书有效性的请求,由webserver代劳了,这样就不用每个用户都去连CA的验证服务器了,相对来说访问速度就会加快不了。如果你使用的是nginx,可以这样配置开启ocsp stapling:

*将配置里的your.domain.com替换成你自己的域名。

修改完配置重启webserver。

还有为了避免域名污染,导致解析失败,还需要修改/etc/resolve.conf(假设是CentOS),添加以下记录:

等等,即使由服务器代劳,你服务器不也一样访问不了CA的验证服务器,如上述 a771.dscq.akamai.net 域名,你抓到关键点了,确实也访问不了,空拦你如果通过网上的教程去配置,也会发现ocsp response请求会失败,错误提示如:

并且在webserver的error.log里有会有以下信息

嗯,验证仍然有问题的,但是经过测试,实际访问速度是正常的。第一次请求可能会慢,因为前几次请求,服务器会去请求验证,后面请求就会快了,即使没验证成功,它也会缓存这个结果。

4. oscp 是什么证书

在线证书状态协议(OCSP,Online Certificate Status Protocol)是维护服务器和其它网络资源安全性的两种普遍模式之一。

在线证书状态协议(OCSP,Online Certificate Status Protocol)是维护服务器和其它网络资源安全性的两种普遍模式之一。另一种更老的方法是证书注销列表(CRL)已经被在线证书状态协议取代了很多年了。

(4)ocsp服务器搭建扩展阅读

在线证书状态协议(ocsp)克服了证书撤销列表(crl)的主旦橘要缺点:必须在客户端频繁下载以确保吵羡列表更新。当用户尝试访问服务器时,联机证书状态协议发送证书状态信息请求。

服务器以“有效”、“过期”或“未知”响应响应。协议指定模碰团服务器和客户端应用程序之间的通信语法。在线证书状态协议为用户提供了过期证书的宽限期,以便他们可以在更新之前继续访问服务器一段时间。

5. 什么是SSL证书SSL证书哪个厂商的最好

SSL证书是数字证书(数字证书包括:SSL证书、客户端证书、代码签名证书等)的一种,因为配置在服务器上也称为服务器SSL证书。SSL证书就是遵守SSL协议,由受信任的数字证书颁发机构CA(如:沃通CA)在验证服务器身份后颁发的一种数字证书。

价格最便宜的SSL证书—睁旅耐—Positive SSL证书

Positive SSL证书是原Comodo旗下一款入门级域名型证书,现在属于Sectigo旗下品牌,信任度高,互联网上大量的网站都在使用该SSL证书,兼容99.9%以上的主浏览器。签发速度也很快,最快能在30分钟就能签发,价格低至百元,性价比极高,适合个人网站和小型企业。

方案灵活且带有本地化OCSP的SSL证书——DigiCert SSL证书

DigiCert是美国老牌CA ,具有中国本地化的OCSP,响应速度比国际版一般的CA快很多倍。而且DigiCert OCSP和CRL在中国对应的域名有ICP备案,不会被中国地区的网络拦截,比其他证书的稳定性要高。

除此以外,购买DigiCert SSL证书的用户们可以指定有效期,三个月、六个月都可以悉春。购买后网站可以中途更名,如果因私钥丢失重新签发DigiCert SSL证书时可以免费等,灵活度较强。

纯国产SSL证书——Wotrus国密ssl证书

Wotrus国密SSL证书是国密合规的国产SSL证书,支持SM2/SM3/SM4国产密码算法和国密SSL安全协议,采用自主可控的密码技术实现通信传输加密,保护传输数据的机密性和完整性、验证服务器身份真实性,满足政务、金融、教育等重要领域网站的国密改造、国密合规、等保合规等应用需求。

验证企业真实性方面灵活性最强的SSL证书——GlobalSign SSL证书

如果您的企业邮箱和电话号码都不方便提供或是因其他原因丢失了,在申请SSL证书镇陵验证企业真实性上出了问题,可以申请GlobalSign SSL证书,因为GlobalSign还可以通过邮寄挂号信来验证。

6. 安全连接失败连接 addons.mozilla.org 时发生错误。

国外有些网址国内的DNS服务器解析不出来,可以手动更改DNS服务器为谷歌的DNS服务器地址为8.8.8.8,更改后浏览器重启就可以下载了,下载完成后把DNS还设置为自动获取,毕竟访问国内网站较多,国内DNS解析速度更快些。前段时间我重新安装火狐浏览器也遇到了无法下载插件的问题,修改了dns后就可以了。

7. ocps是什么意思医学

ocps是什么意思医学:ocsp服务器 ocsp在陆渣姿医学中是早绝什么意思 toast分型梁和标准 toast分型全称 急性脑血管病的分类 急性脑血管分类

8. SSL工作原理是什么

TLS/SSL的功能实现主要依赖于三类基本算法:散列函数 Hash、对称加密和非对称燃碰加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。

9. http ocsp 是干什么用的

OCSP(Online Certificate Status Protocol,在线证书状态协议)是维护服务器和其它网络资源安全性的两种普遍模式之一。OCSP克服了证书注销列表(CRL)的主要缺陷:必须经常在客户端下载以确保列表的更新。当用户试图访问一个服务器时,在线证书状态协议发送一个对于证书状态信息的请求。服务器回复一个“有效”、“过期”或“未知”的响应。协议规定了服务器和客户端应用程序的通讯语法。在线证书状态协议给了用户的到期的证书一个宽限期,这样他们就可以在更新以前的一段时间内继续访问服务器。

10. ocsp.apple.com为什么屏蔽不成功

ocsp.apple.com屏蔽不成功原因:而是对方把你拉黑了你就发送不成功。如果说屏蔽的话应该可以解释为你发了他接受不到。

在浏览器端,OCSP装订在开始实施的Firefox26,在Internet Explorer中,因为Windows Vista中,和谷歌Chrome在Linux中,Chrome操作系统和Windows Vista的以来。

部署:

OCSP装订支持正在逐步实施。该OpenSSL的项目列入其0.9.8g发布从赠款的援助支持Mozilla基金会。

Apache HTTP服务器支持OCSP装订自2.3.3版本,的nginx的,因为1.3.7版本的Web服务器,的Litespeed Web服务器自版本4.2.4,微软的IIS,因为Windows Server 2008中,HAProxy从版本1.5.0开始。

热点内容
win7c盘加密 发布:2025-05-14 15:04:49 浏览:510
dm码编程 发布:2025-05-14 15:03:56 浏览:405
apache加密 发布:2025-05-14 14:49:13 浏览:969
安卓什么软件苹果不能用 发布:2025-05-14 14:49:03 浏览:771
jsoupjava 发布:2025-05-14 14:38:00 浏览:888
影豹选哪个配置最好 发布:2025-05-14 14:28:50 浏览:255
定期预算法的 发布:2025-05-14 14:24:08 浏览:894
interbase数据库 发布:2025-05-14 13:49:50 浏览:691
微商海报源码 发布:2025-05-14 13:49:42 浏览:347
分布式缓存部署步骤 发布:2025-05-14 13:24:51 浏览:611