当前位置: 首页 > news >正文

说说 SSL 的错误认识和不足之处

最近明月在学习折腾 LNMP 期间无意中建了一个 Typecho 的博客小站,近一周的折腾下来,收获真的不少,致使兴趣也越来越浓了,在升级 LNMP 的时候捎带手的给这个 Typecho 博客也启用了 SSL。并且开启了 memcached 和 OPcache 优化加速模块,感觉很不错,大家可以移步围观一下【明月学习笔记 Blog』。

没有想到在 VPS 上部署 SSL 竟然是个分分钟就搞定的事儿,通过几行指令就可以直接在线获取免费 Let's Encrypt 证书了,对 Nginx 主机配置文件稍作修改即可以了。快的有点儿让明月以外了,嘿嘿。因为是个新站,所以小绿锁标志很快就在 Chrome 浏览器地址栏里出现了。我这也算是一次少有的跟风了。

明月发现很多博客站长们都 SSL 的认识有不小的误区,借着这次明月自身的体验我们几天就说说 SSL 的错误认识以及存在的不足之处,以便博客站长们更好的选择取舍。

什么是 SSL?

SSL 是 SecuritySocketLayer 的缩写,技术上称为安全套接字,可以简称为加密通讯协议,使用 SSL 可以对通讯内容进行高强度的加密,以防止黑客监听您的通讯内容甚至是用户密码。

谷歌对 SSL 加密的描述

谷歌:与不加密的网络连接相比,使用 SSL 技术可提供更高的隐私性和安全性。它可降低信息被第三方拦截或滥用的风险。许多网站访问者在得知自己正在使用 SSL 连接后会更愿意提供付款信息以及其他个人信息。

实际上,谷歌对 SSL 的支持是显而易见的。就按照远方的海自己的例子,加上了 SSL 之后,谷歌的访问数目陡然上升了不少。如果你的网站主要是面对谷歌和海外用户,那么绝对不需要犹豫了,SSL 是你的归宿!

而且 SSL 会保障网站的安全。比如,网站很多关键词出现敏感词,没有 SSL 的网站估计就难逃其咎了。之前 V2EX 因为敏感词被封,SSL 端口依然还是可以访问。这个例子就证明了 SSL 的好处。

至于说百度对 SSL,明月认为百度这方面主要还是表现在“口头”上的,就照明月目前的体验,百度对 SSL 站点的收录和权重分配并没有“口头”上说的那么好,所以大家不要相信 SSL 可以提升收录速度、收录量、权重这些,做好“内容增益”才是当前主要工作可参考【原创的“真谛”其实是内容增益!』。

一些对 SSL 错误的看法

客观的说 SSL 是会影响部分加载速度,但是绝对不是让你的网站一下就拖慢了。除非你是洁癖的“处女座”。

看法 1:SSL 会拖慢访问速度吗?

真相 1:SSL 实际上会比普通的 HTTP80 端口的访问多了一次 HTTPS 握手的时间(SSLHandshakeTime),这个握手时间其实相对于网页加载时间是很缓慢的。网页加载的时候,HTTP 需要 3 次 TCP 握手链接;而 HTTPS 则需要 12 次握手链接,较之 HTTP 多了 9 次。所以在建立链接的时候,多出了一些 HTTPS 加密解密的时间。实际上这个时间基本在 0.2 秒之内,你说算不算是拖慢速度呢?

看法 2:SSL 占服务器资源吗?

真相 2:我们用数据说话。只有足够大的流量和数据才具有可靠的真实性。那么 Gmail 的例子可以说是全球范围内,最有参考价值的例子之一了。

2010 年 1 月 Gmail 切换到完全使用 https,前端处理 SSL 机器的 CPU 负荷增加不超过 1%,每个连接的内存消耗少于 20KB,网络流量增加少于 2%。由于 Gmail 应该是使用 N 台服务器分布式处理,所以 CPU 负荷的数据并不具有太多的参考意义,每个连接内存消耗和网络流量数据有参考意义。

[ad]

