神锁离线版插件端到端加密比HTTPS更安全

HTTPS/TLS介绍

HTTPS/TLS是什么?有什么用?

浏览器打开的网页如果使用了安全的HTTPS,地址栏会显示一个漂亮的锁 🔒

如果没有使用HTTPS,而是使用了不安全的HTTP,地址栏会提示不安全

这么说吧,如果没有HTTPS/TLS,钱是不能上网的。我们日常使用的网银、支付宝,十有八九会被盗。

有兴趣的话,看看维基百科的说明:

也就是:

HTTPS = HTTP + TLS

说人话:使用HTTPS协议上网时,不会被其他人知道

不要误解:网站还是知道我们打开的网页,只是坏人不能通过无线路由器、网络运营商等中间服务设备知道我们发送和接收的数据。开车注意安全!

HTTPS/TLS怎么工作?

HTTPS/TLS是几乎所有互联网安全通信的基础。最初只有支付行业和一些高要求行业必须采用HTTPS,但近几年也逐渐推广到很多互联网服务。

最新的TLS 1.3工作流程如下:

sequenceDiagram participant Browser participant Server note over Browser: generate Elliptic Curve key pair Browser ->> Server: Client Hello + public key note over Server: generate Elliptic Curve key pair note over Server: calculate shared key Server ->> Browser: Server Hello + public key + Certificate note over Browser: verify Server certificate note over Browser: calculate shared key rect rgba(200, 200, 200, 1) note right of Browser: encrypted communication Browser ->> Server: HTTP Request Server ->> Browser: HTTP Response end

HTTPS/TLS协议中有两个关键安全措施:

  1. 密钥协商

    服务器和浏览器使用ECDH密钥协商算法,建立安全的加密通信。ECDH算法厉害的地方在于:双方可以在不安全的公共网络上进行,中间的网络服务和设备无法破解。

  2. 服务器认证

    比如用支付宝付款,那对于浏览器来说,怎么知道发送数据另一端的服务器就是支付宝的呢?要知道,“在互联网上,没人知道你是一条狗”。

    解决这个问题的方法是证书链,使用数字签名算法验证。支付宝服务器提供的证书,是由证书颁发机构(英语:Certificate Authority,缩写:CA)Secure Site 签名的,Secure Site的证书,又由系统信任的根证书机构(Root CA)DigiCert签名。

    说人话:系统信任根证书机构DigiCertDigiCert 信任 Secure SiteSecure Site 信任支付宝,浏览器就信了

由于很多证书颁发机构都可以签发证书,要所有参与方都确保安全,并不是一件很容易的事情。

举个栗子🌰 :谷歌向知名证书颁发机构赛门铁克申请了TLS证书。某天,赛门铁克心血来潮又自制了一些谷歌的TLS证书。一旦这些自制的证书被非法使用,就可能偷取用户的谷歌账号密码。

你以为这只是个栗子?这是真实发生的安全事故!巨头怼巨头 谷歌封杀赛门铁克证书背后的恩怨情仇

来源 The Geek Hub

TLS现状

自1995年以来,TLS协议经历了6个主要版本(SSL 1.0没有正式推出),它们的使用现状大概是这样的:

来源 SSL Labs

诞生于2008年的TLS 1.2至今仍然还是互联网的主流,但它支持的很多算法在今天都不再安全了。

插件端到端加密

端到端加密是什么?

神锁离线版插件接收密码采用的是端到端加密技术,不论是黑客,还是我们内部员工,都无法查看用户填充的密码。

维基百科是这样介绍的:

端到端加密(英语:End-to-end encryption,缩写:E2EE),是一种只有参与通讯的用户可以读取信息的通信系统。总的来说,它可以防止潜在的窃听者——包括电信供应商、互联网服务供应商甚至是该通讯系统的提供者——获取能够用以解密通讯的密钥。此类系统被设计为可以防止潜在的监视或篡改企图,因为没有密钥的第三方难以破译系统中传输或储存的数据。举例来说,使用端到端加密的通讯提供商,将无法将其客户的通讯数据提供给当局。

说人话:使用端到端加密,云服务商也不能窃听

使用TLS不行吗?

TLS保证的是客户端和服务器之间的通信不被中间网络服务设备窃听,但是不能保证用户数据不被云服务商窃听。正好相反,云服务商知道用户发送和接收的消息。

Hyker Security在E2EE VS NETWORK SECURITY一文中画得很清楚:

TLS 是逐段加密,云服务商可以查看数据明文

端到端加密是在用户的终端设备之间加密,云服务商只能看到密文

增强端到端加密

神锁离线版插件进一步增强了端到端加密(在神锁离线版插件的安全设计中有详细讲解):

对比总结:为什么比HTTPS更安全?

  1. 云端攻击

    HTTPS/TLS:黑客、内部员工可能查看用户数据。

    神锁离线版:黑客、内部员工都不能查看用户密码。

  2. 密码学算法

    HTTPS/TLS:TLS 1.3之前的版本,容易因为配置不当而使用不安全的密码学算法。

    神锁离线版:插件使用目前最安全的ECDH, AES-256-GCM等算法。

  3. 第三方依赖

    HTTPS/TLS:存在证书链漏洞,一旦证书签发机构发生安全事故,可能导致泄密

    神锁离线版:需要用户手动扫码,无须第三方认证,不会因第三方安全事故泄密。

  4. 私钥安全

    HTTPS/TLS:私钥存储在服务器硬盘上,且长期有效,暴露的攻击面相对要大很多倍

    神锁离线版:插件的私钥不可提取,存在于内存中,且仅2分钟有效。在时间和空间上,仅暴露很小的攻击面。


神锁离线版插件系列文章