SHA-1退休:数千万用户通向加密网站之路被阻
Facebook和Cloudflare警告道:上千万用户将无法访问只使用SHA-2签名证书的HTTPS网站。2016年-2017年是SHA-1算法的缓冲期。2017年开始CA机构将不能颁发含有sha-1
算法的数字签名证书。
作者:nana来源:安全牛|2015-12-15 10:15
Facebook和Cloudflare警告道:上千万用户将无法访问只使用SHA-2签名证书的HTTPS网站。

如果这些网站只使用SHA-2哈希算法进行签名的数字证书,数千万Web用户将再也无法通过HTTPS协议访问这些站点。
该警告来自Facebook和CloudFlare,原因是浏览器厂商在考虑加快老旧又易受攻击的SHA-1函数的退休。
这两家公司已经在他们的站点上部署了支持SHA-1证书的机制,面向的是不支持SHA-2但仍在世界某些地方广泛使用的老版浏览器和操作系统。
这些老旧系统包括Windows XP SP3以前的Windows版本、安卓2.3(姜饼)以前的版本和任何依赖OpenSSL 0.9.8进行加密通信的应用。
SHA-1 (安全散列(哈希)算法1)可追溯至1995年,在2008年研究人员发现用更老的MD5函数进行签名的证书能被伪造之后,就成为了SSL/TLS证书签名的默认选项。
SHA-1本身在理论上也是可被攻破的, 但针对它的攻击可行性依赖于可用的计算能力。2012年,著名密码研究专家布鲁斯·施奈尔估计:如果使用商业云计算服务进行,可行的SHA-1攻击在 2015年的成本将达到70万美元,到了2018年可能将耗费17.3万美元,这是在犯罪集团的承受范围之内的。
因此,CA浏览器论坛(CA/B论坛),一个由证书颁发机构和浏览器厂商组成的数字证书使用和保障指南设置的组织,决定从2016年1月1日起 SHA-1签名的证书不应该再被颁发。浏览器厂商也决定,现有SHA-1证书将从2017年1月1日起不再被他们的浏览器所信任——即使浏览器并没有专门 设置从那时起将这些证书作废。
然而,在10月份,一组研究人员展示了突破SHA-1的新方法,比之前预期的攻击成本的降低更快了一些。这一事件促使像Mozilla和微软这样的浏览器厂商开始考虑要不要将SHA-1证书在他们产品中的退休时限更提前一些。
为让用户仍能继续访问他们的在线资产,继续使用SHA-1的HTTPS站点主人(大约有100万,包括了流量最大的14万站点中的大约1/6),便处于要拿到用SHA-2签名的新证书的压力之下了。
不过,CloudFlare的研究人员指出,这一问题的实质,是目前访问HTTPS服务的用户中有1.69%是从不支持SHA-2的浏览器和操作系统访问的。
从百分比上看,这一数字似乎不大,但那可是3.7千万人,而且其中大多数分布在“世界上最穷、最受压迫、最饱受战争蹂躏的国家。”CloudFlare首席执行官马修·普林斯周三在一篇博客文章中说。
根据CloudFlare的数据,SHA-2支持率最低的十大国家是:中国(6.08%)、喀麦隆(5.39%)、也门(5.25%)、苏丹 (4.69%)、埃及(4.85%)、利比亚(4.83%)、象牙海岸(4.67%)、尼泊尔(4.52%)、加纳(4.42%)和尼日利亚 (4.32%)。前25的国家名单中包括了来自非洲、中东、亚洲和中南美洲的其他国家。
“换句话说,今年12月31号之后,最脆弱的最需要加密保护的那部分互联网用户将被从加密网络中断开。”CloudFlare研究人员称,“而不幸的是,如果我们想再增加20亿互联网用户,他们中的许多人会用二手安卓机上线。因此,这一问题短期内得不到解决。”
Facebook提出了相同的问题,估测当前在用的浏览器中3%~7%不支持SHA-256,也就是SHA-2。
“这些人的分布很不均衡,大部分集中在发展中国家,在这些国家中最有可能的结果就是,希望延伸至目标用户群的政府、公司企业和非政府组织的HTTPS部署遭遇严重的倒退。”Facebook首席安全官阿列克斯·斯塔莫斯在周三发表的一篇博客文章中说。
Facebook已经通过建立基于用户使用的浏览器自动切换证书的机制解决了这个问题。在Facebook的机制下,当代浏览器可以使用SHA-2证书而其他更老版本的浏览器则会收到用SHA-1签名的证书。
这一措施使得浏览器厂商可以继续执行他们在明年取消对SHA-1证书支持的计划,而站点也可以服务那些使用不太可能被升级的老旧设备访问的用户。
Facebook已将其证书切换机制作为Proxygen HTTP库项目的一部分在BSD许可协议下开源了。这意味着其他开发者也能在他们自己的项目和TLS代理中使用这一机制。
运营内容分发网络以优化和保护其客户站点的CloudFlare 为其付费用户启动了自动SHA-1回退服务。如果自己愿意的话,公司和企业客户可以关闭这一功能,高级用户则将在今年年底能够拥有相同的功能。
Facebook和CloudFlare并不是唯一这样做的企业,中国互联网企业阿里巴巴在它的许多网站上也开始回避SHA-1的使用。鉴于中国有数量庞大的互联网用户使用缺乏SHA-2支持的浏览器访问网络,阿里巴巴做出此决策不足为怪。
Facebook和CloudFlare想做得更进一步。他们敦促CA/B论坛建立新的证书类型——遗留验证证书(LV证书),这类证书中仍可使用SHA-1签名。
这类证书可以在现有SHA-1证书退休日期之后发放给那些能证明自己为当代浏览器使用当代证书和协议而仅仅为遗留浏览器回退到LV证书的组织。
SHA-1退休:数千万用户通向加密网站之路被阻的更多相关文章
- Maven-009-Nexus 用户密码加密(安全必须)
信息数据大爆发的时代,我们关心什么?没错,数据安全!数据安全!数据安全!(重要事情说三遍,哈哈哈...) 之前我们存放在 maven settings.xml 文件中的 Nexus 私服用户密码都是明 ...
- C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- javascript用户密码加密,js密码加密
1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset ...
- Cognos权限认证CJP方式之用户密码加密
在项目开发过程中,用户往往对系统的安全都有明确的要求,下面针对cognos门户认证用户密码如何加密来提供一个简单的wf 1Cognos权限认证方式:CJP 2Cognos用户数据库类型:Oracle ...
- c# 对用户密码加密解密
一.使用16位.32位.64位MD5方法对用户名加密 1)16位的MD5加密 ? 1 2 3 4 5 6 7 8 9 10 11 12 /// <summary> /// 16位MD5加密 ...
- 转 C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- 深喉起底APP线下预装市场,如何一夜间拥有千万用户
注:预装对于中国的移动互联网创业者有多重要?i黑马知道这样一个内幕,某商务告诉我他们公司的前2000万用户就是靠预装打下来的,总部在北京,直接派驻商务长期扎根在深圳搞定手机厂商.而这家公司初期发展得益 ...
- [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)
[Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...
- 【美】范·K·萨普曼 - 通向财务自由之路(2013年11月26日)
<通向财务自由之路> 作 者:[美]范·K·萨普曼 译 者:董梅 系 列: 出 版:机械工业出版社 字 数:约40千字 阅读完成:2013年11月26日
随机推荐
- libgdx游戏中的中文字体工具类
// ---------全局Font------------ static FreeTypeFontGenerator Generator; static BitmapFont Font; stati ...
- poj 1195 单点更新 区间求和
Mobile phones Time Limit: 5000 MS Memory Limit: 65536 KB 64-bit integer IO format: %I64d , %I64u Jav ...
- Delphi-idHttp-Post JSON用法 good
从国外网站抄来的代码 Delphi source: http := TIdHttp.Create(nil);http.HandleRedirects := True;//允许头转向http.ReadT ...
- 提示 make: 没有什么可以做的为 `all'
提示 make: 没有什么可以做的为 `all'. make clean 一次,编译过程又有了.
- Power BI Embedded 与 Bot Framework 结合的AI报表系统
最近最热门的话题莫过于AI了,之前我做过一片讲 BOTFRAMEWORK和微信 相结合的帖子 如何将 Microsoft Bot Framework 链接至微信公共号 我想今天基于这个题目扩展一下,P ...
- GitLab问题小结
1.内存消耗太大 (1)公司使用gitlab后,发现服务器内存居高不下,使用top命令查看内存消耗,发现服务器上git将近消耗一半内存资源.而且很奇怪的是竟然开启了32个进程.后经查资料,原来这跟gi ...
- Shell - 简明Shell入门03 - 字符串(String)
示例脚本及注释 #!/bin/bash str="Shell" str2="Hello $str !" str3="Hello ${str} !&qu ...
- 利用django-simple-captcha生成验证码
参考文档 http://django-simple-captcha.readthedocs.io/en/latest/ django支持1.7+ 1.安装 pip install django-sim ...
- [LeetCode]最长回文子串 java
题目: 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为1000. 示例 1: 输入: "babad" 输出: "bab" 注意: ...
- SpringMVC初探-HelloWorld
MVC的概念 MVC是一种设计模式,即Model--View-Controller,模型--视图--控制器 Model(模型)表示应用程序核心(比如数据库记录列表). View(视图)显示数据(数据库 ...