那么 SSL 既然这么的好,为啥当今互联网上的普及率并不是很高呢?或者说就国内目前的互联网环境来说 SSL 好像并不是网站“标配”,或许下面的这些原因很能说明这个问题:

  • SSL 证书需要钱。功能越强大的证书费用越高。个人网站、小网站没有必要一般不会用。
  • SSL 证书通常需要绑定 IP,不能在同一 IP 上绑定多个域名。IPv4 资源不可能支撑这个消耗。(SSL 有扩展可以部分解决这个问题,但是比较麻烦,而且要求浏览器、操作系统支持。WindowsXP 就不支持这个扩展,考虑到 XP 的装机量,这个特性几乎没用。)
  • HTTPS 连接缓存不如 HTTP 高效,大流量网站如非必要也不会采用。流量成本太高。
  • HTTPS 连接服务器端资源占用高很多,支持访客稍多的网站需要投入更大的成本。如果全部采用 HTTPS,基于大部分计算资源闲置的假设的 VPS 的平均成本会上去。
  • HTTPS 协议握手阶段比较费时,对网站的相应速度有负面影响。如非必要,没有理由牺牲用户体验。
  • 最关键的,SSL 证书的信用链体系并不安全。特别是在某些国家(咳咳,你们懂的)可以控制 CA 根证书的情况下,中间人攻击一样可行。

另外,在客户端被植入无数后门、木马的状况下,HTTPS 连接的作用非常有限。这也许是支付宝不可能像 PayPal 那么易用的原因之一。

明月目前的博客和主站都没有启用 SSL 在上述的不足里都提到了,所以对于是否使用 SSL 还是要理智的来分析是不是自己真正需要的,SSL 对前端的用户来说真心没有太大的作用,所谓的“安全性”也绝不是“宣传”的那么毋庸置疑,明月自己感觉如果博客网站上有“在线支付”功能的,SSL 才是“标配”的,像明月这样的主要是“内容分享”的好像真的是很“鸡肋”的,毕竟费用、效率是我不得不主要面对和考虑的问题。

相关文章:

说说 SSL 的错误认识和不足之处

最近明月在学习折腾 LNMP 期间无意中建了一个 Typecho 的博客小站,近一周的折腾下来,收获真的不少,致使兴趣也越来越浓了,在升级 LNMP 的时候捎带手的给这个 Typecho 博客也启用了 SSL。并且开启了 memcached 和 OPcache 优化加速…...

Go语言day1

下载go语言的安装程序: All releases - The Go Programming Language 配置go语言的环境变量: 写第一个go语言 在E:\go_workspace当前窗口使用cmd命令: 输入 go run test.go...

【Python机器学习】利用t-SNE进行流形学习

虽然PCA通常是用于变换数据的首选方法,使你能够用散点图将其可视化,但这一方法的性质限制了其有效性。 有一类用于可视化的算法叫做流形学习算法,它允许进行更复杂的映射,通常也可以给出更好的可视化。其中特别有用的一个就是t-S…...

03 - matlab m_map地学绘图工具基础函数 - 设置坐标系(m_coord)

03 - matlab m_map地学绘图工具基础函数 - 设置坐标系(m_coord) 0. 引言1. m_proj使用方法2. 结语 0. 引言 上一篇介绍了m_proj函数用于初始化投影,本篇介绍的函数m_coord用于初始化地理坐标系或地磁坐标系,地理/地磁坐标系和投影…...

UEC++ 虚幻5第三人称射击游戏(一)

UEC 虚幻5第三人称射击游戏(一) 创建一个空白的C工程 人物角色基本移动 创建一个Character类添加一些虚幻商城中的基础动画 给角色类添加Camera与SPringArm组件 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category "SpringArm")clas…...

java小代码(1)

代码 : 今日总结到此结束,拜拜!...

SLAM ORB-SLAM2(27)词袋模型

SLAM ORB-SLAM2(27)词袋模型 1. 词袋模型1.1. 词汇树1.2. 逆向索引表1.3. 逆向索引表2. 词袋向量3. 匹配候选帧3.1. 找出和当前帧具有公共单词的所有关键帧3.2. 找出和当前帧最多公共单词的关键帧3.3. 剔除共享单词数较少的关键帧3.4. 计算关键帧的共视关键帧组的总得分3.5. …...

OpenAI 的 GPT-5:CTO米拉-穆拉提说,到 2026 年将实现博士级智能(Ph.D.-Level))

