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退休:数千万用户通向加密网站之路被阻的更多相关文章

  1. Maven-009-Nexus 用户密码加密(安全必须)

    信息数据大爆发的时代,我们关心什么?没错,数据安全!数据安全!数据安全!(重要事情说三遍,哈哈哈...) 之前我们存放在 maven settings.xml 文件中的 Nexus 私服用户密码都是明 ...

  2. C#:使用MD5对用户密码加密与解密

    C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...

  3. javascript用户密码加密,js密码加密

    1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset ...

  4. Cognos权限认证CJP方式之用户密码加密

    在项目开发过程中,用户往往对系统的安全都有明确的要求,下面针对cognos门户认证用户密码如何加密来提供一个简单的wf 1Cognos权限认证方式:CJP 2Cognos用户数据库类型:Oracle ...

  5. c# 对用户密码加密解密

    一.使用16位.32位.64位MD5方法对用户名加密 1)16位的MD5加密 ? 1 2 3 4 5 6 7 8 9 10 11 12 /// <summary> /// 16位MD5加密 ...

  6. 转 C#:使用MD5对用户密码加密与解密

    C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...

  7. 深喉起底APP线下预装市场,如何一夜间拥有千万用户

    注:预装对于中国的移动互联网创业者有多重要?i黑马知道这样一个内幕,某商务告诉我他们公司的前2000万用户就是靠预装打下来的,总部在北京,直接派驻商务长期扎根在深圳搞定手机厂商.而这家公司初期发展得益 ...

  8. [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)

    [Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...

  9. 【美】范·K·萨普曼 - 通向财务自由之路(2013年11月26日)

    <通向财务自由之路> 作 者:[美]范·K·萨普曼  译 者:董梅 系 列: 出 版:机械工业出版社 字 数:约40千字 阅读完成:2013年11月26日

随机推荐

  1. SRM387 div1

    250pt: 题目:有一些盒子(不大于50个),每个盒子里有一些大理石(最多50种颜色),然后给定每个盒子里每种颜色大理石的个数(没有为0),求最少操作几步满足: 1:最多只能一个盒子里有多种颜色,叫 ...

  2. UITabBarItem title 和self.title设置不同的标题

    self.navigationItem.title = @"my title"; //sets navigation bar title. self.tabBarItem.titl ...

  3. WinAPI: sndPlaySound - 播放 wav 文件

    WinAPI: sndPlaySound - 播放 wav 文件 //声明: sndPlaySound(   lpszSoundName: PChar; {声音文件}   uFlags: UINT{播 ...

  4. 敏捷Scrum框架最全总结! [转载]

    [原文链接] 2016-05-03 Sting 敏捷开发作为目前流行的开发方法,为快速迭代提供了足够的理论支持,但敏捷开发方式不应该成为忽略文档和需求分析的过程,注意每个sprint的引入,任务燃烧, ...

  5. 可编辑树Ztree的使用(包括对后台数据库的增删改查)

    找了很多网上关于Ztree的例子和代码才搞定. 首先,关于Ztree的代码不介绍了,网上下载之后,引用下列四个文件就能使用了. 1.关于配置选项.主要通过回调函数来实现向后台发送数据,实现增删改查. ...

  6. 重置identity值

    如果数据库在SQL2008或以上,可以参考下面方法: DBCC CHECKIDENT ( table_name [, { NORESEED | { RESEED [, new_reseed_value ...

  7. [学习笔记]min_25筛

    神佬yyb 神佬zsy 想不到花了两个小时的时间看 \(min\_25\) 筛就看懂了 实际去追了一下魔禁3 我们先举个例子.如求 \[\sum_{i=1}^{n}f(i)\] 其中 \(f(i)\) ...

  8. [JavaScript] Nginx实现跨域设置

    假如跨域请求的接口为:http://xxx.cn/was5/web/search Nginx配置: 在conf/nginx.conf文件中 location / { root html; index ...

  9. cnetos6上实现nfs共享

    利用空余时间,做个nfs共享实验,岂不美滋滋!!! 系统测试环境: 主机ip 系统     主机名(服务) 192.168.241.130    centos6.5    hadoop1(nfs-sr ...

  10. 如何开启windows的linux子系统

    win10一周年纪念版  1607的版本增加了bash,bash,bash,windows的shell中可以直接运行bash了. 下面说一下配置步骤: 1.设置 —更新和安全—针对开发人员,选择开发人 ...