没有有效SSL证书的HTTPS连接安全吗?

没有有效SSL证书的HTTPS连接安全吗?,https,ssl-certificate,Https,Ssl Certificate,我使用的HTTPS连接没有有效的SSL证书。连接安全吗?信息加密了吗?没有。当使用HTTPS时,您所做的是告诉浏览器通过不同的端口(443)连接,而通常您通过(80)连接。如果没有证书,服务器将拒绝连接。如果没有证书,HTTPS是不可能的。查看此处,您将看到一个有效的连接。即使SSL证书无效(过期、snake oil、不受信任的CA等),连接也是加密的。SSL证书验证只是确保您正在连接到您认为要连接的人。如果解密数据的人是破解者而不是PayPal,加密对你没有任何好处。如果没有SSL证书的验证,

我使用的HTTPS连接没有有效的SSL证书。连接安全吗?信息加密了吗?

没有。当使用HTTPS时,您所做的是告诉浏览器通过不同的端口(443)连接,而通常您通过(80)连接。如果没有证书,服务器将拒绝连接。如果没有证书,HTTPS是不可能的。查看此处,您将看到一个有效的连接。即使SSL证书无效(过期、snake oil、不受信任的CA等),连接也是加密的。SSL证书验证只是确保您正在连接到您认为要连接的人。如果解密数据的人是破解者而不是PayPal,加密对你没有任何好处。

如果没有SSL证书的验证,那么拦截通信通道的人可以捕获一个连接到的请求,将自己的请求发送到www.acmebank.com,并与acmebank.com和用户协商密钥。在那之后,它可以从用户那里接收每一小块数据,用用户的密钥解密,用acmebank的密钥加密,并对来自acmebank.com的数据进行同样的操作。最终的效果是,用户和acmebank都不会看到任何错误,但拦截器将能够解密用户和acmebank之间的所有数据。用户和银行将使用不同的密钥来处理他们的通信,但两个实体都不知道这一点。向协议中添加任何标准方面来查询正在使用的密钥都不会有帮助,因为拦截器可以检测此类查询并适当更改响应


SSL通过要求主机向收件人发送主机正在使用的密钥副本,以入侵者无法伪造的形式进行加密(除非入侵者至少可以伪造CA凭据),从而防止中间人攻击。如果不使用CA颁发的证书,将几乎无法防止中间人攻击,尽管加密层将防止会话内容的被动或追溯解密(顺便说一句,对于被动或追溯性解密是主要威胁的情况,我希望在未加密通信和SSL之间有一些标准,但我不知道有任何标准).

实际上,使用Diffie-Hellman或类似的密钥交换算法,可以在完全陌生的人之间建立加密连接,而无需证书

爱丽丝和鲍勃同意一个随机数x。爱丽丝计算 其中a是一个只有Alice知道的大素数,并将其发送给Bob。Bob计算xb并将其发送给Alice。Alice计算(xb)a,Bob计算(xa)b。因为(xa)b=(xb)a=xab,Alice和Bob现在都知道数字xab,并且可以将其用作加密密钥。其美妙之处在于Bob不知道a,Alice不知道b,任何窃听者都不知道这两个数字(因为从xab计算a,在大数的情况下,需要数年时间)

正如supercat指出的那样,这本身仍然容易受到中间人攻击,这就是为什么至少有一个交易端需要使用证书进行身份验证。但准确地说,检查这一点的不是服务器,而是浏览器,如果证书无效,大多数浏览器都会允许用户继续(甚至可能是垃圾)。在这种情况下,连接仍然比常规连接安全得多。要监听,您需要能够操作IP路由或DNS查找,并且必须在首次建立连接之前进行设置,这并不容易


顺便说一句,证书中的密钥对不是用来加密实际流量的;它们用于为更快的对称密码(如DES)建立新的一次性密钥这就完成了剩下的工作。

有可能建立加密连接,是的,但也有可能你正在与一台破解的计算机而不是真正的服务器通信。就像这样,破解的计算机告诉服务器他将是客户机,解密所有数据,存储并发送加密数据o客户(并告诉他他将成为服务器)。因此,如果服务器和客户端之间没有任何人可以保证的脆弱点,那么这只是一种安全连接。

不要再为无效的ssl证书烦恼了。现在,您可以像生成蛇油一样轻松地为服务器生成免费浏览器有效证书(自签名,浏览器无效)证书。去看看它是免费的,并且对用户开放。

没有SSL证书,你就不能使用https连接,是吗?你可能是说使用自签名证书,任何信息或连接都是不安全的。如果internet是一系列管道,那么这些管道是半透明的,任何人都可以通过它们进入你的应用程序。@M操作系统的现代加密确保了普通人可能遇到的任何数据(SSN、信用卡等)的合理安全级别。我想政府不会相信它提供有关被抓获外星人的信息。@Moses-那么你是说HTTPS连接到你的银行是完全没有用的?@eddy我现在找不到链接,但它在CSS3规范。但这就是问题所在,仍然需要证书(无论是否有效)是的,但是你可以在几秒钟内生成一个自签名证书。我认为这个问题是问你是否需要一个有效的证书。在这种情况下,你是正确的,但是问题是是否需要一个证书-它是什么,或者什么都不需要加密。问题说他使用的是HTTPS连接。但是,如果你100%地接受这个问题,它是正确的不可能。浏览器会询问您是否信任此连接,如果我接受此连接,则传输的信息不会被加密?如果您的浏览器要求您信任无效的证书,则信息