据首席技术官米拉-穆拉提(Mira Murati)介绍,GPT-5 是 OpenAI 人工智能的下一代进化产品,将于 2025 年底或 2026 年初在特定任务中实现博士级智能。 GPT-5 内部代号为 "Gobi "和 “Arrakis”,将是一个多模态…...

macbook配置adb环境和用adb操作安卓手机

(参考:ADB工具包的安装与使用_adb工具箱-CSDN博客) 第一步:从Android开发者网站下载Android SDK(软件开发工具包)。下载地址为: 第二步:解压下载的SDK压缩文件到某个目录中。 进入解…...

微软TTS最新模型,发布9种更真实的AI语音

很高兴与大家分享 Azure AI 语音翻译产品套件的两个重大更新: 视频翻译和增强的实时语音翻译 API。 视频翻译(批量) 今天,我们宣布推出视频翻译预览版,这是一项突破性的服务,旨在改变企业本地化视频内容…...

python爬虫 -爬取 json 格式数据

在Python中,爬取JSON格式的数据通常涉及到发送 HTTP请求到某个URL,并解析返回的JSON数据。以下是一个简单的示例,说明如何使用Python的requests库来爬取JSON格式的数据: 1. 首先,确保你已经安装了requests库。如果没…...

Pytorch(5)-----梯度计算

一、问题 如何使用Pytorch计算样本张量的基本梯度呢?考虑一个样本数据集,且有两个展示变量,在给定初始权重的基础上,如何在每次迭代中计算梯度呢? 二、如何运行 假设有x_data 和 y_data 列表,计算两个列表需…...

C#的膨胀之路:创新还是灭亡

开篇概述 C#,这门由微软推出的编程语言,自2000年诞生以来,以其简洁的语法、强大的功能和广泛的应用场景,赢得了我等程序员的热爱。它在.NET框架的加持下,展现出无与伦比的开发效率和性能。然而,随着时间的流…...

SpringBoot 过滤器和拦截器的区别

SpringBoot 过滤器和拦截器的区别 Spring拦截器(Interceptor)和过滤器(Filter)是Spring框架中用于处理请求的两种机制,虽然它们都可以在请求处理的不同阶段进行拦截和处理,但它们的工作原理和应用场景有所…...

协程执行顺序引发的问题

引言 在Golang中,因为协程执行的顺序是不固定的,如果不在代码里进行控制,可能就会导致预期外的输出。 本文通过分析一段代码的执行来介绍这种情况,以及可行的控制协程执行顺序的方法: sleep()waitGroup 实例分析 代…...

android webview调用js滚动到指定位置

一、activity import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.tencent.smtt.sdk.WebView import com.tencent.smtt.sdk.WebViewClientclass MainActivity : AppCompatActivity() {private lateinit var webView: WebViewoverride fun …...

WPF 深入理解一、基础知识介绍

基础知识 本系列文章是对个人 B站 up 微软系列技术教程 记录 视频地址 https://www.bilibili.com/video/BV1HC4y1b76v/?spm_id_from333.999.0.0&vd_source0748f94a553c71a2b0125078697617e3 winform 与 wpf 异同 1.winform 项目结构 编辑主要是在 Form1.cs(页面)&#…...

腾讯云点播ugc upload | lack signature 问题处理

我犯一个很傻的错误 参考腾讯云官方文档:云点播 Web 端上传 SDK-开发指南-文档中心-腾讯云 进行开发,但是却报错了,始终找不到问题,错误提示:ugc upload | lack signature,意思是缺少签名或者签名失败&…...

计算机视觉实验二:基于支持向量机和随机森林的分类(Part one: 编程实现基于支持向量机的人脸识别分类 )

目录 一、实验内容 二、实验目的 三、实验步骤 四、实验结果截图 五、实验完整代码 六、报错及解决方案 PS:实验的运行速度受电脑性能影响,如遇运行卡顿请耐心等待。 一、实验内容 编程实现基于支持向量机的人脸识别分类,基本功能包括:Labeled Faces in th…...

5.什么是C语言

什么是 C 语言? C语言是一种用于和计算机交流的高级语言, 它既具有高级语言的特点,又具有汇编语言的特点 非常接近自然语言程序的执行效率非常高 C语言是所有编程语言中的经典,很多高级语言都是从C语言中衍生出来的, 例如:C、C#、Object-C、…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

学校招生小程序源码介绍

基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

Map相关知识

数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...